@authowl/core 0.22.1 → 0.23.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/chunk-LBCOMERN.js +1 -0
- package/dist/chunk-YL2FF2VS.js +2 -0
- package/dist/{client-BwZ1bqU4.d.cts → config-CyUwyJ9B.d.cts} +495 -253
- package/dist/{client-DXypEWpf.d.ts → config-CyUwyJ9B.d.ts} +495 -253
- package/dist/{idempotency-BWMPd3B7.d.ts → idempotency-fDhUiiGz.d.ts} +24 -24
- package/dist/{idempotency-BfRYS8qn.d.cts → idempotency-mYtBlnGY.d.cts} +24 -24
- package/dist/index.cjs +3 -3
- package/dist/index.d.cts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +3 -3
- package/dist/native.cjs +2 -2
- package/dist/native.d.cts +7 -8
- package/dist/native.d.ts +7 -8
- package/dist/native.js +1 -1
- package/dist/privacy.d.cts +2 -2
- package/dist/privacy.d.ts +2 -2
- package/dist/public-config-DojOd5F7.d.cts +241 -0
- package/dist/public-config-Drxchm7N.d.ts +241 -0
- package/dist/server.cjs +2 -2
- package/dist/server.d.cts +2 -2
- package/dist/server.d.ts +2 -2
- package/dist/server.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-DVVGVPDH.js +0 -1
- package/dist/chunk-IB6TFQFD.js +0 -2
- package/dist/organization-membership-BIify9hZ.d.cts +0 -450
- package/dist/organization-membership-BIify9hZ.d.ts +0 -450
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import {a}from'./chunk-5NL5GJW6.js';import {q as q$1,p,i,r,z,s,u,A,t,x,C,F as F$1,y,B as B$1,w as w$1,v}from'./chunk-YL2FF2VS.js';import {a as a$1}from'./chunk-T5SH3ZZP.js';function to(e){let t=e?.enabledMethods??["password"],n=t.includes("password"),i=t.includes("passkey"),o=e?.authentication,a=e?.mfa;return {emailSignUp:o?.email.signUp??t.some(p=>p==="password"||p==="magic_link"||p==="email_otp"),passwordSignUp:o?.password.signUp??n,phoneSignUp:o?.phone.signUp??t.includes("phone_otp"),passwordSignIn:o?.email.signIn.includes("password")??n,passwordMinLength:o?.password.minLength??8,passwordMaxLength:o?.password.maxLength??128,magicLinkSignIn:o?.email.signIn.includes("magic_link")??t.includes("magic_link"),emailOtpSignIn:o?.email.signIn.includes("email_otp")??t.includes("email_otp"),phoneSignIn:o?.phone.signIn??t.includes("phone_otp"),usernameSignIn:o?.username.signIn??false,collectUsername:o?.username.collectOnSignUp??false,passkeySignIn:o?.passkey.signIn??i,passkeyAdd:o?.passkey.add??i,firstLastName:e?.userModel?.firstLastName??false,emailChange:e===null?false:e.userModel?.emailChange??true,accountDeletion:e?.userModel?.accountDeletion??e?.accountDeletion??false,emailVerificationRequired:e?.emailVerification?.required??e?.requireEmailVerification??false,emailVerificationMethod:e?.emailVerification?.method??"link",totp:a?.totp??e?.twoFactor??false,mfaRequired:a?.required??e?.mfaRequired??false,backupCodes:a?.backupCodes??e?.twoFactor??false,legacyNameField:e?.authentication===void 0}}var ye=class extends Error{status;requestId;constructor(t,n,i){super(`${t} request failed with status ${n.status}.`),this.name="AuthOwlHttpError",this.status=n.status,this.requestId=i;}};function ae(e,t,n={}){let i=new Headers(n.init?.headers);return i.set("x-publishable-key",e.publishableKey),q$1({fetchImpl:e.fetch,url:t,init:{...n.init,headers:i},allowHttpLoopback:e.decoded.env==="test",...n.timeoutMs===void 0?{}:{timeoutMs:n.timeoutMs},...n.maxResponseBytes===void 0?{}:{maxResponseBytes:n.maxResponseBytes},...n.decode===void 0?{}:{decode:n.decode}})}function Be(e,t){if(!e.response.ok)throw new ye(t,e.response,e.requestId);return e.data}var q=new Map,Pn=/^[a-z]{2}$/;function ro(e,t){if(typeof window>"u")return ()=>{};if(t===null)return q.delete(e),()=>{};let n=t.trim().toLowerCase();if(!Pn.test(n))return ()=>{};let i=Symbol(e),o=q.get(e)??[];return o.push({token:i,locale:n}),q.set(e,o),()=>{let a=q.get(e);if(!a)return;let p=a.filter(m=>m.token!==i);p.length===0?q.delete(e):q.set(e,p);}}function je(e){return typeof window>"u"?null:q.get(e)?.at(-1)?.locale??null}var Tn="x-authowl-turnstile-token",Cn="x-authowl-locale",Dn=1e4,zn=32,xn=2e4;function H(e,t){return {post:(n,i,o,a)=>e.request(n,{method:"POST",body:i,fetchOptions:o,decode:a}),mutation:async(n,i)=>{let o=await n;return o.error===null&&(i===void 0||o.data!==null&&i(o.data))&&await t(),o}}}function ke(e,t=e.projectBaseURL){return {async request(n,i$1={}){let o=Un(t,n,i$1.query),a=i$1.method??(i$1.body===void 0?"GET":"POST"),p$1=new Headers(i$1.fetchOptions?.headers);i$1.fetchOptions?.authChallengeToken&&p$1.set(Tn,i$1.fetchOptions.authChallengeToken);let m=je(e.decoded.projectId);m&&p$1.set(Cn,m),i$1.body!==void 0&&p$1.set("content-type","application/json");let d={method:a,headers:p$1,credentials:i$1.credentials??"include",...i$1.body===void 0?{}:{body:JSON.stringify(i$1.body)}},h=Object.freeze({method:a,path:n});await i$1.fetchOptions?.onRequest?.(h);let r=Nn(a,i$1.fetchOptions),s;try{s=await En(e,o,{...d,signal:i$1.fetchOptions?.signal},r);}catch(g){let A=Je(g);return await i$1.fetchOptions?.onError?.(Oe(h,A,Ln(g))),{data:null,error:A}}let{response:f,requestId:y}=s,D=Hn(n,s.data),k=D;if(f.ok)try{k=we(D),i$1.decode&&(k=i$1.decode(k));}catch{let g=Je(new p("invalid_response",y));return await i$1.fetchOptions?.onError?.(Oe(h,g,"invalid_response")),{data:null,error:g}}let u=Object.freeze({...h,status:f.status,...y===void 0?{}:{requestId:y}});if(await i$1.fetchOptions?.onResponse?.(u),!f.ok){let g=Mn(f,D,y);return g.code===i&&e.session.tokens.dropChallenge(),await i$1.fetchOptions?.onError?.(Oe(h,g,"api")),{data:null,error:g}}return await i$1.fetchOptions?.onSuccess?.(u),{data:k,error:null}}}}async function En(e,t,n,i){let o=Date.now()+Dn;for(let a=0;a<i;a+=1){let p$1=o-Date.now();if(p$1<=0)throw new p("timeout");try{let m=await ae(e,t,{init:n,timeoutMs:Math.max(1,Math.ceil(p$1))});if(m.response.status<500||a===i-1)return m}catch(m){if(a===i-1||!(m instanceof p)||m.kind!=="network")throw m}await Fn(50*2**a,n.signal,o);}throw new p("network")}function Nn(e,t){if(e!=="GET"||t?.authChallengeToken)return 1;let n=t?.retry;return typeof n!="number"||!Number.isFinite(n)?1:Math.min(Math.max(Math.trunc(n),0),3)+1}function Un(e,t,n){let i=new URL(`${e}${t.startsWith("/")?t:`/${t}`}`);for(let[o,a]of Object.entries(n??{}))a!==void 0&&i.searchParams.set(o,String(a));return i.toString()}function Mn(e,t,n){let i=W(t)?t:{},o=_n(i,e.headers);return {status:e.status,statusText:e.statusText,code:typeof i.code=="string"?i.code:void 0,...n===void 0?{}:{requestId:n},...typeof i.current_version=="number"?{currentVersion:i.current_version}:{},...o!==void 0?{retryAfterSeconds:o}:{},message:typeof i.message=="string"?i.message:typeof i.error=="string"?i.error:typeof i.detail=="string"?i.detail:e.statusText||"Request failed"}}function _n(e,t){let n=(typeof e.retryAfterSeconds=="number"&&Number.isFinite(e.retryAfterSeconds)?e.retryAfterSeconds:void 0)??Ge(t.get("retry-after"))??Ge(t.get("x-retry-after"));if(n!==void 0)return Math.min(Math.max(Math.trunc(n),1),86400)}function Ge(e){if(!e)return;let t=e.trim();if(!/^\d+$/.test(t))return;let n=Number(t);return Number.isFinite(n)?n:void 0}function Je(e){let t=e instanceof p?e.kind:"network";return {status:0,...{aborted:{statusText:"ABORTED",code:"REQUEST_ABORTED",message:"The request was cancelled."},timeout:{statusText:"TIMEOUT",code:"REQUEST_TIMEOUT",message:"The request timed out."},response_too_large:{statusText:"INVALID_RESPONSE",code:"RESPONSE_TOO_LARGE",message:"The service response was too large."},invalid_response:{statusText:"INVALID_RESPONSE",code:"INVALID_RESPONSE",message:"The service returned an invalid response."},network:{statusText:"FETCH_ERROR",code:"FETCH_ERROR",message:"Network request failed."}}[t],...e instanceof p&&e.requestId?{requestId:e.requestId}:{}}}function Oe(e,t,n){return Object.freeze({...e,status:t.status??0,...t.requestId===void 0?{}:{requestId:t.requestId},failure:n})}function Ln(e){return e instanceof p?e.kind:"network"}function Fn(e,t,n){return new Promise((i,o)=>{if(t?.aborted){o(new p("aborted"));return}let a=n-Date.now();if(a<=0){o(new p("timeout"));return}let p$1=Math.min(e,a),m=()=>{clearTimeout(d),o(new p("aborted"));},d=setTimeout(()=>{t?.removeEventListener("abort",m),Date.now()>=n?o(new p("timeout")):i();},p$1);t?.addEventListener("abort",m,{once:true}),t?.aborted&&m();})}function we(e,t="",n=0,i={nodes:0}){if(i.nodes+=1,n>zn||i.nodes>xn)throw new Error("response traversal limit exceeded");if(typeof e=="string"&&/^(?:createdAt|updatedAt|expiresAt)$/.test(t)){let o=new Date(e);return Number.isNaN(o.getTime())?e:o}return Array.isArray(e)?e.map(o=>we(o,"",n+1,i)):W(e)?Object.fromEntries(Object.entries(e).map(([o,a])=>[o,qn(o)?a:we(a,o,n+1,i)])):e}function qn(e){return e==="metadata"||e==="public_metadata"||e==="unsafe_metadata"||e==="private_metadata"||e==="publicMetadata"||e==="unsafeMetadata"||e==="privateMetadata"}function Hn(e,t){if(e==="/list-sessions"&&Array.isArray(t))return t.map(o=>W(o)?be(o):o);if(!W(t))return t;let i=e==="/change-password"||e==="/passkey/verify-authentication"||e==="/phone-otp/verify"||e==="/sign-up/email"||e.startsWith("/sign-in/")||e.startsWith("/two-factor/verify-")?be(t):t;return e==="/sign-up/email"&&!("sessionCreated"in i)&&(i={...i,sessionCreated:typeof t.token=="string"&&t.token.length>0}),(e==="/get-session"||e==="/passkey/verify-authentication")&&W(i.session)&&(i={...i,session:be(i.session)}),i}function be(e){if(!Object.hasOwn(e,"token"))return e;let t={...e};return delete t.token,t}function W(e){return !!e&&typeof e=="object"&&!Array.isArray(e)}function We(e){return {listConsentPreferences:t=>e.request("/privacy/consent-decisions",{fetchOptions:t,decode:Vn}),recordConsent:(t,n)=>e.request("/privacy/consent-decisions",{method:"POST",body:{...t,correlationId:t.correlationId??a()},fetchOptions:n,decode:Bn}),listRightsRequests:t=>e.request("/privacy/rights",{fetchOptions:t,decode:jn}),createRightsRequest:(t,n)=>e.request("/privacy/rights",{method:"POST",body:t,fetchOptions:n,decode:Gn})}}function Vn(e){let t=r(e);return Array.isArray(t.preferences)||z(),{preferences:t.preferences.map(Kn)}}function Kn(e){let t=r(e);return {purposeId:s(t.purposeId),purposeVersionId:s(t.purposeVersionId),code:s(t.code),state:Jn(t.state,["granted","refused","withdrawn"]),updatedAt:se(t.updatedAt),decidedAt:se(t.decidedAt)}}function Bn(e){let t=r(e);return t.recorded!==true&&z(),{recorded:true,decision:X(t.decision,["granted","refused","withdrawn"]),decidedAt:ue(t.decidedAt)}}function jn(e){let t=r(e);return Array.isArray(t.requests)||z(),{requests:t.requests.map(Xe)}}function Gn(e){return {request:Xe(r(e).request)}}function Xe(e){let t=r(e);return {id:s(t.id),rightType:X(t.rightType,["access","correction","portability","erasure","restriction","objection","consent_withdrawal"]),state:X(t.state,["received","identity_pending","in_progress","restricted","completed","denied","withdrawn"]),locale:X(t.locale,["en","ar"]),receivedAt:ue(t.receivedAt),acknowledgedAt:se(t.acknowledgedAt),fulfilmentDeadline:ue(t.fulfilmentDeadline),completedAt:se(t.completedAt)}}function se(e){return e===null?null:ue(e)}function ue(e){if(e instanceof Date)return u(e);typeof e!="string"&&z();let t=new Date(e);return Number.isNaN(t.getTime())&&z(),t}function X(e,t){return (typeof e!="string"||!t.includes(e))&&z(),e}function Jn(e,t){return e===null?null:X(e,t)}function $e({http:e,probe:t,tokens:n,channelName:i}){let o=new Set,a=null,p=null,m=null,d=null,h=null,r=null,s,f=O=>{k(O);};s={data:null,isPending:true,isRefetching:false,error:null,refetch:f};function y(O){s=O;for(let v of o)v();}async function D(O){return e.request("/get-session",{query:O?.query,decode:Re})}function k(O){if(O?.query?.disableCookieCache===true)return g(O);if(d)return d;if(h)return h;let v=g(O).finally(()=>{h===v&&(h=null);});return h=v,v}function u(){if(d)return d;let O=g({query:{disableCookieCache:true}}).finally(()=>{d===O&&(d=null);});return d=O,O}async function g(O){m?.abort();let v=new AbortController;m=v,y({...s,isPending:s.data===null&&s.error===null,isRefetching:s.data!==null});let J=n.beginRead(),ne=await e.request("/get-session",{query:O?.query,fetchOptions:{signal:v.signal},decode:Re});if(m===v&&(m=null,y({data:ne.data,error:ne.error,isPending:false,isRefetching:false,refetch:f}),ne.error===null)){if(ne.data===null){J.endIfDead();return}await A(J);}}async function A(O){if(n.needsProbe()){if(!O.carriedToken){O.recordCookieVerdict(true);return}return r||C(O)}}function C(O){let v=t.request("/get-session",{query:{disableCookieCache:true},decode:Re}).then(J=>{r===v&&J.error===null&&O.recordCookieVerdict(J.data!==null);}).finally(()=>{r===v&&(r=null);});return r=v,v}function z(){a?.postMessage({type:"session-changed"});}function Sn(){if(typeof window>"u"||p)return;let O=()=>{k();},v=()=>{document.visibilityState==="visible"&&k();};window.addEventListener("focus",O),document.addEventListener("visibilitychange",v),typeof BroadcastChannel<"u"&&(a=new BroadcastChannel(i),a.addEventListener("message",O)),p=()=>{window.removeEventListener("focus",O),document.removeEventListener("visibilitychange",v),a?.close(),a=null,p=null;};}function vn(O){return o.add(O),o.size===1&&(Sn(),k()),()=>{if(o.delete(O),o.size===0){let v=m;m=null,h=null,d=null,v?.abort(),p?.();}}}return n.measureWith(()=>{n.needsProbe()&&C(n.beginRead());}),{store:{subscribe:vn,getSnapshot:()=>s,refresh:u},getSession:D,notifyMutation(){z(),r&&r.catch(()=>{}).then(()=>{!n.needsProbe()&&n.hasToken()&&z();}),o.size>0&&k({query:{disableCookieCache:true}});}}}function Re(e){if(e===null)return null;let t=r(e);return (t.session===void 0||t.user===void 0)&&z(),{session:y(t.session),user:x(t.user)}}async function Ye(e,t){return e.request("/user/metadata",{fetchOptions:t,decode:Ze})}async function Qe(e,t,n){return e.request("/user/metadata",{method:"PATCH",body:{expected_version:t.expectedVersion,unsafe_metadata:t.unsafeMetadata},fetchOptions:n,decode:Ze})}function Ze(e){let t=r(e),n=A(t.public_metadata),i=A(t.unsafe_metadata);if(!Number.isSafeInteger(t.metadata_version)||t.metadata_version<0)throw new TypeError("Invalid AuthOwl metadata response");return {publicMetadata:n,unsafeMetadata:i,metadataVersion:t.metadata_version}}function tt(e,t){let{post:n,mutation:i}=H(e,t);return {getMetadata:o=>Ye(e,o),updateUnsafeMetadata:(o,a)=>Qe(e,o,a),updateProfile:(o,a)=>i(n("/update-user",o,a,$)),changeEmail:(o,a)=>i(n("/change-email",o,a,$)),changePassword:(o,a)=>i(n("/change-password",o,a,Wn)),listSessions:o=>e.request("/list-sessions",{fetchOptions:o,decode:Xn}),revokeSession:({sessionId:o},a)=>i(n("/revoke-session",{sessionId:o},a,$)),revokeOtherSessions:o=>i(n("/revoke-other-sessions",{},o,$)),listSocialAccounts:async o=>{let a=await e.request("/list-accounts",{fetchOptions:o,decode:$n});if(!a.data)return {data:null,error:a.error};let p=a.data.length>1;return {...a,data:a.data.filter(m=>m.providerId!=="credential").map(m=>({...m,canUnlink:p}))}},linkSocial:(o,a)=>n("/link-social",o,a,Yn),unlinkSocial:(o,a)=>i(n("/unlink-account",o,a,$)),delete:(o={},a)=>i(n("/delete-user",o,a,Qn))}}function $(e){let t$1=r(e);return {status:t(t$1.status)}}function Wn(e){let t=r(e);return {user:x(t.user)}}function Xn(e){return Array.isArray(e)||z(),e.map(t=>{let n=r(t);return {id:s(n.id),userId:s(n.userId),createdAt:u(n.createdAt),updatedAt:u(n.updatedAt),expiresAt:u(n.expiresAt),...et("ipAddress",w$1(n,"ipAddress")),...et("userAgent",w$1(n,"userAgent"))}})}function $n(e){return Array.isArray(e)||z(),e.map(t=>{let n=r(t);return {id:s(n.id),userId:s(n.userId),providerId:s(n.providerId),accountId:s(n.accountId),scopes:v(n.scopes),createdAt:u(n.createdAt),updatedAt:u(n.updatedAt)}})}function Yn(e){let t$1=r(e);return {url:s(t$1.url),redirect:t(t$1.redirect)}}function Qn(e){let t$1=r(e);return {success:t(t$1.success),message:s(t$1.message)}}function et(e,t){return t===void 0?{}:{[e]:t}}var Zn=new Set(["pending","accepted","rejected","canceled"]),Ie=1e4;function nt(e){let t=r(e);return t.recipientHint!==null&&t.recipientHint!=="new_user"&&z(),{recipientHint:t.recipientHint}}function K(e,t,n){let i=r(e),o={id:w(i.id),name:w(i.name),slug:w(i.slug),createdAt:u(i.createdAt),...Y("logo",w$1(i,"logo")),...Y("metadata",i.metadata===void 0?void 0:B$1(i.metadata))};return U(o.id,t),U(o.slug,n),o}function it(e){return _(e,K)}function Se(e,t,n){return e===null?null:(t===null&&z(),K(e,t,n))}function ot(e,t,n){if(e===null)return null;let i=r(e),o=K(i,t,n);return {...o,members:_(i.members,a=>ht(a,o.id)),invitations:_(i.invitations,a=>L(a,void 0,o.id))}}function ve(e,t,n=false){let i=_(e,o=>Q(o));return n||ee(i.map(o=>o.organizationId),t),i}function rt(e,t){let n=_(e,i=>Pe(i));return ee(n.map(i=>i.teamId),t),n}function Pe(e,t,n){let i=r(e),o={id:w(i.id),teamId:w(i.teamId),userId:w(i.userId),createdAt:u(i.createdAt)};return U(o.teamId,t),U(o.userId,n),o}function at(e,t,n){return e===null?null:(t===null&&z(),Q(e,t,n))}function st(e,t){let n=r(e);return (!Number.isSafeInteger(n.total)||n.total<0)&&z(),{members:ei(n.members,t),total:n.total}}function L(e,t,n){let i=r(e),o=w(i.status);Zn.has(o)||z();let a={id:w(i.id),organizationId:w(i.organizationId),email:Z(i.email),role:w(i.role),status:o,inviterId:w(i.inviterId),expiresAt:u(i.expiresAt),createdAt:u(i.createdAt)};return U(a.id,t),U(a.organizationId,n),a}function ut(e,t){let n=_(e,i=>L(i));return ee(n.map(i=>i.organizationId),t),n}function ct(e){return _(e,t=>{let n=r(t);return {...L(n),organizationName:Z(n.organizationName)}})}function dt(e,t){let n=r(e);return {...L(n,t),organizationName:w(n.organizationName),organizationSlug:w(n.organizationSlug),inviterEmail:At(n.inviterEmail)}}function lt(e,t){let n=r(e),i=L(n.invitation,t);return {invitation:i,member:B(n.member,void 0,i.organizationId)}}function pt(e,t){let n=r(e);return n.member!==null&&z(),{invitation:n.invitation===null?null:L(n.invitation,t),member:null}}function gt(e,t){return e===null?null:L(e,t)}function ft(e,t,n){let i=r(e);return {member:B(i.member,n,t)}}function B(e,t,n){let i=r(e),o={id:w(i.id),organizationId:w(i.organizationId),userId:w(i.userId),role:w(i.role),createdAt:u(i.createdAt),...i.user===void 0?{}:{user:yt(i.user)}};return U(o.id,t),U(o.organizationId,n),o}function mt(e,t){let n=_(e,i=>{let o=r(i);return {organizationId:w(o.organizationId),data:{role:w(o.role),...Y("permission",o.permission===void 0?void 0:ti(o.permission)),...Y("customPermissionKeys",o.customPermissionKeys===void 0?void 0:v(o.customPermissionKeys))}}});return ee(n.map(i=>i.organizationId),t),n.map(i=>i.data)}function Q(e,t,n){let i=r(e),o=i.updatedAt,a={id:w(i.id),name:Z(i.name),organizationId:w(i.organizationId),createdAt:u(i.createdAt),...o===void 0?{}:{updatedAt:u(o)}};return U(a.id,t),U(a.organizationId,n),a}function Te(e){let t=r(e);return {message:Z(t.message)}}function ht(e,t){let n=r(e);return {...B(n,void 0,t),user:yt(n.user)}}function ei(e,t){let n=_(e,i=>ht(i));return ee(n.map(i=>i.organizationId),t),n}function ti(e){let t=r(e),n={};for(let[i,o]of Object.entries(t))(i==="__proto__"||i==="constructor"||i==="prototype"||i.length===0||i.length>Ie||!Array.isArray(o))&&z(),n[i]=o.map(a=>w(a));return n}function w(e){let t=s(e);return (t.length===0||t.length>Ie)&&z(),t}function Z(e){if(e==null)return "";let t=s(e);return t.length>Ie&&z(),t}function At(e){return e===null?null:w(e)}function U(e,t){t!==void 0&&e!==t&&z();}function ee(e,t){let n=t??e[0];n!==void 0&&e.some(i=>i!==n)&&z();}function yt(e){let t=r(e);return {id:w(t.id),name:Z(t.name),email:At(t.email),...Y("image",w$1(t,"image"))}}function _(e,t){return Array.isArray(e)||z(),e.map(n=>t(n))}function Y(e,t){return t===void 0?{}:{[e]:t}}function Ot(e,t,n=()=>null){let{post:i,mutation:o}=H(e,t),a=new Set,p=()=>{for(let r of a)try{r();}catch{}},m=new Map,d=(r,s,f,y)=>{if(f)return e.request(r,{query:s,fetchOptions:f,decode:y});let D=`${r}\0${JSON.stringify(s??null)}`,k=m.get(D);if(k)return k;let u=e.request(r,{query:s,decode:y}).finally(()=>{m.delete(D);});return m.set(D,u),u},h=async r=>{let s=await o(r).finally(()=>m.clear());return s.error===null&&p(),s};return {subscribe(r){return a.add(r),()=>a.delete(r)},create:(r,s)=>h(i("/organization/create",r,s,K)),list:r=>d("/organization/list",void 0,r,it),get:(r={},s)=>d("/organization/get-full-organization",{organizationId:r.organizationId,organizationSlug:r.organizationSlug,membersLimit:r.membersLimit},s,f=>ot(f,r.organizationId,r.organizationSlug)),setActive:(r,s)=>h(i("/organization/set-active",r,s,f=>Se(f,r.organizationId,r.organizationSlug))),createTeam:(r,s)=>h(i("/organization/create-team",r,s,f=>Q(f,void 0,r.organizationId))),listTeams:(r={},s)=>d("/organization/list-teams",{organizationId:r.organizationId},s,f=>ve(f,r.organizationId)),updateTeam:(r,s)=>h(i("/organization/update-team",r,s,f=>Q(f,r.teamId,r.data.organizationId))),removeTeam:(r,s)=>h(i("/organization/remove-team",r,s,Te)),listUserTeams:r=>d("/organization/list-user-teams",void 0,r,s=>ve(s,void 0,true)),listTeamMembers:(r={},s)=>d("/organization/list-team-members",{teamId:r.teamId},s,f=>rt(f,r.teamId)),addTeamMember:(r,s)=>h(i("/organization/add-team-member",r,s,f=>Pe(f,r.teamId,r.userId))),removeTeamMember:(r,s)=>h(i("/organization/remove-team-member",r,s,Te)),setActiveTeam:(r,s)=>h(i("/organization/set-active-team",r,s,f=>at(f,r.teamId))),update:(r,s)=>h(i("/organization/update",r,s,f=>Se(f,r.organizationId))),delete:(r,s)=>h(i("/organization/delete",r,s,f=>K(f,r.organizationId))),listMembers:(r={},s)=>d("/organization/list-members",{organizationId:r.organizationId,organizationSlug:r.organizationSlug,limit:r.limit,offset:r.offset,sortBy:r.sortBy,sortDirection:r.sortDirection,filterField:r.filterField,filterValue:r.filterValue,filterOperator:r.filterOperator},s,f=>st(f,r.organizationId)),inviteMember:(r,s)=>h(i("/organization/invite-member",r,s,f=>L(f,void 0,r.organizationId))),listInvitations:(r={},s)=>d("/organization/list-invitations",{organizationId:r.organizationId},s,f=>ut(f,r.organizationId)),listUserInvitations:r=>d("/organization/list-user-invitations",void 0,r,ct),getInvitation:(r,s)=>d("/organization/get-invitation",{id:r.id},s,f=>dt(f,r.id)),getInvitationRecipientHint:(r,s)=>d("/organization/invitation-recipient-hint",{invitationId:r.invitationId},s,nt),acceptInvitation:(r,s)=>h(i("/organization/accept-invitation",r,s,f=>lt(f,r.invitationId))),rejectInvitation:(r,s)=>h(i("/organization/reject-invitation",r,s,f=>pt(f,r.invitationId))),cancelInvitation:(r,s)=>h(i("/organization/cancel-invitation",r,s,f=>gt(f,r.invitationId))),removeMember:(r,s)=>h(i("/organization/remove-member",r,s,f=>ft(f,r.organizationId,r.memberIdOrEmail.includes("@")?void 0:r.memberIdOrEmail))),updateMemberRole:(r,s)=>h(i("/organization/update-member-role",r,s,f=>B(f,r.memberId,r.organizationId))),leave:(r,s)=>h(i("/organization/leave",r,s,f=>B(f,void 0,r.organizationId))),listRoles:(r={},s)=>d("/organization/list-roles",{organizationId:r.organizationId},s,f=>mt(f,r.organizationId)),has:r=>F$1(n(),r),hasPermission:r=>C(n(),r.permission)}}var bt=4096,ni=4096,ii=100,oi=256,ri=16,ai=64,si=12;function De(e){let t$1=r(e);return t$1.twoFactorRedirect===true?((t$1.user!==void 0||t$1.redirect!==void 0||t$1.url!==void 0)&&z(),{twoFactorRedirect:true,...t$1.twoFactorMethods===void 0?{}:{twoFactorMethods:Lt(t$1.twoFactorMethods,ri,ai)}}):(t$1.twoFactorRedirect!==void 0&&z(),{redirect:t(t$1.redirect),...pi(t$1,"url"),user:x(t$1.user)})}function wt(e){let t=r(e);return {user:x(t.user)}}function kt(e){let t$1=r(e);return {sessionCreated:t(t$1.sessionCreated),user:x(t$1.user)}}function Rt(e,t$1){let n=r(e),i=t(n.redirect);n.user===null&&z();let o=n.user!==void 0&&n.user!==null,a=n.url!==void 0&&n.url!==null;return i?((o||!a)&&z(),{redirect:true,url:Ce(n.url,t$1)}):(o===a&&z(),o?{redirect:false,user:x(n.user)}:{redirect:false,url:Ce(n.url,t$1)})}function It(e,t){let n=r(e);return (n.redirect!==true||n.user!==void 0)&&z(),{redirect:true,url:Ce(n.url,t)}}function St(e){return {status:t(r(e).status)}}function vt(e){return {success:t(r(e).success)}}function Pt(e){return r(e).status!=="pending"&&z(),{status:"pending"}}function Tt(e){let t$1=r(e);if(t$1.kind==="authowl_turnstile")return {kind:"authowl_turnstile"};t$1.kind!=="akedly_shield_v1_2"&&z();let n=r(t$1.turnstile),i=n.siteKey===null?null:s(n.siteKey);return {kind:"akedly_shield_v1_2",connectionId:s(t$1.connectionId),challenge:s(t$1.challenge),difficulty:ui(t$1.difficulty),challengeToken:s(t$1.challengeToken),challengeRequired:t(t$1.challengeRequired),turnstile:{required:t(n.required),siteKey:i}}}function ui(e){return (!Number.isSafeInteger(e)||Number(e)<0||Number(e)>si)&&z(),Number(e)}function Ct(e){let t=r(e);return (t.status!==true||t.sessionCreated!==true)&&z(),{status:true,sessionCreated:true,user:ci(t.user)}}function ze(e){return {status:t(r(e).status)}}function Dt(e){return {status:t(r(e).status)}}function zt(e){let t$1=r(e);return {status:t(t$1.status),user:x(t$1.user)}}function xt(e){return {success:t(r(e).success)}}function Et(e){let t=r(e);return {totpURI:li(t.totpURI),backupCodes:_t(t.backupCodes)}}function Nt(e){return {status:t(r(e).status)}}function ce(e){return r(e).status!==true&&z(),{status:true}}function Ut(e){return {status:t(r(e).status)}}function Mt(e){let t=r(e);return t.status!==void 0&&t.status!==true&&z(),{backupCodes:_t(t.backupCodes)}}function ci(e){let t$1=r(e);return {id:j(t$1.id,512),...gi(t$1,"name",1024),phoneNumber:j(t$1.phoneNumber,64),phoneNumberVerified:t(t$1.phoneNumberVerified),...t$1.createdAt===void 0?{}:{createdAt:u(t$1.createdAt)},...t$1.updatedAt===void 0?{}:{updatedAt:u(t$1.updatedAt)}}}function Ce(e,t){let n=j(e,bt);/[\u0000-\u0020\u007f]/u.test(n)&&z();let i;try{i=new URL(n);}catch{return z()}return (i.username||i.password)&&z(),i.protocol==="https:"||t&&i.protocol==="http:"&&di(i.hostname)?i.href:z()}function di(e){let t=e.toLowerCase();return t==="localhost"||t==="127.0.0.1"||t==="[::1]"}function li(e){let t=j(e,ni),n;try{n=new URL(t);}catch{return z()}let i=n.searchParams.get("secret");return (n.protocol!=="otpauth:"||n.hostname.toLowerCase()!=="totp"||n.username||n.password||n.hash||i===null||i.length===0||i.length>512||/\s/u.test(i))&&z(),t}function _t(e){return Lt(e,ii,oi)}function Lt(e,t,n){(!Array.isArray(e)||e.length===0||e.length>t)&&z();let i=e.map(o=>j(o,n));return i.some(o=>o.trim().length===0)&&z(),new Set(i).size!==i.length&&z(),i}function j(e,t){let n=s(e);return (n.length===0||n.length>t)&&z(),n}function pi(e,t){let n=e[t];return n==null?{}:{[t]:j(n,bt)}}function gi(e,t,n){let i=w$1(e,t);return i===void 0?{}:(i!==null&&i.length>n&&z(),{[t]:i})}var Ft=new Set([1564,8206,8207,8234,8235,8236,8237,8238,8294,8295,8296,8297]),de=new Set([9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288,65279]);function le(e){if(e===void 0)return {valid:true,value:void 0};for(let n of e){let i=n.codePointAt(0);if(i===void 0||Ht(n,i)||qt(i)||Ft.has(i))return {valid:false}}let t=fi(e);return xe(t)?{valid:true,value:t}:{valid:false}}function xe(e){let t=0,n,i;for(let o of e){if(t+=1,t>256)return false;let a=o.codePointAt(0);if(a===void 0||Ht(o,a)||qt(a)||Ft.has(a))return false;n??=a,i=a;}return t>0&&n!==void 0&&i!==void 0&&!de.has(n)&&!de.has(i)}function pe(){return {data:null,error:{status:400,statusText:"BAD_REQUEST",code:"INVALID_PASSKEY_NAME",message:"Passkey names must contain 1 to 256 safe Unicode characters."}}}function fi(e){let t=0,n=e.length;for(;t<n;){let i=e.codePointAt(t);if(i===void 0||!de.has(i))break;t+=i>65535?2:1;}for(;n>t;){let i=e.codePointAt(n-1);if(i===void 0)break;let a=i>=56320&&i<=57343?n-2:n-1,p=e.codePointAt(a);if(p===void 0||!de.has(p))break;n=a;}return e.slice(t,n)}function qt(e){return e>=0&&e<=31||e>=127&&e<=159}function Ht(e,t){return e.length===1&&t>=55296&&t<=57343}var Bt=12,jt=5e3,mi=8,hi=1e3,Ai=16,Vt=512,Gt=100,Jt=8192,yi=32768,Ee=1024,Kt=256,Ue=64,Oi=6e5,bi=/^[A-Za-z0-9_-]+$/u,wi=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/u,ki=/[\u0000-\u001f\u007f-\u009f\u061c\u200e\u200f\u202a-\u202e\u2066-\u2069]/u,Ri=/^[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?$/u,Ii=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/iu,Wt=new Set(["discouraged","preferred","required"]),Si=new Set(["singleDevice","multiDevice"]),Xt=new Set(["ble","cable","hybrid","internal","nfc","smart-card","usb"]),$t=new Set(["hybrid","security-key","client-device"]),vi=new Set(["none","indirect","direct","enterprise"]),Pi=new Set(["fido-u2f","packed","android-safetynet","android-key","tpm","apple","none"]),Ti=new Set(["platform","cross-platform"]),Ci=new Set(["discouraged","preferred","required"]),Di=new Set([-8,-7,-257]);function Yt(e){let t=A(e,Bt,jt);return {challenge:un(t.challenge),...P("timeout",an(t.timeout)),...P("rpId",cn(t.rpId)),...P("allowCredentials",rn(t.allowCredentials)),...P("userVerification",te(t.userVerification,Wt)),...P("hints",ge(t.hints,$t)),...P("extensions",sn(t.extensions))}}function Qt(e){let t=A(e,Bt,jt);return {challenge:un(t.challenge),rp:zi(t.rp),user:xi(t.user),pubKeyCredParams:Ei(t.pubKeyCredParams),...P("timeout",an(t.timeout)),...P("excludeCredentials",rn(t.excludeCredentials)),...P("authenticatorSelection",Ni(t.authenticatorSelection)),...P("attestation",te(t.attestation,vi)),...P("attestationFormats",ge(t.attestationFormats,Pi)),...P("hints",ge(t.hints,$t)),...P("extensions",sn(t.extensions))}}function Zt(e){let t=r(e),n=y(t.session),i=x(t.user);return n.userId!==i.id&&z(),{session:n,user:i}}function Me(e){let t$1=r(e),n=t$1.counter;(!Number.isSafeInteger(n)||n<0)&&z();let i=_e(t$1.deviceType,Si),o=t(t$1.backedUp);return o&&i!=="multiDevice"&&z(),{id:G(t$1.id,Kt),..._i(t$1),publicKey:Ui(t$1.publicKey,yi),userId:G(t$1.userId,Kt),credentialID:me(t$1.credentialID,Jt),counter:n,deviceType:i,backedUp:o,...Li(t$1),createdAt:u(t$1.createdAt),...Fi(t$1)}}function en(e,t,n){let i=Me(e);return (i.credentialID!==t||(n===void 0?i.name!==void 0&&i.name!==null:i.name!==n))&&z(),i}function tn(e){(!Array.isArray(e)||e.length>Gt)&&z();let t=e.map(Me);return fe(t.map(n=>n.id)),fe(t.map(n=>n.credentialID)),t.length>1&&t.some(n=>n.userId!==t[0]?.userId)&&z(),t}function nn(e,t,n){let i=r(e),o=Me(i.passkey);return (o.id!==t||o.name!==n)&&z(),{passkey:o}}function on(e){return r(e).status!==true&&z(),{status:true}}function zi(e){let t=r(e);return {name:Ne(t.name,Ee),...P("id",cn(t.id))}}function xi(e){let t=r(e);return {id:me(t.id,128,1,64),name:Ne(t.name,Ee),displayName:Ne(t.displayName,Ee)}}function Ei(e){(!Array.isArray(e)||e.length===0||e.length>Ue)&&z();let t=e.map(n=>{let i=r(n);return (i.type!=="public-key"||!Number.isSafeInteger(i.alg)||!Di.has(i.alg))&&z(),{type:"public-key",alg:i.alg}});return qi(t.map(n=>n.alg)),t}function rn(e){if(e===void 0)return;(!Array.isArray(e)||e.length>Gt)&&z();let t=e.map(n=>{let i=r(n);return i.type!=="public-key"&&z(),{type:"public-key",id:me(i.id,Jt),...P("transports",ge(i.transports,Xt))}});return fe(t.map(n=>n.id)),t}function Ni(e){if(e===void 0)return;let t=r(e);t.requireResidentKey!==void 0&&typeof t.requireResidentKey!="boolean"&&z();let n=te(t.residentKey,Ci);return t.requireResidentKey!==void 0&&n!==void 0&&t.requireResidentKey!==(n==="required")&&z(),{...P("authenticatorAttachment",te(t.authenticatorAttachment,Ti)),...P("residentKey",n),...P("requireResidentKey",t.requireResidentKey),...P("userVerification",te(t.userVerification,Wt))}}function an(e){return e!==void 0&&(typeof e!="number"||!Number.isFinite(e)||e<0||e>Oi)&&z(),e}function sn(e){return e===void 0?void 0:A(e,mi,hi)}function ge(e,t){if(e===void 0)return;(!Array.isArray(e)||e.length>Ue)&&z();let n=e.map(i=>_e(i,t));return fe(n),n}function te(e,t){if(e!==void 0)return _e(e,t)}function un(e){return me(e,Math.ceil(Vt*4/3),Ai,Vt)}function me(e,t,n=1,i=Number.POSITIVE_INFINITY){let o=G(e,t),a=o.length%4,p=Mi(o.at(-1)??""),m=Math.floor(o.length*3/4);return (!bi.test(o)||a===1||a===2&&(p&15)!==0||a===3&&(p&3)!==0||m<n||m>i)&&z(),o}function G(e,t){let n=s(e);return (n.length===0||n.length>t)&&z(),n}function Ne(e,t){let n=G(e,t);return ki.test(n)&&z(),n}function cn(e){if(e===void 0)return;let t=G(e,253);return t!=="localhost"&&(t.endsWith(".")||!t.includes(".")||t.split(".").some(n=>!Ri.test(n)))&&z(),t}function Ui(e,t){let n=G(e,t),i=n.endsWith("=="),o=!i&&n.endsWith("="),a=n.at(i?-3:o?-2:-1)??"",p=dn(a);return (n.length%4!==0||!wi.test(n)||i&&(p&15)!==0||o&&(p&3)!==0)&&z(),n}function Mi(e){return dn(e,true)}function dn(e,t=false){return (t?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_":"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/").indexOf(e)}function _i(e){let t=w$1(e,"name");return t===void 0?{}:(t!==null&&!xe(t)&&z(),{name:t})}function Li(e){let t=w$1(e,"transports");if(t==null||t==="")return t===void 0?{}:{transports:t};let n=t.split(",");return (n.length>Ue||n.some(i=>!Xt.has(i))||new Set(n).size!==n.length)&&z(),{transports:t}}function Fi(e){let t=w$1(e,"aaguid");return t==null?t===void 0?{}:{aaguid:null}:(Ii.test(t)||z(),{aaguid:t})}function _e(e,t){let n=s(e);return t.has(n)||z(),n}function P(e,t){return t===void 0?{}:{[e]:t}}function fe(e){new Set(e).size!==e.length&&z();}function qi(e){new Set(e).size!==e.length&&z();}function Hi(e,t){if(!t)return e;let n=t.catch(()=>{});return n.then(()=>{n=null;}),{async request(i,o){return n&&await n,e.request(i,o)}}}var ln=new Map;function Vi(e,t,n){let i=ln.get(n);if(!i){let o=new URLSearchParams(window.location.hash.slice(1)).get("authowl_code");if(!o)return;i=import('./session-handoff-ICVIFI3C.js').then(a=>a.completeCrossSiteSignIn(e,t,o)),ln.set(n,i);}return i}function pn(e){return !a$1()||e.idToken||e.disableRedirect?"legacy":"first-party"}function Ki(e,t=()=>{},n=Gi){let i=ke(e),o=e.session.tokens,a$2=a$1()?Vi(i,e.session,e.decoded.projectId):void 0,p=Hi(i,a$2),m=$e({http:p,probe:ke({...e,fetch:e.session.probe}),tokens:o,channelName:`authowl:${e.decoded.projectId}`});e.session.integration?.connect({authenticatedFetch:e.fetch,sessionStore:m.store,subscribeLifecycle:u=>o.subscribeLifecycle(u)});let d=()=>{m.notifyMutation(),t();},h=async()=>{await e.session.integration?.sessionEstablished(),d();},r=n(p,h),{post:s,mutation:f}=H(p,d),{mutation:y}=H(p,h),D=e.decoded.env==="test",k=u=>e.session.prepareSession({remember:u?.rememberMe!==false});return {sessionStore:m.store,getSession:m.getSession,account:tt(p,d),organization:Ot(p,d,()=>m.store.getSnapshot().data?.session.membership??null),privacy:We(p),signIn:{email:async(u,g)=>(await k(u),y(s("/sign-in/email",u,g,De),A=>!("twoFactorRedirect"in A))),username:async(u,g)=>(await k(u),y(s("/sign-in/username",u,g,De),A=>!("twoFactorRedirect"in A))),social:async(u,g)=>{if(await k(),pn(u)==="first-party"){let{beginCrossSiteSignIn:C}=await import('./session-handoff-ICVIFI3C.js'),z=await C(e,{kind:"social",provider:u.provider,callbackURL:u.callbackURL,errorCallbackURL:u.errorCallbackURL,newUserCallbackURL:u.newUserCallbackURL,scopes:u.scopes,loginHint:u.loginHint,requestSignUp:u.requestSignUp});if(z)return window.location.assign(z),{data:{redirect:true,url:z},error:null}}let A=await y(s("/sign-in/social",u,g,C=>Rt(C,D)),C=>"user"in C);return A.error!==null||A.data===null||"url"in A.data&&A.data.redirect&&!u.disableRedirect&&typeof window<"u"&&window.location.assign(A.data.url),A},sso:async(u,g)=>{if(pn(u)==="first-party"){let{beginCrossSiteSignIn:C}=await import('./session-handoff-ICVIFI3C.js'),z=await C(e,{kind:"sso",email:u.email,providerId:u.providerId,domain:u.domain,organizationSlug:u.organizationSlug,callbackURL:u.callbackURL,errorCallbackURL:u.errorCallbackURL,newUserCallbackURL:u.newUserCallbackURL});if(z)return window.location.assign(z),{data:{url:z,redirect:true},error:null}}let A=await s("/sign-in/sso",u,g,C=>It(C,D));return A.error!==null||A.data===null||typeof window<"u"&&window.location.assign(A.data.url),A},magicLink:(u,g)=>s("/sign-in/magic-link",u,g,St),emailOtp:async(u,g)=>(await k(),y(s("/sign-in/email-otp",u,g,wt))),passkey:async(u,g)=>(await k(),r.signIn(u,g))},signUp:{email:async(u,g)=>(await k(),y(s("/sign-up/email",u,g,kt),A=>A.sessionCreated))},emailOtp:{sendVerificationOtp:(u,g)=>s("/email-otp/send-verification-otp",u,g,vt),verifyEmail:async(u,g)=>(await k(),y(s("/email-otp/verify-email",u,g,zt)))},phoneOtp:{prepare:u=>s("/phone-otp/challenge",{},u,Tt),start:(u,g)=>s("/phone-otp/start",{...u,idempotencyKey:u.idempotencyKey??a()},g,Pt),verify:async(u,g)=>(await k(),y(s("/phone-otp/verify",u,g,Ct)))},requestPasswordReset:(u,g)=>s("/request-password-reset",u,g,ze),resetPassword:(u,g)=>s("/reset-password",u,g,ze),sendVerificationEmail:(u,g)=>s("/send-verification-email",u,g,Dt),passkey:{addPasskey:(u,g)=>r.add(u,g),listUserPasskeys:()=>p.request("/passkey/list-user-passkeys",{decode:tn}),updatePasskey:async(u,g)=>{let A=le(u.name);if(!A.valid||A.value===void 0)return pe();let C=A.value;return s("/passkey/update-passkey",{...u,name:C},g,z=>nn(z,u.id,C))},deletePasskey:(u,g)=>s("/passkey/delete-passkey",u,g,on)},twoFactor:{enable:(u,g)=>s("/two-factor/enable",u,g,Et),disable:(u,g)=>f(s("/two-factor/disable",u,g,Nt),A=>A.status),verifyTotp:(u,g)=>y(s("/two-factor/verify-totp",u,g,ce)),verifyBackupCode:(u,g)=>y(s("/two-factor/verify-backup-code",u,g,ce)),sendOtp:(u={},g)=>s("/two-factor/send-otp",u,g,Ut),verifyOtp:(u,g)=>y(s("/two-factor/verify-otp",u,g,ce)),generateBackupCodes:(u,g)=>s("/two-factor/generate-backup-codes",u,g,Mt)},signOut:u=>f(p.request("/sign-out",{method:"POST",body:{},fetchOptions:u,decode:xt}).then(g=>(o.endSession(),e.session.integration?.sessionEnded().then(()=>g)??g)),g=>g.success)}}function Go(e,t=()=>{},n){let i=Ki(e,t,n);return n?{...i,signIn:{email:i.signIn.email,username:i.signIn.username,social:gn(i),magicLink:i.signIn.magicLink,emailOtp:i.signIn.emailOtp,passkey:i.signIn.passkey},passkey:{listUserPasskeys:i.passkey.listUserPasskeys,updatePasskey:i.passkey.updatePasskey,deletePasskey:i.passkey.deletePasskey,addPasskey:i.passkey.addPasskey}}:{...i,signIn:{email:i.signIn.email,username:i.signIn.username,social:gn(i),magicLink:i.signIn.magicLink,emailOtp:i.signIn.emailOtp},passkey:{listUserPasskeys:i.passkey.listUserPasskeys,updatePasskey:i.passkey.updatePasskey,deletePasskey:i.passkey.deletePasskey}}}function gn(e){return async(t,n)=>{if(!t?.idToken||typeof t.idToken.token!="string"||t.idToken.token==="")return Bi();let i=await e.signIn.social({...t,disableRedirect:true},n);return i.data!==null&&"url"in i.data?ji():i}}function Bi(){return Promise.resolve({data:null,error:{status:400,statusText:"BAD_REQUEST",code:"NATIVE_SOCIAL_ID_TOKEN_REQUIRED",message:"Native social sign-in requires a provider ID token."}})}function ji(){return Promise.resolve({data:null,error:{status:502,statusText:"BAD_GATEWAY",code:"INVALID_NATIVE_SOCIAL_RESPONSE",message:"The server returned a redirect for native ID-token sign-in."}})}function Gi(){return {signIn:()=>fn(),add:()=>fn()}}function fn(){return Promise.resolve({data:null,error:{status:400,statusText:"BAD_REQUEST",code:"PASSKEY_BROWSER_REQUIRED",message:"This passkey ceremony requires a browser with WebAuthn."}})}function $o(e,t,n){let i=new Map;return {async signIn(o={},a){let p=await e.request("/passkey/generate-authenticate-options");if(!p.data)return An(p.error);let m;try{m=Yt(p.data);}catch{return mn()}let d;try{d=await n.authenticate({optionsJSON:m,useBrowserAutofill:o.autoFill});}catch(y){return yn(n,y,"AUTH_CANCELLED","Passkey authentication was cancelled.")}if(!Ji(d))return hn();let{clientExtensionResults:h,...r}=d,s=i.get(d.id);if(s)return s;let f=(async()=>{let y=await e.request("/passkey/verify-authentication",{method:"POST",body:{response:r},fetchOptions:a,decode:Zt});return y.data&&await t(),y})();i.set(d.id,f);try{return await f}finally{i.get(d.id)===f&&i.delete(d.id);}},async add(o={},a){let p=le(o.name);if(!p.valid)return pe();let m=await e.request("/passkey/generate-register-options",{query:{name:p.value,authenticatorAttachment:o.authenticatorAttachment}});if(!m.data)return An(m.error);let d;try{d=Qt(m.data);}catch{return mn()}let h;try{h=await n.register({optionsJSON:d});}catch(y){return yn(n,y,"REGISTRATION_CANCELLED","Passkey registration was cancelled.")}if(!Wi(h))return hn();let{clientExtensionResults:r,...s}=h,f=await e.request("/passkey/verify-registration",{method:"POST",body:{response:s,name:p.value},fetchOptions:a,decode:y=>en(y,h.id,p.value)});return f.data&&t(),f}}}function mn(){return {data:null,error:{status:502,statusText:"BAD_GATEWAY",code:"INVALID_WEBAUTHN_OPTIONS",message:"The server returned invalid WebAuthn options."}}}function hn(){return {data:null,error:{status:400,statusText:"BAD_REQUEST",code:"INVALID_WEBAUTHN_RESPONSE",message:"The platform returned an invalid passkey response."}}}function bn(e){if(!e||typeof e!="object")return false;let t=e;return typeof t.id=="string"&&t.id.length>0&&typeof t.rawId=="string"&&t.rawId.length>0&&t.type==="public-key"&&!!t.response&&typeof t.response=="object"}function Ji(e){if(!bn(e))return false;let t=e.response;return typeof t.clientDataJSON=="string"&&typeof t.authenticatorData=="string"&&typeof t.signature=="string"&&(t.userHandle===void 0||typeof t.userHandle=="string")}function Wi(e){if(!bn(e))return false;let t=e.response;return typeof t.clientDataJSON=="string"&&typeof t.attestationObject=="string"}function An(e){return {data:null,error:e??{status:502,statusText:"BAD_GATEWAY",code:"INVALID_WEBAUTHN_OPTIONS",message:"The server returned no WebAuthn options."}}}function yn(e,t,n,i){let o=$i(t,"page does not have focus"),a=e.errorCode?.(t),p=a!==void 0?a==="ERROR_CEREMONY_ABORTED":On(t)==="AbortError",m=n!=="AUTH_CANCELLED",d=Xi(a,On(t),m);return {data:null,error:{status:400,statusText:"BAD_REQUEST",code:o?"PASSKEY_PAGE_NOT_FOCUSED":p?n:a??"PASSKEY_BROWSER_ERROR",message:o?"Keep this page focused while completing the passkey prompt.":p?i:d}}}function Xi(e,t,n){switch(e){case "ERROR_INVALID_DOMAIN":case "ERROR_INVALID_RP_ID":return "Passkeys are not set up for this site\u2019s domain.";case "ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED":return "This device already has a passkey for this account.";case "ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEY_ALGS":case "ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT":case "ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT":return "This device cannot create a passkey for this site.";}return t==="NotAllowedError"?n?"No passkey was created. The prompt was dismissed or timed out.":"No passkey was used. This device may not have one saved for this site yet, or the prompt was dismissed.":t==="SecurityError"?"Passkeys are not set up for this site\u2019s domain.":n?"Passkey registration did not complete.":"Passkey sign-in did not complete."}function On(e){return e&&typeof e=="object"&&"name"in e&&typeof e.name=="string"?e.name:void 0}function $i(e,t){let n=t.toLowerCase(),i=new Set,o=e;for(;o&&typeof o=="object"&&!i.has(o);){if(i.add(o),"message"in o&&typeof o.message=="string"&&o.message.toLowerCase().includes(n))return true;o="cause"in o?o.cause:void 0;}return false}async function er(e){let t=`${e.apiUrl}/api/projects/${e.decoded.projectId}/public-config`;return Be(await ae(e,t,{init:{method:"GET",credentials:"omit"},maxResponseBytes:256*1024,decode:n=>Yi(n,e)}),"public-config")}function Yi(e,t){let n=A(e),i=n.environmentId,o=n.environmentType,a=`${t.apiUrl}/api/projects/${t.decoded.projectId}/auth`;if(typeof n.applicationId!="string"||!Le(n.applicationId)||i!==t.decoded.projectId||o!=="development"&&o!=="production"||n.authBaseUrl!==a)throw T();let p=S(n.branding),m=S(n.legal);if(!V(n.enabledMethods,64)||!V(n.socialProviders,64)||!In(p,["appName","logoUrl","primaryColor"])||p.showAppName!==void 0&&typeof p.showAppName!="boolean"||p.alignment!==void 0&&p.alignment!=="left"&&p.alignment!=="center"&&p.alignment!=="right"||p.theme!==void 0&&p.theme!=="light"&&p.theme!=="dark"&&p.theme!=="system"||!In(m,["termsUrl","privacyUrl"])||!Number.isSafeInteger(m.version)||m.version<0||typeof m.required!="boolean")throw T();if(n.socialProviderClientIds!==void 0){let d=S(n.socialProviderClientIds);if(Object.keys(d).length>64||Object.values(d).some(h=>typeof h!="string"||h.length>2048))throw T()}if(!F(n,["requireEmailVerification","twoFactor","mfaRequired","accountDeletion","organizations","sso","badge"])||!wn(n.turnstileSiteKey)||!wn(n.authTurnstileSiteKey)||typeof n.locale!="string"||n.locale.length===0||n.locale.length>64||!Number.isSafeInteger(n.configVersion)||n.configVersion<0)throw T();if(n.jwtIssuer!==null){let d=S(n.jwtIssuer),h=new URL(d.issuer),r=`${h.origin}/api/projects/${t.decoded.projectId}/auth`;if(d.issuer!==r||d.jwksUrl!==`${r}/jwks`||d.aud!==t.decoded.projectId||h.protocol!=="https:"&&h.origin!==t.apiUrl)throw T()}if(n.signUp!==void 0){let d=S(n.signUp).mode;if(typeof d!="string"||!["open","restricted","allowlist","waitlist"].includes(d))throw T()}if(n.authentication!==void 0&&Qi(n.authentication),n.privacy!==void 0&&Zi(n.privacy),n.emailVerification!==void 0){let d=S(n.emailVerification);if(!F(d,["required"])||d.method!=="link"&&d.method!=="code")throw T()}if(n.userModel!==void 0&&!F(S(n.userModel),["requireEmail","firstLastName","emailChange","accountDeletion"]))throw T();if(n.mfa!==void 0){let d=S(n.mfa);if(!F(d,["totp","required","backupCodes"])||d.emailOtpFallback!==void 0&&typeof d.emailOtpFallback!="boolean"||d.trustDevice!==void 0&&typeof d.trustDevice!="boolean"||(d.required===true||d.backupCodes===true)&&d.totp!==true)throw T()}if(n.captcha===void 0||n.captcha===null)n.captcha=typeof n.authTurnstileSiteKey=="string"&&n.authTurnstileSiteKey.length>0?{provider:"turnstile",siteKey:n.authTurnstileSiteKey}:null;else {let d=S(n.captcha);if(typeof d.provider!="string"||d.provider.length===0||d.provider.length>64||typeof d.siteKey!="string"||d.siteKey.length===0||d.siteKey.length>512)throw T();n.captcha={provider:d.provider,siteKey:d.siteKey};}return n}function Le(e){return /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(e)}function T(){return new TypeError("public-config returned an invalid response")}function S(e){if(!e||typeof e!="object"||Array.isArray(e))throw T();return e}function wn(e){return e===null||typeof e=="string"&&e.length<=4096}function Qi(e){let t=S(e),n=S(t.email),i=S(t.password),o=i.minLength!==void 0||i.maxLength!==void 0;if(!F(n,["signUp"])||!V(n.signIn,3)||n.signIn.some(a=>a!=="password"&&a!=="magic_link"&&a!=="email_otp")||!F(S(t.phone),["signUp","signIn"])||!F(i,["signUp","add"])||o&&(!Number.isSafeInteger(i.minLength)||!Number.isSafeInteger(i.maxLength)||i.minLength<1||i.maxLength>4096||i.minLength>i.maxLength)||!F(S(t.passkey),["signIn","add"])||!eo(S(t.passkey).relyingPartyId)||!F(S(t.username),["collectOnSignUp","signIn"]))throw T()}function Zi(e){let t=S(e);if(!Array.isArray(t.notices)||!Array.isArray(t.consentPurposes)||t.notices.length>64||t.consentPurposes.length>64)throw T();for(let n of t.notices){let i=S(n);if(kn(i,"noticeId","noticeVersionId"),he(i.title,512),he(i.body,1e5),Rn(i.digest),!V(i.activityCodes,128)||!V(i.purposeCodes,128)||typeof i.effectiveFrom!="string"||!Number.isFinite(Date.parse(i.effectiveFrom)))throw T()}for(let n of t.consentPurposes){let i=S(n);if(kn(i,"purposeId","purposeVersionId"),he(i.title,512),he(i.description,1e4),Rn(i.digest),!V(i.activityCodes,128)||!V(i.dataCategories,128))throw T()}}function kn(e,t,n){if(typeof e[t]!="string"||!Le(e[t])||typeof e[n]!="string"||!Le(e[n])||typeof e.code!="string"||!/^[a-z][a-z0-9_]{0,63}$/.test(e.code)||!Number.isSafeInteger(e.version)||e.version<1)throw T()}function he(e,t){let n=S(e);if(typeof n.en!="string"||n.en.length===0||n.en.length>t||typeof n.ar!="string"||n.ar.length===0||n.ar.length>t)throw T()}function Rn(e){let t=S(e);if(typeof t.en!="string"||!/^[a-f0-9]{64}$/.test(t.en)||typeof t.ar!="string"||!/^[a-f0-9]{64}$/.test(t.ar))throw T()}function eo(e){return e==null||typeof e=="string"}function F(e,t){return t.every(n=>typeof e[n]=="boolean")}function In(e,t){return t.every(n=>e[n]===void 0||typeof e[n]=="string"&&e[n].length<=4096)}function V(e,t){return Array.isArray(e)&&e.length<=t&&e.every(n=>typeof n=="string"&&n.length<=128)&&new Set(e).size===e.length}export{to as a,ye as b,ae as c,Be as d,ro as e,je as f,Tn as g,Cn as h,ke as i,We as j,Ki as k,Go as l,$o as m,er as n};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var ke=/^(pk_(live|test))_([0-9a-f-]{36})_([A-Za-z0-9]{20,})$/i,Ee=/^sk_/i;function X(e){if(typeof e!="string"||e.length===0)throw new Error("publishableKey is required");if(Ee.test(e))throw new Error("A secret key was passed where a publishable key was expected. Never embed secret keys in client code.");let n=ke.exec(e);if(!n)throw new Error("publishableKey is malformed; expected pk_(live|test)_<uuid>_<base62>");return {prefix:n[1].toLowerCase(),env:n[2].toLowerCase(),projectId:n[3].toLowerCase()}}function an(e,n){let t=`p_${e.toLowerCase().replace(/-/g,"")}`;return `${n?.secure?"__Secure-":""}${t}.session_token`}function v(e,n){try{return e?.getItem(n)??null}catch{return null}}function U(e,n,t){try{t===null?e?.removeItem(n):e?.setItem(n,t);}catch{}}function I(){try{return globalThis.localStorage}catch{return}}function P(){try{return globalThis.sessionStorage}catch{return}}var Oe="authowl.session-challenge",xe=e=>`${Oe}.${e}`,Ae="set-auth-challenge",F="x-authowl-challenge";function dn(e){let n=e.get(F);return H(n)?ee(n).some(([t,o])=>t.endsWith(".dont_remember")&&o.length>0):false}var pn="INVALID_TWO_FACTOR_COOKIE",_e=2048,H=e=>e!==null&&e.length<=_e,Z=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/;function ee(e){let n=[];for(let t of e.split(";")){let o=t.trimStart(),s=o.indexOf("=");s<=0||n.push([o.slice(0,s).trimEnd(),o.slice(s+1)]);}return n}function ne(e){let n=xe(e),t=new Map;function o(){return t.size===0?null:[...t].map(([i,l])=>`${i}=${l}`).join("; ")}function s(){let i=o();U(P(),n,H(i)?i:null);}function p(i){for(let[l,h]of ee(i))Z.test(l)&&(h===""?t.delete(l):Z.test(h)&&t.set(l,h));}let f=v(P(),n);return H(f)&&p(f),{presentOn(i){let l=o();i.delete(F),H(l)&&i.set(F,l);},observe(i){let l=i.get(Ae);H(l)&&(p(l),s());},clear(){t.clear(),s();}}}var te="set-auth-token",oe="x-authowl-session-transport",re="bearer";var se=Symbol.for("authowl.session-transport-integration.v1");function gn(e,n){return Object.defineProperty(e,se,{value:n,configurable:false,enumerable:false,writable:false}),e}function ie(e){return e?e[se]??null:null}var V=/^http:\/\/(?:(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)*localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\/|$)/i;function k(e,n){throw new Error(`${e}: ${n}`)}function Le(e){return /^https?:\/\/[^/?#]*(\/[^?#]*)?$/i.exec(e)?.[1]??""}function ae(e,{label:n,allowHttpLoopback:t}){(typeof e!="string"||e.length===0)&&k(n,"required"),e!==e.trim()&&k(n,"surrounding whitespace"),(e.includes("?")||e.includes("#"))&&k(n,"query or fragment forbidden"),(e.includes("\\")||/%[0-9a-f]{2}/i.test(e))&&k(n,"path must be unencoded");let o;try{o=new URL(e);}catch{k(n,"absolute URL required");}return (o.username||o.password)&&k(n,"credentials forbidden"),o.protocol!=="https:"&&o.protocol!=="http:"&&k(n,"HTTPS required"),o.protocol==="http:"&&(!t||!V.test(e))&&k(n,"HTTPS required except exact loopback"),o}function ce(e,n){let t;try{t=new URL(String(e));}catch{throw new TypeError("Transport URL must be absolute.")}if(t.username||t.password||t.hash)throw new TypeError("Transport URL must not contain credentials or a fragment.");let o=t.toString();if(t.protocol!=="https:"&&!(t.protocol==="http:"&&n.allowHttpLoopback&&V.test(o)))throw new TypeError("Transport URL must use HTTPS except on approved loopback.");return t}function le(e,n,t){let o=Le(e);(o.includes("//")||o.split("/").some(s=>s==="."||s==="..")||o!==""&&o!==n.pathname)&&k(t,"path traversal or duplicate separator");}function ue(e,n){(typeof e!="string"||!/^https?:\/\/[^/?#@\\\s]+\/?$/i.test(e))&&k("apiUrl","origin required");let t;try{t=new URL(e);}catch{k("apiUrl","origin required");}return t.protocol==="http:"&&(!n.allowHttpLoopback||!V.test(e))&&k("apiUrl","HTTPS required except exact loopback"),t.origin}function mn(e,n,t={allowHttpLoopback:false}){let o=ae(e,{label:"issuer",allowHttpLoopback:t.allowHttpLoopback}),s=ae(n,{label:"jwksUri",allowHttpLoopback:t.allowHttpLoopback});return le(e,o,"issuer"),le(n,s,"jwksUri"),o.pathname!=="/"&&o.pathname.endsWith("/")&&k("issuer","trailing slash forbidden"),{issuer:o.toString().replace(/\/$/,""),jwksUri:s.toString()}}var ve="authowl.session-token",Ue="authowl.session-binding",Pe="authowl.cookie-transport",pe="ok",fe="bearer",Ie=e=>`${ve}.${e}`,Ne=e=>`${Ue}.${e}`,Ce=e=>`${Pe}.${e}`;function He(e){return e===pe?"cookies":e===fe?"bearer":"unknown"}function Ke(e){return e==="cookies"?pe:e==="bearer"?fe:null}function Be(e){let n=Ie(e),t=Ne(e),o=Ce(e),s=ne(e),p=new Set;function f(r){for(let g of p)try{g(r);}catch{}}let i=null,l=null,h=null,b=false,T=null,a=He(v(I(),o)),d=()=>a==="unknown",c=0,L=null,u=false;function w(){let r=v(P(),n);if(r!==null)return b=true,r;let g=v(I(),n);return g!==null?(b=false,g):null}function S(){return v(P(),t)??v(I(),t)}i=w(),l=i===null?null:S(),i!==null&&d()&&(u=true);function x(){if(!(!u||!L)){u=false;try{L();}catch{}}}function A(){let r=a==="bearer"?i:null,g=r===null?null:l,[C,Q]=b?[P(),I()]:[I(),P()];U(Q,n,null),U(Q,t,null),U(C,n,r),U(C,t,g);}function R(r){r!==null&&T!==null&&(b=T,T=null),r!==null&&h!==null?(l=h,h=null):r===null&&(l=null),i=r,A(),r!==null&&d()&&(u=true,x());}function E(r){a=r,U(I(),o,Ke(r));}function K(){E("unknown"),u=false;}function N(){return i===null&&(i=w(),l=i===null?null:S()),i}function W(){let r=w();return r!==null&&(i=r,l=S()),i}function Re(r){W()===r&&A();}function G(){c+=1,T=null,h=null,b=false,R(null),s.clear(),K(),f({type:"endSession"});}let Y=()=>a!=="cookies";return {subscribeLifecycle(r){return p.add(r),()=>p.delete(r)},hasToken:()=>N()!==null,bindingThumbprint:()=>(N(),l),declareOn(r){if(r.has("authorization"))return false;let g=N();return !g&&!Y()?false:(g&&r.set("authorization",`Bearer ${g}`),r.set(oe,re),s.presentOn(r),true)},wantsToken:Y,needsProbe:d,observe(r){let g=r.get(te);g&&R(g),s.observe(r);},dropChallenge:s.clear,measureWith(r){L=r,x();},beginRead(){let r=N(),g=c;return {carriedToken:r!==null,endIfDead(){r!==null&&W()===r&&c===g&&G();},recordCookieVerdict(C){if(c===g&&d()){if(E(C?"cookies":"bearer"),C){R(null);return}Re(r);}}}},beginSession({remember:r}){c+=1,T=!r,s.clear(),K(),f({type:"beginSession",remember:r});},useCookieTransport(){N()===null&&(h=null,E("cookies"));},completeCookieTransport(){E("cookies"),R(null);},useBoundBearerTransport(r,g){if(!r)throw new Error("A session proof thumbprint is required.");h=r,g||(T=true),E("bearer");},endSession:G}}var de=new Map;function he(e){let n=de.get(e);if(n)return n;let t=Be(e);return de.set(e,t),t}var z="x-authowl-session-proof",ge="x-authowl-session-binding",be="x-authowl-session-binding-proof",B=()=>import('./session-proof-client-JPZY63IN.js');function je(e,n){return n?.headers?new Headers(n.headers):typeof e=="object"&&e!==null&&"headers"in e?new Headers(e.headers):new Headers}function me(e,n){let t=he(e.projectId),o=(a,d)=>(n??globalThis.fetch)(a,d),s=typeof globalThis.location=="object"&&typeof globalThis.location.origin=="string"&&globalThis.location.origin!=="null"?globalThis.location.origin:null,p=null,f=false,i=()=>new Headers({"x-publishable-key":e.publishableKey});async function l(a){let d=a.get("authorization");d&&await B().then(c=>c.abandonSession(o,`${e.projectBaseURL}/session/abandon`,i(),d));}async function h(a){p=null,f=false;let d=await B().then(c=>c.prepareSenderConstrainedSession({tokens:t,start:a,clientOrigin:s,fetcher:o,projectBaseURL:e.projectBaseURL,headers:i()}));p=d.binding,f=d.cookieOnly;}return {fetch:async(a,d)=>{if(d?.credentials==="omit"||!t.wantsToken())return o(a,d);let c=je(a,d),L=t.declareOn(c),u=c.get("authorization"),w=(d?.method??(typeof a=="object"&&a!==null&&"method"in a?a.method:"GET")).toUpperCase(),S=typeof a=="string"?a:a instanceof URL?a.toString():a.url;if(L&&s){let A=!!u;if(u){let R=u.replace(/^Bearer\s+/i,""),E=t.bindingThumbprint();if(E)try{c.set(z,await B().then(K=>K.createStoredSessionProof({origin:s,expectedThumbprint:E,method:w,url:S,token:R})));}catch{await l(c),t.endSession(),c.delete("authorization"),c.delete(z),c.delete(ge),c.delete(be),A=false;}}if(p){let R=p;c.set(ge,R.nonce),c.set(A?be:z,await B().then(E=>E.createSessionProof({key:R.key,method:w,url:S,token:R.nonce})));}}let x=await o(a,{...d,headers:c});return L&&(x.status===401&&u&&(new URL(S).pathname.endsWith("/get-session")||new URL(S).pathname.endsWith("/sign-out"))?(await l(c),t.endSession(),p=null,f=false):(t.observe(x.headers),x.headers.has("set-auth-token")&&(f&&t.completeCookieTransport(),p=null,f=false))),x},probe:o,tokens:t,integration:ie(n),prepareSession:h}}function De(e){if(!e||typeof e!="object")throw new Error("AuthConfig is required");let n=X(e.publishableKey),t=ue(e.apiUrl,{allowHttpLoopback:n.env==="test"});return {publishableKey:e.publishableKey,apiUrl:t,decoded:n,projectBaseURL:`${t}/api/projects/${n.projectId}/auth`}}function Ln(e){let n=De(e),{fetch:t,...o}=me({projectId:n.decoded.projectId,projectBaseURL:n.projectBaseURL,publishableKey:n.publishableKey},e.fetch);return {...e,...n,fetch:t,session:o}}var Fe=1e4,Ve=1024*1024,j=class extends Error{kind;requestId;constructor(n,t){super(Ye(n)),this.name="TransportError",this.kind=n,this.requestId=t;}},Te=new WeakSet;function m(e,n){let t=new j(e,n);return Te.add(t),t}async function Pn({fetchImpl:e,url:n,init:t={},timeoutMs:o=Fe,maxResponseBytes:s=Ve,allowHttpLoopback:p=false,decode:f}){Se(o,"timeoutMs"),Se(s,"maxResponseBytes");let i=ce(n,{allowHttpLoopback:p}),l=t.signal,h=new AbortController,b=null,T,a=new Promise(u=>{T=u;}),d=u=>{b===null&&(b=u,T({type:"abort",kind:u}),h.abort());},c=()=>d("aborted");l?.addEventListener("abort",c,{once:true});let L=setTimeout(()=>d("timeout"),o);l?.aborted&&c();try{if(b!==null)throw m(b);let u;try{u=await Promise.race([e(i.toString(),{...t,redirect:"error",signal:h.signal}).then(E=>({type:"response",response:E})),a]);}catch{throw m(b??"network")}if(u.type==="abort")throw m(u.kind);if(!ze(u.response))throw m("invalid_response");let w=u.response,S=Ge(w.headers),x=await $e(w,s,a,()=>b,S),A=Me(w,x,S),R;try{R=w.ok&&f?f(A,Object.freeze({status:w.status})):A;}catch{throw m("invalid_response",S)}return {response:w,data:R,...S===void 0?{}:{requestId:S}}}catch(u){throw u instanceof j&&Te.has(u)?u:m(b??"network")}finally{clearTimeout(L),l?.removeEventListener("abort",c);}}function ze(e){if(!e||typeof e!="object")return false;let n=e;return Number.isInteger(n.status)&&n.status>=0&&n.status<=599&&typeof n.statusText=="string"&&typeof n.ok=="boolean"&&typeof n.headers?.get=="function"&&(n.body===null||typeof n.body=="object"&&typeof n.body?.getReader=="function"&&typeof n.body.cancel=="function")}async function $e(e,n,t,o,s){let p=e.headers.get("content-length");if(p!==null){if(!/^\d+$/.test(p))throw ye(e.body),m("invalid_response",s);if(Number(p)>n)throw ye(e.body),m("response_too_large",s)}if(!e.body)return "";let f;try{f=e.body.getReader();}catch{throw m("network",s)}let i=[],l=0,h=null;try{for(;;){let a;try{a=await Promise.race([f.read(),t]);}catch{h=m(o()??"network",s);break}if(qe(a)){h=m(a.kind,s);break}let{done:d,value:c}=a;if(d)break;if(c.byteLength!==0){if(l+=c.byteLength,l>n){h=m("response_too_large",s);break}i.push(c);}}}finally{h&&Je(f);try{f.releaseLock();}catch{}}if(h)throw h;let b=new Uint8Array(l),T=0;for(let a of i)b.set(a,T),T+=a.byteLength;try{return new TextDecoder("utf-8",{fatal:!0}).decode(b)}catch{throw m("invalid_response",s)}}function qe(e){return "type"in e&&e.type==="abort"}function ye(e){if(e)try{e.cancel().catch(()=>{});}catch{}}function Je(e){try{e.cancel().catch(()=>{});}catch{}}function Me(e,n,t){if(e.status===204||e.status===205)return null;let o=We(e.headers.get("content-type"));if(!e.ok&&(!o||n.length===0))return null;if(!o||n.length===0)throw m("invalid_response",t);try{return JSON.parse(n)}catch{if(!e.ok)return null;throw m("invalid_response",t)}}function We(e){if(e===null)return false;let n=e.split(";",1)[0]?.trim().toLowerCase();return n==="application/json"||n?.endsWith("+json")===true}function Ge(e){let n=e.get("x-request-id")?.trim();if(!(!n||n.length>256||!/^[A-Za-z0-9._:-]+$/.test(n)))return n}function Se(e,n){if(!Number.isInteger(e)||e<=0)throw new TypeError(`${n} must be a positive integer.`)}function Ye(e){switch(e){case "aborted":return "The request was cancelled.";case "timeout":return "The request timed out.";case "response_too_large":return "The response exceeded the allowed size.";case "invalid_response":return "The service returned an invalid response.";case "network":return "The network request could not be completed."}}function Qe(e,n){return !e||!n?false:e.permissions.includes(n)}function Xe(e,n){return !e||!n?false:e.teams?.includes(n)??false}function Ze(e,n){return e?e.roles===void 0?e.role===n:e.roles.includes(n):false}function en(e,n){if(!e)return false;let{role:t,permission:o,teamId:s}=n;return !(t===void 0&&o===void 0&&s===void 0||t!==void 0&&!Ze(e,t)||o!==void 0&&!e.permissions.includes(o)||s!==void 0&&!Xe(e,s))}function Nn(e){return {has:n=>en(e,n),hasPermission:n=>Qe(e,n.permission)}}var nn=new Set(["__proto__","constructor","prototype"]);function M(e){(!e||typeof e!="object"||Array.isArray(e))&&y();let n=Object.getPrototypeOf(e);return n!==Object.prototype&&n!==null&&y(),e}function D(e){return typeof e!="string"&&y(),e}function tn(e){return typeof e!="boolean"&&y(),e}function q(e){return (!(e instanceof Date)||Number.isNaN(e.getTime()))&&y(),e}function $(e){return (!Array.isArray(e)||!e.every(n=>typeof n=="string"))&&y(),[...e]}function _(e,n){let t=e[n];return t==null||typeof t=="string"?t:y()}function we(e,n){let t=e[n];return t==null||typeof t=="boolean"?t:y()}function Hn(e){let n=M(e),t=n.email;return t!==null&&typeof t!="string"&&y(),{id:D(n.id),email:t,emailVerified:tn(n.emailVerified),createdAt:q(n.createdAt),updatedAt:q(n.updatedAt),...O("phoneNumber",_(n,"phoneNumber")),...O("username",_(n,"username")),...O("displayUsername",_(n,"displayUsername")),...O("firstName",_(n,"firstName")),...O("lastName",_(n,"lastName")),...O("name",_(n,"name")),...O("image",_(n,"image")),...O("twoFactorEnabled",we(n,"twoFactorEnabled"))}}function Kn(e){let n=M(e),t=n.membership;return {id:D(n.id),userId:D(n.userId),expiresAt:q(n.expiresAt),...O("activeOrganizationId",_(n,"activeOrganizationId")),...O("activeTeamId",_(n,"activeTeamId")),...O("membership",t==null?t:rn(t)),...O("pendingMfaEnrollment",we(n,"pendingMfaEnrollment"))}}function y(){throw new TypeError("AuthOwl response does not match its runtime contract.")}function Bn(e,n=20,t=1e4){return (!e||typeof e!="object"||Array.isArray(e))&&y(),on(e,n,t)}function on(e,n=20,t=1e4){return J(e,0,{nodes:0},n,t)}function rn(e){let n=M(e);return {role:D(n.role),...n.roles===void 0?{}:{roles:$(n.roles)},permissions:$(n.permissions),...n.teams===void 0?{}:{teams:$(n.teams)}}}function J(e,n,t,o,s){if(t.nodes+=1,(n>o||t.nodes>s)&&y(),e===null||typeof e=="string"||typeof e=="boolean")return e;if(typeof e=="number")return Number.isFinite(e)||y(),e;if(Array.isArray(e))return e.map(i=>J(i,n+1,t,o,s));(!e||typeof e!="object")&&y();let p=Object.getPrototypeOf(e);p!==Object.prototype&&p!==null&&y();let f={};for(let[i,l]of Object.entries(e))nn.has(i)&&y(),f[i]=J(l,n+1,t,o,s);return f}function O(e,n){return n===void 0?{}:{[e]:n}}
|
|
2
|
+
export{Bn as A,on as B,Qe as C,Xe as D,Ze as E,en as F,Nn as G,X as a,an as b,ce as c,mn as d,v as e,U as f,I as g,dn as h,pn as i,te as j,oe as k,re as l,gn as m,De as n,Ln as o,j as p,Pn as q,M as r,D as s,tn as t,q as u,$ as v,_ as w,Hn as x,Kn as y,y as z};
|