@descope/vue-sdk 0.0.0-next-40d54c9a-20230629 → 1.0.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/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@descope/web-component"),s=require("vue"),o=require("@descope/web-js-sdk");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=t(e),n=t(o);const i=Symbol("$descope"),u={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-40d54c9a-20230629"},a="undefined"!=typeof window,l=()=>{const e=s.inject(i);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},c=()=>l().sdk;r.default.sdkConfigOverrides={baseHeaders:u};var d={name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean}},emits:["success","error"],setup(e,{emit:s}){const{projectId:o,baseUrl:t,sessionTokenViaCookie:r}=l().options,n=c();return{projectId:o,baseUrl:t,sessionTokenViaCookie:r,onSuccess:async e=>{s("success",e),await(n.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail))))},onError:e=>s("error",e)}}};const p=["project-id","base-url","flow-id","^theme","^tenant","^debug","^telemetryKey","redirect-url","auto-focus"];d.render=function(e,o,t,r,n,i){return s.openBlock(),s.createElementBlock("div",null,[s.createElementVNode("descope-wc",{"project-id":r.projectId,"base-url":r.baseUrl,"flow-id":t.flowId,"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"^telemetryKey":t.telemetryKey,"redirect-url":t.redirectUrl,"auto-focus":t.autoFocus,onSuccess:o[0]||(o[0]=(...e)=>r.onSuccess&&r.onSuccess(...e)),onError:o[1]||(o[1]=(...e)=>r.onError&&r.onError(...e))},null,40,p)])},d.__file="src/Descope.vue";const f=e=>(...s)=>{let o;try{o=e(...s)}catch(e){console.error(e)}return o};let v;const g=e=>{const s=n.default({...e,persistTokens:a,autoRefresh:a});return v=s,s};v=g({projectId:"temp pid"});const y=()=>a?v?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),h=f(((e=y(),s)=>v?.getJwtPermissions(e,s))),m=f(((e=y(),s)=>v?.getJwtRoles(e,s))),k=s.ref(null);let S;var w={install:function(e,o){const t=g({...o,persistTokens:!0,autoRefresh:!0,baseHeaders:u});S=t;const r=s.ref(null),n=s.ref(""),a=s.ref(null),l=s.ref(null);t.onSessionTokenChange((e=>{n.value=e})),t.onUserChange((e=>{l.value=e}));const c=async()=>{r.value=!0,await t.refresh(),r.value=!1},d=s.computed((()=>null===r.value)),p=s.computed((()=>null===a.value));k.value=async()=>(!n.value&&d.value&&await c(),!!s.unref(n)),e.provide(i,{session:{fetchSession:c,isLoading:s.readonly(r),session:s.readonly(n),isFetchSessionWasNeverCalled:d},user:{fetchUser:async()=>{a.value=!0,await t.me(),a.value=!1},isLoading:s.readonly(a),user:s.readonly(l),isFetchUserWasNeverCalled:p},sdk:t,options:o})}};exports.Descope=d,exports.default=w,exports.getJwtPermissions=h,exports.getJwtRoles=m,exports.getRefreshToken=()=>a?v?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),exports.getSdk=()=>S,exports.getSessionToken=y,exports.routeGuard=()=>s.unref(k)?.(),exports.useDescope=c,exports.useSession=()=>{const{session:e}=l();return e.isFetchSessionWasNeverCalled.value&&e.fetchSession(),{isLoading:s.computed((()=>e.isLoading.value||e.isFetchSessionWasNeverCalled.value)),sessionToken:e.session,isAuthenticated:s.computed((()=>!!e.session.value))}},exports.useUser=()=>{const{user:e,session:o}=l(),t=()=>{!e.user.value&&o.session.value&&e.fetchUser()};return t(),s.watch(o.session,t),{isLoading:s.computed((()=>e.isLoading.value||e.isFetchUserWasNeverCalled.value)),user:e.user}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@descope/web-component"),s=require("vue"),o=require("@descope/web-js-sdk");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=t(e),n=t(o);const i=Symbol("$descope"),u={"x-descope-sdk-name":"vue","x-descope-sdk-version":"1.0.0"},a="undefined"!=typeof window,l=()=>{const e=s.inject(i);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},c=()=>l().sdk;r.default.sdkConfigOverrides={baseHeaders:u};var d={name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean}},emits:["success","error"],setup(e,{emit:s}){const{projectId:o,baseUrl:t,sessionTokenViaCookie:r}=l().options,n=c();return{projectId:o,baseUrl:t,sessionTokenViaCookie:r,onSuccess:async e=>{s("success",e),await(n.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail))))},onError:e=>s("error",e)}}};const p=["project-id","base-url","flow-id","^theme","^tenant","^debug","^telemetryKey","redirect-url","auto-focus"];d.render=function(e,o,t,r,n,i){return s.openBlock(),s.createElementBlock("div",null,[s.createElementVNode("descope-wc",{"project-id":r.projectId,"base-url":r.baseUrl,"flow-id":t.flowId,"^theme":t.theme,"^tenant":t.tenant,"^debug":t.debug,"^telemetryKey":t.telemetryKey,"redirect-url":t.redirectUrl,"auto-focus":t.autoFocus,onSuccess:o[0]||(o[0]=(...e)=>r.onSuccess&&r.onSuccess(...e)),onError:o[1]||(o[1]=(...e)=>r.onError&&r.onError(...e))},null,40,p)])},d.__file="src/Descope.vue";const f=e=>(...s)=>{let o;try{o=e(...s)}catch(e){console.error(e)}return o};let v;const g=e=>{const s=n.default({...e,persistTokens:a,autoRefresh:a});return v=s,s};v=g({projectId:"temp pid"});const y=()=>a?v?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),h=f(((e=y(),s)=>v?.getJwtPermissions(e,s))),m=f(((e=y(),s)=>v?.getJwtRoles(e,s))),k=s.ref(null);let S;var w={install:function(e,o){const t=g({...o,persistTokens:!0,autoRefresh:!0,baseHeaders:u});S=t;const r=s.ref(null),n=s.ref(""),a=s.ref(null),l=s.ref(null);t.onSessionTokenChange((e=>{n.value=e})),t.onUserChange((e=>{l.value=e}));const c=async()=>{r.value=!0,await t.refresh(),r.value=!1},d=s.computed((()=>null===r.value)),p=s.computed((()=>null===a.value));k.value=async()=>(!n.value&&d.value&&await c(),!!s.unref(n)),e.provide(i,{session:{fetchSession:c,isLoading:s.readonly(r),session:s.readonly(n),isFetchSessionWasNeverCalled:d},user:{fetchUser:async()=>{a.value=!0,await t.me(),a.value=!1},isLoading:s.readonly(a),user:s.readonly(l),isFetchUserWasNeverCalled:p},sdk:t,options:o})}};exports.Descope=d,exports.default=w,exports.getJwtPermissions=h,exports.getJwtRoles=m,exports.getRefreshToken=()=>a?v?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),exports.getSdk=()=>S,exports.getSessionToken=y,exports.routeGuard=()=>s.unref(k)?.(),exports.useDescope=c,exports.useSession=()=>{const{session:e}=l();return e.isFetchSessionWasNeverCalled.value&&e.fetchSession(),{isLoading:s.computed((()=>e.isLoading.value||e.isFetchSessionWasNeverCalled.value)),sessionToken:e.session,isAuthenticated:s.computed((()=>!!e.session.value))}},exports.useUser=()=>{const{user:e,session:o}=l(),t=()=>{!e.user.value&&o.session.value&&e.fetchUser()};return t(),s.watch(o.session,t),{isLoading:s.computed((()=>e.isLoading.value||e.isFetchUserWasNeverCalled.value)),user:e.user}};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/Descope.vue?vue&type=template&id=8a031dec&lang.js"],"sourcesContent":["<template>\n\t<div>\n\t\t<descope-wc\n\t\t\t:project-id=\"projectId\"\n\t\t\t:base-url=\"baseUrl\"\n\t\t\t:flow-id=\"flowId\"\n\t\t\t:theme.attr=\"theme\"\n\t\t\t:tenant.attr=\"tenant\"\n\t\t\t:debug.attr=\"debug\"\n\t\t\t:telemetryKey.attr=\"telemetryKey\"\n\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t:auto-focus=\"autoFocus\"\n\t\t\t@success=\"onSuccess\"\n\t\t\t@error=\"onError\"\n\t\t/>\n\t</div>\n</template>\n\n<script lang=\"ts\">\nimport DescopeWc from '@descope/web-component';\nimport { useOptions, useDescope } from './hooks';\nimport { baseHeaders } from './constants';\nimport { RequestConfig } from '@descope/core-js-sdk';\nimport { SetupContext } from 'vue';\n\nDescopeWc.sdkConfigOverrides = { baseHeaders };\n\nexport default {\n\t// eslint-disable-next-line vue/multi-word-component-names\n\tname: 'Descope',\n\tprops: {\n\t\tflowId: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\ttenant: {\n\t\t\ttype: String\n\t\t},\n\t\ttheme: {\n\t\t\ttype: String\n\t\t},\n\t\tdebug: {\n\t\t\ttype: Boolean\n\t\t},\n\t\ttelemetryKey: {\n\t\t\ttype: String\n\t\t},\n\t\tredirectUrl: {\n\t\t\ttype: String\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean\n\t\t}\n\t},\n\temits: ['success', 'error'],\n\tsetup(_: unknown, { emit }: SetupContext) {\n\t\tconst { projectId, baseUrl, sessionTokenViaCookie } = useOptions();\n\t\tconst sdk = useDescope();\n\n\t\tconst onSuccess = async (e: CustomEvent) => {\n\t\t\t// Note: We need to emit AFTER the afterRequest hook has been called, but for\n\t\t\t// an unknown reason, the emit is not called if we await the hook.\n\t\t\temit('success', e);\n\t\t\tawait sdk.httpClient.hooks?.afterRequest?.(\n\t\t\t\t{} as RequestConfig,\n\t\t\t\tnew Response(JSON.stringify(e.detail))\n\t\t\t);\n\t\t};\n\t\tconst onError = (e: Event) => emit('error', e);\n\n\t\treturn {\n\t\t\tprojectId,\n\t\t\tbaseUrl,\n\t\t\tsessionTokenViaCookie,\n\t\t\tonSuccess,\n\t\t\tonError\n\t\t};\n\t}\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","$setup","projectId","baseUrl","$props","flowId","theme","tenant","debug","telemetryKey","redirectUrl","autoFocus","onSuccess","args","onError"],"mappings":"8uCACCA,qBAcK,MAAA,KAAA,CAbJC,EAAAA,mBAYC,aAAA,CAXC,aAAYC,EAASC,UACrB,WAAUD,EAAOE,QACjB,UAASC,EAAMC,OACf,SAAYD,EAAKE,MACjB,UAAaF,EAAMG,OACnB,SAAYH,EAAKI,MACjB,gBAAmBJ,EAAYK,aAC/B,eAAcL,EAAWM,YACzB,aAAYN,EAASO,UACrBC,8BAASX,EAASW,WAAAX,EAAAW,aAAAC,IAClBC,4BAAOb,EAAOa,SAAAb,EAAAa,WAAAD"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/Descope.vue?vue&type=template&id=8a031dec&lang.js"],"sourcesContent":["<template>\n\t<div>\n\t\t<descope-wc\n\t\t\t:project-id=\"projectId\"\n\t\t\t:base-url=\"baseUrl\"\n\t\t\t:flow-id=\"flowId\"\n\t\t\t:theme.attr=\"theme\"\n\t\t\t:tenant.attr=\"tenant\"\n\t\t\t:debug.attr=\"debug\"\n\t\t\t:telemetryKey.attr=\"telemetryKey\"\n\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t:auto-focus=\"autoFocus\"\n\t\t\t@success=\"onSuccess\"\n\t\t\t@error=\"onError\"\n\t\t/>\n\t</div>\n</template>\n\n<script lang=\"ts\">\nimport DescopeWc from '@descope/web-component';\nimport { useOptions, useDescope } from './hooks';\nimport { baseHeaders } from './constants';\nimport { RequestConfig } from '@descope/core-js-sdk';\nimport { SetupContext } from 'vue';\n\nDescopeWc.sdkConfigOverrides = { baseHeaders };\n\nexport default {\n\t// eslint-disable-next-line vue/multi-word-component-names\n\tname: 'Descope',\n\tprops: {\n\t\tflowId: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\ttenant: {\n\t\t\ttype: String\n\t\t},\n\t\ttheme: {\n\t\t\ttype: String\n\t\t},\n\t\tdebug: {\n\t\t\ttype: Boolean\n\t\t},\n\t\ttelemetryKey: {\n\t\t\ttype: String\n\t\t},\n\t\tredirectUrl: {\n\t\t\ttype: String\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean\n\t\t}\n\t},\n\temits: ['success', 'error'],\n\tsetup(_: unknown, { emit }: SetupContext) {\n\t\tconst { projectId, baseUrl, sessionTokenViaCookie } = useOptions();\n\t\tconst sdk = useDescope();\n\n\t\tconst onSuccess = async (e: CustomEvent) => {\n\t\t\t// Note: We need to emit AFTER the afterRequest hook has been called, but for\n\t\t\t// an unknown reason, the emit is not called if we await the hook.\n\t\t\temit('success', e);\n\t\t\tawait sdk.httpClient.hooks?.afterRequest?.(\n\t\t\t\t{} as RequestConfig,\n\t\t\t\tnew Response(JSON.stringify(e.detail))\n\t\t\t);\n\t\t};\n\t\tconst onError = (e: Event) => emit('error', e);\n\n\t\treturn {\n\t\t\tprojectId,\n\t\t\tbaseUrl,\n\t\t\tsessionTokenViaCookie,\n\t\t\tonSuccess,\n\t\t\tonError\n\t\t};\n\t}\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","$setup","projectId","baseUrl","$props","flowId","theme","tenant","debug","telemetryKey","redirectUrl","autoFocus","onSuccess","args","onError"],"mappings":"utCACCA,qBAcK,MAAA,KAAA,CAbJC,EAAAA,mBAYC,aAAA,CAXC,aAAYC,EAASC,UACrB,WAAUD,EAAOE,QACjB,UAASC,EAAMC,OACf,SAAYD,EAAKE,MACjB,UAAaF,EAAMG,OACnB,SAAYH,EAAKI,MACjB,gBAAmBJ,EAAYK,aAC/B,eAAcL,EAAWM,YACzB,aAAYN,EAASO,UACrBC,8BAASX,EAASW,WAAAX,EAAAW,aAAAC,IAClBC,4BAAOb,EAAOa,SAAAb,EAAAa,WAAAD"}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import e from"@descope/web-component";import{computed as s,watch as o,inject as t,openBlock as n,createElementBlock as r,createElementVNode as i,ref as a,unref as u,readonly as l}from"vue";import c from"@descope/web-js-sdk";const d=Symbol("$descope"),p={"x-descope-sdk-name":"vue","x-descope-sdk-version":"0.0.0-next-40d54c9a-20230629"},v="undefined"!=typeof window,f=()=>{const e=t(d);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},g=()=>f().sdk,h=()=>{const{session:e}=f();return e.isFetchSessionWasNeverCalled.value&&e.fetchSession(),{isLoading:s((()=>e.isLoading.value||e.isFetchSessionWasNeverCalled.value)),sessionToken:e.session,isAuthenticated:s((()=>!!e.session.value))}},m=()=>{const{user:e,session:t}=f(),n=()=>{!e.user.value&&t.session.value&&e.fetchUser()};return n(),o(t.session,n),{isLoading:s((()=>e.isLoading.value||e.isFetchUserWasNeverCalled.value)),user:e.user}};e.sdkConfigOverrides={baseHeaders:p};var y={name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean}},emits:["success","error"],setup(e,{emit:s}){const{projectId:o,baseUrl:t,sessionTokenViaCookie:n}=f().options,r=g();return{projectId:o,baseUrl:t,sessionTokenViaCookie:n,onSuccess:async e=>{s("success",e),await(r.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail))))},onError:e=>s("error",e)}}};const S=["project-id","base-url","flow-id","^theme","^tenant","^debug","^telemetryKey","redirect-url","auto-focus"];y.render=function(e,s,o,t,a,u){return n(),r("div",null,[i("descope-wc",{"project-id":t.projectId,"base-url":t.baseUrl,"flow-id":o.flowId,"^theme":o.theme,"^tenant":o.tenant,"^debug":o.debug,"^telemetryKey":o.telemetryKey,"redirect-url":o.redirectUrl,"auto-focus":o.autoFocus,onSuccess:s[0]||(s[0]=(...e)=>t.onSuccess&&t.onSuccess(...e)),onError:s[1]||(s[1]=(...e)=>t.onError&&t.onError(...e))},null,40,S)])},y.__file="src/Descope.vue";const k=e=>(...s)=>{let o;try{o=e(...s)}catch(e){console.error(e)}return o};let w;const b=e=>{const s=c({...e,persistTokens:v,autoRefresh:v});return w=s,s};w=b({projectId:"temp pid"});const C=()=>v?w?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),U=()=>v?w?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),R=k(((e=C(),s)=>w?.getJwtPermissions(e,s))),T=k(((e=C(),s)=>w?.getJwtRoles(e,s))),j=a(null),F=()=>u(j)?.();let I;const L=()=>I;var N={install:function(e,o){const t=b({...o,persistTokens:!0,autoRefresh:!0,baseHeaders:p});I=t;const n=a(null),r=a(""),i=a(null),c=a(null);t.onSessionTokenChange((e=>{r.value=e})),t.onUserChange((e=>{c.value=e}));const v=async()=>{n.value=!0,await t.refresh(),n.value=!1},f=s((()=>null===n.value)),g=s((()=>null===i.value));j.value=async()=>(!r.value&&f.value&&await v(),!!u(r)),e.provide(d,{session:{fetchSession:v,isLoading:l(n),session:l(r),isFetchSessionWasNeverCalled:f},user:{fetchUser:async()=>{i.value=!0,await t.me(),i.value=!1},isLoading:l(i),user:l(c),isFetchUserWasNeverCalled:g},sdk:t,options:o})}};export{y as Descope,N as default,R as getJwtPermissions,T as getJwtRoles,U as getRefreshToken,L as getSdk,C as getSessionToken,F as routeGuard,g as useDescope,h as useSession,m as useUser};
1
+ import e from"@descope/web-component";import{computed as s,watch as o,inject as t,openBlock as n,createElementBlock as r,createElementVNode as i,ref as a,unref as u,readonly as l}from"vue";import c from"@descope/web-js-sdk";const d=Symbol("$descope"),p={"x-descope-sdk-name":"vue","x-descope-sdk-version":"1.0.0"},v="undefined"!=typeof window,f=()=>{const e=t(d);if(!e)throw Error("Missing Descope context, make sure you are using the Descope plugin");return e},g=()=>f().sdk,h=()=>{const{session:e}=f();return e.isFetchSessionWasNeverCalled.value&&e.fetchSession(),{isLoading:s((()=>e.isLoading.value||e.isFetchSessionWasNeverCalled.value)),sessionToken:e.session,isAuthenticated:s((()=>!!e.session.value))}},m=()=>{const{user:e,session:t}=f(),n=()=>{!e.user.value&&t.session.value&&e.fetchUser()};return n(),o(t.session,n),{isLoading:s((()=>e.isLoading.value||e.isFetchUserWasNeverCalled.value)),user:e.user}};e.sdkConfigOverrides={baseHeaders:p};var y={name:"Descope",props:{flowId:{type:String,required:!0},tenant:{type:String},theme:{type:String},debug:{type:Boolean},telemetryKey:{type:String},redirectUrl:{type:String},autoFocus:{type:Boolean}},emits:["success","error"],setup(e,{emit:s}){const{projectId:o,baseUrl:t,sessionTokenViaCookie:n}=f().options,r=g();return{projectId:o,baseUrl:t,sessionTokenViaCookie:n,onSuccess:async e=>{s("success",e),await(r.httpClient.hooks?.afterRequest?.({},new Response(JSON.stringify(e.detail))))},onError:e=>s("error",e)}}};const S=["project-id","base-url","flow-id","^theme","^tenant","^debug","^telemetryKey","redirect-url","auto-focus"];y.render=function(e,s,o,t,a,u){return n(),r("div",null,[i("descope-wc",{"project-id":t.projectId,"base-url":t.baseUrl,"flow-id":o.flowId,"^theme":o.theme,"^tenant":o.tenant,"^debug":o.debug,"^telemetryKey":o.telemetryKey,"redirect-url":o.redirectUrl,"auto-focus":o.autoFocus,onSuccess:s[0]||(s[0]=(...e)=>t.onSuccess&&t.onSuccess(...e)),onError:s[1]||(s[1]=(...e)=>t.onError&&t.onError(...e))},null,40,S)])},y.__file="src/Descope.vue";const k=e=>(...s)=>{let o;try{o=e(...s)}catch(e){console.error(e)}return o};let w;const b=e=>{const s=c({...e,persistTokens:v,autoRefresh:v});return w=s,s};w=b({projectId:"temp pid"});const C=()=>v?w?.getSessionToken():(console.warn("Get session token is not supported in SSR"),""),U=()=>v?w?.getRefreshToken():(console.warn("Get refresh token is not supported in SSR"),""),R=k(((e=C(),s)=>w?.getJwtPermissions(e,s))),T=k(((e=C(),s)=>w?.getJwtRoles(e,s))),j=a(null),F=()=>u(j)?.();let I;const L=()=>I;var N={install:function(e,o){const t=b({...o,persistTokens:!0,autoRefresh:!0,baseHeaders:p});I=t;const n=a(null),r=a(""),i=a(null),c=a(null);t.onSessionTokenChange((e=>{r.value=e})),t.onUserChange((e=>{c.value=e}));const v=async()=>{n.value=!0,await t.refresh(),n.value=!1},f=s((()=>null===n.value)),g=s((()=>null===i.value));j.value=async()=>(!r.value&&f.value&&await v(),!!u(r)),e.provide(d,{session:{fetchSession:v,isLoading:l(n),session:l(r),isFetchSessionWasNeverCalled:f},user:{fetchUser:async()=>{i.value=!0,await t.me(),i.value=!1},isLoading:l(i),user:l(c),isFetchUserWasNeverCalled:g},sdk:t,options:o})}};export{y as Descope,N as default,R as getJwtPermissions,T as getJwtRoles,U as getRefreshToken,L as getSdk,C as getSessionToken,F as routeGuard,g as useDescope,h as useSession,m as useUser};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/Descope.vue?vue&type=template&id=8a031dec&lang.js"],"sourcesContent":["<template>\n\t<div>\n\t\t<descope-wc\n\t\t\t:project-id=\"projectId\"\n\t\t\t:base-url=\"baseUrl\"\n\t\t\t:flow-id=\"flowId\"\n\t\t\t:theme.attr=\"theme\"\n\t\t\t:tenant.attr=\"tenant\"\n\t\t\t:debug.attr=\"debug\"\n\t\t\t:telemetryKey.attr=\"telemetryKey\"\n\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t:auto-focus=\"autoFocus\"\n\t\t\t@success=\"onSuccess\"\n\t\t\t@error=\"onError\"\n\t\t/>\n\t</div>\n</template>\n\n<script lang=\"ts\">\nimport DescopeWc from '@descope/web-component';\nimport { useOptions, useDescope } from './hooks';\nimport { baseHeaders } from './constants';\nimport { RequestConfig } from '@descope/core-js-sdk';\nimport { SetupContext } from 'vue';\n\nDescopeWc.sdkConfigOverrides = { baseHeaders };\n\nexport default {\n\t// eslint-disable-next-line vue/multi-word-component-names\n\tname: 'Descope',\n\tprops: {\n\t\tflowId: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\ttenant: {\n\t\t\ttype: String\n\t\t},\n\t\ttheme: {\n\t\t\ttype: String\n\t\t},\n\t\tdebug: {\n\t\t\ttype: Boolean\n\t\t},\n\t\ttelemetryKey: {\n\t\t\ttype: String\n\t\t},\n\t\tredirectUrl: {\n\t\t\ttype: String\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean\n\t\t}\n\t},\n\temits: ['success', 'error'],\n\tsetup(_: unknown, { emit }: SetupContext) {\n\t\tconst { projectId, baseUrl, sessionTokenViaCookie } = useOptions();\n\t\tconst sdk = useDescope();\n\n\t\tconst onSuccess = async (e: CustomEvent) => {\n\t\t\t// Note: We need to emit AFTER the afterRequest hook has been called, but for\n\t\t\t// an unknown reason, the emit is not called if we await the hook.\n\t\t\temit('success', e);\n\t\t\tawait sdk.httpClient.hooks?.afterRequest?.(\n\t\t\t\t{} as RequestConfig,\n\t\t\t\tnew Response(JSON.stringify(e.detail))\n\t\t\t);\n\t\t};\n\t\tconst onError = (e: Event) => emit('error', e);\n\n\t\treturn {\n\t\t\tprojectId,\n\t\t\tbaseUrl,\n\t\t\tsessionTokenViaCookie,\n\t\t\tonSuccess,\n\t\t\tonError\n\t\t};\n\t}\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","$setup","projectId","baseUrl","$props","flowId","theme","tenant","debug","telemetryKey","redirectUrl","autoFocus","onSuccess","args","onError"],"mappings":"inDACCA,EAcK,MAAA,KAAA,CAbJC,EAYC,aAAA,CAXC,aAAYC,EAASC,UACrB,WAAUD,EAAOE,QACjB,UAASC,EAAMC,OACf,SAAYD,EAAKE,MACjB,UAAaF,EAAMG,OACnB,SAAYH,EAAKI,MACjB,gBAAmBJ,EAAYK,aAC/B,eAAcL,EAAWM,YACzB,aAAYN,EAASO,UACrBC,8BAASX,EAASW,WAAAX,EAAAW,aAAAC,IAClBC,4BAAOb,EAAOa,SAAAb,EAAAa,WAAAD"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/Descope.vue?vue&type=template&id=8a031dec&lang.js"],"sourcesContent":["<template>\n\t<div>\n\t\t<descope-wc\n\t\t\t:project-id=\"projectId\"\n\t\t\t:base-url=\"baseUrl\"\n\t\t\t:flow-id=\"flowId\"\n\t\t\t:theme.attr=\"theme\"\n\t\t\t:tenant.attr=\"tenant\"\n\t\t\t:debug.attr=\"debug\"\n\t\t\t:telemetryKey.attr=\"telemetryKey\"\n\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t:auto-focus=\"autoFocus\"\n\t\t\t@success=\"onSuccess\"\n\t\t\t@error=\"onError\"\n\t\t/>\n\t</div>\n</template>\n\n<script lang=\"ts\">\nimport DescopeWc from '@descope/web-component';\nimport { useOptions, useDescope } from './hooks';\nimport { baseHeaders } from './constants';\nimport { RequestConfig } from '@descope/core-js-sdk';\nimport { SetupContext } from 'vue';\n\nDescopeWc.sdkConfigOverrides = { baseHeaders };\n\nexport default {\n\t// eslint-disable-next-line vue/multi-word-component-names\n\tname: 'Descope',\n\tprops: {\n\t\tflowId: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\ttenant: {\n\t\t\ttype: String\n\t\t},\n\t\ttheme: {\n\t\t\ttype: String\n\t\t},\n\t\tdebug: {\n\t\t\ttype: Boolean\n\t\t},\n\t\ttelemetryKey: {\n\t\t\ttype: String\n\t\t},\n\t\tredirectUrl: {\n\t\t\ttype: String\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean\n\t\t}\n\t},\n\temits: ['success', 'error'],\n\tsetup(_: unknown, { emit }: SetupContext) {\n\t\tconst { projectId, baseUrl, sessionTokenViaCookie } = useOptions();\n\t\tconst sdk = useDescope();\n\n\t\tconst onSuccess = async (e: CustomEvent) => {\n\t\t\t// Note: We need to emit AFTER the afterRequest hook has been called, but for\n\t\t\t// an unknown reason, the emit is not called if we await the hook.\n\t\t\temit('success', e);\n\t\t\tawait sdk.httpClient.hooks?.afterRequest?.(\n\t\t\t\t{} as RequestConfig,\n\t\t\t\tnew Response(JSON.stringify(e.detail))\n\t\t\t);\n\t\t};\n\t\tconst onError = (e: Event) => emit('error', e);\n\n\t\treturn {\n\t\t\tprojectId,\n\t\t\tbaseUrl,\n\t\t\tsessionTokenViaCookie,\n\t\t\tonSuccess,\n\t\t\tonError\n\t\t};\n\t}\n};\n</script>\n"],"names":["_createElementBlock","_createElementVNode","$setup","projectId","baseUrl","$props","flowId","theme","tenant","debug","telemetryKey","redirectUrl","autoFocus","onSuccess","args","onError"],"mappings":"0lDACCA,EAcK,MAAA,KAAA,CAbJC,EAYC,aAAA,CAXC,aAAYC,EAASC,UACrB,WAAUD,EAAOE,QACjB,UAASC,EAAMC,OACf,SAAYD,EAAKE,MACjB,UAAaF,EAAMG,OACnB,SAAYH,EAAKI,MACjB,gBAAmBJ,EAAYK,aAC/B,eAAcL,EAAWM,YACzB,aAAYN,EAASO,UACrBC,8BAASX,EAASW,WAAAX,EAAAW,aAAAC,IAClBC,4BAAOb,EAAOa,SAAAb,EAAAa,WAAAD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@descope/vue-sdk",
3
- "version": "0.0.0-next-40d54c9a-20230629",
3
+ "version": "1.0.0",
4
4
  "main": "dist/index.cjs",
5
5
  "module": "dist/index.mjs",
6
6
  "type": "module",