UNPKG

@better-auth-ui/core

Version:

Authentication components and data utilities for [Better Auth](https://better-auth.com), available for React and Solid.

259 lines (258 loc) 6.9 kB
import { t as e } from "../../auth-mutation-keys-DCWERLqI.js"; import { t } from "../../create-auth-plugin-BXWyolC8.js"; import { skipToken as n } from "@tanstack/query-core"; //#region src/plugins/sso/sso-mutation-keys.ts var r = { all: [...e.signIn.all, "sso"], signIn: [ ...e.signIn.all, "sso", "discover" ], register: [ "auth", "sso", "register" ], update: [ "auth", "sso", "update" ], delete: [ "auth", "sso", "delete" ], requestDomainVerification: [ "auth", "sso", "requestDomainVerification" ], verifyDomain: [ "auth", "sso", "verifyDomain" ] }, i = { all: (e) => [ "auth", "sso", e ?? null ], providers: { all: (e) => [...i.all(e), "providers"], detail: (e, t) => [ ...i.providers.all(e), "detail", t ?? null ], list: (e) => [...i.providers.all(e), "list"] } }; //#endregion //#region src/plugins/sso/delete-sso-provider-mutation.ts function a(e, t) { return { mutationKey: r.delete, mutationFn: (t) => e.sso.deleteProvider({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [i.providers.all(t)] } }; } //#endregion //#region src/plugins/sso/register-sso-provider-mutation.ts function o(e, t) { return { mutationKey: r.register, mutationFn: (t) => e.sso.register({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [i.providers.all(t)] } }; } //#endregion //#region src/plugins/sso/request-sso-domain-verification-mutation.ts function s(e, t) { return { mutationKey: r.requestDomainVerification, mutationFn: (t) => e.sso.requestDomainVerification({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [i.providers.all(t)] } }; } //#endregion //#region src/plugins/sso/sign-in-sso-mutation.ts function c(e) { return { mutationKey: r.signIn, mutationFn: (t) => e.signIn.sso({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }) }; } //#endregion //#region src/plugins/sso/sso-email.ts var l = "better-auth-ui.sso-email"; function u() { try { return typeof sessionStorage > "u" ? "" : sessionStorage.getItem("better-auth-ui.sso-email") ?? ""; } catch { return ""; } } function d(e) { try { if (typeof sessionStorage > "u") return; sessionStorage.setItem(l, e); } catch {} } //#endregion //#region src/plugins/sso/sso-localization.ts var f = { addProvider: "Add SSO provider", cancel: "Cancel", clientId: "Client ID", clientSecret: "Client secret", continueWithEmail: "Continue with email", continueWithSso: "Continue with SSO", copyDnsHost: "Copy DNS host", copyDnsValue: "Copy DNS value", domain: "Email domain", domainVerification: "Domain verification", domainVerificationDescription: "Publish the TXT record for every configured domain, then verify it.", domainVerificationRequested: "A new verification token was created.", domainVerified: "The provider domain is verified.", deleteProvider: "Delete provider", deleteProviderDescription: "Users will no longer be able to sign in through this provider.", discoveryEndpoint: "Discovery endpoint", editProvider: "Edit provider", emailFirstDescription: "Enter your work email to continue.", entryPoint: "SSO URL", identityProviderMetadata: "Identity provider metadata XML", invalidUrl: "Enter a valid absolute URL.", issuer: "Issuer URL", oidc: "OIDC", organizationId: "Organization ID", noProviders: "No SSO providers", noProvidersDescription: "Add an identity provider to enable organization sign-in.", providerDeleted: "The SSO provider was deleted.", providerList: "Organization SSO", providerListDescription: "Manage identity providers and verified domains for this organization.", providerAccessDenied: "Only organization owners and administrators can manage SSO providers.", providerLoadError: "SSO providers could not be loaded.", providerUpdated: "The SSO provider was updated.", providerCreated: "The SSO provider was added.", providerId: "Provider ID", providerSetup: "SSO provider setup", providerSetupDescription: "Connect an OpenID Connect or SAML identity provider.", requestNewToken: "Create new token", retry: "Retry", saveProvider: "Save provider", saml: "SAML", txtRecordHost: "TXT record host", txtRecordValue: "TXT record value", useDifferentEmail: "Use a different email", verifyDomain: "Verify domain", noProvider: "No organization sign-in was found. Choose another way to continue.", ssoUnavailable: "Organization sign-in is unavailable. Try another sign-in method." }, p = t("sso", (e = {}) => ({ emailFirst: e.emailFirst ?? !0, localization: { ...f, ...e.localization }, organization: e.organization ?? !0, path: e.path ?? "sso" })), m = class extends Error { status; statusText; constructor(e) { super(e.message || e.statusText || "SSO request failed"), this.name = "SsoClientError", this.status = e.status, this.statusText = e.statusText; } }, h = (e) => { if (e.error) throw new m(e.error); return e.data; }; function g(e, t) { return { queryKey: i.providers.list(t), queryFn: t ? async ({ signal: t }) => { let n = h(await e.sso.providers({ fetchOptions: { signal: t } })); if (!n) throw new m({ message: "SSO providers unavailable", status: 500, statusText: "Internal Server Error" }); return n; } : n }; } function _(e, t, r) { return { queryKey: i.providers.detail(t, r), queryFn: t && r ? async ({ signal: t }) => { let n = h(await e.sso.getProvider({ query: { providerId: r }, fetchOptions: { signal: t } })); if (!n) throw new m({ message: "SSO provider not found", status: 404, statusText: "Not Found" }); return n; } : n }; } var v = (e, t, n) => e.ensureQueryData(g(t, n)), y = (e, t, n, r) => e.fetchQuery(_(t, n, r)); //#endregion //#region src/plugins/sso/update-sso-provider-mutation.ts function b(e, t) { return { mutationKey: r.update, mutationFn: (t) => e.sso.updateProvider({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [i.providers.all(t)] } }; } //#endregion //#region src/plugins/sso/verify-sso-domain-mutation.ts function x(e, t) { return { mutationKey: r.verifyDomain, mutationFn: (t) => e.sso.verifyDomain({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [i.providers.all(t)] } }; } //#endregion export { l as SSO_EMAIL_STORAGE_KEY, m as SsoClientError, a as deleteSsoProviderOptions, v as ensureSsoProviders, y as fetchSsoProvider, u as getSsoFallbackEmail, o as registerSsoProviderOptions, s as requestSsoDomainVerificationOptions, d as setSsoFallbackEmail, c as signInSsoOptions, f as ssoLocalization, r as ssoMutationKeys, p as ssoPlugin, _ as ssoProviderOptions, g as ssoProvidersOptions, i as ssoQueryKeys, b as updateSsoProviderOptions, x as verifySsoDomainOptions };