@descope/vue-sdk 0.0.0-next-d3b7ecbc-20240411 → 0.0.0-next-99d31dc5-20240411

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 CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("vue"),t=require("@descope/web-component"),n=require("@descope/web-js-sdk");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@descope/user-management-widget"),require("@descope/role-management-widget"),require("@descope/access-key-management-widget"),require("@descope/audit-management-widget");var s=r(t),o=r(n);const i=Symbol("$descope"),a={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-d3b7ecbc-20240411"},d="undefined"!=typeof window,u=()=>{const t=e.inject(i);if(!t)throw Error("Missing Descope context, make sure you are using the Descope plugin");return t},l=()=>u().options,c=()=>u().sdk,p=e=>(...t)=>{let n;try{n=e(...t)}catch(e){console.error(e)}return n};let g;const m=e=>{const t=o.default({...e,persistTokens:d,autoRefresh:d});return g=t,t};g=m({projectId:"temp pid"});const f=()=>d?g?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),y=()=>d?g?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),h=p(((e=f(),t)=>g?.getJwtPermissions(e,t))),v=p(((e=f(),t)=>g?.getJwtRoles(e,t))),b=["project-id","base-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus",".errorTransformer","^form","^client"];var w=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},errorTransformer:{type:Function},form:{type:Object},client:{type:Object}},emits:["success","error","ready"],setup(t,{emit:n}){const r=t;s.default.sdkConfigOverrides={baseHeaders:a,persistTokens:!1,hooks:{get beforeRequest(){return g.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const{projectId:o,baseUrl:i}=l(),d=c(),u=e.computed((()=>r.form?JSON.stringify(r.form):"")),p=e.computed((()=>r.client?JSON.stringify(r.client):"")),m=async e=>{await(d.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),n("success",e)},f=e=>n("error",e),y=e=>n("ready",e);return(n,r)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-wc",{"project-id":e.unref(o),"base-url":e.unref(i),"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,".errorTransformer":t.errorTransformer,"^form":e.unref(u),"^client":e.unref(p),onSuccess:m,onError:f,onReady:y},null,40,b)]))}});w.__file="src/Descope.vue";const S=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var k=e.defineComponent({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-user-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,S)]))}});k.__file="src/UserManagement.vue";const x=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var j=e.defineComponent({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-role-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,x)]))}});j.__file="src/RoleManagement.vue";const _=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var q=e.defineComponent({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-access-key-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,_)]))}});q.__file="src/AccessKeyManagement.vue";const R=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var B=e.defineComponent({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-audit-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,R)]))}});B.__file="src/AuditManagement.vue";const E=e.ref(null);let I;var U={install:function(t,n){const r=m({...n,persistTokens:!0,autoRefresh:!0,baseHeaders:a});I=r;const s=e.ref(null),o=e.ref(""),d=e.ref(null),u=e.ref(null);r.onSessionTokenChange((e=>{o.value=e})),r.onUserChange((e=>{u.value=e}));const l=async()=>{s.value=!0,await r.refresh(),s.value=!1},c=e.computed((()=>null===s.value)),p=e.computed((()=>null===d.value));E.value=()=>new Promise(((t,n)=>{!o.value&&c.value&&l().catch(n),e.watch((()=>s.value),(()=>!s.value&&t(!!e.unref(o))),{immediate:!0})})),t.provide(i,{session:{fetchSession:l,isLoading:e.readonly(s),session:e.readonly(o),isFetchSessionWasNeverCalled:c},user:{fetchUser:async()=>{d.value=!0,await r.me(),d.value=!1},isLoading:e.readonly(d),user:e.readonly(u),isFetchUserWasNeverCalled:p},sdk:r,options:n})}};exports.AccessKeyManagement=q,exports.AuditManagement=B,exports.Descope=w,exports.RoleManagement=j,exports.UserManagement=k,exports.default=U,exports.getJwtPermissions=h,exports.getJwtRoles=v,exports.getRefreshToken=y,exports.getSdk=()=>I,exports.getSessionToken=f,exports.isRefreshTokenExpired=(e=y())=>g?.isJwtExpired(e),exports.isSessionTokenExpired=(e=f())=>g?.isJwtExpired(e),exports.routeGuard=()=>e.unref(E)?.(),exports.useDescope=c,exports.useSession=()=>{const{session:t}=u();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,isAuthenticated:e.computed((()=>!!t.session.value))}},exports.useUser=()=>{const{user:t,session:n}=u(),r=()=>{!t.user.value&&n.session.value&&t.fetchUser()};return r(),e.watch(n.session,r),{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"),n=require("@descope/web-js-sdk");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@descope/user-management-widget"),require("@descope/role-management-widget"),require("@descope/access-key-management-widget"),require("@descope/audit-management-widget");var s=r(t),o=r(n);const i=Symbol("$descope"),a={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-99d31dc5-20240411"},d="undefined"!=typeof window,u=()=>{const t=e.inject(i);if(!t)throw Error("Missing Descope context, make sure you are using the Descope plugin");return t},l=()=>u().options,c=()=>u().sdk,p=e=>(...t)=>{let n;try{n=e(...t)}catch(e){console.error(e)}return n};let g;const m=e=>{const t=o.default({...e,persistTokens:d,autoRefresh:d});return g=t,t};g=m({projectId:"temp pid"});const f=()=>d?g?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),y=()=>d?g?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),h=p(((e=f(),t)=>g?.getJwtPermissions(e,t))),v=p(((e=f(),t)=>g?.getJwtRoles(e,t))),w=["project-id","base-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus",".errorTransformer","^form","^client"];var b=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},errorTransformer:{type:Function},form:{type:Object},client:{type:Object}},emits:["success","error","ready"],setup(t,{emit:n}){const r=t;s.default.sdkConfigOverrides={baseHeaders:a,persistTokens:!1,hooks:{get beforeRequest(){return g.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const{projectId:o,baseUrl:i}=l(),d=c(),u=e.computed((()=>r.form?JSON.stringify(r.form):"")),p=e.computed((()=>r.client?JSON.stringify(r.client):"")),m=async e=>{await(d.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),n("success",e)},f=e=>n("error",e),y=e=>n("ready",e);return(n,r)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-wc",{"project-id":e.unref(o),"base-url":e.unref(i),"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,".errorTransformer":t.errorTransformer,"^form":e.unref(u),"^client":e.unref(p),onSuccess:m,onError:f,onReady:y},null,40,w)]))}});b.__file="src/Descope.vue";const S=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var k=e.defineComponent({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-user-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,S)]))}});k.__file="src/UserManagement.vue";const x=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var j=e.defineComponent({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-role-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,x)]))}});j.__file="src/RoleManagement.vue";const _=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var q=e.defineComponent({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-access-key-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,_)]))}});q.__file="src/AccessKeyManagement.vue";const R=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var B=e.defineComponent({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(t){const{projectId:n,baseUrl:r}=l();return(s,o)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("descope-audit-management-widget",{"project-id":e.unref(n),"base-url":e.unref(r),"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"widget-id":t.widgetId},null,8,R)]))}});B.__file="src/AuditManagement.vue";const E=e.ref(null);let I;var U={install:function(t,n){const r=m({...n,persistTokens:!0,autoRefresh:!0,baseHeaders:a});I=r;const s=e.ref(null),o=e.ref(""),d=e.ref(null),u=e.ref(null);r.onSessionTokenChange((e=>{o.value=e})),r.onUserChange((e=>{u.value=e}));const l=async()=>{s.value=!0,await r.refresh(),s.value=!1},c=e.computed((()=>null===s.value)),p=e.computed((()=>null===d.value));E.value=()=>new Promise(((t,n)=>{!o.value&&c.value&&l().catch(n),e.watch((()=>s.value),(()=>!s.value&&t(!!e.unref(o))),{immediate:!0})})),t.provide(i,{session:{fetchSession:l,isLoading:e.readonly(s),session:e.readonly(o),isFetchSessionWasNeverCalled:c},user:{fetchUser:async()=>{d.value=!0,await r.me(),d.value=!1},isLoading:e.readonly(d),user:e.readonly(u),isFetchUserWasNeverCalled:p},sdk:r,options:n})}};exports.AccessKeyManagement=q,exports.AuditManagement=B,exports.Descope=b,exports.RoleManagement=j,exports.UserManagement=k,exports.default=U,exports.getJwtPermissions=h,exports.getJwtRoles=v,exports.getRefreshToken=y,exports.getSdk=()=>I,exports.getSessionToken=f,exports.isRefreshTokenExpired=(e=y())=>g?.isJwtExpired(e),exports.isSessionTokenExpired=(e=f())=>g?.isJwtExpired(e),exports.routeGuard=()=>e.unref(E)?.(),exports.useDescope=c,exports.useSession=()=>{const{session:t}=u();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,isAuthenticated:e.computed((()=>!!t.session.value))}},exports.useUser=()=>{const{user:t,session:n}=u(),r=()=>{!t.user.value&&n.session.value&&t.fetchUser()};return r(),e.watch(n.session,r),{isLoading:e.computed((()=>t.isLoading.value||t.isFetchUserWasNeverCalled.value)),user:t.user}};
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import{computed as e,watch as t,inject as n,defineComponent as s,openBlock as r,createElementBlock as o,createElementVNode as i,unref as a,ref as d,readonly as u}from"vue";import l from"@descope/web-component";import c 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";const p=Symbol("$descope"),g={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-d3b7ecbc-20240411"},m="undefined"!=typeof window,y=()=>{const e=n(p);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},b=()=>y().options,v=()=>y().sdk,h=()=>{const{session:t}=y();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(),{isLoading:e((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,isAuthenticated:e((()=>!!t.session.value))}},f=()=>{const{user:n,session:s}=y(),r=()=>{!n.user.value&&s.session.value&&n.fetchUser()};return r(),t(s.session,r),{isLoading:e((()=>n.isLoading.value||n.isFetchUserWasNeverCalled.value)),user:n.user}},w=e=>(...t)=>{let n;try{n=e(...t)}catch(e){console.error(e)}return n};let S;const k=e=>{const t=c({...e,persistTokens:m,autoRefresh:m});return S=t,t};S=k({projectId:"temp pid"});const _=()=>m?S?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),j=()=>m?S?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),I=(e=_())=>S?.isJwtExpired(e),R=(e=j())=>S?.isJwtExpired(e),U=w(((e=_(),t)=>S?.getJwtPermissions(e,t))),q=w(((e=_(),t)=>S?.getJwtRoles(e,t))),M=["project-id","base-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus",".errorTransformer","^form","^client"];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},errorTransformer:{type:Function},form:{type:Object},client:{type:Object}},emits:["success","error","ready"],setup(t,{emit:n}){const s=t;l.sdkConfigOverrides={baseHeaders:g,persistTokens:!1,hooks:{get beforeRequest(){return S.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const{projectId:d,baseUrl:u}=b(),c=v(),p=e((()=>s.form?JSON.stringify(s.form):"")),m=e((()=>s.client?JSON.stringify(s.client):"")),y=async e=>{await(c.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),n("success",e)},h=e=>n("error",e),f=e=>n("ready",e);return(e,n)=>(r(),o("div",null,[i("descope-wc",{"project-id":a(d),"base-url":a(u),"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,".errorTransformer":t.errorTransformer,"^form":a(p),"^client":a(m),onSuccess:y,onError:h,onReady:f},null,40,M)]))}});T.__file="src/Descope.vue";const C=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var F=s({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=b();return(s,d)=>(r(),o("div",null,[i("descope-user-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,C)]))}});F.__file="src/UserManagement.vue";const N=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var x=s({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=b();return(s,d)=>(r(),o("div",null,[i("descope-role-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,N)]))}});x.__file="src/RoleManagement.vue";const A=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var J=s({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=b();return(s,d)=>(r(),o("div",null,[i("descope-access-key-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,A)]))}});J.__file="src/AccessKeyManagement.vue";const K=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var B=s({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=b();return(s,d)=>(r(),o("div",null,[i("descope-audit-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,K)]))}});B.__file="src/AuditManagement.vue";const L=d(null),O=()=>a(L)?.();let D;const W=()=>D;var E={install:function(n,s){const r=k({...s,persistTokens:!0,autoRefresh:!0,baseHeaders:g});D=r;const o=d(null),i=d(""),l=d(null),c=d(null);r.onSessionTokenChange((e=>{i.value=e})),r.onUserChange((e=>{c.value=e}));const m=async()=>{o.value=!0,await r.refresh(),o.value=!1},y=e((()=>null===o.value)),b=e((()=>null===l.value));L.value=()=>new Promise(((e,n)=>{!i.value&&y.value&&m().catch(n),t((()=>o.value),(()=>!o.value&&e(!!a(i))),{immediate:!0})})),n.provide(p,{session:{fetchSession:m,isLoading:u(o),session:u(i),isFetchSessionWasNeverCalled:y},user:{fetchUser:async()=>{l.value=!0,await r.me(),l.value=!1},isLoading:u(l),user:u(c),isFetchUserWasNeverCalled:b},sdk:r,options:s})}};export{J as AccessKeyManagement,B as AuditManagement,T as Descope,x as RoleManagement,F as UserManagement,E as default,U as getJwtPermissions,q as getJwtRoles,j as getRefreshToken,W as getSdk,_ as getSessionToken,R as isRefreshTokenExpired,I as isSessionTokenExpired,O as routeGuard,v as useDescope,h as useSession,f as useUser};
1
+ import{computed as e,watch as t,inject as n,defineComponent as s,openBlock as r,createElementBlock as o,createElementVNode as i,unref as a,ref as d,readonly as u}from"vue";import l from"@descope/web-component";import c 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";const p=Symbol("$descope"),g={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-99d31dc5-20240411"},m="undefined"!=typeof window,y=()=>{const e=n(p);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},v=()=>y().options,h=()=>y().sdk,b=()=>{const{session:t}=y();return t.isFetchSessionWasNeverCalled.value&&t.fetchSession(),{isLoading:e((()=>t.isLoading.value||t.isFetchSessionWasNeverCalled.value)),sessionToken:t.session,isAuthenticated:e((()=>!!t.session.value))}},f=()=>{const{user:n,session:s}=y(),r=()=>{!n.user.value&&s.session.value&&n.fetchUser()};return r(),t(s.session,r),{isLoading:e((()=>n.isLoading.value||n.isFetchUserWasNeverCalled.value)),user:n.user}},w=e=>(...t)=>{let n;try{n=e(...t)}catch(e){console.error(e)}return n};let S;const k=e=>{const t=c({...e,persistTokens:m,autoRefresh:m});return S=t,t};S=k({projectId:"temp pid"});const _=()=>m?S?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),j=()=>m?S?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),I=(e=_())=>S?.isJwtExpired(e),R=(e=j())=>S?.isJwtExpired(e),U=w(((e=_(),t)=>S?.getJwtPermissions(e,t))),q=w(((e=_(),t)=>S?.getJwtRoles(e,t))),M=["project-id","base-url","flow-id","^theme","^locale","^tenant","^debug","^telemetryKey","redirect-url","auto-focus",".errorTransformer","^form","^client"];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},errorTransformer:{type:Function},form:{type:Object},client:{type:Object}},emits:["success","error","ready"],setup(t,{emit:n}){const s=t;l.sdkConfigOverrides={baseHeaders:g,persistTokens:!1,hooks:{get beforeRequest(){return S.httpClient.hooks.beforeRequest},set beforeRequest(e){}}};const{projectId:d,baseUrl:u}=v(),c=h(),p=e((()=>s.form?JSON.stringify(s.form):"")),m=e((()=>s.client?JSON.stringify(s.client):"")),y=async e=>{await(c.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail)))),n("success",e)},b=e=>n("error",e),f=e=>n("ready",e);return(e,n)=>(r(),o("div",null,[i("descope-wc",{"project-id":a(d),"base-url":a(u),"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,".errorTransformer":t.errorTransformer,"^form":a(p),"^client":a(m),onSuccess:y,onError:b,onReady:f},null,40,M)]))}});T.__file="src/Descope.vue";const C=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var F=s({__name:"UserManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=v();return(s,d)=>(r(),o("div",null,[i("descope-user-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,C)]))}});F.__file="src/UserManagement.vue";const N=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var x=s({__name:"RoleManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=v();return(s,d)=>(r(),o("div",null,[i("descope-role-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,N)]))}});x.__file="src/RoleManagement.vue";const A=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var J=s({__name:"AccessKeyManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=v();return(s,d)=>(r(),o("div",null,[i("descope-access-key-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,A)]))}});J.__file="src/AccessKeyManagement.vue";const K=["project-id","base-url","^theme","^tenant","^debug","widget-id"];var B=s({__name:"AuditManagement",props:{tenant:{type:String,required:!0},widgetId:{type:String,required:!0},theme:{type:String},debug:{type:Boolean}},setup(e){const{projectId:t,baseUrl:n}=v();return(s,d)=>(r(),o("div",null,[i("descope-audit-management-widget",{"project-id":a(t),"base-url":a(n),"^theme":e.theme,"^tenant":e.tenant,"^debug":e.debug,"widget-id":e.widgetId},null,8,K)]))}});B.__file="src/AuditManagement.vue";const L=d(null),O=()=>a(L)?.();let D;const W=()=>D;var E={install:function(n,s){const r=k({...s,persistTokens:!0,autoRefresh:!0,baseHeaders:g});D=r;const o=d(null),i=d(""),l=d(null),c=d(null);r.onSessionTokenChange((e=>{i.value=e})),r.onUserChange((e=>{c.value=e}));const m=async()=>{o.value=!0,await r.refresh(),o.value=!1},y=e((()=>null===o.value)),v=e((()=>null===l.value));L.value=()=>new Promise(((e,n)=>{!i.value&&y.value&&m().catch(n),t((()=>o.value),(()=>!o.value&&e(!!a(i))),{immediate:!0})})),n.provide(p,{session:{fetchSession:m,isLoading:u(o),session:u(i),isFetchSessionWasNeverCalled:y},user:{fetchUser:async()=>{l.value=!0,await r.me(),l.value=!1},isLoading:u(l),user:u(c),isFetchUserWasNeverCalled:v},sdk:r,options:s})}};export{J as AccessKeyManagement,B as AuditManagement,T as Descope,x as RoleManagement,F as UserManagement,E as default,U as getJwtPermissions,q as getJwtRoles,j as getRefreshToken,W as getSdk,_ as getSessionToken,R as isRefreshTokenExpired,I as isSessionTokenExpired,O as routeGuard,h as useDescope,b as useSession,f 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": "0.0.0-next-d3b7ecbc-20240411",
3
+ "version": "0.0.0-next-99d31dc5-20240411",
4
4
  "main": "dist/index.cjs",
5
5
  "module": "dist/index.mjs",
6
6
  "type": "module",