UNPKG

@better-auth-ui/core

Version:

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

190 lines (189 loc) 4.54 kB
import { t as e } from "../../auth-query-keys-B_bcsA3s.js"; import { r as t } from "../../auth-query-retry-Dyv0hsPy.js"; import { t as n } from "../../create-auth-plugin-BXWyolC8.js"; import { skipToken as r } from "@tanstack/query-core"; //#region src/plugins/passkey/passkey-mutation-keys.ts var i = { signIn: [ "auth", "signIn", "passkey" ], autoFill: [ "auth", "passkey", "autoFill" ], addPasskey: [ "auth", "passkey", "addPasskey" ], deletePasskey: [ "auth", "passkey", "deletePasskey" ], updatePasskey: [ "auth", "passkey", "updatePasskey" ] }, a = { all: (t) => [...e.user(t), "passkey"], lists: (e) => [...a.all(e), "list"], list: (e, t) => [...a.lists(e), t ?? null] }; //#endregion //#region src/plugins/passkey/add-passkey-mutation.ts function o(e, t) { return { mutationKey: i.addPasskey, mutationFn: (t) => e.passkey.addPasskey({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [a.lists(t)], errorPresentation: "inline" } }; } //#endregion //#region src/plugins/passkey/delete-passkey-mutation.ts function s(e, t) { return { mutationKey: i.deletePasskey, mutationFn: (t) => e.passkey.deletePasskey({ ...t, fetchOptions: { ...t?.fetchOptions, throw: !0 } }), meta: { awaits: [a.lists(t)] } }; } //#endregion //#region src/plugins/passkey/list-passkeys-query.ts function c(e, n, i) { return { queryKey: a.list(n, i?.query), queryFn: n ? ({ signal: n }) => e.passkey.listUserPasskeys({ ...i, fetchOptions: t(i?.fetchOptions, n) }) : r }; } var l = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.ensureQueryData({ ...c(t, n, { query: a, fetchOptions: i }), ...o }); }, u = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.prefetchQuery({ ...c(t, n, { query: a, fetchOptions: i }), ...o }); }, d = (e, t, n, r) => { let { fetchOptions: i, query: a, ...o } = r ?? {}; return e.fetchQuery({ ...c(t, n, { query: a, fetchOptions: i }), ...o }); }, f = (e, t, n, r) => { let i = a.list(n, r?.query); return e.getQueryData(i); }, p = { passkey: "Passkey", addPasskey: "Add passkey", deletePasskey: "Delete passkey {{name}}", deletePasskeyTitle: "Delete passkey", deletePasskeyWarning: "This action cannot be undone. You will need to add this passkey again before you can use it to sign in.", passkeys: "Passkeys", passkeysDescription: "Create a passkey to securely access your account.", noPasskeys: "No passkeys", name: "Name", renamePasskey: "Rename passkey", renamePasskeySuccess: "Passkey renamed" }, m = n("passkey", (e = {}) => ({ autoFill: e.autoFill ?? !0, authenticatorAttachment: e.authenticatorAttachment, localization: { ...p, ...e.localization } })), h = "webauthn"; function g(e, t) { return t ? [...e.split(/[\t\n\f\r ]+/).filter((e) => e && e.toLowerCase() !== "webauthn"), h].join(" ") : e; } function _(e) { return e.find((e) => e.id === m.id)?.autoFill ?? !1; } async function v() { if (typeof window > "u") return !1; let { PublicKeyCredential: e } = window; if (typeof e?.isConditionalMediationAvailable != "function") return !1; try { return await e.isConditionalMediationAvailable(); } catch { return !1; } } //#endregion //#region src/plugins/passkey/sign-in-passkey-mutation.ts function y(t) { return { mutationKey: i.signIn, mutationFn: (e) => t.signIn.passkey({ ...e ?? {}, fetchOptions: { ...e?.fetchOptions, throw: !0 } }), meta: { awaits: [e.session] } }; } function b(e) { let t = y(e); return { ...t, mutationKey: i.autoFill, meta: { ...t.meta, errorPresentation: "silent" } }; } //#endregion //#region src/plugins/passkey/update-passkey-mutation.ts function x(e, t) { return { mutationKey: i.updatePasskey, mutationFn: (t) => e.passkey.updatePasskey({ ...t, fetchOptions: { ...t.fetchOptions, throw: !0 } }), meta: { awaits: [a.lists(t)] } }; } //#endregion export { o as addPasskeyOptions, s as deletePasskeyOptions, l as ensureListPasskeys, d as fetchListPasskeys, f as getListPasskeys, v as isConditionalMediationAvailable, _ as isPasskeyAutoFillEnabled, c as listPasskeysOptions, b as passkeyAutoFillOptions, p as passkeyLocalization, i as passkeyMutationKeys, m as passkeyPlugin, a as passkeyQueryKeys, u as prefetchListPasskeys, y as signInPasskeyOptions, x as updatePasskeyOptions, h as webAuthnAutoCompleteToken, g as withPasskeyAutoFill };