@descope/vue-sdk 3.1.3 → 3.1.5
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/index.cjs +1 -1
- package/dist/index.d.ts +108 -0
- package/dist/index.mjs +1 -1
- package/package.json +10 -10
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("@descope/web-component"),r=require("@descope/web-js-sdk");require("@descope/user-management-widget"),require("@descope/role-management-widget"),require("@descope/access-key-management-widget"),require("@descope/audit-management-widget"),require("@descope/user-profile-widget"),require("@descope/applications-portal-widget");const n=Symbol("$descope"),s={"x-descope-sdk-name":"vue","x-descope-sdk-version":"3.1.3"},o="undefined"!=typeof window,a=()=>{const t=e.inject(n);if(!t)throw Error("Missing Descope context, make sure you are using the Descope plugin");return t},i=()=>a().options,l=()=>a().sdk,d=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r};let u;const c=e=>{const t=r({persistTokens:o,storeLastAuthenticatedUser:o,autoRefresh:o,...e});return u=t,t};u=c({projectId:"temp pid"});const p=()=>o?u?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),g=()=>o?u?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),m=d(((e=p(),t)=>u?.getJwtPermissions(e,t))),y=d(((e=p(),t)=>u?.getJwtRoles(e,t))),b=d(((e=p())=>u?.getCurrentTenant(e)));var f=e.defineComponent({__name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},locale:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean||String},validateOnBlur:{type:Boolean},restartOnError:{type:Boolean},sendSessionToken:{type:Boolean},errorTransformer:{type:Function},onScreenUpdate:{type:Function},form:{type:Object},client:{type:Object},styleId:{type:String},themeOverride:{type:Object},nonce:{type:String},dismissScreenErrorOnInput:{type:Boolean},popupOrigin:{type:String}},emits:["success","error","ready"],setup(r,{emit:n}){(customElements?.get("descope-wc")||t).sdkConfigOverrides={baseHeaders:s,persistTokens:!1,hooks:{get beforeRequest(){return u.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const o=r,a=n,{projectId:d,baseUrl:c,baseStaticUrl:p,storeLastAuthenticatedUser:g,baseCdnUrl:m,customStorage:y}=i(),b=l(),f=e.computed((()=>o.form?JSON.stringify(o.form):"")),v=e.computed((()=>o.client?JSON.stringify(o.client):"")),S=async e=>{await(b.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),a("success",e)},h=e=>a("error",e),w=e=>a("ready",e);return(t,n)=>{const s=e.resolveComponent("descope-wc");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{"project-id":e.unref(d),"base-url":e.unref(c),"base-static-url":e.unref(p),"base-cdn-url":e.unref(m),"flow-id":r.flowId,"^theme":r.theme,"^locale":r.locale,"^tenant":r.tenant,"^debug":r.debug,"^telemetryKey":r.telemetryKey,"redirect-url":r.redirectUrl,"auto-focus":r.autoFocus,"style-id":r.styleId,"therme-override":r.themeOverride,"validate-on-blur":r.validateOnBlur,"restart-on-error":r.restartOnError,"send-session-token":r.sendSessionToken,"store-last-authenticated-user":e.unref(g),".customStorage":e.unref(y),".errorTransformer":r.errorTransformer,".onScreenUpdate":r.onScreenUpdate,"^form":f.value,"^client":v.value,"^nonce":r.nonce,"^dismiss-screen-error-on-input":r.dismissScreenErrorOnInput,"^popup-origin":r.popupOrigin,onSuccess:S,onError:h,onReady:w},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},40,["project-id","base-url","base-static-url","base-cdn-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus","style-id","therme-override","validate-on-blur","restart-on-error","send-session-token","store-last-authenticated-user",".customStorage",".errorTransformer",".onScreenUpdate","^form","^client","^nonce","^dismiss-screen-error-on-input","^popup-origin"])])}}});f.__file="src/Descope.vue";var v=e.defineComponent({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-user-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});v.__file="src/UserManagement.vue";var S=e.defineComponent({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-role-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-cdn-url":e.unref(l),"base-static-url":e.unref(a),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-cdn-url","base-static-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});S.__file="src/RoleManagement.vue";var h=e.defineComponent({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-access-key-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});h.__file="src/AccessKeyManagement.vue";var w=e.defineComponent({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-audit-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});w.__file="src/AuditManagement.vue";var k=e.defineComponent({__name:"UserProfile",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["logout","ready"],setup(t,{emit:r}){const s=e.inject(n),o=r,a=e=>{s?.resetAuth(),o("logout",e)},l=e=>o("ready",e),{projectId:d,baseUrl:u,baseStaticUrl:c,baseCdnUrl:p}=i();return(r,n)=>{const s=e.resolveComponent("descope-user-profile-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{"project-id":e.unref(d),"base-url":e.unref(u),"base-static-url":e.unref(c),"base-cdn-url":e.unref(p),"^theme":t.theme,"^locale":t.locale,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onLogout:a,onReady:l},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});k.__file="src/UserProfile.vue";var U=e.defineComponent({__name:"ApplicationsPortal",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-applications-portal-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});U.__file="src/ApplicationsPortal.vue";const I=e.ref(null);let C;var _={install:function(t,r){const o=c({persistTokens:!0,autoRefresh:!0,...r,baseHeaders:s});C=o;const a=e.ref(null),i=e.ref(""),l=e.ref(),d=e.ref(!1),u=e.ref(null),p=e.ref(null);o.onSessionTokenChange((e=>{i.value=e})),o.onClaimsChange((e=>{l.value=e})),o.onIsAuthenticatedChange((e=>{d.value=e})),o.onUserChange((e=>{p.value=e}));const g=async e=>{"undefined"!=typeof window&&window.descopeBridge||(a.value=!0,await o.refresh(void 0,e),a.value=!1)},m=e.computed((()=>null===a.value)),y=e.computed((()=>null===u.value));I.value=()=>new Promise(((t,r)=>{!d.value&&m.value&&g().catch(r),e.watch((()=>a.value),(()=>!a.value&&t(!!e.unref(d))),{immediate:!0})})),t.provide(n,{session:{fetchSession:g,isLoading:e.readonly(a),session:e.readonly(i),claims:e.readonly(l),isAuthenticated:e.readonly(d),isFetchSessionWasNeverCalled:m},user:{fetchUser:async()=>{u.value=!0,await o.me(),u.value=!1},isLoading:e.readonly(u),user:e.readonly(p),isFetchUserWasNeverCalled:y},sdk:o,options:r,resetAuth:function(){i.value="",d.value=!1,p.value=null}})}};exports.AccessKeyManagement=h,exports.ApplicationsPortal=U,exports.AuditManagement=w,exports.Descope=f,exports.RoleManagement=S,exports.UserManagement=v,exports.UserProfile=k,exports.default=_,exports.getCurrentTenant=b,exports.getJwtPermissions=m,exports.getJwtRoles=y,exports.getRefreshToken=g,exports.getSdk=()=>C,exports.getSessionToken=p,exports.isRefreshTokenExpired=(e=g())=>u?.isJwtExpired(e),exports.isSessionTokenExpired=(e=p())=>u?.isJwtExpired(e),exports.routeGuard=()=>e.unref(I)?.(),exports.useDescope=l,exports.useSession=()=>{const{session:t}=a();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(!0),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,claims:t.claims,isAuthenticated:t.isAuthenticated}},exports.useUser=()=>{const{user:t,session:r}=a(),n=()=>{!t.user.value&&r.session.value&&t.fetchUser()};return n(),e.watch(r.session,n),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchUserWasNeverCalled.value)),user:t.user}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("@descope/web-component"),r=require("@descope/web-js-sdk");require("@descope/user-management-widget"),require("@descope/role-management-widget"),require("@descope/access-key-management-widget"),require("@descope/audit-management-widget"),require("@descope/user-profile-widget"),require("@descope/applications-portal-widget");const n=Symbol("$descope"),s={"x-descope-sdk-name":"vue","x-descope-sdk-version":"3.1.5"},o="undefined"!=typeof window,a=()=>{const t=e.inject(n);if(!t)throw Error("Missing Descope context, make sure you are using the Descope plugin");return t},i=()=>a().options,l=()=>a().sdk,d=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r};let u;const c=e=>{const t=r({persistTokens:o,storeLastAuthenticatedUser:o,autoRefresh:o,...e});return u=t,t};u=c({projectId:"temp pid"});const p=()=>o?u?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),g=()=>o?u?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),m=d(((e=p(),t)=>u?.getJwtPermissions(e,t))),y=d(((e=p(),t)=>u?.getJwtRoles(e,t))),b=d(((e=p())=>u?.getCurrentTenant(e)));var f=e.defineComponent({__name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},locale:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean||String},validateOnBlur:{type:Boolean},restartOnError:{type:Boolean},sendSessionToken:{type:Boolean},errorTransformer:{type:Function},onScreenUpdate:{type:Function},form:{type:Object},client:{type:Object},styleId:{type:String},themeOverride:{type:Object},nonce:{type:String},dismissScreenErrorOnInput:{type:Boolean},popupOrigin:{type:String}},emits:["success","error","ready"],setup(r,{emit:n}){(customElements?.get("descope-wc")||t).sdkConfigOverrides={baseHeaders:s,persistTokens:!1,hooks:{get beforeRequest(){return u.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const o=r,a=n,{projectId:d,baseUrl:c,baseStaticUrl:p,storeLastAuthenticatedUser:g,baseCdnUrl:m,customStorage:y}=i(),b=l(),f=e.computed((()=>o.form?JSON.stringify(o.form):"")),v=e.computed((()=>o.client?JSON.stringify(o.client):"")),S=async e=>{await(b.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),a("success",e)},h=e=>a("error",e),w=e=>a("ready",e);return(t,n)=>{const s=e.resolveComponent("descope-wc");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{"project-id":e.unref(d),"base-url":e.unref(c),"base-static-url":e.unref(p),"base-cdn-url":e.unref(m),"flow-id":r.flowId,"^theme":r.theme,"^locale":r.locale,"^tenant":r.tenant,"^debug":r.debug,"^telemetryKey":r.telemetryKey,"redirect-url":r.redirectUrl,"auto-focus":r.autoFocus,"style-id":r.styleId,"therme-override":r.themeOverride,"validate-on-blur":r.validateOnBlur,"restart-on-error":r.restartOnError,"send-session-token":r.sendSessionToken,"store-last-authenticated-user":e.unref(g),".customStorage":e.unref(y),".errorTransformer":r.errorTransformer,".onScreenUpdate":r.onScreenUpdate,"^form":f.value,"^client":v.value,"^nonce":r.nonce,"^dismiss-screen-error-on-input":r.dismissScreenErrorOnInput,"^popup-origin":r.popupOrigin,onSuccess:S,onError:h,onReady:w},{default:e.withCtx((()=>[e.renderSlot(t.$slots,"default")])),_:3},40,["project-id","base-url","base-static-url","base-cdn-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus","style-id","therme-override","validate-on-blur","restart-on-error","send-session-token","store-last-authenticated-user",".customStorage",".errorTransformer",".onScreenUpdate","^form","^client","^nonce","^dismiss-screen-error-on-input","^popup-origin"])])}}});f.__file="src/Descope.vue";var v=e.defineComponent({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-user-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});v.__file="src/UserManagement.vue";var S=e.defineComponent({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-role-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-cdn-url":e.unref(l),"base-static-url":e.unref(a),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-cdn-url","base-static-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});S.__file="src/RoleManagement.vue";var h=e.defineComponent({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-access-key-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});h.__file="src/AccessKeyManagement.vue";var w=e.defineComponent({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-audit-management-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});w.__file="src/AuditManagement.vue";var k=e.defineComponent({__name:"UserProfile",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["logout","ready"],setup(t,{emit:r}){const s=e.inject(n),o=r,a=e=>{s?.resetAuth(),o("logout",e)},l=e=>o("ready",e),{projectId:d,baseUrl:u,baseStaticUrl:c,baseCdnUrl:p}=i();return(r,n)=>{const s=e.resolveComponent("descope-user-profile-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{"project-id":e.unref(d),"base-url":e.unref(u),"base-static-url":e.unref(c),"base-cdn-url":e.unref(p),"^theme":t.theme,"^locale":t.locale,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onLogout:a,onReady:l},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});k.__file="src/UserProfile.vue";var U=e.defineComponent({__name:"ApplicationsPortal",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(t,{emit:r}){const n=r,{projectId:s,baseUrl:o,baseStaticUrl:a,baseCdnUrl:l}=i(),d=e=>n("ready",e);return(r,n)=>{const i=e.resolveComponent("descope-applications-portal-widget");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{"project-id":e.unref(s),"base-url":e.unref(o),"base-static-url":e.unref(a),"base-cdn-url":e.unref(l),"^theme":t.theme,"^locale":t.locale,"^debug":t.debug,"widget-id":t.widgetId,"style-id":t.styleId,onReady:d},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});U.__file="src/ApplicationsPortal.vue";const I=e.ref(null);let C;var _={install:function(t,r){const o=c({persistTokens:!0,autoRefresh:!0,...r,baseHeaders:s});C=o;const a=e.ref(null),i=e.ref(""),l=e.ref(),d=e.ref(!1),u=e.ref(null),p=e.ref(null);o.onSessionTokenChange((e=>{i.value=e})),o.onClaimsChange((e=>{l.value=e})),o.onIsAuthenticatedChange((e=>{d.value=e})),o.onUserChange((e=>{p.value=e}));const g=async e=>{"undefined"!=typeof window&&window.descopeBridge||(a.value=!0,await o.refresh(void 0,e),a.value=!1)},m=e.computed((()=>null===a.value)),y=e.computed((()=>null===u.value));I.value=()=>new Promise(((t,r)=>{!d.value&&m.value&&g().catch(r),e.watch((()=>a.value),(()=>!a.value&&t(!!e.unref(d))),{immediate:!0})})),t.provide(n,{session:{fetchSession:g,isLoading:e.readonly(a),session:e.readonly(i),claims:e.readonly(l),isAuthenticated:e.readonly(d),isFetchSessionWasNeverCalled:m},user:{fetchUser:async()=>{u.value=!0,await o.me(),u.value=!1},isLoading:e.readonly(u),user:e.readonly(p),isFetchUserWasNeverCalled:y},sdk:o,options:r,resetAuth:function(){i.value="",d.value=!1,p.value=null}})}};exports.AccessKeyManagement=h,exports.ApplicationsPortal=U,exports.AuditManagement=w,exports.Descope=f,exports.RoleManagement=S,exports.UserManagement=v,exports.UserProfile=k,exports.default=_,exports.getCurrentTenant=b,exports.getJwtPermissions=m,exports.getJwtRoles=y,exports.getRefreshToken=g,exports.getSdk=()=>C,exports.getSessionToken=p,exports.isRefreshTokenExpired=(e=g())=>u?.isJwtExpired(e),exports.isSessionTokenExpired=(e=p())=>u?.isJwtExpired(e),exports.routeGuard=()=>e.unref(I)?.(),exports.useDescope=l,exports.useSession=()=>{const{session:t}=a();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(!0),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,claims:t.claims,isAuthenticated:t.isAuthenticated}},exports.useUser=()=>{const{user:t,session:r}=a(),n=()=>{!t.user.value&&r.session.value&&t.fetchUser()};return n(),e.watch(r.session,n),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchUserWasNeverCalled.value)),user:t.user}};
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.d.ts
CHANGED
|
@@ -458,6 +458,15 @@ declare const useDescope: () => (((({
|
|
|
458
458
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
459
459
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
460
460
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
461
|
+
event: (executionId: string, events: {
|
|
462
|
+
id: string;
|
|
463
|
+
field: string;
|
|
464
|
+
rule: string;
|
|
465
|
+
message: string;
|
|
466
|
+
screenId: string;
|
|
467
|
+
screenName: string;
|
|
468
|
+
ts: number;
|
|
469
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
461
470
|
};
|
|
462
471
|
webauthn: {
|
|
463
472
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -1177,6 +1186,15 @@ declare const useDescope: () => (((({
|
|
|
1177
1186
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
1178
1187
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
1179
1188
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
1189
|
+
event: (executionId: string, events: {
|
|
1190
|
+
id: string;
|
|
1191
|
+
field: string;
|
|
1192
|
+
rule: string;
|
|
1193
|
+
message: string;
|
|
1194
|
+
screenId: string;
|
|
1195
|
+
screenName: string;
|
|
1196
|
+
ts: number;
|
|
1197
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
1180
1198
|
};
|
|
1181
1199
|
webauthn: {
|
|
1182
1200
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -1896,6 +1914,15 @@ declare const useDescope: () => (((({
|
|
|
1896
1914
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
1897
1915
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
1898
1916
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
1917
|
+
event: (executionId: string, events: {
|
|
1918
|
+
id: string;
|
|
1919
|
+
field: string;
|
|
1920
|
+
rule: string;
|
|
1921
|
+
message: string;
|
|
1922
|
+
screenId: string;
|
|
1923
|
+
screenName: string;
|
|
1924
|
+
ts: number;
|
|
1925
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
1899
1926
|
};
|
|
1900
1927
|
webauthn: {
|
|
1901
1928
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -2625,6 +2652,15 @@ declare const useDescope: () => (((({
|
|
|
2625
2652
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
2626
2653
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
2627
2654
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
2655
|
+
event: (executionId: string, events: {
|
|
2656
|
+
id: string;
|
|
2657
|
+
field: string;
|
|
2658
|
+
rule: string;
|
|
2659
|
+
message: string;
|
|
2660
|
+
screenId: string;
|
|
2661
|
+
screenName: string;
|
|
2662
|
+
ts: number;
|
|
2663
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
2628
2664
|
};
|
|
2629
2665
|
webauthn: {
|
|
2630
2666
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -3344,6 +3380,15 @@ declare const useDescope: () => (((({
|
|
|
3344
3380
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
3345
3381
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
3346
3382
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
3383
|
+
event: (executionId: string, events: {
|
|
3384
|
+
id: string;
|
|
3385
|
+
field: string;
|
|
3386
|
+
rule: string;
|
|
3387
|
+
message: string;
|
|
3388
|
+
screenId: string;
|
|
3389
|
+
screenName: string;
|
|
3390
|
+
ts: number;
|
|
3391
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
3347
3392
|
};
|
|
3348
3393
|
webauthn: {
|
|
3349
3394
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -4063,6 +4108,15 @@ declare const useDescope: () => (((({
|
|
|
4063
4108
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
4064
4109
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
4065
4110
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
4111
|
+
event: (executionId: string, events: {
|
|
4112
|
+
id: string;
|
|
4113
|
+
field: string;
|
|
4114
|
+
rule: string;
|
|
4115
|
+
message: string;
|
|
4116
|
+
screenId: string;
|
|
4117
|
+
screenName: string;
|
|
4118
|
+
ts: number;
|
|
4119
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
4066
4120
|
};
|
|
4067
4121
|
webauthn: {
|
|
4068
4122
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -4814,6 +4868,15 @@ declare const getSdk: () => (((({
|
|
|
4814
4868
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
4815
4869
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
4816
4870
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
4871
|
+
event: (executionId: string, events: {
|
|
4872
|
+
id: string;
|
|
4873
|
+
field: string;
|
|
4874
|
+
rule: string;
|
|
4875
|
+
message: string;
|
|
4876
|
+
screenId: string;
|
|
4877
|
+
screenName: string;
|
|
4878
|
+
ts: number;
|
|
4879
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
4817
4880
|
};
|
|
4818
4881
|
webauthn: {
|
|
4819
4882
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -5533,6 +5596,15 @@ declare const getSdk: () => (((({
|
|
|
5533
5596
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
5534
5597
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
5535
5598
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
5599
|
+
event: (executionId: string, events: {
|
|
5600
|
+
id: string;
|
|
5601
|
+
field: string;
|
|
5602
|
+
rule: string;
|
|
5603
|
+
message: string;
|
|
5604
|
+
screenId: string;
|
|
5605
|
+
screenName: string;
|
|
5606
|
+
ts: number;
|
|
5607
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
5536
5608
|
};
|
|
5537
5609
|
webauthn: {
|
|
5538
5610
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -6252,6 +6324,15 @@ declare const getSdk: () => (((({
|
|
|
6252
6324
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
6253
6325
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
6254
6326
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
6327
|
+
event: (executionId: string, events: {
|
|
6328
|
+
id: string;
|
|
6329
|
+
field: string;
|
|
6330
|
+
rule: string;
|
|
6331
|
+
message: string;
|
|
6332
|
+
screenId: string;
|
|
6333
|
+
screenName: string;
|
|
6334
|
+
ts: number;
|
|
6335
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
6255
6336
|
};
|
|
6256
6337
|
webauthn: {
|
|
6257
6338
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -6981,6 +7062,15 @@ declare const getSdk: () => (((({
|
|
|
6981
7062
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
6982
7063
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
6983
7064
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
7065
|
+
event: (executionId: string, events: {
|
|
7066
|
+
id: string;
|
|
7067
|
+
field: string;
|
|
7068
|
+
rule: string;
|
|
7069
|
+
message: string;
|
|
7070
|
+
screenId: string;
|
|
7071
|
+
screenName: string;
|
|
7072
|
+
ts: number;
|
|
7073
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
6984
7074
|
};
|
|
6985
7075
|
webauthn: {
|
|
6986
7076
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -7700,6 +7790,15 @@ declare const getSdk: () => (((({
|
|
|
7700
7790
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
7701
7791
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
7702
7792
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
7793
|
+
event: (executionId: string, events: {
|
|
7794
|
+
id: string;
|
|
7795
|
+
field: string;
|
|
7796
|
+
rule: string;
|
|
7797
|
+
message: string;
|
|
7798
|
+
screenId: string;
|
|
7799
|
+
screenName: string;
|
|
7800
|
+
ts: number;
|
|
7801
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
7703
7802
|
};
|
|
7704
7803
|
webauthn: {
|
|
7705
7804
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
|
@@ -8419,6 +8518,15 @@ declare const getSdk: () => (((({
|
|
|
8419
8518
|
next: (executionId: string, stepId: string, interactionId: string, version?: number, componentsVersion?: string, input?: {
|
|
8420
8519
|
[x: string]: string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | (string | number | boolean | any[])[])[])[])[])[])[])[])[])[])[];
|
|
8421
8520
|
}, isCustomScreen?: any, options?: _descope_core_js_sdk.FlowNextOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
|
|
8521
|
+
event: (executionId: string, events: {
|
|
8522
|
+
id: string;
|
|
8523
|
+
field: string;
|
|
8524
|
+
rule: string;
|
|
8525
|
+
message: string;
|
|
8526
|
+
screenId: string;
|
|
8527
|
+
screenName: string;
|
|
8528
|
+
ts: number;
|
|
8529
|
+
}[], keepalive?: boolean) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
|
|
8422
8530
|
};
|
|
8423
8531
|
webauthn: {
|
|
8424
8532
|
signUp: ((identifier: string, name: string, passkeyOptions?: _descope_core_js_sdk.PasskeyOptions) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{computed as e,watch as t,inject as r,defineComponent as s,resolveComponent as n,openBlock as a,createElementBlock as i,createVNode as o,unref as l,withCtx as d,renderSlot as u,ref as c,readonly as p}from"vue";import g from"@descope/web-component";import m from"@descope/web-js-sdk";import"@descope/user-management-widget";import"@descope/role-management-widget";import"@descope/access-key-management-widget";import"@descope/audit-management-widget";import"@descope/user-profile-widget";import"@descope/applications-portal-widget";const y=Symbol("$descope"),b={"x-descope-sdk-name":"vue","x-descope-sdk-version":"3.1.3"},S="undefined"!=typeof window,h=()=>{const e=r(y);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},v=()=>h().options,w=()=>h().sdk,f=()=>{const{session:t}=h();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(!0),{isLoading:e((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,claims:t.claims,isAuthenticated:t.isAuthenticated}},U=()=>{const{user:r,session:s}=h(),n=()=>{!r.user.value&&s.session.value&&r.fetchUser()};return n(),t(s.session,n),{isLoading:e((()=>r.isLoading.value||r.isFetchUserWasNeverCalled.value)),user:r.user}},I=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r};let _;const j=e=>{const t=m({persistTokens:S,storeLastAuthenticatedUser:S,autoRefresh:S,...e});return _=t,t};_=j({projectId:"temp pid"});const k=()=>S?_?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),C=()=>S?_?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),R=(e=k())=>_?.isJwtExpired(e),A=(e=C())=>_?.isJwtExpired(e),O=I(((e=k(),t)=>_?.getJwtPermissions(e,t))),q=I(((e=k(),t)=>_?.getJwtRoles(e,t))),B=I(((e=k())=>_?.getCurrentTenant(e)));var T=s({__name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},locale:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean||String},validateOnBlur:{type:Boolean},restartOnError:{type:Boolean},sendSessionToken:{type:Boolean},errorTransformer:{type:Function},onScreenUpdate:{type:Function},form:{type:Object},client:{type:Object},styleId:{type:String},themeOverride:{type:Object},nonce:{type:String},dismissScreenErrorOnInput:{type:Boolean},popupOrigin:{type:String}},emits:["success","error","ready"],setup(t,{emit:r}){(customElements?.get("descope-wc")||g).sdkConfigOverrides={baseHeaders:b,persistTokens:!1,hooks:{get beforeRequest(){return _.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const s=t,c=r,{projectId:p,baseUrl:m,baseStaticUrl:y,storeLastAuthenticatedUser:S,baseCdnUrl:h,customStorage:f}=v(),U=w(),I=e((()=>s.form?JSON.stringify(s.form):"")),j=e((()=>s.client?JSON.stringify(s.client):"")),k=async e=>{await(U.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),c("success",e)},C=e=>c("error",e),R=e=>c("ready",e);return(e,r)=>{const s=n("descope-wc");return a(),i("div",null,[o(s,{"project-id":l(p),"base-url":l(m),"base-static-url":l(y),"base-cdn-url":l(h),"flow-id":t.flowId,"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"^telemetryKey":t.telemetryKey,"redirect-url":t.redirectUrl,"auto-focus":t.autoFocus,"style-id":t.styleId,"therme-override":t.themeOverride,"validate-on-blur":t.validateOnBlur,"restart-on-error":t.restartOnError,"send-session-token":t.sendSessionToken,"store-last-authenticated-user":l(S),".customStorage":l(f),".errorTransformer":t.errorTransformer,".onScreenUpdate":t.onScreenUpdate,"^form":I.value,"^client":j.value,"^nonce":t.nonce,"^dismiss-screen-error-on-input":t.dismissScreenErrorOnInput,"^popup-origin":t.popupOrigin,onSuccess:k,onError:C,onReady:R},{default:d((()=>[u(e.$slots,"default")])),_:3},40,["project-id","base-url","base-static-url","base-cdn-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus","style-id","therme-override","validate-on-blur","restart-on-error","send-session-token","store-last-authenticated-user",".customStorage",".errorTransformer",".onScreenUpdate","^form","^client","^nonce","^dismiss-screen-error-on-input","^popup-origin"])])}}});T.__file="src/Descope.vue";var M=s({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-user-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});M.__file="src/UserManagement.vue";var E=s({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-role-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-cdn-url":l(c),"base-static-url":l(u),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-cdn-url","base-static-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});E.__file="src/RoleManagement.vue";var F=s({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-access-key-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});F.__file="src/AccessKeyManagement.vue";var L=s({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-audit-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});L.__file="src/AuditManagement.vue";var N=s({__name:"UserProfile",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["logout","ready"],setup(e,{emit:t}){const s=r(y),d=t,u=e=>{s?.resetAuth(),d("logout",e)},c=e=>d("ready",e),{projectId:p,baseUrl:g,baseStaticUrl:m,baseCdnUrl:b}=v();return(t,r)=>{const s=n("descope-user-profile-widget");return a(),i("div",null,[o(s,{"project-id":l(p),"base-url":l(g),"base-static-url":l(m),"base-cdn-url":l(b),"^theme":e.theme,"^locale":e.locale,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onLogout:u,onReady:c},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});N.__file="src/UserProfile.vue";var P=s({__name:"ApplicationsPortal",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-applications-portal-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});P.__file="src/ApplicationsPortal.vue";const J=c(null),K=()=>l(J)?.();let x;const D=()=>x;var W={install:function(r,s){const n=j({persistTokens:!0,autoRefresh:!0,...s,baseHeaders:b});x=n;const a=c(null),i=c(""),o=c(),d=c(!1),u=c(null),g=c(null);n.onSessionTokenChange((e=>{i.value=e})),n.onClaimsChange((e=>{o.value=e})),n.onIsAuthenticatedChange((e=>{d.value=e})),n.onUserChange((e=>{g.value=e}));const m=async e=>{"undefined"!=typeof window&&window.descopeBridge||(a.value=!0,await n.refresh(void 0,e),a.value=!1)},S=e((()=>null===a.value)),h=e((()=>null===u.value));J.value=()=>new Promise(((e,r)=>{!d.value&&S.value&&m().catch(r),t((()=>a.value),(()=>!a.value&&e(!!l(d))),{immediate:!0})})),r.provide(y,{session:{fetchSession:m,isLoading:p(a),session:p(i),claims:p(o),isAuthenticated:p(d),isFetchSessionWasNeverCalled:S},user:{fetchUser:async()=>{u.value=!0,await n.me(),u.value=!1},isLoading:p(u),user:p(g),isFetchUserWasNeverCalled:h},sdk:n,options:s,resetAuth:function(){i.value="",d.value=!1,g.value=null}})}};export{F as AccessKeyManagement,P as ApplicationsPortal,L as AuditManagement,T as Descope,E as RoleManagement,M as UserManagement,N as UserProfile,W as default,B as getCurrentTenant,O as getJwtPermissions,q as getJwtRoles,C as getRefreshToken,D as getSdk,k as getSessionToken,A as isRefreshTokenExpired,R as isSessionTokenExpired,K as routeGuard,w as useDescope,f as useSession,U as useUser};
|
|
1
|
+
import{computed as e,watch as t,inject as r,defineComponent as s,resolveComponent as n,openBlock as a,createElementBlock as i,createVNode as o,unref as l,withCtx as d,renderSlot as u,ref as c,readonly as p}from"vue";import g from"@descope/web-component";import m from"@descope/web-js-sdk";import"@descope/user-management-widget";import"@descope/role-management-widget";import"@descope/access-key-management-widget";import"@descope/audit-management-widget";import"@descope/user-profile-widget";import"@descope/applications-portal-widget";const y=Symbol("$descope"),b={"x-descope-sdk-name":"vue","x-descope-sdk-version":"3.1.5"},S="undefined"!=typeof window,h=()=>{const e=r(y);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},v=()=>h().options,w=()=>h().sdk,f=()=>{const{session:t}=h();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(!0),{isLoading:e((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,claims:t.claims,isAuthenticated:t.isAuthenticated}},U=()=>{const{user:r,session:s}=h(),n=()=>{!r.user.value&&s.session.value&&r.fetchUser()};return n(),t(s.session,n),{isLoading:e((()=>r.isLoading.value||r.isFetchUserWasNeverCalled.value)),user:r.user}},I=e=>(...t)=>{let r;try{r=e(...t)}catch(e){console.error(e)}return r};let _;const j=e=>{const t=m({persistTokens:S,storeLastAuthenticatedUser:S,autoRefresh:S,...e});return _=t,t};_=j({projectId:"temp pid"});const k=()=>S?_?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),C=()=>S?_?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),R=(e=k())=>_?.isJwtExpired(e),A=(e=C())=>_?.isJwtExpired(e),O=I(((e=k(),t)=>_?.getJwtPermissions(e,t))),q=I(((e=k(),t)=>_?.getJwtRoles(e,t))),B=I(((e=k())=>_?.getCurrentTenant(e)));var T=s({__name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},locale:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean||String},validateOnBlur:{type:Boolean},restartOnError:{type:Boolean},sendSessionToken:{type:Boolean},errorTransformer:{type:Function},onScreenUpdate:{type:Function},form:{type:Object},client:{type:Object},styleId:{type:String},themeOverride:{type:Object},nonce:{type:String},dismissScreenErrorOnInput:{type:Boolean},popupOrigin:{type:String}},emits:["success","error","ready"],setup(t,{emit:r}){(customElements?.get("descope-wc")||g).sdkConfigOverrides={baseHeaders:b,persistTokens:!1,hooks:{get beforeRequest(){return _.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const s=t,c=r,{projectId:p,baseUrl:m,baseStaticUrl:y,storeLastAuthenticatedUser:S,baseCdnUrl:h,customStorage:f}=v(),U=w(),I=e((()=>s.form?JSON.stringify(s.form):"")),j=e((()=>s.client?JSON.stringify(s.client):"")),k=async e=>{await(U.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),c("success",e)},C=e=>c("error",e),R=e=>c("ready",e);return(e,r)=>{const s=n("descope-wc");return a(),i("div",null,[o(s,{"project-id":l(p),"base-url":l(m),"base-static-url":l(y),"base-cdn-url":l(h),"flow-id":t.flowId,"^theme":t.theme,"^locale":t.locale,"^tenant":t.tenant,"^debug":t.debug,"^telemetryKey":t.telemetryKey,"redirect-url":t.redirectUrl,"auto-focus":t.autoFocus,"style-id":t.styleId,"therme-override":t.themeOverride,"validate-on-blur":t.validateOnBlur,"restart-on-error":t.restartOnError,"send-session-token":t.sendSessionToken,"store-last-authenticated-user":l(S),".customStorage":l(f),".errorTransformer":t.errorTransformer,".onScreenUpdate":t.onScreenUpdate,"^form":I.value,"^client":j.value,"^nonce":t.nonce,"^dismiss-screen-error-on-input":t.dismissScreenErrorOnInput,"^popup-origin":t.popupOrigin,onSuccess:k,onError:C,onReady:R},{default:d((()=>[u(e.$slots,"default")])),_:3},40,["project-id","base-url","base-static-url","base-cdn-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus","style-id","therme-override","validate-on-blur","restart-on-error","send-session-token","store-last-authenticated-user",".customStorage",".errorTransformer",".onScreenUpdate","^form","^client","^nonce","^dismiss-screen-error-on-input","^popup-origin"])])}}});T.__file="src/Descope.vue";var M=s({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-user-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});M.__file="src/UserManagement.vue";var E=s({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-role-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-cdn-url":l(c),"base-static-url":l(u),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-cdn-url","base-static-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});E.__file="src/RoleManagement.vue";var F=s({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-access-key-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});F.__file="src/AccessKeyManagement.vue";var L=s({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-audit-management-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^tenant","^debug","widget-id","style-id"])])}}});L.__file="src/AuditManagement.vue";var N=s({__name:"UserProfile",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["logout","ready"],setup(e,{emit:t}){const s=r(y),d=t,u=e=>{s?.resetAuth(),d("logout",e)},c=e=>d("ready",e),{projectId:p,baseUrl:g,baseStaticUrl:m,baseCdnUrl:b}=v();return(t,r)=>{const s=n("descope-user-profile-widget");return a(),i("div",null,[o(s,{"project-id":l(p),"base-url":l(g),"base-static-url":l(m),"base-cdn-url":l(b),"^theme":e.theme,"^locale":e.locale,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onLogout:u,onReady:c},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});N.__file="src/UserProfile.vue";var P=s({__name:"ApplicationsPortal",props:{widgetId:{type:String,required:!0},theme:{type:String},locale:{type:String},styleId:{type:String},debug:{type:Boolean}},emits:["ready"],setup(e,{emit:t}){const r=t,{projectId:s,baseUrl:d,baseStaticUrl:u,baseCdnUrl:c}=v(),p=e=>r("ready",e);return(t,r)=>{const g=n("descope-applications-portal-widget");return a(),i("div",null,[o(g,{"project-id":l(s),"base-url":l(d),"base-static-url":l(u),"base-cdn-url":l(c),"^theme":e.theme,"^locale":e.locale,"^debug":e.debug,"widget-id":e.widgetId,"style-id":e.styleId,onReady:p},null,8,["project-id","base-url","base-static-url","base-cdn-url","^theme","^locale","^debug","widget-id","style-id"])])}}});P.__file="src/ApplicationsPortal.vue";const J=c(null),K=()=>l(J)?.();let x;const D=()=>x;var W={install:function(r,s){const n=j({persistTokens:!0,autoRefresh:!0,...s,baseHeaders:b});x=n;const a=c(null),i=c(""),o=c(),d=c(!1),u=c(null),g=c(null);n.onSessionTokenChange((e=>{i.value=e})),n.onClaimsChange((e=>{o.value=e})),n.onIsAuthenticatedChange((e=>{d.value=e})),n.onUserChange((e=>{g.value=e}));const m=async e=>{"undefined"!=typeof window&&window.descopeBridge||(a.value=!0,await n.refresh(void 0,e),a.value=!1)},S=e((()=>null===a.value)),h=e((()=>null===u.value));J.value=()=>new Promise(((e,r)=>{!d.value&&S.value&&m().catch(r),t((()=>a.value),(()=>!a.value&&e(!!l(d))),{immediate:!0})})),r.provide(y,{session:{fetchSession:m,isLoading:p(a),session:p(i),claims:p(o),isAuthenticated:p(d),isFetchSessionWasNeverCalled:S},user:{fetchUser:async()=>{u.value=!0,await n.me(),u.value=!1},isLoading:p(u),user:p(g),isFetchUserWasNeverCalled:h},sdk:n,options:s,resetAuth:function(){i.value="",d.value=!1,g.value=null}})}};export{F as AccessKeyManagement,P as ApplicationsPortal,L as AuditManagement,T as Descope,E as RoleManagement,M as UserManagement,N as UserProfile,W as default,B as getCurrentTenant,O as getJwtPermissions,q as getJwtRoles,C as getRefreshToken,D as getSdk,k as getSessionToken,A as isRefreshTokenExpired,R as isSessionTokenExpired,K as routeGuard,w as useDescope,f as useSession,U as useUser};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@descope/vue-sdk",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.5",
|
|
4
4
|
"main": "dist/index.cjs",
|
|
5
5
|
"module": "dist/index.mjs",
|
|
6
6
|
"type": "module",
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
]
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@descope/access-key-management-widget": "0.10.
|
|
29
|
-
"@descope/
|
|
30
|
-
"@descope/
|
|
31
|
-
"@descope/user-
|
|
32
|
-
"@descope/user-
|
|
33
|
-
"@descope/
|
|
34
|
-
"@descope/web-js-sdk": "1.53.
|
|
35
|
-
"@descope/
|
|
36
|
-
"@descope/
|
|
28
|
+
"@descope/access-key-management-widget": "0.10.4",
|
|
29
|
+
"@descope/audit-management-widget": "0.9.4",
|
|
30
|
+
"@descope/role-management-widget": "0.10.4",
|
|
31
|
+
"@descope/user-management-widget": "0.20.0",
|
|
32
|
+
"@descope/user-profile-widget": "0.19.0",
|
|
33
|
+
"@descope/applications-portal-widget": "0.9.4",
|
|
34
|
+
"@descope/web-js-sdk": "1.53.1",
|
|
35
|
+
"@descope/web-component": "4.4.0",
|
|
36
|
+
"@descope/core-js-sdk": "2.72.0"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"vue": ">=3"
|