@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
JavaScript
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 };