@descope/sdk-component-drivers 0.10.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/index.d.ts +57 -18
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("tslib"),t=require("@descope/sdk-helpers");var i,l;class r{constructor(t,l){i.set(this,void 0),this.nodeName="",e.__classPrivateFieldSet(this,i,t,"f"),this.logger=l.logger}get asyncEle(){return(async(e,t)=>new Promise((i=>{const l=setInterval((()=>{const t="function"==typeof e?e():e;t&&(clearInterval(l),i(t))}),100);setTimeout((()=>{clearInterval(l),i(null)}),t)})))(e.__classPrivateFieldGet(this,i,"f"),1e3)}get ele(){var t,l;const r="function"==typeof e.__classPrivateFieldGet(this,i,"f")?e.__classPrivateFieldGet(this,i,"f").call(this):e.__classPrivateFieldGet(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===(t=this.logger)||void 0===t||t.debug(`Driver element is not available for ${this.nodeName}`,new Error),null)}get isExists(){return!!this.ele}}i=new WeakMap;class s extends r{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")}}const n=/^descope-grid-([^-]+)-column$/,o={text:class extends r{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 r{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)}}}};l=new WeakMap;var d;d=new WeakMap;class u extends r{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)}}exports.AppsListDriver=class extends r{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}},exports.AvatarDriver=class extends r{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)}}},exports.ButtonDriver=s,exports.DeviceListDriver=class extends r{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 i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("remove-device-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("remove-device-clicked",i)}}},exports.FlowButtonDriver=class extends s{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}},exports.FlowDriver=class extends r{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,i;e?null===(i=this.ele)||void 0===i||i.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)}}},exports.GenericFlowButtonDriver=class extends s{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")}},exports.GridDriver=class extends r{constructor(){super(...arguments),this.nodeName="descope-grid",l.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 i;const l=null===(i=n.exec(t.localName))||void 0===i?void 0:i[1],r=o[l];return r?(e.push(new r(t,{logger:this.logger})),e):e}),[]):[]}filterColumns(i){var r,s;const n=null===(r=this.ele.columns)||void 0===r?void 0:r.filter(i);n&&this.ele.columns&&(t.compareArrays(n,this.ele.columns)||(this.ele.columns=n,null===(s=e.__classPrivateFieldGet(this,l,"f"))||void 0===s||s.call(this,n)))}onColumnsChange(t){e.__classPrivateFieldSet(this,l,t,"f")}set renderColumn(e){this.ele.renderColumn=e}},exports.LastAuthBadgeDriver=class extends r{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:""}},exports.LinkDriver=class extends r{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:"")}},exports.ModalDriver=class extends r{constructor(){super(...arguments),d.set(this,void 0),this.nodeName="descope-modal"}close(){var e,t;null===(e=this.ele)||void 0===e||e.removeAttribute("opened"),null===(t=this.afterClose)||void 0===t||t.call(this)}async open(){var e,t;await(null===(e=this.beforeOpen)||void 0===e?void 0:e.call(this)),null===(t=this.ele)||void 0===t||t.setAttribute("opened","true")}reset(){var t;this.ele&&(this.ele.innerHTML=""),e.__classPrivateFieldGet(this,d,"f")&&(null===(t=this.ele)||void 0===t||t.append(e.__classPrivateFieldGet(this,d,"f").content.cloneNode(!0)))}setContent(t){e.__classPrivateFieldSet(this,d,t,"f"),this.reset()}remove(){var e;null===(e=this.ele)||void 0===e||e.remove()}},exports.MultiSelectDriver=class extends r{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()))}},exports.NotificationDriver=class extends r{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()}},exports.OutboundAppsListDriver=class extends r{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 i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("connect-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("connect-clicked",i)}}onDisconnectClick(e){var t;const i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("disconnect-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("disconnect-clicked",i)}}},exports.SingleSelectDriver=u,exports.TenantSelectorDriver=class extends u{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}},exports.TextDriver=class extends r{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)}},exports.TextFieldDriver=class extends r{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")}},exports.UserAttributeDriver=class extends r{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)}}},exports.UserAuthMethodDriver=class extends r{constructor(){super(...arguments),this.nodeName="descope-user-auth-method"}set fulfilled(e){var t,i;e?null===(t=this.ele)||void 0===t||t.setAttribute("fulfilled","true"):null===(i=this.ele)||void 0===i||i.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")}};
|
|
1
|
+
"use strict";var e=require("tslib"),t=require("@descope/sdk-helpers");var i,r;class l{constructor(t,r){i.set(this,void 0),this.nodeName="",e.__classPrivateFieldSet(this,i,t,"f"),this.logger=r.logger}get asyncEle(){return(async(e,t)=>new Promise((i=>{const r=setInterval((()=>{const t="function"==typeof e?e():e;t&&(clearInterval(r),i(t))}),100);setTimeout((()=>{clearInterval(r),i(null)}),t)})))(e.__classPrivateFieldGet(this,i,"f"),1e3)}get ele(){var t,r;const l="function"==typeof e.__classPrivateFieldGet(this,i,"f")?e.__classPrivateFieldGet(this,i,"f").call(this):e.__classPrivateFieldGet(this,i,"f");return l?(null==l?void 0:l.localName)!==this.nodeName?(null===(r=this.logger)||void 0===r||r.debug(`node name do not match, expected "${this.nodeName}", received "${l.localName}" `,Error()),null):l:(null===(t=this.logger)||void 0===t||t.debug(`Driver element is not available for ${this.nodeName}`,new Error),null)}get isExists(){return!!this.ele}}i=new WeakMap;class s extends l{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")}}const n=/^descope-grid-([^-]+)-column$/,o={text:class extends l{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 l{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)}}}};r=new WeakMap;var d;d=new WeakMap;class a extends l{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)}}exports.AppsListDriver=class extends l{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}},exports.AvatarDriver=class extends l{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)}}},exports.ButtonDriver=s,exports.DeviceListDriver=class extends l{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 i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("remove-device-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("remove-device-clicked",i)}}},exports.FlowButtonDriver=class extends s{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}},exports.FlowDriver=class extends l{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,i;e?null===(i=this.ele)||void 0===i||i.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)}}},exports.GenericFlowButtonDriver=class extends s{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")}},exports.GridDriver=class extends l{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 i;const r=null===(i=n.exec(t.localName))||void 0===i?void 0:i[1],l=o[r];return l?(e.push(new l(t,{logger:this.logger})),e):e}),[]):[]}filterColumns(i){var l,s;const n=null===(l=this.ele.columns)||void 0===l?void 0:l.filter(i);n&&this.ele.columns&&(t.compareArrays(n,this.ele.columns)||(this.ele.columns=n,null===(s=e.__classPrivateFieldGet(this,r,"f"))||void 0===s||s.call(this,n)))}onColumnsChange(t){e.__classPrivateFieldSet(this,r,t,"f")}set renderColumn(e){this.ele.renderColumn=e}},exports.LastAuthBadgeDriver=class extends l{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:""}},exports.LinkDriver=class extends l{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:"")}},exports.ModalDriver=class extends l{constructor(){super(...arguments),d.set(this,void 0),this.nodeName="descope-modal"}close(){var e,t;null===(e=this.ele)||void 0===e||e.removeAttribute("opened"),null===(t=this.afterClose)||void 0===t||t.call(this)}async open(){var e,t;await(null===(e=this.beforeOpen)||void 0===e?void 0:e.call(this)),null===(t=this.ele)||void 0===t||t.setAttribute("opened","true")}reset(){var t;this.ele&&(this.ele.innerHTML=""),e.__classPrivateFieldGet(this,d,"f")&&(null===(t=this.ele)||void 0===t||t.append(e.__classPrivateFieldGet(this,d,"f").content.cloneNode(!0)))}setContent(t){e.__classPrivateFieldSet(this,d,t,"f"),this.reset()}remove(){var e;null===(e=this.ele)||void 0===e||e.remove()}},exports.MultiLineMappingsDriver=class extends l{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:i})=>(e[t]=[...new Set([...e[t]||[],...i])],e)),{})).map((([e,t])=>({tenantId:e,roleNames:t})))}},exports.MultiSelectDriver=class extends l{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()))}},exports.NotificationDriver=class extends l{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()}},exports.OutboundAppsListDriver=class extends l{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 i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("connect-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("connect-clicked",i)}}onDisconnectClick(e){var t;const i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("disconnect-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("disconnect-clicked",i)}}},exports.SingleSelectDriver=a,exports.TenantSelectorDriver=class extends a{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}},exports.TextDriver=class extends l{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)}},exports.TextFieldDriver=class extends l{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")}},exports.UserAttributeDriver=class extends l{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)}}},exports.UserAuthMethodDriver=class extends l{constructor(){super(...arguments),this.nodeName="descope-user-auth-method"}set fulfilled(e){var t,i;e?null===(t=this.ele)||void 0===t||t.setAttribute("fulfilled","true"):null===(i=this.ele)||void 0===i||i.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")}},exports.UserPasskeysDriver=class extends l{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 i=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("remove-passkey-clicked",i),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("remove-passkey-clicked",i)}}};
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../src/BaseDriver.ts","../../src/helpers.ts","../../src/ButtonDriver.ts","../../src/gridDrivers/GridDriver.ts","../../src/gridDrivers/GridTextColumnDriver.ts","../../src/gridDrivers/GridCustomColumnDriver.ts","../../src/SingleSelectDriver.ts","../../src/AppsListDriver.ts","../../src/AvatarDriver.ts","../../src/DeviceListDriver.ts","../../src/FlowButtonDriver.ts","../../src/FlowDriver.ts","../../src/GenericFlowButtonDriver.ts","../../src/LastAuthBadgeDriver.ts","../../src/LinkDriver.ts","../../src/ModalDriver.ts","../../src/MultiSelectDriver.ts","../../src/NotificationDriver.ts","../../src/OutboundAppsListDriver.ts","../../src/TenantSelectorDriver.ts","../../src/TextDriver.ts","../../src/TextFieldDriver.ts","../../src/UserAttributeDriver.ts","../../src/UserAuthMethodDriver.ts"],"sourcesContent":["import { waitForElement } from './helpers';\nimport { RefOrRefFn } from './types';\n\ntype Logger = {\n error(...data: any[]): void;\n warn(...data: any[]): void;\n info(...data: any[]): void;\n debug(...data: any[]): void;\n};\n\nexport class BaseDriver {\n #ele: RefOrRefFn;\n\n logger: Logger | undefined;\n\n // eslint-disable-next-line class-methods-use-this\n nodeName = '';\n\n constructor(refOrRefFn: RefOrRefFn, config: { logger: Logger }) {\n this.#ele = refOrRefFn;\n this.logger = config.logger;\n }\n\n get asyncEle() {\n return waitForElement(this.#ele, 1000);\n }\n\n get ele() {\n const ele = typeof this.#ele === 'function' ? this.#ele() : this.#ele;\n if (!ele) {\n this.logger?.debug(\n `Driver element is not available for ${this.nodeName}`,\n new Error(),\n );\n\n return null;\n }\n\n if (ele?.localName !== this.nodeName) {\n this.logger?.debug(\n `node name do not match, expected \"${this.nodeName}\", received \"${ele.localName}\" `,\n Error(),\n );\n\n return null;\n }\n\n return ele;\n }\n\n get isExists() {\n return !!this.ele;\n }\n}\n","import { RefOrRefFn } from './types';\n\nexport const waitForElement = async (ele: RefOrRefFn, timeout: number) =>\n new Promise<Element | null>((resolve) => {\n const interval = setInterval(() => {\n const element = typeof ele === 'function' ? ele() : ele;\n if (element) {\n clearInterval(interval);\n resolve(element);\n }\n }, 100);\n setTimeout(() => {\n clearInterval(interval);\n resolve(null);\n }, timeout);\n });\n","import { BaseDriver } from './BaseDriver';\n\nexport class ButtonDriver extends BaseDriver {\n nodeName = 'descope-button';\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { compareArrays } from '@descope/sdk-helpers';\nimport { BaseDriver } from '../BaseDriver';\nimport { GridCustomColumnDriver } from './GridCustomColumnDriver';\nimport { GridTextColumnDriver } from './GridTextColumnDriver';\n\ntype Column = {\n path: string;\n header: string;\n type: string;\n attrs: Record<string, string>;\n};\n\nconst columnRegex = /^descope-grid-([^-]+)-column$/;\n\nconst driversMapping = {\n text: GridTextColumnDriver,\n custom: GridCustomColumnDriver,\n};\n\nexport class GridDriver<T extends any> extends BaseDriver {\n nodeName = 'descope-grid';\n #onColumnsChangeCb: (columns: Column[]) => void;\n\n onSelectedItemsChange(cb: (e: CustomEvent<{ value: T[] }>) => void) {\n this.ele?.addEventListener('selected-items-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n\n get ele() {\n return super.ele as Element & {\n data: T[];\n columns: Column[];\n renderColumn: ({ path, header, type, attrs }: Column) => string;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: T[]) {\n if (this.ele) this.ele.data = data;\n }\n\n get columns() {\n if (!this.ele) return [];\n return Array.from(this.ele.children).reduce((acc, child) => {\n const columnType = columnRegex.exec(child.localName)?.[1];\n const Driver = driversMapping[columnType];\n\n if (!Driver) return acc;\n\n acc.push(new Driver(child, { logger: this.logger }));\n\n return acc;\n }, []);\n }\n\n filterColumns(filterFn: (col: Column) => boolean) {\n const filteredColumns = this.ele.columns?.filter(filterFn);\n if (!filteredColumns || !this.ele.columns) return;\n if (!compareArrays(filteredColumns, this.ele.columns)) {\n this.ele.columns = filteredColumns;\n this.#onColumnsChangeCb?.(filteredColumns);\n }\n }\n\n onColumnsChange(cb: (columns: Column[]) => void) {\n this.#onColumnsChangeCb = cb;\n }\n\n set renderColumn(\n renderFn: ({ path, header, type, attrs }: Column) => string,\n ) {\n this.ele.renderColumn = renderFn;\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridTextColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-text-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridCustomColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-custom-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class SingleSelectDriver extends BaseDriver {\n nodeName = 'descope-combo-box';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n\n setAllowCustomValue(allow: boolean) {\n if (this.ele) {\n this.ele.toggleAttribute('allow-custom-value', allow);\n }\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = { name: string; icon: string; url: string }[];\n\nexport class AppsListDriver extends BaseDriver {\n nodeName = 'descope-apps-list';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class AvatarDriver extends BaseDriver {\n nodeName = 'descope-avatar';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n set image(imgUrl: string) {\n this.ele?.setAttribute('img', imgUrl);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n lastLoginDate: number;\n isCurrent: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class DeviceListDriver extends BaseDriver {\n nodeName = 'descope-trusted-devices';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onRemoveDeviceClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-device-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-device-clicked', handler);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class FlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class FlowDriver extends BaseDriver {\n nodeName = 'descope-wc';\n\n set projectId(projectId: string) {\n this.ele?.setAttribute('project-id', projectId);\n }\n\n set baseUrl(baseUrl: string) {\n this.ele?.setAttribute('base-url', baseUrl);\n }\n\n set flowId(flowId: string) {\n this.ele?.setAttribute('flow-id', flowId);\n }\n\n set theme(theme: string | null | undefined) {\n if (!theme) {\n this.ele?.removeAttribute('theme');\n } else {\n this.ele?.setAttribute('theme', theme);\n }\n }\n\n onSuccess(cb: () => void) {\n this.ele?.addEventListener('success', cb);\n\n return () => this.ele?.removeEventListener('success', cb);\n }\n onPageUpdated(cb: () => void) {\n this.ele?.addEventListener('page-updated', cb);\n\n return () => this.ele?.removeEventListener('page-updated', cb);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class GenericFlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n get enableMode(): 'onlyOne' | 'oneOrMore' | 'always' {\n return this.ele?.getAttribute('enable-mode') as\n | 'onlyOne'\n | 'oneOrMore'\n | 'always';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LastAuthBadgeDriver extends BaseDriver {\n nodeName = 'descope-attachment';\n\n set position(value: string) {\n this.ele?.setAttribute('position', value);\n }\n\n get position() {\n return this.ele?.getAttribute('position') ?? '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LinkDriver extends BaseDriver {\n nodeName = 'descope-link';\n\n get ele() {\n return super.ele as Element & {\n innerText: string;\n getAttribute: (name: string) => string | null;\n };\n }\n\n get href() {\n return this.ele?.getAttribute('href');\n }\n\n set href(href: string) {\n this.ele?.setAttribute('href', href ?? '');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ModalDriver extends BaseDriver {\n #modalContent: HTMLTemplateElement;\n\n beforeOpen: undefined | (() => void | Promise<void>);\n\n afterClose: undefined | (() => void);\n\n nodeName = 'descope-modal';\n\n close() {\n this.ele?.removeAttribute('opened');\n this.afterClose?.();\n }\n\n async open() {\n await this.beforeOpen?.();\n this.ele?.setAttribute('opened', 'true');\n }\n\n reset() {\n if (this.ele) this.ele.innerHTML = '';\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.#modalContent &&\n this.ele?.append(this.#modalContent.content.cloneNode(true));\n }\n\n setContent(template: HTMLTemplateElement) {\n this.#modalContent = template;\n this.reset();\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class MultiSelectDriver extends BaseDriver {\n nodeName = 'descope-multi-select-combo-box';\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class NotificationDriver extends BaseDriver {\n nodeName = 'descope-notification';\n\n close() {\n this.ele?.removeAttribute('opened');\n }\n\n show() {\n this.ele?.setAttribute('opened', 'true');\n }\n\n setContent(template: HTMLTemplateElement) {\n this.ele.innerHTML = '';\n this.ele.appendChild(template.content.cloneNode(true));\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n description?: string;\n logo?: string;\n isConnected?: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class OutboundAppsListDriver extends BaseDriver {\n nodeName = 'descope-outbound-apps';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get connectFlowId() {\n return this.ele?.getAttribute('connect-flow-id') || '';\n }\n\n get disconnectFlowId() {\n return this.ele?.getAttribute('disconnect-flow-id') || '';\n }\n\n onConnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('connect-clicked', handler);\n\n return () => this.ele?.removeEventListener('connect-clicked', handler);\n }\n\n onDisconnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('disconnect-clicked', handler);\n\n return () => this.ele?.removeEventListener('disconnect-clicked', handler);\n }\n}\n","import { SingleSelectDriver } from './SingleSelectDriver';\n\nexport class TenantSelectorDriver extends SingleSelectDriver {\n get action(): 'reload' | 'none' | '' {\n return (this.ele?.getAttribute('data-action') || '') as\n | 'reload'\n | 'none'\n | '';\n }\n\n get refreshTimeout(): number {\n return Number(this.ele?.getAttribute('data-refresh-timeout')) || 500;\n }\n\n get shouldReload() {\n return this.action === 'reload';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextDriver extends BaseDriver {\n nodeName = 'descope-text';\n\n get ele() {\n return super.ele as Element & { innerText: string };\n }\n\n get text() {\n return this.ele?.innerText;\n }\n\n set text(content: string) {\n if (this.ele) this.ele.innerText = content;\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextFieldDriver extends BaseDriver {\n nodeName = 'descope-text-field';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAttributeDriver extends BaseDriver {\n nodeName = 'descope-user-attribute';\n\n set value(value: string) {\n this.ele?.setAttribute('value', value);\n }\n\n set badgeLabel(label: string) {\n this.ele?.setAttribute('badge-label', label);\n }\n\n get label() {\n return this.ele?.getAttribute('label') || '';\n }\n\n get editFlowId() {\n return this.ele?.getAttribute('edit-flow-id') || '';\n }\n\n get deleteFlowId() {\n return this.ele?.getAttribute('delete-flow-id') || '';\n }\n\n onEditClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('edit-clicked', cb);\n\n return () => this.ele?.removeEventListener('edit-clicked', cb);\n }\n\n onDeleteClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('delete-clicked', cb);\n\n return () => this.ele?.removeEventListener('delete-clicked', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAuthMethodDriver extends BaseDriver {\n nodeName = 'descope-user-auth-method';\n\n set fulfilled(isFulfilled: boolean) {\n isFulfilled\n ? this.ele?.setAttribute('fulfilled', 'true')\n : this.ele?.removeAttribute('fulfilled');\n }\n\n onUnfulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('button-clicked', cb);\n\n return () => this.ele?.removeEventListener('button-clicked', cb);\n }\n\n onFulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('fulfilled-button-clicked', cb);\n\n return () => this.ele?.removeEventListener('fulfilled-button-clicked', cb);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n get fulfilledFlowId() {\n return this.ele?.getAttribute('fulfilled-flow-id');\n }\n}\n"],"names":["BaseDriver","constructor","refOrRefFn","config","_BaseDriver_ele","set","this","nodeName","__classPrivateFieldSet","logger","asyncEle","async","ele","timeout","Promise","resolve","interval","setInterval","element","clearInterval","setTimeout","waitForElement","__classPrivateFieldGet","call","localName","_b","debug","Error","_a","isExists","ButtonDriver","onClick","cb","addEventListener","removeEventListener","disable","setAttribute","enable","removeAttribute","columnRegex","driversMapping","text","onSortDirectionChange","custom","SingleSelectDriver","onInput","value","setData","data","JSON","stringify","sort","setAllowCustomValue","allow","toggleAttribute","super","displayName","name","image","imgUrl","flowId","getAttribute","onRemoveDeviceClick","handler","e","detail","projectId","baseUrl","theme","onSuccess","onPageUpdated","enableMode","_GridDriver_onColumnsChangeCb","onSelectedItemsChange","columns","Array","from","children","reduce","acc","child","columnType","exec","Driver","push","filterColumns","filterFn","filteredColumns","filter","compareArrays","onColumnsChange","renderColumn","renderFn","position","href","_ModalDriver_modalContent","close","afterClose","open","beforeOpen","reset","innerHTML","append","content","cloneNode","setContent","template","remove","show","appendChild","connectFlowId","disconnectFlowId","onConnectClick","onDisconnectClick","action","refreshTimeout","Number","shouldReload","innerText","badgeLabel","label","editFlowId","deleteFlowId","onEditClick","onDeleteClick","fulfilled","isFulfilled","onUnfulfilledButtonClick","onFulfilledButtonClick","fulfilledFlowId"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../src/BaseDriver.ts","../../src/helpers.ts","../../src/ButtonDriver.ts","../../src/gridDrivers/GridDriver.ts","../../src/gridDrivers/GridTextColumnDriver.ts","../../src/gridDrivers/GridCustomColumnDriver.ts","../../src/SingleSelectDriver.ts","../../src/AppsListDriver.ts","../../src/AvatarDriver.ts","../../src/DeviceListDriver.ts","../../src/FlowButtonDriver.ts","../../src/FlowDriver.ts","../../src/GenericFlowButtonDriver.ts","../../src/LastAuthBadgeDriver.ts","../../src/LinkDriver.ts","../../src/ModalDriver.ts","../../src/MultiLineMappingsDriver.ts","../../src/MultiSelectDriver.ts","../../src/NotificationDriver.ts","../../src/OutboundAppsListDriver.ts","../../src/TenantSelectorDriver.ts","../../src/TextDriver.ts","../../src/TextFieldDriver.ts","../../src/UserAttributeDriver.ts","../../src/UserAuthMethodDriver.ts","../../src/UserPasskeysDriver.ts"],"sourcesContent":["import { waitForElement } from './helpers';\nimport { RefOrRefFn } from './types';\n\ntype Logger = {\n error(...data: any[]): void;\n warn(...data: any[]): void;\n info(...data: any[]): void;\n debug(...data: any[]): void;\n};\n\nexport class BaseDriver {\n #ele: RefOrRefFn;\n\n logger: Logger | undefined;\n\n // eslint-disable-next-line class-methods-use-this\n nodeName = '';\n\n constructor(refOrRefFn: RefOrRefFn, config: { logger: Logger }) {\n this.#ele = refOrRefFn;\n this.logger = config.logger;\n }\n\n get asyncEle() {\n return waitForElement(this.#ele, 1000);\n }\n\n get ele() {\n const ele = typeof this.#ele === 'function' ? this.#ele() : this.#ele;\n if (!ele) {\n this.logger?.debug(\n `Driver element is not available for ${this.nodeName}`,\n new Error(),\n );\n\n return null;\n }\n\n if (ele?.localName !== this.nodeName) {\n this.logger?.debug(\n `node name do not match, expected \"${this.nodeName}\", received \"${ele.localName}\" `,\n Error(),\n );\n\n return null;\n }\n\n return ele;\n }\n\n get isExists() {\n return !!this.ele;\n }\n}\n","import { RefOrRefFn } from './types';\n\nexport const waitForElement = async (ele: RefOrRefFn, timeout: number) =>\n new Promise<Element | null>((resolve) => {\n const interval = setInterval(() => {\n const element = typeof ele === 'function' ? ele() : ele;\n if (element) {\n clearInterval(interval);\n resolve(element);\n }\n }, 100);\n setTimeout(() => {\n clearInterval(interval);\n resolve(null);\n }, timeout);\n });\n","import { BaseDriver } from './BaseDriver';\n\nexport class ButtonDriver extends BaseDriver {\n nodeName = 'descope-button';\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { compareArrays } from '@descope/sdk-helpers';\nimport { BaseDriver } from '../BaseDriver';\nimport { GridCustomColumnDriver } from './GridCustomColumnDriver';\nimport { GridTextColumnDriver } from './GridTextColumnDriver';\n\ntype Column = {\n path: string;\n header: string;\n type: string;\n attrs: Record<string, string>;\n};\n\nconst columnRegex = /^descope-grid-([^-]+)-column$/;\n\nconst driversMapping = {\n text: GridTextColumnDriver,\n custom: GridCustomColumnDriver,\n};\n\nexport class GridDriver<T extends any> extends BaseDriver {\n nodeName = 'descope-grid';\n #onColumnsChangeCb: (columns: Column[]) => void;\n\n onSelectedItemsChange(cb: (e: CustomEvent<{ value: T[] }>) => void) {\n this.ele?.addEventListener('selected-items-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n\n get ele() {\n return super.ele as Element & {\n data: T[];\n columns: Column[];\n renderColumn: ({ path, header, type, attrs }: Column) => string;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: T[]) {\n if (this.ele) this.ele.data = data;\n }\n\n get columns() {\n if (!this.ele) return [];\n return Array.from(this.ele.children).reduce((acc, child) => {\n const columnType = columnRegex.exec(child.localName)?.[1];\n const Driver = driversMapping[columnType];\n\n if (!Driver) return acc;\n\n acc.push(new Driver(child, { logger: this.logger }));\n\n return acc;\n }, []);\n }\n\n filterColumns(filterFn: (col: Column) => boolean) {\n const filteredColumns = this.ele.columns?.filter(filterFn);\n if (!filteredColumns || !this.ele.columns) return;\n if (!compareArrays(filteredColumns, this.ele.columns)) {\n this.ele.columns = filteredColumns;\n this.#onColumnsChangeCb?.(filteredColumns);\n }\n }\n\n onColumnsChange(cb: (columns: Column[]) => void) {\n this.#onColumnsChangeCb = cb;\n }\n\n set renderColumn(\n renderFn: ({ path, header, type, attrs }: Column) => string,\n ) {\n this.ele.renderColumn = renderFn;\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridTextColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-text-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridCustomColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-custom-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class SingleSelectDriver extends BaseDriver {\n nodeName = 'descope-combo-box';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n\n setAllowCustomValue(allow: boolean) {\n if (this.ele) {\n this.ele.toggleAttribute('allow-custom-value', allow);\n }\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = { name: string; icon: string; url: string }[];\n\nexport class AppsListDriver extends BaseDriver {\n nodeName = 'descope-apps-list';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class AvatarDriver extends BaseDriver {\n nodeName = 'descope-avatar';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n set image(imgUrl: string) {\n this.ele?.setAttribute('img', imgUrl);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n lastLoginDate: number;\n isCurrent: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class DeviceListDriver extends BaseDriver {\n nodeName = 'descope-trusted-devices';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onRemoveDeviceClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-device-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-device-clicked', handler);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class FlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class FlowDriver extends BaseDriver {\n nodeName = 'descope-wc';\n\n set projectId(projectId: string) {\n this.ele?.setAttribute('project-id', projectId);\n }\n\n set baseUrl(baseUrl: string) {\n this.ele?.setAttribute('base-url', baseUrl);\n }\n\n set flowId(flowId: string) {\n this.ele?.setAttribute('flow-id', flowId);\n }\n\n set theme(theme: string | null | undefined) {\n if (!theme) {\n this.ele?.removeAttribute('theme');\n } else {\n this.ele?.setAttribute('theme', theme);\n }\n }\n\n onSuccess(cb: () => void) {\n this.ele?.addEventListener('success', cb);\n\n return () => this.ele?.removeEventListener('success', cb);\n }\n onPageUpdated(cb: () => void) {\n this.ele?.addEventListener('page-updated', cb);\n\n return () => this.ele?.removeEventListener('page-updated', cb);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class GenericFlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n get enableMode(): 'onlyOne' | 'oneOrMore' | 'always' {\n return this.ele?.getAttribute('enable-mode') as\n | 'onlyOne'\n | 'oneOrMore'\n | 'always';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LastAuthBadgeDriver extends BaseDriver {\n nodeName = 'descope-attachment';\n\n set position(value: string) {\n this.ele?.setAttribute('position', value);\n }\n\n get position() {\n return this.ele?.getAttribute('position') ?? '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LinkDriver extends BaseDriver {\n nodeName = 'descope-link';\n\n get ele() {\n return super.ele as Element & {\n innerText: string;\n getAttribute: (name: string) => string | null;\n };\n }\n\n get href() {\n return this.ele?.getAttribute('href');\n }\n\n set href(href: string) {\n this.ele?.setAttribute('href', href ?? '');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ModalDriver extends BaseDriver {\n #modalContent: HTMLTemplateElement;\n\n beforeOpen: undefined | (() => void | Promise<void>);\n\n afterClose: undefined | (() => void);\n\n nodeName = 'descope-modal';\n\n close() {\n this.ele?.removeAttribute('opened');\n this.afterClose?.();\n }\n\n async open() {\n await this.beforeOpen?.();\n this.ele?.setAttribute('opened', 'true');\n }\n\n reset() {\n if (this.ele) this.ele.innerHTML = '';\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.#modalContent &&\n this.ele?.append(this.#modalContent.content.cloneNode(true));\n }\n\n setContent(template: HTMLTemplateElement) {\n this.#modalContent = template;\n this.reset();\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Mapping = { tenantId: string; roleNames: string[] };\n\nexport class MultiLineMappingsDriver extends BaseDriver {\n nodeName = 'descope-multi-line-mappings';\n\n setData(\n data: Record<string, string[] | { label?: string; options: string[] }>,\n ) {\n this.ele?.setAttribute('data', JSON.stringify(data));\n }\n\n get value(): Mapping[] {\n return (this.ele as any)?.value || [];\n }\n\n set value(mappings: Mapping[]) {\n if (this.ele) {\n (this.ele as any).value = mappings;\n }\n }\n\n get mergedValue(): Mapping[] {\n return Object.entries(\n this.value\n .filter(({ tenantId }) => !!tenantId)\n .reduce<Record<string, string[]>>((acc, { tenantId, roleNames }) => {\n acc[tenantId] = [\n ...new Set([...(acc[tenantId] || []), ...roleNames]),\n ];\n return acc;\n }, {}),\n ).map(([tenantId, roleNames]) => ({ tenantId, roleNames }));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class MultiSelectDriver extends BaseDriver {\n nodeName = 'descope-multi-select-combo-box';\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class NotificationDriver extends BaseDriver {\n nodeName = 'descope-notification';\n\n close() {\n this.ele?.removeAttribute('opened');\n }\n\n show() {\n this.ele?.setAttribute('opened', 'true');\n }\n\n setContent(template: HTMLTemplateElement) {\n this.ele.innerHTML = '';\n this.ele.appendChild(template.content.cloneNode(true));\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n description?: string;\n logo?: string;\n isConnected?: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class OutboundAppsListDriver extends BaseDriver {\n nodeName = 'descope-outbound-apps';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get connectFlowId() {\n return this.ele?.getAttribute('connect-flow-id') || '';\n }\n\n get disconnectFlowId() {\n return this.ele?.getAttribute('disconnect-flow-id') || '';\n }\n\n onConnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('connect-clicked', handler);\n\n return () => this.ele?.removeEventListener('connect-clicked', handler);\n }\n\n onDisconnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('disconnect-clicked', handler);\n\n return () => this.ele?.removeEventListener('disconnect-clicked', handler);\n }\n}\n","import { SingleSelectDriver } from './SingleSelectDriver';\n\nexport class TenantSelectorDriver extends SingleSelectDriver {\n get action(): 'reload' | 'none' | '' {\n return (this.ele?.getAttribute('data-action') || '') as\n | 'reload'\n | 'none'\n | '';\n }\n\n get refreshTimeout(): number {\n return Number(this.ele?.getAttribute('data-refresh-timeout')) || 500;\n }\n\n get shouldReload() {\n return this.action === 'reload';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextDriver extends BaseDriver {\n nodeName = 'descope-text';\n\n get ele() {\n return super.ele as Element & { innerText: string };\n }\n\n get text() {\n return this.ele?.innerText;\n }\n\n set text(content: string) {\n if (this.ele) this.ele.innerText = content;\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextFieldDriver extends BaseDriver {\n nodeName = 'descope-text-field';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAttributeDriver extends BaseDriver {\n nodeName = 'descope-user-attribute';\n\n set value(value: string) {\n this.ele?.setAttribute('value', value);\n }\n\n set badgeLabel(label: string) {\n this.ele?.setAttribute('badge-label', label);\n }\n\n get label() {\n return this.ele?.getAttribute('label') || '';\n }\n\n get editFlowId() {\n return this.ele?.getAttribute('edit-flow-id') || '';\n }\n\n get deleteFlowId() {\n return this.ele?.getAttribute('delete-flow-id') || '';\n }\n\n onEditClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('edit-clicked', cb);\n\n return () => this.ele?.removeEventListener('edit-clicked', cb);\n }\n\n onDeleteClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('delete-clicked', cb);\n\n return () => this.ele?.removeEventListener('delete-clicked', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAuthMethodDriver extends BaseDriver {\n nodeName = 'descope-user-auth-method';\n\n set fulfilled(isFulfilled: boolean) {\n isFulfilled\n ? this.ele?.setAttribute('fulfilled', 'true')\n : this.ele?.removeAttribute('fulfilled');\n }\n\n onUnfulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('button-clicked', cb);\n\n return () => this.ele?.removeEventListener('button-clicked', cb);\n }\n\n onFulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('fulfilled-button-clicked', cb);\n\n return () => this.ele?.removeEventListener('fulfilled-button-clicked', cb);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n get fulfilledFlowId() {\n return this.ele?.getAttribute('fulfilled-flow-id');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype PasskeyType =\n | 'apple'\n | 'google'\n | 'windows'\n | 'chrome'\n | 'edge'\n | 'samsung'\n | '1password'\n | 'bitwarden'\n | 'lastpass'\n | 'dashlane'\n | 'keeper'\n | 'keepassxc'\n | 'proton'\n | 'nordpass'\n | 'enpass'\n | 'key'\n | 'phone'\n | 'other';\n\ntype Data = {\n id: string;\n name: string;\n passkeyType: PasskeyType;\n createdAt: number;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class UserPasskeysDriver extends BaseDriver {\n nodeName = 'descope-user-passkeys';\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get addPasskeyFlowId() {\n return this.ele?.getAttribute('add-passkey-flow-id');\n }\n\n get removePasskeyFlowId() {\n return this.ele?.getAttribute('remove-passkey-flow-id');\n }\n\n onAddPasskeyClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('add-passkey-clicked', cb);\n return () => this.ele?.removeEventListener('add-passkey-clicked', cb);\n }\n\n onRemovePasskeyClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-passkey-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-passkey-clicked', handler);\n }\n}\n"],"names":["BaseDriver","constructor","refOrRefFn","config","_BaseDriver_ele","set","this","nodeName","__classPrivateFieldSet","logger","asyncEle","async","ele","timeout","Promise","resolve","interval","setInterval","element","clearInterval","setTimeout","waitForElement","__classPrivateFieldGet","call","localName","_b","debug","Error","_a","isExists","ButtonDriver","onClick","cb","addEventListener","removeEventListener","disable","setAttribute","enable","removeAttribute","columnRegex","driversMapping","text","onSortDirectionChange","custom","SingleSelectDriver","onInput","value","setData","data","JSON","stringify","sort","setAllowCustomValue","allow","toggleAttribute","super","displayName","name","image","imgUrl","flowId","getAttribute","onRemoveDeviceClick","handler","e","detail","projectId","baseUrl","theme","onSuccess","onPageUpdated","enableMode","_GridDriver_onColumnsChangeCb","onSelectedItemsChange","columns","Array","from","children","reduce","acc","child","columnType","exec","Driver","push","filterColumns","filterFn","filteredColumns","filter","compareArrays","onColumnsChange","renderColumn","renderFn","position","href","_ModalDriver_modalContent","close","afterClose","open","beforeOpen","reset","innerHTML","append","content","cloneNode","setContent","template","remove","mappings","mergedValue","Object","entries","tenantId","roleNames","Set","map","show","appendChild","connectFlowId","disconnectFlowId","onConnectClick","onDisconnectClick","action","refreshTimeout","Number","shouldReload","innerText","badgeLabel","label","editFlowId","deleteFlowId","onEditClick","onDeleteClick","fulfilled","isFulfilled","onUnfulfilledButtonClick","onFulfilledButtonClick","fulfilledFlowId","addPasskeyFlowId","removePasskeyFlowId","onAddPasskeyClick","onRemovePasskeyClick"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -19,17 +19,17 @@ declare class BaseDriver {
|
|
|
19
19
|
get isExists(): boolean;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
type Data$
|
|
22
|
+
type Data$3 = {
|
|
23
23
|
name: string;
|
|
24
24
|
icon: string;
|
|
25
25
|
url: string;
|
|
26
26
|
}[];
|
|
27
27
|
declare class AppsListDriver extends BaseDriver {
|
|
28
28
|
nodeName: string;
|
|
29
|
-
set data(data: Data$
|
|
30
|
-
get data(): Data$
|
|
29
|
+
set data(data: Data$3);
|
|
30
|
+
get data(): Data$3;
|
|
31
31
|
get ele(): Element & {
|
|
32
|
-
data: Data$
|
|
32
|
+
data: Data$3;
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
|
|
@@ -110,6 +110,21 @@ declare class ModalDriver extends BaseDriver {
|
|
|
110
110
|
remove(): void;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
type Mapping = {
|
|
114
|
+
tenantId: string;
|
|
115
|
+
roleNames: string[];
|
|
116
|
+
};
|
|
117
|
+
declare class MultiLineMappingsDriver extends BaseDriver {
|
|
118
|
+
nodeName: string;
|
|
119
|
+
setData(data: Record<string, string[] | {
|
|
120
|
+
label?: string;
|
|
121
|
+
options: string[];
|
|
122
|
+
}>): void;
|
|
123
|
+
get value(): Mapping[];
|
|
124
|
+
set value(mappings: Mapping[]);
|
|
125
|
+
get mergedValue(): Mapping[];
|
|
126
|
+
}
|
|
127
|
+
|
|
113
128
|
declare class MultiSelectDriver extends BaseDriver {
|
|
114
129
|
nodeName: string;
|
|
115
130
|
setData(data: {
|
|
@@ -126,28 +141,28 @@ declare class NotificationDriver extends BaseDriver {
|
|
|
126
141
|
remove(): void;
|
|
127
142
|
}
|
|
128
143
|
|
|
129
|
-
type Data$
|
|
144
|
+
type Data$2 = {
|
|
130
145
|
id: string;
|
|
131
146
|
name: string;
|
|
132
147
|
description?: string;
|
|
133
148
|
logo?: string;
|
|
134
149
|
isConnected?: boolean;
|
|
135
150
|
}[];
|
|
136
|
-
type Detail$
|
|
151
|
+
type Detail$2 = {
|
|
137
152
|
id: string;
|
|
138
153
|
action: string;
|
|
139
154
|
};
|
|
140
155
|
declare class OutboundAppsListDriver extends BaseDriver {
|
|
141
156
|
nodeName: string;
|
|
142
|
-
set data(data: Data$
|
|
143
|
-
get data(): Data$
|
|
157
|
+
set data(data: Data$2);
|
|
158
|
+
get data(): Data$2;
|
|
144
159
|
get ele(): Element & {
|
|
145
|
-
data: Data$
|
|
160
|
+
data: Data$2;
|
|
146
161
|
};
|
|
147
162
|
get connectFlowId(): string;
|
|
148
163
|
get disconnectFlowId(): string;
|
|
149
|
-
onConnectClick(cb: (detail: Detail$
|
|
150
|
-
onDisconnectClick(cb: (detail: Detail$
|
|
164
|
+
onConnectClick(cb: (detail: Detail$2) => void): () => void;
|
|
165
|
+
onDisconnectClick(cb: (detail: Detail$2) => void): () => void;
|
|
151
166
|
}
|
|
152
167
|
|
|
153
168
|
declare class SingleSelectDriver extends BaseDriver {
|
|
@@ -200,13 +215,13 @@ declare class UserAuthMethodDriver extends BaseDriver {
|
|
|
200
215
|
get fulfilledFlowId(): string;
|
|
201
216
|
}
|
|
202
217
|
|
|
203
|
-
type Data = {
|
|
218
|
+
type Data$1 = {
|
|
204
219
|
id: string;
|
|
205
220
|
name: string;
|
|
206
221
|
lastLoginDate: number;
|
|
207
222
|
isCurrent: boolean;
|
|
208
223
|
}[];
|
|
209
|
-
type Detail = {
|
|
224
|
+
type Detail$1 = {
|
|
210
225
|
id: string;
|
|
211
226
|
action: string;
|
|
212
227
|
};
|
|
@@ -214,12 +229,12 @@ declare class DeviceListDriver extends BaseDriver {
|
|
|
214
229
|
nodeName: string;
|
|
215
230
|
set displayName(name: string);
|
|
216
231
|
get ele(): Element & {
|
|
217
|
-
data: Data;
|
|
232
|
+
data: Data$1;
|
|
218
233
|
};
|
|
219
|
-
get data(): Data;
|
|
220
|
-
set data(data: Data);
|
|
234
|
+
get data(): Data$1;
|
|
235
|
+
set data(data: Data$1);
|
|
221
236
|
get flowId(): string;
|
|
222
|
-
onRemoveDeviceClick(cb: (detail: Detail) => void): () => void;
|
|
237
|
+
onRemoveDeviceClick(cb: (detail: Detail$1) => void): () => void;
|
|
223
238
|
}
|
|
224
239
|
|
|
225
240
|
declare class FlowButtonDriver extends ButtonDriver {
|
|
@@ -238,4 +253,28 @@ declare class TenantSelectorDriver extends SingleSelectDriver {
|
|
|
238
253
|
get shouldReload(): boolean;
|
|
239
254
|
}
|
|
240
255
|
|
|
241
|
-
|
|
256
|
+
type PasskeyType = 'apple' | 'google' | 'windows' | 'chrome' | 'edge' | 'samsung' | '1password' | 'bitwarden' | 'lastpass' | 'dashlane' | 'keeper' | 'keepassxc' | 'proton' | 'nordpass' | 'enpass' | 'key' | 'phone' | 'other';
|
|
257
|
+
type Data = {
|
|
258
|
+
id: string;
|
|
259
|
+
name: string;
|
|
260
|
+
passkeyType: PasskeyType;
|
|
261
|
+
createdAt: number;
|
|
262
|
+
}[];
|
|
263
|
+
type Detail = {
|
|
264
|
+
id: string;
|
|
265
|
+
action: string;
|
|
266
|
+
};
|
|
267
|
+
declare class UserPasskeysDriver extends BaseDriver {
|
|
268
|
+
nodeName: string;
|
|
269
|
+
get ele(): Element & {
|
|
270
|
+
data: Data;
|
|
271
|
+
};
|
|
272
|
+
get data(): Data;
|
|
273
|
+
set data(data: Data);
|
|
274
|
+
get addPasskeyFlowId(): string;
|
|
275
|
+
get removePasskeyFlowId(): string;
|
|
276
|
+
onAddPasskeyClick(cb: (e: Event) => void): () => void;
|
|
277
|
+
onRemovePasskeyClick(cb: (detail: Detail) => void): () => void;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
export { AppsListDriver, AvatarDriver, ButtonDriver, DeviceListDriver, FlowButtonDriver, FlowDriver, GenericFlowButtonDriver, GridDriver, LastAuthBadgeDriver, LinkDriver, ModalDriver, MultiLineMappingsDriver, MultiSelectDriver, NotificationDriver, OutboundAppsListDriver, SingleSelectDriver, TenantSelectorDriver, TextDriver, TextFieldDriver, UserAttributeDriver, UserAuthMethodDriver, UserPasskeysDriver };
|
package/dist/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
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 u 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 a 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;class g extends s{constructor(){super(...arguments),p.set(this,void 0),this.nodeName="descope-modal"}close(){var e,t;null===(e=this.ele)||void 0===e||e.removeAttribute("opened"),null===(t=this.afterClose)||void 0===t||t.call(this)}async open(){var e,t;await(null===(e=this.beforeOpen)||void 0===e?void 0:e.call(this)),null===(t=this.ele)||void 0===t||t.setAttribute("opened","true")}reset(){var e;this.ele&&(this.ele.innerHTML=""),t(this,p,"f")&&(null===(e=this.ele)||void 0===e||e.append(t(this,p,"f").content.cloneNode(!0)))}setContent(t){e(this,p,t,"f"),this.reset()}remove(){var e;null===(e=this.ele)||void 0===e||e.remove()}}p=new WeakMap;class b 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 f 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 A 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 E 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 x 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 w 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 L 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 N 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 k 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 C extends d{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}}class I 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 y extends E{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}}export{n as AppsListDriver,o as AvatarDriver,d as ButtonDriver,k as DeviceListDriver,C as FlowButtonDriver,u as FlowDriver,a as GenericFlowButtonDriver,h as GridDriver,I as LastAuthBadgeDriver,m as LinkDriver,g as ModalDriver,b as MultiSelectDriver,f as NotificationDriver,A as OutboundAppsListDriver,E as SingleSelectDriver,y as TenantSelectorDriver,x as TextDriver,w as TextFieldDriver,L as UserAttributeDriver,N as UserAuthMethodDriver};
|
|
1
|
+
import{__classPrivateFieldSet as e,__classPrivateFieldGet as t}from"tslib";import{compareArrays as l}from"@descope/sdk-helpers";var i,s;class r{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 s="function"==typeof t(this,i,"f")?t(this,i,"f").call(this):t(this,i,"f");return s?(null==s?void 0:s.localName)!==this.nodeName?(null===(l=this.logger)||void 0===l||l.debug(`node name do not match, expected "${this.nodeName}", received "${s.localName}" `,Error()),null):s:(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 r{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 r{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 r{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 r{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 r{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 r{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 r{constructor(){super(...arguments),this.nodeName="descope-grid",s.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],s=c[i];return s?(e.push(new s(t,{logger:this.logger})),e):e}),[]):[]}filterColumns(e){var i,r;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===(r=t(this,s,"f"))||void 0===r||r.call(this,n)))}onColumnsChange(t){e(this,s,t,"f")}set renderColumn(e){this.ele.renderColumn=e}}s=new WeakMap;class m extends r{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;class g extends r{constructor(){super(...arguments),p.set(this,void 0),this.nodeName="descope-modal"}close(){var e,t;null===(e=this.ele)||void 0===e||e.removeAttribute("opened"),null===(t=this.afterClose)||void 0===t||t.call(this)}async open(){var e,t;await(null===(e=this.beforeOpen)||void 0===e?void 0:e.call(this)),null===(t=this.ele)||void 0===t||t.setAttribute("opened","true")}reset(){var e;this.ele&&(this.ele.innerHTML=""),t(this,p,"f")&&(null===(e=this.ele)||void 0===e||e.append(t(this,p,"f").content.cloneNode(!0)))}setContent(t){e(this,p,t,"f"),this.reset()}remove(){var e;null===(e=this.ele)||void 0===e||e.remove()}}p=new WeakMap;class b extends r{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 f extends r{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 k extends r{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 A extends r{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 E extends r{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 w extends r{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 L extends r{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 x extends r{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 N extends r{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 y extends r{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 C extends d{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}}class I extends r{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 D extends E{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 F extends r{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)}}}export{n as AppsListDriver,o as AvatarDriver,d as ButtonDriver,y as DeviceListDriver,C as FlowButtonDriver,a as FlowDriver,u as GenericFlowButtonDriver,h as GridDriver,I as LastAuthBadgeDriver,m as LinkDriver,g as ModalDriver,b as MultiLineMappingsDriver,f as MultiSelectDriver,k as NotificationDriver,A as OutboundAppsListDriver,E as SingleSelectDriver,D as TenantSelectorDriver,w as TextDriver,L as TextFieldDriver,x as UserAttributeDriver,N as UserAuthMethodDriver,F as UserPasskeysDriver};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|
package/dist/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../src/BaseDriver.ts","../src/helpers.ts","../src/AppsListDriver.ts","../src/AvatarDriver.ts","../src/ButtonDriver.ts","../src/FlowDriver.ts","../src/GenericFlowButtonDriver.ts","../src/gridDrivers/GridDriver.ts","../src/gridDrivers/GridTextColumnDriver.ts","../src/gridDrivers/GridCustomColumnDriver.ts","../src/LinkDriver.ts","../src/ModalDriver.ts","../src/MultiSelectDriver.ts","../src/NotificationDriver.ts","../src/OutboundAppsListDriver.ts","../src/SingleSelectDriver.ts","../src/TextDriver.ts","../src/TextFieldDriver.ts","../src/UserAttributeDriver.ts","../src/UserAuthMethodDriver.ts","../src/DeviceListDriver.ts","../src/FlowButtonDriver.ts","../src/LastAuthBadgeDriver.ts","../src/TenantSelectorDriver.ts"],"sourcesContent":["import { waitForElement } from './helpers';\nimport { RefOrRefFn } from './types';\n\ntype Logger = {\n error(...data: any[]): void;\n warn(...data: any[]): void;\n info(...data: any[]): void;\n debug(...data: any[]): void;\n};\n\nexport class BaseDriver {\n #ele: RefOrRefFn;\n\n logger: Logger | undefined;\n\n // eslint-disable-next-line class-methods-use-this\n nodeName = '';\n\n constructor(refOrRefFn: RefOrRefFn, config: { logger: Logger }) {\n this.#ele = refOrRefFn;\n this.logger = config.logger;\n }\n\n get asyncEle() {\n return waitForElement(this.#ele, 1000);\n }\n\n get ele() {\n const ele = typeof this.#ele === 'function' ? this.#ele() : this.#ele;\n if (!ele) {\n this.logger?.debug(\n `Driver element is not available for ${this.nodeName}`,\n new Error(),\n );\n\n return null;\n }\n\n if (ele?.localName !== this.nodeName) {\n this.logger?.debug(\n `node name do not match, expected \"${this.nodeName}\", received \"${ele.localName}\" `,\n Error(),\n );\n\n return null;\n }\n\n return ele;\n }\n\n get isExists() {\n return !!this.ele;\n }\n}\n","import { RefOrRefFn } from './types';\n\nexport const waitForElement = async (ele: RefOrRefFn, timeout: number) =>\n new Promise<Element | null>((resolve) => {\n const interval = setInterval(() => {\n const element = typeof ele === 'function' ? ele() : ele;\n if (element) {\n clearInterval(interval);\n resolve(element);\n }\n }, 100);\n setTimeout(() => {\n clearInterval(interval);\n resolve(null);\n }, timeout);\n });\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = { name: string; icon: string; url: string }[];\n\nexport class AppsListDriver extends BaseDriver {\n nodeName = 'descope-apps-list';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class AvatarDriver extends BaseDriver {\n nodeName = 'descope-avatar';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n set image(imgUrl: string) {\n this.ele?.setAttribute('img', imgUrl);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ButtonDriver extends BaseDriver {\n nodeName = 'descope-button';\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class FlowDriver extends BaseDriver {\n nodeName = 'descope-wc';\n\n set projectId(projectId: string) {\n this.ele?.setAttribute('project-id', projectId);\n }\n\n set baseUrl(baseUrl: string) {\n this.ele?.setAttribute('base-url', baseUrl);\n }\n\n set flowId(flowId: string) {\n this.ele?.setAttribute('flow-id', flowId);\n }\n\n set theme(theme: string | null | undefined) {\n if (!theme) {\n this.ele?.removeAttribute('theme');\n } else {\n this.ele?.setAttribute('theme', theme);\n }\n }\n\n onSuccess(cb: () => void) {\n this.ele?.addEventListener('success', cb);\n\n return () => this.ele?.removeEventListener('success', cb);\n }\n onPageUpdated(cb: () => void) {\n this.ele?.addEventListener('page-updated', cb);\n\n return () => this.ele?.removeEventListener('page-updated', cb);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class GenericFlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n get enableMode(): 'onlyOne' | 'oneOrMore' | 'always' {\n return this.ele?.getAttribute('enable-mode') as\n | 'onlyOne'\n | 'oneOrMore'\n | 'always';\n }\n}\n","import { compareArrays } from '@descope/sdk-helpers';\nimport { BaseDriver } from '../BaseDriver';\nimport { GridCustomColumnDriver } from './GridCustomColumnDriver';\nimport { GridTextColumnDriver } from './GridTextColumnDriver';\n\ntype Column = {\n path: string;\n header: string;\n type: string;\n attrs: Record<string, string>;\n};\n\nconst columnRegex = /^descope-grid-([^-]+)-column$/;\n\nconst driversMapping = {\n text: GridTextColumnDriver,\n custom: GridCustomColumnDriver,\n};\n\nexport class GridDriver<T extends any> extends BaseDriver {\n nodeName = 'descope-grid';\n #onColumnsChangeCb: (columns: Column[]) => void;\n\n onSelectedItemsChange(cb: (e: CustomEvent<{ value: T[] }>) => void) {\n this.ele?.addEventListener('selected-items-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n\n get ele() {\n return super.ele as Element & {\n data: T[];\n columns: Column[];\n renderColumn: ({ path, header, type, attrs }: Column) => string;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: T[]) {\n if (this.ele) this.ele.data = data;\n }\n\n get columns() {\n if (!this.ele) return [];\n return Array.from(this.ele.children).reduce((acc, child) => {\n const columnType = columnRegex.exec(child.localName)?.[1];\n const Driver = driversMapping[columnType];\n\n if (!Driver) return acc;\n\n acc.push(new Driver(child, { logger: this.logger }));\n\n return acc;\n }, []);\n }\n\n filterColumns(filterFn: (col: Column) => boolean) {\n const filteredColumns = this.ele.columns?.filter(filterFn);\n if (!filteredColumns || !this.ele.columns) return;\n if (!compareArrays(filteredColumns, this.ele.columns)) {\n this.ele.columns = filteredColumns;\n this.#onColumnsChangeCb?.(filteredColumns);\n }\n }\n\n onColumnsChange(cb: (columns: Column[]) => void) {\n this.#onColumnsChangeCb = cb;\n }\n\n set renderColumn(\n renderFn: ({ path, header, type, attrs }: Column) => string,\n ) {\n this.ele.renderColumn = renderFn;\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridTextColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-text-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridCustomColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-custom-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LinkDriver extends BaseDriver {\n nodeName = 'descope-link';\n\n get ele() {\n return super.ele as Element & {\n innerText: string;\n getAttribute: (name: string) => string | null;\n };\n }\n\n get href() {\n return this.ele?.getAttribute('href');\n }\n\n set href(href: string) {\n this.ele?.setAttribute('href', href ?? '');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ModalDriver extends BaseDriver {\n #modalContent: HTMLTemplateElement;\n\n beforeOpen: undefined | (() => void | Promise<void>);\n\n afterClose: undefined | (() => void);\n\n nodeName = 'descope-modal';\n\n close() {\n this.ele?.removeAttribute('opened');\n this.afterClose?.();\n }\n\n async open() {\n await this.beforeOpen?.();\n this.ele?.setAttribute('opened', 'true');\n }\n\n reset() {\n if (this.ele) this.ele.innerHTML = '';\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.#modalContent &&\n this.ele?.append(this.#modalContent.content.cloneNode(true));\n }\n\n setContent(template: HTMLTemplateElement) {\n this.#modalContent = template;\n this.reset();\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class MultiSelectDriver extends BaseDriver {\n nodeName = 'descope-multi-select-combo-box';\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class NotificationDriver extends BaseDriver {\n nodeName = 'descope-notification';\n\n close() {\n this.ele?.removeAttribute('opened');\n }\n\n show() {\n this.ele?.setAttribute('opened', 'true');\n }\n\n setContent(template: HTMLTemplateElement) {\n this.ele.innerHTML = '';\n this.ele.appendChild(template.content.cloneNode(true));\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n description?: string;\n logo?: string;\n isConnected?: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class OutboundAppsListDriver extends BaseDriver {\n nodeName = 'descope-outbound-apps';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get connectFlowId() {\n return this.ele?.getAttribute('connect-flow-id') || '';\n }\n\n get disconnectFlowId() {\n return this.ele?.getAttribute('disconnect-flow-id') || '';\n }\n\n onConnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('connect-clicked', handler);\n\n return () => this.ele?.removeEventListener('connect-clicked', handler);\n }\n\n onDisconnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('disconnect-clicked', handler);\n\n return () => this.ele?.removeEventListener('disconnect-clicked', handler);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class SingleSelectDriver extends BaseDriver {\n nodeName = 'descope-combo-box';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n\n setAllowCustomValue(allow: boolean) {\n if (this.ele) {\n this.ele.toggleAttribute('allow-custom-value', allow);\n }\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextDriver extends BaseDriver {\n nodeName = 'descope-text';\n\n get ele() {\n return super.ele as Element & { innerText: string };\n }\n\n get text() {\n return this.ele?.innerText;\n }\n\n set text(content: string) {\n if (this.ele) this.ele.innerText = content;\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextFieldDriver extends BaseDriver {\n nodeName = 'descope-text-field';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAttributeDriver extends BaseDriver {\n nodeName = 'descope-user-attribute';\n\n set value(value: string) {\n this.ele?.setAttribute('value', value);\n }\n\n set badgeLabel(label: string) {\n this.ele?.setAttribute('badge-label', label);\n }\n\n get label() {\n return this.ele?.getAttribute('label') || '';\n }\n\n get editFlowId() {\n return this.ele?.getAttribute('edit-flow-id') || '';\n }\n\n get deleteFlowId() {\n return this.ele?.getAttribute('delete-flow-id') || '';\n }\n\n onEditClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('edit-clicked', cb);\n\n return () => this.ele?.removeEventListener('edit-clicked', cb);\n }\n\n onDeleteClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('delete-clicked', cb);\n\n return () => this.ele?.removeEventListener('delete-clicked', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAuthMethodDriver extends BaseDriver {\n nodeName = 'descope-user-auth-method';\n\n set fulfilled(isFulfilled: boolean) {\n isFulfilled\n ? this.ele?.setAttribute('fulfilled', 'true')\n : this.ele?.removeAttribute('fulfilled');\n }\n\n onUnfulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('button-clicked', cb);\n\n return () => this.ele?.removeEventListener('button-clicked', cb);\n }\n\n onFulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('fulfilled-button-clicked', cb);\n\n return () => this.ele?.removeEventListener('fulfilled-button-clicked', cb);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n get fulfilledFlowId() {\n return this.ele?.getAttribute('fulfilled-flow-id');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n lastLoginDate: number;\n isCurrent: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class DeviceListDriver extends BaseDriver {\n nodeName = 'descope-trusted-devices';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onRemoveDeviceClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-device-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-device-clicked', handler);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class FlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LastAuthBadgeDriver extends BaseDriver {\n nodeName = 'descope-attachment';\n\n set position(value: string) {\n this.ele?.setAttribute('position', value);\n }\n\n get position() {\n return this.ele?.getAttribute('position') ?? '';\n }\n}\n","import { SingleSelectDriver } from './SingleSelectDriver';\n\nexport class TenantSelectorDriver extends SingleSelectDriver {\n get action(): 'reload' | 'none' | '' {\n return (this.ele?.getAttribute('data-action') || '') as\n | 'reload'\n | 'none'\n | '';\n }\n\n get refreshTimeout(): number {\n return Number(this.ele?.getAttribute('data-refresh-timeout')) || 500;\n }\n\n get shouldReload() {\n return this.action === 'reload';\n }\n}\n"],"names":["BaseDriver","constructor","refOrRefFn","config","_BaseDriver_ele","set","this","nodeName","__classPrivateFieldSet","logger","asyncEle","async","ele","timeout","Promise","resolve","interval","setInterval","element","clearInterval","setTimeout","waitForElement","__classPrivateFieldGet","call","localName","_b","debug","Error","_a","isExists","AppsListDriver","data","super","AvatarDriver","displayName","name","setAttribute","image","imgUrl","flowId","getAttribute","onClick","cb","addEventListener","removeEventListener","ButtonDriver","disable","enable","removeAttribute","FlowDriver","projectId","baseUrl","theme","onSuccess","onPageUpdated","GenericFlowButtonDriver","enableMode","columnRegex","driversMapping","text","onSortDirectionChange","custom","GridDriver","_GridDriver_onColumnsChangeCb","onSelectedItemsChange","columns","Array","from","children","reduce","acc","child","columnType","exec","Driver","push","filterColumns","filterFn","filteredColumns","filter","compareArrays","onColumnsChange","renderColumn","renderFn","LinkDriver","href","ModalDriver","_ModalDriver_modalContent","close","afterClose","open","beforeOpen","reset","innerHTML","append","content","cloneNode","setContent","template","remove","MultiSelectDriver","setData","JSON","stringify","sort","NotificationDriver","show","appendChild","OutboundAppsListDriver","connectFlowId","disconnectFlowId","onConnectClick","handler","e","detail","onDisconnectClick","SingleSelectDriver","onInput","value","setAllowCustomValue","allow","toggleAttribute","TextDriver","innerText","TextFieldDriver","UserAttributeDriver","badgeLabel","label","editFlowId","deleteFlowId","onEditClick","onDeleteClick","UserAuthMethodDriver","fulfilled","isFulfilled","onUnfulfilledButtonClick","onFulfilledButtonClick","fulfilledFlowId","DeviceListDriver","onRemoveDeviceClick","FlowButtonDriver","LastAuthBadgeDriver","position","TenantSelectorDriver","action","refreshTimeout","Number","shouldReload"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/BaseDriver.ts","../src/helpers.ts","../src/AppsListDriver.ts","../src/AvatarDriver.ts","../src/ButtonDriver.ts","../src/FlowDriver.ts","../src/GenericFlowButtonDriver.ts","../src/gridDrivers/GridDriver.ts","../src/gridDrivers/GridTextColumnDriver.ts","../src/gridDrivers/GridCustomColumnDriver.ts","../src/LinkDriver.ts","../src/ModalDriver.ts","../src/MultiLineMappingsDriver.ts","../src/MultiSelectDriver.ts","../src/NotificationDriver.ts","../src/OutboundAppsListDriver.ts","../src/SingleSelectDriver.ts","../src/TextDriver.ts","../src/TextFieldDriver.ts","../src/UserAttributeDriver.ts","../src/UserAuthMethodDriver.ts","../src/DeviceListDriver.ts","../src/FlowButtonDriver.ts","../src/LastAuthBadgeDriver.ts","../src/TenantSelectorDriver.ts","../src/UserPasskeysDriver.ts"],"sourcesContent":["import { waitForElement } from './helpers';\nimport { RefOrRefFn } from './types';\n\ntype Logger = {\n error(...data: any[]): void;\n warn(...data: any[]): void;\n info(...data: any[]): void;\n debug(...data: any[]): void;\n};\n\nexport class BaseDriver {\n #ele: RefOrRefFn;\n\n logger: Logger | undefined;\n\n // eslint-disable-next-line class-methods-use-this\n nodeName = '';\n\n constructor(refOrRefFn: RefOrRefFn, config: { logger: Logger }) {\n this.#ele = refOrRefFn;\n this.logger = config.logger;\n }\n\n get asyncEle() {\n return waitForElement(this.#ele, 1000);\n }\n\n get ele() {\n const ele = typeof this.#ele === 'function' ? this.#ele() : this.#ele;\n if (!ele) {\n this.logger?.debug(\n `Driver element is not available for ${this.nodeName}`,\n new Error(),\n );\n\n return null;\n }\n\n if (ele?.localName !== this.nodeName) {\n this.logger?.debug(\n `node name do not match, expected \"${this.nodeName}\", received \"${ele.localName}\" `,\n Error(),\n );\n\n return null;\n }\n\n return ele;\n }\n\n get isExists() {\n return !!this.ele;\n }\n}\n","import { RefOrRefFn } from './types';\n\nexport const waitForElement = async (ele: RefOrRefFn, timeout: number) =>\n new Promise<Element | null>((resolve) => {\n const interval = setInterval(() => {\n const element = typeof ele === 'function' ? ele() : ele;\n if (element) {\n clearInterval(interval);\n resolve(element);\n }\n }, 100);\n setTimeout(() => {\n clearInterval(interval);\n resolve(null);\n }, timeout);\n });\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = { name: string; icon: string; url: string }[];\n\nexport class AppsListDriver extends BaseDriver {\n nodeName = 'descope-apps-list';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class AvatarDriver extends BaseDriver {\n nodeName = 'descope-avatar';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n set image(imgUrl: string) {\n this.ele?.setAttribute('img', imgUrl);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ButtonDriver extends BaseDriver {\n nodeName = 'descope-button';\n\n onClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('click', cb);\n\n return () => this.ele?.removeEventListener('click', cb);\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class FlowDriver extends BaseDriver {\n nodeName = 'descope-wc';\n\n set projectId(projectId: string) {\n this.ele?.setAttribute('project-id', projectId);\n }\n\n set baseUrl(baseUrl: string) {\n this.ele?.setAttribute('base-url', baseUrl);\n }\n\n set flowId(flowId: string) {\n this.ele?.setAttribute('flow-id', flowId);\n }\n\n set theme(theme: string | null | undefined) {\n if (!theme) {\n this.ele?.removeAttribute('theme');\n } else {\n this.ele?.setAttribute('theme', theme);\n }\n }\n\n onSuccess(cb: () => void) {\n this.ele?.addEventListener('success', cb);\n\n return () => this.ele?.removeEventListener('success', cb);\n }\n onPageUpdated(cb: () => void) {\n this.ele?.addEventListener('page-updated', cb);\n\n return () => this.ele?.removeEventListener('page-updated', cb);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class GenericFlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n get enableMode(): 'onlyOne' | 'oneOrMore' | 'always' {\n return this.ele?.getAttribute('enable-mode') as\n | 'onlyOne'\n | 'oneOrMore'\n | 'always';\n }\n}\n","import { compareArrays } from '@descope/sdk-helpers';\nimport { BaseDriver } from '../BaseDriver';\nimport { GridCustomColumnDriver } from './GridCustomColumnDriver';\nimport { GridTextColumnDriver } from './GridTextColumnDriver';\n\ntype Column = {\n path: string;\n header: string;\n type: string;\n attrs: Record<string, string>;\n};\n\nconst columnRegex = /^descope-grid-([^-]+)-column$/;\n\nconst driversMapping = {\n text: GridTextColumnDriver,\n custom: GridCustomColumnDriver,\n};\n\nexport class GridDriver<T extends any> extends BaseDriver {\n nodeName = 'descope-grid';\n #onColumnsChangeCb: (columns: Column[]) => void;\n\n onSelectedItemsChange(cb: (e: CustomEvent<{ value: T[] }>) => void) {\n this.ele?.addEventListener('selected-items-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n\n get ele() {\n return super.ele as Element & {\n data: T[];\n columns: Column[];\n renderColumn: ({ path, header, type, attrs }: Column) => string;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: T[]) {\n if (this.ele) this.ele.data = data;\n }\n\n get columns() {\n if (!this.ele) return [];\n return Array.from(this.ele.children).reduce((acc, child) => {\n const columnType = columnRegex.exec(child.localName)?.[1];\n const Driver = driversMapping[columnType];\n\n if (!Driver) return acc;\n\n acc.push(new Driver(child, { logger: this.logger }));\n\n return acc;\n }, []);\n }\n\n filterColumns(filterFn: (col: Column) => boolean) {\n const filteredColumns = this.ele.columns?.filter(filterFn);\n if (!filteredColumns || !this.ele.columns) return;\n if (!compareArrays(filteredColumns, this.ele.columns)) {\n this.ele.columns = filteredColumns;\n this.#onColumnsChangeCb?.(filteredColumns);\n }\n }\n\n onColumnsChange(cb: (columns: Column[]) => void) {\n this.#onColumnsChangeCb = cb;\n }\n\n set renderColumn(\n renderFn: ({ path, header, type, attrs }: Column) => string,\n ) {\n this.ele.renderColumn = renderFn;\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridTextColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-text-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from '../BaseDriver';\n\nexport class GridCustomColumnDriver extends BaseDriver {\n nodeName = 'descope-grid-custom-column';\n\n onSortDirectionChange(\n cb: (e: CustomEvent<{ value: 'asc' | 'desc' | null }>) => void,\n ) {\n this.ele?.addEventListener('direction-changed', cb);\n\n return () => this.ele?.removeEventListener('selected-items-changed', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LinkDriver extends BaseDriver {\n nodeName = 'descope-link';\n\n get ele() {\n return super.ele as Element & {\n innerText: string;\n getAttribute: (name: string) => string | null;\n };\n }\n\n get href() {\n return this.ele?.getAttribute('href');\n }\n\n set href(href: string) {\n this.ele?.setAttribute('href', href ?? '');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class ModalDriver extends BaseDriver {\n #modalContent: HTMLTemplateElement;\n\n beforeOpen: undefined | (() => void | Promise<void>);\n\n afterClose: undefined | (() => void);\n\n nodeName = 'descope-modal';\n\n close() {\n this.ele?.removeAttribute('opened');\n this.afterClose?.();\n }\n\n async open() {\n await this.beforeOpen?.();\n this.ele?.setAttribute('opened', 'true');\n }\n\n reset() {\n if (this.ele) this.ele.innerHTML = '';\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n this.#modalContent &&\n this.ele?.append(this.#modalContent.content.cloneNode(true));\n }\n\n setContent(template: HTMLTemplateElement) {\n this.#modalContent = template;\n this.reset();\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Mapping = { tenantId: string; roleNames: string[] };\n\nexport class MultiLineMappingsDriver extends BaseDriver {\n nodeName = 'descope-multi-line-mappings';\n\n setData(\n data: Record<string, string[] | { label?: string; options: string[] }>,\n ) {\n this.ele?.setAttribute('data', JSON.stringify(data));\n }\n\n get value(): Mapping[] {\n return (this.ele as any)?.value || [];\n }\n\n set value(mappings: Mapping[]) {\n if (this.ele) {\n (this.ele as any).value = mappings;\n }\n }\n\n get mergedValue(): Mapping[] {\n return Object.entries(\n this.value\n .filter(({ tenantId }) => !!tenantId)\n .reduce<Record<string, string[]>>((acc, { tenantId, roleNames }) => {\n acc[tenantId] = [\n ...new Set([...(acc[tenantId] || []), ...roleNames]),\n ];\n return acc;\n }, {}),\n ).map(([tenantId, roleNames]) => ({ tenantId, roleNames }));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class MultiSelectDriver extends BaseDriver {\n nodeName = 'descope-multi-select-combo-box';\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class NotificationDriver extends BaseDriver {\n nodeName = 'descope-notification';\n\n close() {\n this.ele?.removeAttribute('opened');\n }\n\n show() {\n this.ele?.setAttribute('opened', 'true');\n }\n\n setContent(template: HTMLTemplateElement) {\n this.ele.innerHTML = '';\n this.ele.appendChild(template.content.cloneNode(true));\n }\n\n remove() {\n this.ele?.remove();\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n description?: string;\n logo?: string;\n isConnected?: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class OutboundAppsListDriver extends BaseDriver {\n nodeName = 'descope-outbound-apps';\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get data() {\n return this.ele?.data;\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get connectFlowId() {\n return this.ele?.getAttribute('connect-flow-id') || '';\n }\n\n get disconnectFlowId() {\n return this.ele?.getAttribute('disconnect-flow-id') || '';\n }\n\n onConnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('connect-clicked', handler);\n\n return () => this.ele?.removeEventListener('connect-clicked', handler);\n }\n\n onDisconnectClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('disconnect-clicked', handler);\n\n return () => this.ele?.removeEventListener('disconnect-clicked', handler);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class SingleSelectDriver extends BaseDriver {\n nodeName = 'descope-combo-box';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n async setData(data: { label: string; value: string }[]) {\n (await this.asyncEle)?.setAttribute('data', JSON.stringify(data.sort()));\n }\n\n setAllowCustomValue(allow: boolean) {\n if (this.ele) {\n this.ele.toggleAttribute('allow-custom-value', allow);\n }\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextDriver extends BaseDriver {\n nodeName = 'descope-text';\n\n get ele() {\n return super.ele as Element & { innerText: string };\n }\n\n get text() {\n return this.ele?.innerText;\n }\n\n set text(content: string) {\n if (this.ele) this.ele.innerText = content;\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class TextFieldDriver extends BaseDriver {\n nodeName = 'descope-text-field';\n\n onInput(cb: (e: InputEvent) => void) {\n this.ele?.addEventListener('input', cb);\n\n return () => this.ele?.removeEventListener('input', cb);\n }\n\n get value() {\n return (<HTMLInputElement>this.ele)?.value;\n }\n\n set value(value: string) {\n if (this.ele) {\n (<HTMLInputElement>this.ele).value = value;\n }\n }\n\n disable() {\n this.ele?.setAttribute('disabled', 'true');\n }\n\n enable() {\n this.ele?.removeAttribute('disabled');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAttributeDriver extends BaseDriver {\n nodeName = 'descope-user-attribute';\n\n set value(value: string) {\n this.ele?.setAttribute('value', value);\n }\n\n set badgeLabel(label: string) {\n this.ele?.setAttribute('badge-label', label);\n }\n\n get label() {\n return this.ele?.getAttribute('label') || '';\n }\n\n get editFlowId() {\n return this.ele?.getAttribute('edit-flow-id') || '';\n }\n\n get deleteFlowId() {\n return this.ele?.getAttribute('delete-flow-id') || '';\n }\n\n onEditClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('edit-clicked', cb);\n\n return () => this.ele?.removeEventListener('edit-clicked', cb);\n }\n\n onDeleteClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('delete-clicked', cb);\n\n return () => this.ele?.removeEventListener('delete-clicked', cb);\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class UserAuthMethodDriver extends BaseDriver {\n nodeName = 'descope-user-auth-method';\n\n set fulfilled(isFulfilled: boolean) {\n isFulfilled\n ? this.ele?.setAttribute('fulfilled', 'true')\n : this.ele?.removeAttribute('fulfilled');\n }\n\n onUnfulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('button-clicked', cb);\n\n return () => this.ele?.removeEventListener('button-clicked', cb);\n }\n\n onFulfilledButtonClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('fulfilled-button-clicked', cb);\n\n return () => this.ele?.removeEventListener('fulfilled-button-clicked', cb);\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n get fulfilledFlowId() {\n return this.ele?.getAttribute('fulfilled-flow-id');\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype Data = {\n id: string;\n name: string;\n lastLoginDate: number;\n isCurrent: boolean;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class DeviceListDriver extends BaseDriver {\n nodeName = 'descope-trusted-devices';\n\n set displayName(name: string) {\n this.ele?.setAttribute('display-name', name);\n }\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get flowId() {\n return this.ele?.getAttribute('flow-id');\n }\n\n onRemoveDeviceClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-device-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-device-clicked', handler);\n }\n}\n","import { ButtonDriver } from './ButtonDriver';\n\nexport class FlowButtonDriver extends ButtonDriver {\n get flowId(): string {\n return this.ele?.getAttribute('flow-id') || '';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\nexport class LastAuthBadgeDriver extends BaseDriver {\n nodeName = 'descope-attachment';\n\n set position(value: string) {\n this.ele?.setAttribute('position', value);\n }\n\n get position() {\n return this.ele?.getAttribute('position') ?? '';\n }\n}\n","import { SingleSelectDriver } from './SingleSelectDriver';\n\nexport class TenantSelectorDriver extends SingleSelectDriver {\n get action(): 'reload' | 'none' | '' {\n return (this.ele?.getAttribute('data-action') || '') as\n | 'reload'\n | 'none'\n | '';\n }\n\n get refreshTimeout(): number {\n return Number(this.ele?.getAttribute('data-refresh-timeout')) || 500;\n }\n\n get shouldReload() {\n return this.action === 'reload';\n }\n}\n","import { BaseDriver } from './BaseDriver';\n\ntype PasskeyType =\n | 'apple'\n | 'google'\n | 'windows'\n | 'chrome'\n | 'edge'\n | 'samsung'\n | '1password'\n | 'bitwarden'\n | 'lastpass'\n | 'dashlane'\n | 'keeper'\n | 'keepassxc'\n | 'proton'\n | 'nordpass'\n | 'enpass'\n | 'key'\n | 'phone'\n | 'other';\n\ntype Data = {\n id: string;\n name: string;\n passkeyType: PasskeyType;\n createdAt: number;\n}[];\n\ntype Detail = { id: string; action: string };\n\nexport class UserPasskeysDriver extends BaseDriver {\n nodeName = 'descope-user-passkeys';\n\n get ele() {\n return super.ele as Element & {\n data: Data;\n };\n }\n\n get data() {\n return this.ele?.data;\n }\n\n set data(data: Data) {\n if (this.ele) this.ele.data = data;\n }\n\n get addPasskeyFlowId() {\n return this.ele?.getAttribute('add-passkey-flow-id');\n }\n\n get removePasskeyFlowId() {\n return this.ele?.getAttribute('remove-passkey-flow-id');\n }\n\n onAddPasskeyClick(cb: (e: Event) => void) {\n this.ele?.addEventListener('add-passkey-clicked', cb);\n return () => this.ele?.removeEventListener('add-passkey-clicked', cb);\n }\n\n onRemovePasskeyClick(cb: (detail: Detail) => void) {\n const handler = (e: CustomEvent<Detail>) => cb(e.detail);\n this.ele?.addEventListener('remove-passkey-clicked', handler);\n\n return () =>\n this.ele?.removeEventListener('remove-passkey-clicked', handler);\n }\n}\n"],"names":["BaseDriver","constructor","refOrRefFn","config","_BaseDriver_ele","set","this","nodeName","__classPrivateFieldSet","logger","asyncEle","async","ele","timeout","Promise","resolve","interval","setInterval","element","clearInterval","setTimeout","waitForElement","__classPrivateFieldGet","call","localName","_b","debug","Error","_a","isExists","AppsListDriver","data","super","AvatarDriver","displayName","name","setAttribute","image","imgUrl","flowId","getAttribute","onClick","cb","addEventListener","removeEventListener","ButtonDriver","disable","enable","removeAttribute","FlowDriver","projectId","baseUrl","theme","onSuccess","onPageUpdated","GenericFlowButtonDriver","enableMode","columnRegex","driversMapping","text","onSortDirectionChange","custom","GridDriver","_GridDriver_onColumnsChangeCb","onSelectedItemsChange","columns","Array","from","children","reduce","acc","child","columnType","exec","Driver","push","filterColumns","filterFn","filteredColumns","filter","compareArrays","onColumnsChange","renderColumn","renderFn","LinkDriver","href","ModalDriver","_ModalDriver_modalContent","close","afterClose","open","beforeOpen","reset","innerHTML","append","content","cloneNode","setContent","template","remove","MultiLineMappingsDriver","setData","JSON","stringify","value","mappings","mergedValue","Object","entries","tenantId","roleNames","Set","map","MultiSelectDriver","sort","NotificationDriver","show","appendChild","OutboundAppsListDriver","connectFlowId","disconnectFlowId","onConnectClick","handler","e","detail","onDisconnectClick","SingleSelectDriver","onInput","setAllowCustomValue","allow","toggleAttribute","TextDriver","innerText","TextFieldDriver","UserAttributeDriver","badgeLabel","label","editFlowId","deleteFlowId","onEditClick","onDeleteClick","UserAuthMethodDriver","fulfilled","isFulfilled","onUnfulfilledButtonClick","onFulfilledButtonClick","fulfilledFlowId","DeviceListDriver","onRemoveDeviceClick","FlowButtonDriver","LastAuthBadgeDriver","position","TenantSelectorDriver","action","refreshTimeout","Number","shouldReload","UserPasskeysDriver","addPasskeyFlowId","removePasskeyFlowId","onAddPasskeyClick","onRemovePasskeyClick"],"mappings":"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"}
|