@better-auth-ui/react 1.6.8 → 1.6.9
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/components/auth/auth-context.d.ts +3 -0
- package/dist/components/auth/auth-context.js +4 -0
- package/dist/components/auth/auth-provider.d.ts +4 -4
- package/dist/components/auth/auth-provider.js +65 -41
- package/dist/components/auth/email/email-changed.d.ts +2 -2
- package/dist/components/auth/email/email-changed.js +68 -154
- package/dist/components/auth/email/email-localization.d.ts +11 -3
- package/dist/components/auth/email/email-localization.js +25 -18
- package/dist/components/auth/email/email-styles.js +77 -52
- package/dist/components/auth/email/email-verification.d.ts +2 -2
- package/dist/components/auth/email/email-verification.js +73 -138
- package/dist/components/auth/email/index.d.ts +10 -9
- package/dist/components/auth/email/index.js +10 -9
- package/dist/components/auth/email/magic-link.d.ts +2 -2
- package/dist/components/auth/email/magic-link.js +70 -139
- package/dist/components/auth/email/new-device.d.ts +2 -2
- package/dist/components/auth/email/new-device.js +88 -221
- package/dist/components/auth/email/organization-invitation.d.ts +121 -0
- package/dist/components/auth/email/organization-invitation.js +110 -0
- package/dist/components/auth/email/otp-email.d.ts +2 -2
- package/dist/components/auth/email/otp-email.js +63 -127
- package/dist/components/auth/email/password-changed.d.ts +2 -2
- package/dist/components/auth/email/password-changed.js +74 -157
- package/dist/components/auth/email/reset-password.d.ts +2 -2
- package/dist/components/auth/email/reset-password.js +66 -138
- package/dist/components/auth/fetch-options-provider.d.ts +1 -1
- package/dist/components/auth/fetch-options-provider.js +28 -27
- package/dist/components/icons/apple.d.ts +1 -1
- package/dist/components/icons/apple.js +9 -16
- package/dist/components/icons/atlassian.d.ts +1 -1
- package/dist/components/icons/atlassian.js +13 -38
- package/dist/components/icons/cognito.d.ts +1 -1
- package/dist/components/icons/cognito.js +9 -19
- package/dist/components/icons/discord.d.ts +1 -1
- package/dist/components/icons/discord.js +9 -16
- package/dist/components/icons/dropbox.d.ts +1 -1
- package/dist/components/icons/dropbox.js +9 -16
- package/dist/components/icons/facebook.d.ts +1 -1
- package/dist/components/icons/facebook.js +11 -19
- package/dist/components/icons/figma.d.ts +1 -1
- package/dist/components/icons/figma.js +12 -34
- package/dist/components/icons/github.d.ts +1 -1
- package/dist/components/icons/github.js +11 -16
- package/dist/components/icons/gitlab.d.ts +1 -1
- package/dist/components/icons/gitlab.js +9 -30
- package/dist/components/icons/google.d.ts +1 -1
- package/dist/components/icons/google.js +9 -39
- package/dist/components/icons/huggingface.d.ts +1 -1
- package/dist/components/icons/huggingface.js +9 -38
- package/dist/components/icons/index.d.ts +35 -35
- package/dist/components/icons/index.js +35 -35
- package/dist/components/icons/kakao.d.ts +1 -1
- package/dist/components/icons/kakao.js +11 -16
- package/dist/components/icons/kick.d.ts +1 -1
- package/dist/components/icons/kick.js +11 -20
- package/dist/components/icons/line.d.ts +1 -1
- package/dist/components/icons/line.js +9 -16
- package/dist/components/icons/linear.d.ts +1 -1
- package/dist/components/icons/linear.js +9 -16
- package/dist/components/icons/linkedin.d.ts +1 -1
- package/dist/components/icons/linkedin.js +9 -33
- package/dist/components/icons/microsoft.d.ts +1 -1
- package/dist/components/icons/microsoft.js +9 -30
- package/dist/components/icons/naver.d.ts +1 -1
- package/dist/components/icons/naver.js +9 -16
- package/dist/components/icons/notion.d.ts +1 -1
- package/dist/components/icons/notion.js +9 -16
- package/dist/components/icons/paybin.d.ts +1 -1
- package/dist/components/icons/paybin.js +8 -32
- package/dist/components/icons/paypal.d.ts +1 -1
- package/dist/components/icons/paypal.js +9 -30
- package/dist/components/icons/polar.d.ts +1 -1
- package/dist/components/icons/polar.js +9 -24
- package/dist/components/icons/railway.d.ts +1 -1
- package/dist/components/icons/railway.js +9 -16
- package/dist/components/icons/reddit.d.ts +1 -1
- package/dist/components/icons/reddit.js +9 -21
- package/dist/components/icons/roblox.d.ts +1 -1
- package/dist/components/icons/roblox.js +12 -17
- package/dist/components/icons/salesforce.d.ts +1 -1
- package/dist/components/icons/salesforce.js +9 -16
- package/dist/components/icons/slack.d.ts +1 -1
- package/dist/components/icons/slack.js +9 -30
- package/dist/components/icons/spotify.d.ts +1 -1
- package/dist/components/icons/spotify.js +9 -16
- package/dist/components/icons/tiktok.d.ts +1 -1
- package/dist/components/icons/tiktok.js +10 -23
- package/dist/components/icons/twitch.d.ts +1 -1
- package/dist/components/icons/twitch.js +12 -43
- package/dist/components/icons/vercel.d.ts +1 -1
- package/dist/components/icons/vercel.js +9 -16
- package/dist/components/icons/vk.d.ts +1 -1
- package/dist/components/icons/vk.js +9 -16
- package/dist/components/icons/wechat.d.ts +1 -1
- package/dist/components/icons/wechat.js +9 -16
- package/dist/components/icons/x.d.ts +1 -1
- package/dist/components/icons/x.js +9 -16
- package/dist/components/icons/zoom.d.ts +1 -1
- package/dist/components/icons/zoom.js +11 -69
- package/dist/components/mutation-invalidator.d.ts +1 -0
- package/dist/components/mutation-invalidator.js +31 -0
- package/dist/components/settings/account/theme-preview.js +7 -286
- package/dist/email.d.ts +1 -1
- package/dist/email.js +1 -11
- package/dist/hooks/auth/use-authenticate.d.ts +3 -3
- package/dist/hooks/auth/use-authenticate.js +28 -22
- package/dist/hooks/auth/use-user.d.ts +34 -34
- package/dist/hooks/auth/use-user.js +14 -10
- package/dist/hooks/use-auth-mutation.d.ts +4 -4
- package/dist/hooks/use-auth-mutation.js +18 -10
- package/dist/hooks/use-auth-plugin.d.ts +1 -1
- package/dist/hooks/use-auth-plugin.js +26 -8
- package/dist/hooks/use-auth-query.d.ts +3 -3
- package/dist/hooks/use-auth-query.js +20 -14
- package/dist/index.d.ts +48 -45
- package/dist/index.js +47 -79
- package/dist/lib/auth-client.d.ts +7 -4
- package/dist/lib/auth-client.js +1 -0
- package/dist/lib/auth-plugin.d.ts +19 -3
- package/dist/lib/auth-plugin.js +1 -0
- package/dist/lib/auth-server.d.ts +10 -3
- package/dist/lib/auth-server.js +1 -0
- package/dist/lib/provider-icons.d.ts +2 -2
- package/dist/lib/provider-icons.js +47 -75
- package/dist/lib/settings-tab.d.ts +19 -0
- package/dist/lib/settings-tab.js +1 -0
- package/dist/lib/utils.d.ts +1 -1
- package/dist/lib/utils.js +4 -7
- package/dist/mutations/api-key/create-api-key-mutation.d.ts +9 -7
- package/dist/mutations/api-key/create-api-key-mutation.js +37 -27
- package/dist/mutations/api-key/delete-api-key-mutation.d.ts +10 -6
- package/dist/mutations/api-key/delete-api-key-mutation.js +37 -27
- package/dist/mutations/auth/request-password-reset-mutation.d.ts +4 -4
- package/dist/mutations/auth/request-password-reset-mutation.js +31 -22
- package/dist/mutations/auth/reset-password-mutation.d.ts +4 -4
- package/dist/mutations/auth/reset-password-mutation.js +32 -22
- package/dist/mutations/auth/send-verification-email-mutation.d.ts +4 -4
- package/dist/mutations/auth/send-verification-email-mutation.js +31 -22
- package/dist/mutations/auth/sign-in-email-mutation.d.ts +10 -10
- package/dist/mutations/auth/sign-in-email-mutation.js +38 -27
- package/dist/mutations/auth/sign-in-social-mutation.d.ts +6 -6
- package/dist/mutations/auth/sign-in-social-mutation.js +36 -22
- package/dist/mutations/auth/sign-out-mutation.d.ts +9 -7
- package/dist/mutations/auth/sign-out-mutation.js +39 -26
- package/dist/mutations/auth/sign-up-email-mutation.d.ts +12 -12
- package/dist/mutations/auth/sign-up-email-mutation.js +34 -27
- package/dist/mutations/auth-mutation-options.d.ts +2 -2
- package/dist/mutations/auth-mutation-options.js +22 -18
- package/dist/mutations/magic-link/sign-in-magic-link-mutation.d.ts +4 -4
- package/dist/mutations/magic-link/sign-in-magic-link-mutation.js +31 -22
- package/dist/mutations/multi-session/revoke-multi-session-mutation.d.ts +8 -8
- package/dist/mutations/multi-session/revoke-multi-session-mutation.js +37 -27
- package/dist/mutations/multi-session/set-active-session-mutation.d.ts +8 -9
- package/dist/mutations/multi-session/set-active-session-mutation.js +38 -29
- package/dist/mutations/organization/accept-invitation-mutation.d.ts +43 -0
- package/dist/mutations/organization/accept-invitation-mutation.js +32 -0
- package/dist/mutations/organization/cancel-invitation-mutation.d.ts +25 -0
- package/dist/mutations/organization/cancel-invitation-mutation.js +28 -0
- package/dist/mutations/organization/check-slug-mutation.d.ts +21 -0
- package/dist/mutations/organization/check-slug-mutation.js +30 -0
- package/dist/mutations/organization/create-organization-mutation.d.ts +39 -0
- package/dist/mutations/organization/create-organization-mutation.js +29 -0
- package/dist/mutations/organization/delete-organization-mutation.d.ts +21 -0
- package/dist/mutations/organization/delete-organization-mutation.js +29 -0
- package/dist/mutations/organization/index.d.ts +12 -0
- package/dist/mutations/organization/index.js +12 -0
- package/dist/mutations/organization/invite-member-mutation.d.ts +43 -0
- package/dist/mutations/organization/invite-member-mutation.js +35 -0
- package/dist/mutations/organization/leave-organization-mutation.d.ts +65 -0
- package/dist/mutations/organization/leave-organization-mutation.js +32 -0
- package/dist/mutations/organization/reject-invitation-mutation.d.ts +31 -0
- package/dist/mutations/organization/reject-invitation-mutation.js +25 -0
- package/dist/mutations/organization/remove-member-mutation.d.ts +35 -0
- package/dist/mutations/organization/remove-member-mutation.js +29 -0
- package/dist/mutations/organization/set-active-organization-mutation.d.ts +71 -0
- package/dist/mutations/organization/set-active-organization-mutation.js +72 -0
- package/dist/mutations/organization/update-member-role-mutation.d.ts +31 -0
- package/dist/mutations/organization/update-member-role-mutation.js +36 -0
- package/dist/mutations/organization/update-organization-mutation.d.ts +21 -0
- package/dist/mutations/organization/update-organization-mutation.js +36 -0
- package/dist/mutations/passkey/add-passkey-mutation.d.ts +16 -16
- package/dist/mutations/passkey/add-passkey-mutation.js +38 -27
- package/dist/mutations/passkey/delete-passkey-mutation.d.ts +8 -8
- package/dist/mutations/passkey/delete-passkey-mutation.js +37 -27
- package/dist/mutations/passkey/sign-in-passkey-mutation.d.ts +24 -24
- package/dist/mutations/passkey/sign-in-passkey-mutation.js +36 -27
- package/dist/mutations/settings/change-email-mutation.d.ts +9 -8
- package/dist/mutations/settings/change-email-mutation.js +35 -27
- package/dist/mutations/settings/change-password-mutation.d.ts +6 -6
- package/dist/mutations/settings/change-password-mutation.js +31 -22
- package/dist/mutations/settings/delete-user-mutation.d.ts +4 -4
- package/dist/mutations/settings/delete-user-mutation.js +31 -22
- package/dist/mutations/settings/link-social-mutation.d.ts +4 -4
- package/dist/mutations/settings/link-social-mutation.js +31 -22
- package/dist/mutations/settings/revoke-session-mutation.d.ts +8 -8
- package/dist/mutations/settings/revoke-session-mutation.js +37 -27
- package/dist/mutations/settings/unlink-account-mutation.d.ts +8 -8
- package/dist/mutations/settings/unlink-account-mutation.js +37 -27
- package/dist/mutations/settings/update-user-mutation.d.ts +8 -8
- package/dist/mutations/settings/update-user-mutation.js +34 -33
- package/dist/mutations/username/is-username-available-mutation.d.ts +4 -4
- package/dist/mutations/username/is-username-available-mutation.js +34 -22
- package/dist/mutations/username/sign-in-username-mutation.d.ts +10 -10
- package/dist/mutations/username/sign-in-username-mutation.js +35 -27
- package/dist/plugins/captcha-plugin.d.ts +3 -3
- package/dist/plugins/captcha-plugin.js +31 -26
- package/dist/plugins.d.ts +1 -1
- package/dist/plugins.js +1 -2
- package/dist/queries/api-key/list-api-keys-query.d.ts +20 -11
- package/dist/queries/api-key/list-api-keys-query.js +52 -29
- package/dist/queries/auth/session-query.d.ts +6 -6
- package/dist/queries/auth/session-query.js +70 -28
- package/dist/queries/auth-query-options.d.ts +2 -2
- package/dist/queries/auth-query-options.js +20 -16
- package/dist/queries/multi-session/list-device-sessions-query.d.ts +8 -8
- package/dist/queries/multi-session/list-device-sessions-query.js +83 -29
- package/dist/queries/organization/active-organization-query.d.ts +39 -0
- package/dist/queries/organization/active-organization-query.js +37 -0
- package/dist/queries/organization/full-organization-query.d.ts +37 -0
- package/dist/queries/organization/full-organization-query.js +31 -0
- package/dist/queries/organization/has-permission-query.d.ts +21 -0
- package/dist/queries/organization/has-permission-query.js +38 -0
- package/dist/queries/organization/index.d.ts +7 -0
- package/dist/queries/organization/index.js +7 -0
- package/dist/queries/organization/list-invitations-query.d.ts +29 -0
- package/dist/queries/organization/list-invitations-query.js +37 -0
- package/dist/queries/organization/list-members-query.d.ts +61 -0
- package/dist/queries/organization/list-members-query.js +37 -0
- package/dist/queries/organization/list-organizations-query.d.ts +22 -0
- package/dist/queries/organization/list-organizations-query.js +31 -0
- package/dist/queries/organization/list-user-invitations-query.d.ts +29 -0
- package/dist/queries/organization/list-user-invitations-query.js +31 -0
- package/dist/queries/passkey/list-passkeys-query.d.ts +8 -8
- package/dist/queries/passkey/list-passkeys-query.js +81 -29
- package/dist/queries/settings/account-info-query.d.ts +6 -6
- package/dist/queries/settings/account-info-query.js +85 -29
- package/dist/queries/settings/list-accounts-query.d.ts +6 -6
- package/dist/queries/settings/list-accounts-query.js +83 -29
- package/dist/queries/settings/list-sessions-query.d.ts +6 -6
- package/dist/queries/settings/list-sessions-query.js +81 -29
- package/dist/server/queries/api-key/list-api-keys-query.d.ts +83 -0
- package/dist/server/queries/api-key/list-api-keys-query.js +49 -0
- package/dist/server/queries/auth/session-query.d.ts +5 -5
- package/dist/server/queries/auth/session-query.js +50 -12
- package/dist/server/queries/multi-session/list-device-sessions-query.d.ts +7 -7
- package/dist/server/queries/multi-session/list-device-sessions-query.js +53 -11
- package/dist/server/queries/organization/active-organization-query.d.ts +61 -0
- package/dist/server/queries/organization/active-organization-query.js +25 -0
- package/dist/server/queries/organization/full-organization-query.d.ts +42 -0
- package/dist/server/queries/organization/full-organization-query.js +21 -0
- package/dist/server/queries/organization/has-permission-query.d.ts +66 -0
- package/dist/server/queries/organization/has-permission-query.js +23 -0
- package/dist/server/queries/organization/list-invitations-query.d.ts +34 -0
- package/dist/server/queries/organization/list-invitations-query.js +21 -0
- package/dist/server/queries/organization/list-members-query.d.ts +66 -0
- package/dist/server/queries/organization/list-members-query.js +21 -0
- package/dist/server/queries/organization/list-organizations-query.d.ts +27 -0
- package/dist/server/queries/organization/list-organizations-query.js +21 -0
- package/dist/server/queries/organization/list-user-invitations-query.d.ts +34 -0
- package/dist/server/queries/organization/list-user-invitations-query.js +21 -0
- package/dist/server/queries/passkey/list-passkeys-query.d.ts +7 -7
- package/dist/server/queries/passkey/list-passkeys-query.js +53 -11
- package/dist/server/queries/settings/account-info-query.d.ts +5 -5
- package/dist/server/queries/settings/account-info-query.js +53 -11
- package/dist/server/queries/settings/list-accounts-query.d.ts +5 -5
- package/dist/server/queries/settings/list-accounts-query.js +53 -11
- package/dist/server/queries/settings/list-sessions-query.d.ts +5 -5
- package/dist/server/queries/settings/list-sessions-query.js +53 -11
- package/dist/server.d.ts +15 -7
- package/dist/server.js +14 -7
- package/package.json +20 -17
- package/src/components/auth/auth-context.tsx +7 -0
- package/src/components/auth/auth-provider.tsx +19 -31
- package/src/components/auth/email/email-localization.tsx +5 -3
- package/src/components/auth/email/index.ts +1 -0
- package/src/components/auth/email/organization-invitation.tsx +454 -0
- package/src/components/mutation-invalidator.tsx +67 -0
- package/src/index.ts +3 -0
- package/src/lib/auth-client.ts +7 -0
- package/src/lib/auth-plugin.ts +17 -0
- package/src/lib/auth-server.ts +17 -1
- package/src/lib/settings-tab.ts +21 -0
- package/src/mutations/api-key/create-api-key-mutation.ts +34 -19
- package/src/mutations/api-key/delete-api-key-mutation.ts +36 -19
- package/src/mutations/auth/sign-in-email-mutation.ts +18 -22
- package/src/mutations/auth/sign-out-mutation.ts +19 -13
- package/src/mutations/auth/sign-up-email-mutation.ts +18 -22
- package/src/mutations/multi-session/revoke-multi-session-mutation.ts +31 -20
- package/src/mutations/multi-session/set-active-session-mutation.ts +25 -44
- package/src/mutations/organization/accept-invitation-mutation.ts +71 -0
- package/src/mutations/organization/cancel-invitation-mutation.ts +67 -0
- package/src/mutations/organization/check-slug-mutation.ts +55 -0
- package/src/mutations/organization/create-organization-mutation.ts +71 -0
- package/src/mutations/organization/delete-organization-mutation.ts +71 -0
- package/src/mutations/organization/index.ts +12 -0
- package/src/mutations/organization/invite-member-mutation.ts +81 -0
- package/src/mutations/organization/leave-organization-mutation.ts +74 -0
- package/src/mutations/organization/reject-invitation-mutation.ts +64 -0
- package/src/mutations/organization/remove-member-mutation.ts +67 -0
- package/src/mutations/organization/set-active-organization-mutation.ts +142 -0
- package/src/mutations/organization/update-member-role-mutation.ts +81 -0
- package/src/mutations/organization/update-organization-mutation.ts +84 -0
- package/src/mutations/passkey/add-passkey-mutation.ts +28 -17
- package/src/mutations/passkey/delete-passkey-mutation.ts +27 -17
- package/src/mutations/passkey/sign-in-passkey-mutation.ts +18 -21
- package/src/mutations/settings/change-email-mutation.ts +22 -18
- package/src/mutations/settings/delete-user-mutation.ts +2 -2
- package/src/mutations/settings/revoke-session-mutation.ts +24 -19
- package/src/mutations/settings/unlink-account-mutation.ts +24 -17
- package/src/mutations/settings/update-user-mutation.ts +18 -30
- package/src/mutations/username/is-username-available-mutation.ts +2 -2
- package/src/mutations/username/sign-in-username-mutation.ts +20 -23
- package/src/queries/api-key/list-api-keys-query.ts +20 -8
- package/src/queries/multi-session/list-device-sessions-query.ts +2 -2
- package/src/queries/organization/active-organization-query.ts +140 -0
- package/src/queries/organization/full-organization-query.ts +113 -0
- package/src/queries/organization/has-permission-query.ts +124 -0
- package/src/queries/organization/index.ts +7 -0
- package/src/queries/organization/list-invitations-query.ts +133 -0
- package/src/queries/organization/list-members-query.ts +133 -0
- package/src/queries/organization/list-organizations-query.ts +122 -0
- package/src/queries/organization/list-user-invitations-query.ts +122 -0
- package/src/queries/passkey/list-passkeys-query.ts +2 -2
- package/src/server/queries/api-key/list-api-keys-query.ts +94 -0
- package/src/server/queries/multi-session/list-device-sessions-query.ts +2 -2
- package/src/server/queries/organization/active-organization-query.ts +92 -0
- package/src/server/queries/organization/full-organization-query.ts +64 -0
- package/src/server/queries/organization/has-permission-query.ts +66 -0
- package/src/server/queries/organization/list-invitations-query.ts +81 -0
- package/src/server/queries/organization/list-members-query.ts +75 -0
- package/src/server/queries/organization/list-organizations-query.ts +67 -0
- package/src/server/queries/organization/list-user-invitations-query.ts +68 -0
- package/src/server/queries/passkey/list-passkeys-query.ts +2 -2
- package/src/server.ts +8 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { type QueryClient } from "@tanstack/react-query";
|
|
2
|
+
import type { BetterFetchError } from "better-auth/react";
|
|
3
|
+
import type { AuthClient } from "../../lib/auth-client";
|
|
3
4
|
export type SignInEmailParams<TAuthClient extends AuthClient> = Parameters<TAuthClient["signIn"]["email"]>[0];
|
|
4
|
-
export type SignInEmailOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signInEmailOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
|
|
5
|
+
export type SignInEmailOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signInEmailOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
|
|
5
6
|
/**
|
|
6
7
|
* Mutation options factory for email/password sign-in.
|
|
7
8
|
*
|
|
@@ -11,7 +12,7 @@ export type SignInEmailOptions<TAuthClient extends AuthClient> = Omit<ReturnType
|
|
|
11
12
|
*
|
|
12
13
|
* @param authClient - The Better Auth client.
|
|
13
14
|
*/
|
|
14
|
-
export declare function signInEmailOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import(
|
|
15
|
+
export declare function signInEmailOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<Omit<{
|
|
15
16
|
redirect: boolean;
|
|
16
17
|
token: string;
|
|
17
18
|
url?: string | undefined;
|
|
@@ -25,7 +26,7 @@ export declare function signInEmailOptions<TAuthClient extends AuthClient>(authC
|
|
|
25
26
|
image?: string | null | undefined | undefined;
|
|
26
27
|
};
|
|
27
28
|
}, "user"> & {
|
|
28
|
-
user: import(
|
|
29
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
29
30
|
id: string;
|
|
30
31
|
createdAt: Date;
|
|
31
32
|
updatedAt: Date;
|
|
@@ -38,14 +39,13 @@ export declare function signInEmailOptions<TAuthClient extends AuthClient>(authC
|
|
|
38
39
|
/**
|
|
39
40
|
* Create a mutation for email/password sign-in.
|
|
40
41
|
*
|
|
41
|
-
*
|
|
42
|
-
* the new session is refetched
|
|
43
|
-
* such as `onSuccess`, `onError`, and `retry`.
|
|
42
|
+
* On success, `MutationInvalidator` awaits invalidation of the session
|
|
43
|
+
* query so the new session is refetched (see `meta.awaits`).
|
|
44
44
|
*
|
|
45
45
|
* @param authClient - The Better Auth client.
|
|
46
46
|
* @param options - React Query options forwarded to `useMutation`.
|
|
47
47
|
*/
|
|
48
|
-
export declare function useSignInEmail<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignInEmailOptions<TAuthClient
|
|
48
|
+
export declare function useSignInEmail<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignInEmailOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<Omit<{
|
|
49
49
|
redirect: boolean;
|
|
50
50
|
token: string;
|
|
51
51
|
url?: string | undefined;
|
|
@@ -59,7 +59,7 @@ export declare function useSignInEmail<TAuthClient extends AuthClient>(authClien
|
|
|
59
59
|
image?: string | null | undefined | undefined;
|
|
60
60
|
};
|
|
61
61
|
}, "user"> & {
|
|
62
|
-
user: import(
|
|
62
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
63
63
|
id: string;
|
|
64
64
|
createdAt: Date;
|
|
65
65
|
updatedAt: Date;
|
|
@@ -1,29 +1,40 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { authMutationKeys, authQueryKeys } from "@better-auth-ui/core";
|
|
2
|
+
import { mutationOptions, useMutation } from "@tanstack/react-query";
|
|
3
|
+
/**
|
|
4
|
+
* Mutation options factory for email/password sign-in.
|
|
5
|
+
*
|
|
6
|
+
* The returned `mutationKey` (`authMutationKeys.signIn.email`) is stable and
|
|
7
|
+
* can be passed to `useIsMutating` or matched inside a global
|
|
8
|
+
* `MutationCache` observer for toast handling.
|
|
9
|
+
*
|
|
10
|
+
* @param authClient - The Better Auth client.
|
|
11
|
+
*/
|
|
12
|
+
export function signInEmailOptions(authClient) {
|
|
13
|
+
const mutationKey = authMutationKeys.signIn.email;
|
|
14
|
+
const mutationFn = (params) => authClient.signIn.email({
|
|
15
|
+
...params,
|
|
16
|
+
fetchOptions: { ...params?.fetchOptions, throw: true }
|
|
17
|
+
});
|
|
18
|
+
return mutationOptions({
|
|
19
|
+
mutationKey,
|
|
20
|
+
mutationFn
|
|
21
|
+
});
|
|
17
22
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Create a mutation for email/password sign-in.
|
|
25
|
+
*
|
|
26
|
+
* On success, `MutationInvalidator` awaits invalidation of the session
|
|
27
|
+
* query so the new session is refetched (see `meta.awaits`).
|
|
28
|
+
*
|
|
29
|
+
* @param authClient - The Better Auth client.
|
|
30
|
+
* @param options - React Query options forwarded to `useMutation`.
|
|
31
|
+
*/
|
|
32
|
+
export function useSignInEmail(authClient, options, queryClient) {
|
|
33
|
+
return useMutation({
|
|
34
|
+
...signInEmailOptions(authClient),
|
|
35
|
+
...options,
|
|
36
|
+
meta: {
|
|
37
|
+
awaits: [authQueryKeys.session]
|
|
38
|
+
}
|
|
39
|
+
}, queryClient);
|
|
27
40
|
}
|
|
28
|
-
//#endregion
|
|
29
|
-
export { a as signInEmailOptions, o as useSignInEmail };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BetterFetchError } from
|
|
2
|
-
import { AuthClient } from
|
|
1
|
+
import type { BetterFetchError } from "better-auth/react";
|
|
2
|
+
import type { AuthClient } from "../../lib/auth-client";
|
|
3
3
|
export type SignInSocialParams<TAuthClient extends AuthClient> = Parameters<TAuthClient["signIn"]["social"]>[0];
|
|
4
4
|
export type SignInSocialOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signInSocialOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
|
|
5
5
|
/**
|
|
@@ -11,7 +11,7 @@ export type SignInSocialOptions<TAuthClient extends AuthClient> = Omit<ReturnTyp
|
|
|
11
11
|
*
|
|
12
12
|
* @param authClient - The Better Auth client.
|
|
13
13
|
*/
|
|
14
|
-
export declare function signInSocialOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import(
|
|
14
|
+
export declare function signInSocialOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
|
|
15
15
|
redirect: boolean;
|
|
16
16
|
url: string;
|
|
17
17
|
} | (Omit<{
|
|
@@ -28,7 +28,7 @@ export declare function signInSocialOptions<TAuthClient extends AuthClient>(auth
|
|
|
28
28
|
image?: string | null | undefined | undefined;
|
|
29
29
|
};
|
|
30
30
|
}, "user"> & {
|
|
31
|
-
user: import(
|
|
31
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
32
32
|
id: string;
|
|
33
33
|
createdAt: Date;
|
|
34
34
|
updatedAt: Date;
|
|
@@ -48,7 +48,7 @@ export declare function signInSocialOptions<TAuthClient extends AuthClient>(auth
|
|
|
48
48
|
* @param authClient - The Better Auth client.
|
|
49
49
|
* @param options - React Query options forwarded to `useMutation`.
|
|
50
50
|
*/
|
|
51
|
-
export declare function useSignInSocial<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignInSocialOptions<TAuthClient>): import(
|
|
51
|
+
export declare function useSignInSocial<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignInSocialOptions<TAuthClient>): import("@tanstack/react-query").UseMutationResult<{
|
|
52
52
|
redirect: boolean;
|
|
53
53
|
url: string;
|
|
54
54
|
} | (Omit<{
|
|
@@ -65,7 +65,7 @@ export declare function useSignInSocial<TAuthClient extends AuthClient>(authClie
|
|
|
65
65
|
image?: string | null | undefined | undefined;
|
|
66
66
|
};
|
|
67
67
|
}, "user"> & {
|
|
68
|
-
user: import(
|
|
68
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
69
69
|
id: string;
|
|
70
70
|
createdAt: Date;
|
|
71
71
|
updatedAt: Date;
|
|
@@ -1,24 +1,38 @@
|
|
|
1
|
-
import { authMutationKeys
|
|
2
|
-
import { mutationOptions
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { authMutationKeys } from "@better-auth-ui/core";
|
|
2
|
+
import { mutationOptions, useMutation } from "@tanstack/react-query";
|
|
3
|
+
/**
|
|
4
|
+
* Mutation options factory for social sign-in.
|
|
5
|
+
*
|
|
6
|
+
* The returned `mutationKey` (`["auth", "signIn", "social"]`) is stable and
|
|
7
|
+
* can be passed to `useIsMutating` or matched inside a global
|
|
8
|
+
* `MutationCache` observer for toast handling.
|
|
9
|
+
*
|
|
10
|
+
* @param authClient - The Better Auth client.
|
|
11
|
+
*/
|
|
12
|
+
export function signInSocialOptions(authClient) {
|
|
13
|
+
const mutationKey = authMutationKeys.signIn.social;
|
|
14
|
+
const mutationFn = (params) => authClient.signIn.social({
|
|
15
|
+
...params,
|
|
16
|
+
fetchOptions: { ...params?.fetchOptions, throw: true }
|
|
17
|
+
});
|
|
18
|
+
return mutationOptions({
|
|
19
|
+
mutationKey,
|
|
20
|
+
mutationFn
|
|
21
|
+
});
|
|
16
22
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Create a mutation for social sign-in.
|
|
25
|
+
*
|
|
26
|
+
* Wraps `authClient.signIn.social` to initiate a provider redirect and
|
|
27
|
+
* forwards React Query mutation options such as `onSuccess`, `onError`,
|
|
28
|
+
* and `retry`.
|
|
29
|
+
*
|
|
30
|
+
* @param authClient - The Better Auth client.
|
|
31
|
+
* @param options - React Query options forwarded to `useMutation`.
|
|
32
|
+
*/
|
|
33
|
+
export function useSignInSocial(authClient, options) {
|
|
34
|
+
return useMutation({
|
|
35
|
+
...signInSocialOptions(authClient),
|
|
36
|
+
...options
|
|
37
|
+
});
|
|
22
38
|
}
|
|
23
|
-
//#endregion
|
|
24
|
-
export { r as signInSocialOptions, i as useSignInSocial };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { type QueryClient } from "@tanstack/react-query";
|
|
2
|
+
import type { BetterFetchError } from "better-auth/react";
|
|
3
|
+
import type { AuthClient } from "../../lib/auth-client";
|
|
3
4
|
export type SignOutParams<TAuthClient extends AuthClient> = Parameters<TAuthClient["signOut"]>[0];
|
|
4
5
|
export type SignOutOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signOutOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
|
|
5
6
|
/**
|
|
@@ -7,19 +8,20 @@ export type SignOutOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typ
|
|
|
7
8
|
*
|
|
8
9
|
* @param authClient - The Better Auth client.
|
|
9
10
|
*/
|
|
10
|
-
export declare function signOutOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import(
|
|
11
|
+
export declare function signOutOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
|
|
11
12
|
success: boolean;
|
|
12
13
|
}, BetterFetchError, void | SignOutParams<TAuthClient> | undefined, unknown>, "mutationKey">;
|
|
13
14
|
/**
|
|
14
15
|
* Create a mutation for signing the current user out.
|
|
15
16
|
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* On success, removes every cached auth query so no stale data leaks across
|
|
18
|
+
* accounts. Sign-out uses a direct `removeQueries` call (rather than the
|
|
19
|
+
* `meta.awaits` / `meta.invalidates` pattern) because the goal is to drop
|
|
20
|
+
* cache entries entirely, not to refetch them.
|
|
19
21
|
*
|
|
20
22
|
* @param authClient - The Better Auth client.
|
|
21
23
|
* @param options - React Query options forwarded to `useMutation`.
|
|
22
24
|
*/
|
|
23
|
-
export declare function useSignOut<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignOutOptions<TAuthClient
|
|
25
|
+
export declare function useSignOut<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignOutOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
|
|
24
26
|
success: boolean;
|
|
25
27
|
}, BetterFetchError, void | SignOutParams<TAuthClient> | undefined, unknown>;
|
|
@@ -1,28 +1,41 @@
|
|
|
1
|
-
import { authMutationKeys
|
|
2
|
-
import { mutationOptions
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { authMutationKeys, authQueryKeys } from "@better-auth-ui/core";
|
|
2
|
+
import { mutationOptions, useMutation, useQueryClient } from "@tanstack/react-query";
|
|
3
|
+
/**
|
|
4
|
+
* Mutation options factory for signing out.
|
|
5
|
+
*
|
|
6
|
+
* @param authClient - The Better Auth client.
|
|
7
|
+
*/
|
|
8
|
+
export function signOutOptions(authClient) {
|
|
9
|
+
const mutationKey = authMutationKeys.signOut;
|
|
10
|
+
// biome-ignore lint/suspicious/noConfusingVoidType: void allows no-arg mutate
|
|
11
|
+
const mutationFn = (params) => authClient.signOut({
|
|
12
|
+
...(params ?? {}),
|
|
13
|
+
fetchOptions: { ...params?.fetchOptions, throw: true }
|
|
14
|
+
});
|
|
15
|
+
return mutationOptions({
|
|
16
|
+
mutationKey,
|
|
17
|
+
mutationFn
|
|
18
|
+
});
|
|
16
19
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Create a mutation for signing the current user out.
|
|
22
|
+
*
|
|
23
|
+
* On success, removes every cached auth query so no stale data leaks across
|
|
24
|
+
* accounts. Sign-out uses a direct `removeQueries` call (rather than the
|
|
25
|
+
* `meta.awaits` / `meta.invalidates` pattern) because the goal is to drop
|
|
26
|
+
* cache entries entirely, not to refetch them.
|
|
27
|
+
*
|
|
28
|
+
* @param authClient - The Better Auth client.
|
|
29
|
+
* @param options - React Query options forwarded to `useMutation`.
|
|
30
|
+
*/
|
|
31
|
+
export function useSignOut(authClient, options, queryClient) {
|
|
32
|
+
const defaultQueryClient = useQueryClient(queryClient);
|
|
33
|
+
return useMutation({
|
|
34
|
+
...signOutOptions(authClient),
|
|
35
|
+
...options,
|
|
36
|
+
onSuccess: async (...args) => {
|
|
37
|
+
defaultQueryClient.removeQueries({ queryKey: authQueryKeys.all });
|
|
38
|
+
await options?.onSuccess?.(...args);
|
|
39
|
+
}
|
|
40
|
+
}, queryClient);
|
|
26
41
|
}
|
|
27
|
-
//#endregion
|
|
28
|
-
export { a as signOutOptions, o as useSignOut };
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { type QueryClient } from "@tanstack/react-query";
|
|
2
|
+
import type { BetterFetchError } from "better-auth/react";
|
|
3
|
+
import type { AuthClient } from "../../lib/auth-client";
|
|
3
4
|
export type SignUpEmailParams<TAuthClient extends AuthClient> = Parameters<TAuthClient["signUp"]["email"]>[0];
|
|
4
|
-
export type SignUpEmailOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signUpEmailOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
|
|
5
|
+
export type SignUpEmailOptions<TAuthClient extends AuthClient> = Omit<ReturnType<typeof signUpEmailOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
|
|
5
6
|
/**
|
|
6
7
|
* Mutation options factory for email/password sign-up.
|
|
7
8
|
*
|
|
8
9
|
* @param authClient - The Better Auth client.
|
|
9
10
|
*/
|
|
10
|
-
export declare function signUpEmailOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import(
|
|
11
|
+
export declare function signUpEmailOptions<TAuthClient extends AuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<(Omit<{
|
|
11
12
|
token: null;
|
|
12
13
|
user: {
|
|
13
14
|
id: string;
|
|
@@ -19,7 +20,7 @@ export declare function signUpEmailOptions<TAuthClient extends AuthClient>(authC
|
|
|
19
20
|
image?: string | null | undefined | undefined;
|
|
20
21
|
};
|
|
21
22
|
}, "user"> & {
|
|
22
|
-
user: import(
|
|
23
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
23
24
|
id: string;
|
|
24
25
|
createdAt: Date;
|
|
25
26
|
updatedAt: Date;
|
|
@@ -40,7 +41,7 @@ export declare function signUpEmailOptions<TAuthClient extends AuthClient>(authC
|
|
|
40
41
|
image?: string | null | undefined | undefined;
|
|
41
42
|
};
|
|
42
43
|
}, "user"> & {
|
|
43
|
-
user: import(
|
|
44
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
44
45
|
id: string;
|
|
45
46
|
createdAt: Date;
|
|
46
47
|
updatedAt: Date;
|
|
@@ -53,14 +54,13 @@ export declare function signUpEmailOptions<TAuthClient extends AuthClient>(authC
|
|
|
53
54
|
/**
|
|
54
55
|
* Create a mutation for email/password sign-up.
|
|
55
56
|
*
|
|
56
|
-
*
|
|
57
|
-
* the new session is refetched
|
|
58
|
-
* such as `onSuccess`, `onError`, and `retry`.
|
|
57
|
+
* On success, `MutationInvalidator` awaits invalidation of the session
|
|
58
|
+
* query so the new session is refetched (see `meta.awaits`).
|
|
59
59
|
*
|
|
60
60
|
* @param authClient - The Better Auth client.
|
|
61
61
|
* @param options - React Query options forwarded to `useMutation`.
|
|
62
62
|
*/
|
|
63
|
-
export declare function useSignUpEmail<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignUpEmailOptions<TAuthClient
|
|
63
|
+
export declare function useSignUpEmail<TAuthClient extends AuthClient>(authClient: TAuthClient, options?: SignUpEmailOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<(Omit<{
|
|
64
64
|
token: null;
|
|
65
65
|
user: {
|
|
66
66
|
id: string;
|
|
@@ -72,7 +72,7 @@ export declare function useSignUpEmail<TAuthClient extends AuthClient>(authClien
|
|
|
72
72
|
image?: string | null | undefined | undefined;
|
|
73
73
|
};
|
|
74
74
|
}, "user"> & {
|
|
75
|
-
user: import(
|
|
75
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
76
76
|
id: string;
|
|
77
77
|
createdAt: Date;
|
|
78
78
|
updatedAt: Date;
|
|
@@ -93,7 +93,7 @@ export declare function useSignUpEmail<TAuthClient extends AuthClient>(authClien
|
|
|
93
93
|
image?: string | null | undefined | undefined;
|
|
94
94
|
};
|
|
95
95
|
}, "user"> & {
|
|
96
|
-
user: import(
|
|
96
|
+
user: import("better-auth").StripEmptyObjects<{
|
|
97
97
|
id: string;
|
|
98
98
|
createdAt: Date;
|
|
99
99
|
updatedAt: Date;
|
|
@@ -1,29 +1,36 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { authMutationKeys, authQueryKeys } from "@better-auth-ui/core";
|
|
2
|
+
import { mutationOptions, useMutation } from "@tanstack/react-query";
|
|
3
|
+
/**
|
|
4
|
+
* Mutation options factory for email/password sign-up.
|
|
5
|
+
*
|
|
6
|
+
* @param authClient - The Better Auth client.
|
|
7
|
+
*/
|
|
8
|
+
export function signUpEmailOptions(authClient) {
|
|
9
|
+
const mutationKey = authMutationKeys.signUp.email;
|
|
10
|
+
const mutationFn = (params) => authClient.signUp.email({
|
|
11
|
+
...params,
|
|
12
|
+
fetchOptions: { ...params?.fetchOptions, throw: true }
|
|
13
|
+
});
|
|
14
|
+
return mutationOptions({
|
|
15
|
+
mutationKey,
|
|
16
|
+
mutationFn
|
|
17
|
+
});
|
|
17
18
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Create a mutation for email/password sign-up.
|
|
21
|
+
*
|
|
22
|
+
* On success, `MutationInvalidator` awaits invalidation of the session
|
|
23
|
+
* query so the new session is refetched (see `meta.awaits`).
|
|
24
|
+
*
|
|
25
|
+
* @param authClient - The Better Auth client.
|
|
26
|
+
* @param options - React Query options forwarded to `useMutation`.
|
|
27
|
+
*/
|
|
28
|
+
export function useSignUpEmail(authClient, options, queryClient) {
|
|
29
|
+
return useMutation({
|
|
30
|
+
...signUpEmailOptions(authClient),
|
|
31
|
+
...options,
|
|
32
|
+
meta: {
|
|
33
|
+
awaits: [authQueryKeys.session]
|
|
34
|
+
}
|
|
35
|
+
}, queryClient);
|
|
27
36
|
}
|
|
28
|
-
//#endregion
|
|
29
|
-
export { a as signUpEmailOptions, o as useSignUpEmail };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MutationKey, UseMutationOptions } from
|
|
2
|
-
import { BetterFetchError } from
|
|
1
|
+
import { type MutationKey, type UseMutationOptions } from "@tanstack/react-query";
|
|
2
|
+
import type { BetterFetchError } from "better-auth/client";
|
|
3
3
|
/**
|
|
4
4
|
* Write-style Better Auth client method. Variables are a single object that
|
|
5
5
|
* may carry top-level params plus `fetchOptions` (e.g. `signIn.email` takes
|
|
@@ -1,19 +1,23 @@
|
|
|
1
|
-
import { mutationOptions
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
import { mutationOptions } from "@tanstack/react-query";
|
|
2
|
+
/**
|
|
3
|
+
* Build `mutationOptions` for a write-style Better Auth endpoint.
|
|
4
|
+
*
|
|
5
|
+
* Injects `throw: true` into `fetchOptions` so the promise rejects with a
|
|
6
|
+
* `BetterFetchError` on failure instead of resolving to `{ data, error }`.
|
|
7
|
+
*
|
|
8
|
+
* @param authFn - Better Auth client method (e.g. `authClient.emailOtp.sendVerificationOtp`).
|
|
9
|
+
* @param mutationKey - Stable key for the mutation (used by `useIsMutating`, `MutationCache`, …).
|
|
10
|
+
*/
|
|
11
|
+
export function authMutationOptions(authFn, mutationKey) {
|
|
12
|
+
const mutationFn = (variables) => {
|
|
13
|
+
const vars = (variables ?? {});
|
|
14
|
+
return authFn({
|
|
15
|
+
...vars,
|
|
16
|
+
fetchOptions: { ...vars.fetchOptions, throw: true }
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
return mutationOptions({
|
|
20
|
+
mutationKey,
|
|
21
|
+
mutationFn
|
|
22
|
+
});
|
|
17
23
|
}
|
|
18
|
-
//#endregion
|
|
19
|
-
export { t as authMutationOptions };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BetterFetchError } from
|
|
2
|
-
import { MagicLinkAuthClient } from
|
|
1
|
+
import type { BetterFetchError } from "better-auth/react";
|
|
2
|
+
import type { MagicLinkAuthClient } from "../../lib/auth-client";
|
|
3
3
|
export type SignInMagicLinkParams<TAuthClient extends MagicLinkAuthClient> = Parameters<TAuthClient["signIn"]["magicLink"]>[0];
|
|
4
4
|
export type SignInMagicLinkOptions<TAuthClient extends MagicLinkAuthClient> = Omit<ReturnType<typeof signInMagicLinkOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
|
|
5
5
|
/**
|
|
@@ -7,7 +7,7 @@ export type SignInMagicLinkOptions<TAuthClient extends MagicLinkAuthClient> = Om
|
|
|
7
7
|
*
|
|
8
8
|
* @param authClient - The Better Auth client.
|
|
9
9
|
*/
|
|
10
|
-
export declare function signInMagicLinkOptions<TAuthClient extends MagicLinkAuthClient>(authClient: TAuthClient): import(
|
|
10
|
+
export declare function signInMagicLinkOptions<TAuthClient extends MagicLinkAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
|
|
11
11
|
status: boolean;
|
|
12
12
|
}, BetterFetchError, SignInMagicLinkParams<TAuthClient>, unknown>, "mutationKey">;
|
|
13
13
|
/**
|
|
@@ -19,6 +19,6 @@ export declare function signInMagicLinkOptions<TAuthClient extends MagicLinkAuth
|
|
|
19
19
|
* @param authClient - The Better Auth client with the magic-link plugin.
|
|
20
20
|
* @param options - React Query options forwarded to `useMutation`.
|
|
21
21
|
*/
|
|
22
|
-
export declare function useSignInMagicLink<TAuthClient extends MagicLinkAuthClient>(authClient: TAuthClient, options?: SignInMagicLinkOptions<TAuthClient>): import(
|
|
22
|
+
export declare function useSignInMagicLink<TAuthClient extends MagicLinkAuthClient>(authClient: TAuthClient, options?: SignInMagicLinkOptions<TAuthClient>): import("@tanstack/react-query").UseMutationResult<{
|
|
23
23
|
status: boolean;
|
|
24
24
|
}, BetterFetchError, SignInMagicLinkParams<TAuthClient>, unknown>;
|
|
@@ -1,24 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { magicLinkMutationKeys } from "@better-auth-ui/core/plugins";
|
|
2
|
+
import { mutationOptions, useMutation } from "@tanstack/react-query";
|
|
3
|
+
/**
|
|
4
|
+
* Mutation options factory for magic-link sign-in.
|
|
5
|
+
*
|
|
6
|
+
* @param authClient - The Better Auth client.
|
|
7
|
+
*/
|
|
8
|
+
export function signInMagicLinkOptions(authClient) {
|
|
9
|
+
const mutationKey = magicLinkMutationKeys.signIn;
|
|
10
|
+
const mutationFn = (params) => authClient.signIn.magicLink({
|
|
11
|
+
...params,
|
|
12
|
+
fetchOptions: { ...params?.fetchOptions, throw: true }
|
|
13
|
+
});
|
|
14
|
+
return mutationOptions({
|
|
15
|
+
mutationKey,
|
|
16
|
+
mutationFn
|
|
17
|
+
});
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Create a mutation for requesting a magic-link sign-in email.
|
|
21
|
+
*
|
|
22
|
+
* Wraps `authClient.signIn.magicLink` and forwards React Query mutation
|
|
23
|
+
* options such as `onSuccess`, `onError`, and `retry`.
|
|
24
|
+
*
|
|
25
|
+
* @param authClient - The Better Auth client with the magic-link plugin.
|
|
26
|
+
* @param options - React Query options forwarded to `useMutation`.
|
|
27
|
+
*/
|
|
28
|
+
export function useSignInMagicLink(authClient, options) {
|
|
29
|
+
return useMutation({
|
|
30
|
+
...signInMagicLinkOptions(authClient),
|
|
31
|
+
...options
|
|
32
|
+
});
|
|
22
33
|
}
|
|
23
|
-
//#endregion
|
|
24
|
-
export { r as signInMagicLinkOptions, i as useSignInMagicLink };
|