@better-auth-ui/react 1.6.1 → 1.6.3

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.
Files changed (302) hide show
  1. package/dist/components/auth/auth-provider.d.ts +4 -3
  2. package/dist/components/auth/auth-provider.js +24 -40
  3. package/dist/components/email/email-changed.d.ts +2 -2
  4. package/dist/components/email/email-changed.js +154 -68
  5. package/dist/components/email/email-localization.js +18 -23
  6. package/dist/components/email/email-styles.js +52 -77
  7. package/dist/components/email/email-verification.d.ts +2 -2
  8. package/dist/components/email/email-verification.js +138 -73
  9. package/dist/components/email/index.d.ts +9 -9
  10. package/dist/components/email/index.js +9 -9
  11. package/dist/components/email/magic-link.d.ts +2 -2
  12. package/dist/components/email/magic-link.js +139 -70
  13. package/dist/components/email/new-device.d.ts +2 -2
  14. package/dist/components/email/new-device.js +221 -88
  15. package/dist/components/email/otp-email.d.ts +2 -2
  16. package/dist/components/email/otp-email.js +127 -63
  17. package/dist/components/email/password-changed.d.ts +2 -2
  18. package/dist/components/email/password-changed.js +157 -74
  19. package/dist/components/email/reset-password.d.ts +2 -2
  20. package/dist/components/email/reset-password.js +138 -66
  21. package/dist/components/icons/apple.d.ts +1 -1
  22. package/dist/components/icons/apple.js +16 -9
  23. package/dist/components/icons/atlassian.d.ts +1 -1
  24. package/dist/components/icons/atlassian.js +38 -13
  25. package/dist/components/icons/cognito.d.ts +1 -1
  26. package/dist/components/icons/cognito.js +19 -9
  27. package/dist/components/icons/discord.d.ts +1 -1
  28. package/dist/components/icons/discord.js +16 -9
  29. package/dist/components/icons/dropbox.d.ts +1 -1
  30. package/dist/components/icons/dropbox.js +16 -9
  31. package/dist/components/icons/facebook.d.ts +1 -1
  32. package/dist/components/icons/facebook.js +19 -11
  33. package/dist/components/icons/figma.d.ts +1 -1
  34. package/dist/components/icons/figma.js +34 -12
  35. package/dist/components/icons/github.d.ts +1 -1
  36. package/dist/components/icons/github.js +16 -11
  37. package/dist/components/icons/gitlab.d.ts +1 -1
  38. package/dist/components/icons/gitlab.js +30 -9
  39. package/dist/components/icons/google.d.ts +1 -1
  40. package/dist/components/icons/google.js +39 -9
  41. package/dist/components/icons/huggingface.d.ts +1 -1
  42. package/dist/components/icons/huggingface.js +38 -9
  43. package/dist/components/icons/index.d.ts +35 -35
  44. package/dist/components/icons/index.js +35 -35
  45. package/dist/components/icons/kakao.d.ts +1 -1
  46. package/dist/components/icons/kakao.js +16 -11
  47. package/dist/components/icons/kick.d.ts +1 -1
  48. package/dist/components/icons/kick.js +20 -11
  49. package/dist/components/icons/line.d.ts +1 -1
  50. package/dist/components/icons/line.js +16 -9
  51. package/dist/components/icons/linear.d.ts +1 -1
  52. package/dist/components/icons/linear.js +16 -9
  53. package/dist/components/icons/linkedin.d.ts +1 -1
  54. package/dist/components/icons/linkedin.js +33 -9
  55. package/dist/components/icons/microsoft.d.ts +1 -1
  56. package/dist/components/icons/microsoft.js +30 -9
  57. package/dist/components/icons/naver.d.ts +1 -1
  58. package/dist/components/icons/naver.js +16 -9
  59. package/dist/components/icons/notion.d.ts +1 -1
  60. package/dist/components/icons/notion.js +16 -9
  61. package/dist/components/icons/paybin.d.ts +1 -1
  62. package/dist/components/icons/paybin.js +32 -8
  63. package/dist/components/icons/paypal.d.ts +1 -1
  64. package/dist/components/icons/paypal.js +30 -9
  65. package/dist/components/icons/polar.d.ts +1 -1
  66. package/dist/components/icons/polar.js +24 -9
  67. package/dist/components/icons/railway.d.ts +1 -1
  68. package/dist/components/icons/railway.js +16 -9
  69. package/dist/components/icons/reddit.d.ts +1 -1
  70. package/dist/components/icons/reddit.js +21 -9
  71. package/dist/components/icons/roblox.d.ts +1 -1
  72. package/dist/components/icons/roblox.js +17 -12
  73. package/dist/components/icons/salesforce.d.ts +1 -1
  74. package/dist/components/icons/salesforce.js +16 -9
  75. package/dist/components/icons/slack.d.ts +1 -1
  76. package/dist/components/icons/slack.js +30 -9
  77. package/dist/components/icons/spotify.d.ts +1 -1
  78. package/dist/components/icons/spotify.js +16 -9
  79. package/dist/components/icons/tiktok.d.ts +1 -1
  80. package/dist/components/icons/tiktok.js +23 -10
  81. package/dist/components/icons/twitch.d.ts +1 -1
  82. package/dist/components/icons/twitch.js +43 -12
  83. package/dist/components/icons/vercel.d.ts +1 -1
  84. package/dist/components/icons/vercel.js +16 -9
  85. package/dist/components/icons/vk.d.ts +1 -1
  86. package/dist/components/icons/vk.js +16 -9
  87. package/dist/components/icons/wechat.d.ts +1 -1
  88. package/dist/components/icons/wechat.js +16 -9
  89. package/dist/components/icons/x.d.ts +1 -1
  90. package/dist/components/icons/x.js +16 -9
  91. package/dist/components/icons/zoom.d.ts +1 -1
  92. package/dist/components/icons/zoom.js +69 -11
  93. package/dist/components/settings/account/theme-preview.js +286 -7
  94. package/dist/core.d.ts +1 -1
  95. package/dist/hooks/auth/use-authenticate.d.ts +30 -6
  96. package/dist/hooks/auth/use-authenticate.js +22 -27
  97. package/dist/hooks/auth/use-is-username-available.d.ts +20 -0
  98. package/dist/hooks/auth/use-is-username-available.js +13 -0
  99. package/dist/hooks/auth/use-request-password-reset.d.ts +12 -17
  100. package/dist/hooks/auth/use-request-password-reset.js +12 -13
  101. package/dist/hooks/auth/use-reset-password.d.ts +14 -31
  102. package/dist/hooks/auth/use-reset-password.js +12 -12
  103. package/dist/hooks/auth/use-send-verification-email.d.ts +11 -16
  104. package/dist/hooks/auth/use-send-verification-email.js +12 -12
  105. package/dist/hooks/auth/use-session.d.ts +31 -5
  106. package/dist/hooks/auth/use-session.js +15 -17
  107. package/dist/hooks/auth/use-sign-in-email.d.ts +12 -39
  108. package/dist/hooks/auth/use-sign-in-email.js +16 -24
  109. package/dist/hooks/auth/use-sign-in-magic-link.d.ts +15 -20
  110. package/dist/hooks/auth/use-sign-in-magic-link.js +12 -12
  111. package/dist/hooks/auth/use-sign-in-passkey.d.ts +13 -50
  112. package/dist/hooks/auth/use-sign-in-passkey.js +16 -24
  113. package/dist/hooks/auth/use-sign-in-social.d.ts +32 -62
  114. package/dist/hooks/auth/use-sign-in-social.js +12 -12
  115. package/dist/hooks/auth/use-sign-in-username.d.ts +25 -0
  116. package/dist/hooks/auth/use-sign-in-username.js +17 -0
  117. package/dist/hooks/auth/use-sign-out.d.ts +11 -12
  118. package/dist/hooks/auth/use-sign-out.js +15 -23
  119. package/dist/hooks/auth/use-sign-up-email.d.ts +178 -262
  120. package/dist/hooks/auth/use-sign-up-email.js +16 -24
  121. package/dist/hooks/auth/use-user.d.ts +63 -61
  122. package/dist/hooks/auth/use-user.js +10 -13
  123. package/dist/hooks/settings/use-account-info.d.ts +12 -12
  124. package/dist/hooks/settings/use-account-info.js +17 -24
  125. package/dist/hooks/settings/use-add-passkey.d.ts +11 -33
  126. package/dist/hooks/settings/use-add-passkey.js +16 -23
  127. package/dist/hooks/settings/use-change-email.d.ts +12 -15
  128. package/dist/hooks/settings/use-change-email.js +16 -22
  129. package/dist/hooks/settings/use-change-password.d.ts +12 -45
  130. package/dist/hooks/settings/use-change-password.js +12 -10
  131. package/dist/hooks/settings/use-delete-passkey.d.ts +11 -13
  132. package/dist/hooks/settings/use-delete-passkey.js +16 -23
  133. package/dist/hooks/settings/use-delete-user.d.ts +14 -32
  134. package/dist/hooks/settings/use-delete-user.js +12 -10
  135. package/dist/hooks/settings/use-link-social.d.ts +23 -26
  136. package/dist/hooks/settings/use-link-social.js +12 -9
  137. package/dist/hooks/settings/use-list-accounts.d.ts +10 -8
  138. package/dist/hooks/settings/use-list-accounts.js +14 -22
  139. package/dist/hooks/settings/use-list-device-sessions.d.ts +30 -7
  140. package/dist/hooks/settings/use-list-device-sessions.js +14 -21
  141. package/dist/hooks/settings/use-list-sessions.d.ts +10 -7
  142. package/dist/hooks/settings/use-list-sessions.js +14 -21
  143. package/dist/hooks/settings/use-list-user-passkeys.d.ts +9 -6
  144. package/dist/hooks/settings/use-list-user-passkeys.js +14 -21
  145. package/dist/hooks/settings/use-revoke-multi-session.d.ts +12 -12
  146. package/dist/hooks/settings/use-revoke-multi-session.js +16 -19
  147. package/dist/hooks/settings/use-revoke-session.d.ts +12 -12
  148. package/dist/hooks/settings/use-revoke-session.js +16 -20
  149. package/dist/hooks/settings/use-set-active-session.d.ts +13 -30
  150. package/dist/hooks/settings/use-set-active-session.js +19 -27
  151. package/dist/hooks/settings/use-unlink-account.d.ts +13 -13
  152. package/dist/hooks/settings/use-unlink-account.js +16 -20
  153. package/dist/hooks/settings/use-update-user.d.ts +1179 -5
  154. package/dist/hooks/settings/use-update-user.js +23 -28
  155. package/dist/hooks/use-auth-mutation.d.ts +12 -0
  156. package/dist/hooks/use-auth-mutation.js +11 -0
  157. package/dist/hooks/use-auth-query.d.ts +14 -0
  158. package/dist/hooks/use-auth-query.js +15 -0
  159. package/dist/index.d.ts +40 -36
  160. package/dist/index.js +84 -36
  161. package/dist/lib/auth-client.d.ts +1254 -1254
  162. package/dist/lib/auth-client.js +11 -11
  163. package/dist/lib/auth-config.d.ts +3 -3
  164. package/dist/lib/auth-context.d.ts +2 -2
  165. package/dist/lib/auth-context.js +5 -2
  166. package/dist/lib/provider-icons.d.ts +2 -2
  167. package/dist/lib/provider-icons.js +75 -47
  168. package/dist/lib/utils.d.ts +1 -1
  169. package/dist/lib/utils.js +7 -4
  170. package/dist/mutations/auth/is-username-available-options.d.ts +19 -0
  171. package/dist/mutations/auth/is-username-available-options.js +7 -0
  172. package/dist/mutations/auth/request-password-reset-options.d.ts +15 -0
  173. package/dist/mutations/auth/request-password-reset-options.js +7 -0
  174. package/dist/mutations/auth/reset-password-options.d.ts +17 -0
  175. package/dist/mutations/auth/reset-password-options.js +7 -0
  176. package/dist/mutations/auth/send-verification-email-options.d.ts +15 -0
  177. package/dist/mutations/auth/send-verification-email-options.js +7 -0
  178. package/dist/mutations/auth/sign-in-email-options.d.ts +23 -0
  179. package/dist/mutations/auth/sign-in-email-options.js +11 -0
  180. package/dist/mutations/auth/sign-in-magic-link-options.d.ts +23 -0
  181. package/dist/mutations/auth/sign-in-magic-link-options.js +11 -0
  182. package/dist/mutations/auth/sign-in-passkey-options.d.ts +15 -0
  183. package/dist/mutations/auth/sign-in-passkey-options.js +11 -0
  184. package/dist/mutations/auth/sign-in-social-options.d.ts +61 -0
  185. package/dist/mutations/auth/sign-in-social-options.js +11 -0
  186. package/dist/mutations/auth/sign-in-username-options.d.ts +19 -0
  187. package/dist/mutations/auth/sign-in-username-options.js +11 -0
  188. package/dist/mutations/auth/sign-out-options.d.ts +12 -0
  189. package/dist/mutations/auth/sign-out-options.js +7 -0
  190. package/dist/mutations/auth/sign-up-email-options.d.ts +1180 -0
  191. package/dist/mutations/auth/sign-up-email-options.js +11 -0
  192. package/dist/mutations/auth-mutation-options.d.ts +25 -0
  193. package/dist/mutations/auth-mutation-options.js +19 -0
  194. package/dist/mutations/settings/add-passkey-options.d.ts +15 -0
  195. package/dist/mutations/settings/add-passkey-options.js +11 -0
  196. package/dist/mutations/settings/change-email-options.d.ts +15 -0
  197. package/dist/mutations/settings/change-email-options.js +7 -0
  198. package/dist/mutations/settings/change-password-options.d.ts +17 -0
  199. package/dist/mutations/settings/change-password-options.js +7 -0
  200. package/dist/mutations/settings/delete-passkey-options.d.ts +13 -0
  201. package/dist/mutations/settings/delete-passkey-options.js +11 -0
  202. package/dist/mutations/settings/delete-user-options.d.ts +20 -0
  203. package/dist/mutations/settings/delete-user-options.js +7 -0
  204. package/dist/mutations/settings/link-social-options.d.ts +39 -0
  205. package/dist/mutations/settings/link-social-options.js +7 -0
  206. package/dist/mutations/settings/revoke-multi-session-options.d.ts +13 -0
  207. package/dist/mutations/settings/revoke-multi-session-options.js +11 -0
  208. package/dist/mutations/settings/revoke-session-options.d.ts +13 -0
  209. package/dist/mutations/settings/revoke-session-options.js +7 -0
  210. package/dist/mutations/settings/set-active-session-options.d.ts +13 -0
  211. package/dist/mutations/settings/set-active-session-options.js +11 -0
  212. package/dist/mutations/settings/unlink-account-options.d.ts +15 -0
  213. package/dist/mutations/settings/unlink-account-options.js +7 -0
  214. package/dist/mutations/settings/update-user-options.d.ts +1182 -0
  215. package/dist/mutations/settings/update-user-options.js +7 -0
  216. package/dist/queries/auth/session-options.d.ts +110 -0
  217. package/dist/queries/auth/session-options.js +7 -0
  218. package/dist/queries/auth-query-options.d.ts +29 -0
  219. package/dist/queries/auth-query-options.js +17 -0
  220. package/dist/queries/settings/account-info-options.d.ts +32 -0
  221. package/dist/queries/settings/account-info-options.js +12 -0
  222. package/dist/queries/settings/list-accounts-options.d.ts +53 -0
  223. package/dist/queries/settings/list-accounts-options.js +12 -0
  224. package/dist/queries/settings/list-device-sessions-options.d.ts +99 -0
  225. package/dist/queries/settings/list-device-sessions-options.js +12 -0
  226. package/dist/queries/settings/list-sessions-options.d.ts +54 -0
  227. package/dist/queries/settings/list-sessions-options.js +12 -0
  228. package/dist/queries/settings/list-user-passkeys-options.d.ts +18 -0
  229. package/dist/queries/settings/list-user-passkeys-options.js +12 -0
  230. package/package.json +11 -11
  231. package/src/components/auth/auth-provider.tsx +4 -6
  232. package/src/hooks/auth/use-authenticate.ts +8 -9
  233. package/src/hooks/auth/use-is-username-available.ts +31 -0
  234. package/src/hooks/auth/use-request-password-reset.ts +20 -11
  235. package/src/hooks/auth/use-reset-password.ts +20 -12
  236. package/src/hooks/auth/use-send-verification-email.ts +19 -11
  237. package/src/hooks/auth/use-session.ts +22 -17
  238. package/src/hooks/auth/use-sign-in-email.ts +24 -19
  239. package/src/hooks/auth/use-sign-in-magic-link.ts +19 -13
  240. package/src/hooks/auth/use-sign-in-passkey.ts +24 -18
  241. package/src/hooks/auth/use-sign-in-social.ts +19 -11
  242. package/src/hooks/auth/use-sign-in-username.ts +40 -0
  243. package/src/hooks/auth/use-sign-out.ts +20 -20
  244. package/src/hooks/auth/use-sign-up-email.ts +25 -21
  245. package/src/hooks/auth/use-user.ts +7 -9
  246. package/src/hooks/settings/use-account-info.ts +31 -21
  247. package/src/hooks/settings/use-add-passkey.ts +22 -17
  248. package/src/hooks/settings/use-change-email.ts +24 -20
  249. package/src/hooks/settings/use-change-password.ts +19 -11
  250. package/src/hooks/settings/use-delete-passkey.ts +21 -16
  251. package/src/hooks/settings/use-delete-user.ts +19 -11
  252. package/src/hooks/settings/use-link-social.ts +20 -10
  253. package/src/hooks/settings/use-list-accounts.ts +28 -16
  254. package/src/hooks/settings/use-list-device-sessions.ts +29 -22
  255. package/src/hooks/settings/use-list-sessions.ts +28 -15
  256. package/src/hooks/settings/use-list-user-passkeys.ts +28 -17
  257. package/src/hooks/settings/use-revoke-multi-session.ts +28 -19
  258. package/src/hooks/settings/use-revoke-session.ts +26 -18
  259. package/src/hooks/settings/use-set-active-session.ts +40 -28
  260. package/src/hooks/settings/use-unlink-account.ts +23 -17
  261. package/src/hooks/settings/use-update-user.ts +33 -27
  262. package/src/hooks/use-auth-mutation.ts +29 -0
  263. package/src/hooks/use-auth-query.ts +36 -0
  264. package/src/index.ts +4 -0
  265. package/src/lib/auth-config.ts +1 -1
  266. package/src/mutations/auth/is-username-available-options.ts +18 -0
  267. package/src/mutations/auth/request-password-reset-options.ts +14 -0
  268. package/src/mutations/auth/reset-password-options.ts +14 -0
  269. package/src/mutations/auth/send-verification-email-options.ts +14 -0
  270. package/src/mutations/auth/sign-in-email-options.ts +19 -0
  271. package/src/mutations/auth/sign-in-magic-link-options.ts +15 -0
  272. package/src/mutations/auth/sign-in-passkey-options.ts +15 -0
  273. package/src/mutations/auth/sign-in-social-options.ts +19 -0
  274. package/src/mutations/auth/sign-in-username-options.ts +15 -0
  275. package/src/mutations/auth/sign-out-options.ts +11 -0
  276. package/src/mutations/auth/sign-up-email-options.ts +15 -0
  277. package/src/mutations/auth-mutation-options.ts +49 -0
  278. package/src/mutations/settings/add-passkey-options.ts +15 -0
  279. package/src/mutations/settings/change-email-options.ts +11 -0
  280. package/src/mutations/settings/change-password-options.ts +14 -0
  281. package/src/mutations/settings/delete-passkey-options.ts +15 -0
  282. package/src/mutations/settings/delete-user-options.ts +11 -0
  283. package/src/mutations/settings/link-social-options.ts +11 -0
  284. package/src/mutations/settings/revoke-multi-session-options.ts +15 -0
  285. package/src/mutations/settings/revoke-session-options.ts +14 -0
  286. package/src/mutations/settings/set-active-session-options.ts +15 -0
  287. package/src/mutations/settings/unlink-account-options.ts +14 -0
  288. package/src/mutations/settings/update-user-options.ts +15 -0
  289. package/src/queries/auth/session-options.ts +18 -0
  290. package/src/queries/auth-query-options.ts +34 -0
  291. package/src/queries/settings/account-info-options.ts +25 -0
  292. package/src/queries/settings/list-accounts-options.ts +26 -0
  293. package/src/queries/settings/list-device-sessions-options.ts +24 -0
  294. package/src/queries/settings/list-sessions-options.ts +23 -0
  295. package/src/queries/settings/list-user-passkeys-options.ts +23 -0
  296. package/dist/hooks/auth/use-auth-mutation.d.ts +0 -18
  297. package/dist/hooks/auth/use-auth-mutation.js +0 -10
  298. package/dist/hooks/auth/use-auth-query.d.ts +0 -24
  299. package/dist/hooks/auth/use-auth-query.js +0 -10
  300. package/dist/lib/auth-config.js +0 -1
  301. package/src/hooks/auth/use-auth-mutation.ts +0 -56
  302. package/src/hooks/auth/use-auth-query.ts +0 -50
@@ -1,22 +1,15 @@
1
- import { useAuth, useSession } from "@better-auth-ui/react";
2
- import { useAuthQuery } from "../auth/use-auth-query";
3
- /**
4
- * Retrieve the active sessions (devices where the current user is signed in).
5
- *
6
- * The underlying query is enabled only when session data is available.
7
- *
8
- * @param options - Optional React Query options to customize the query behavior.
9
- * @returns The React Query result for the sessions list; `data` is the array of session objects, and the result includes loading and error states.
10
- */
11
- export function useListSessions(options) {
12
- const { authClient } = useAuth();
13
- const { data: session } = useSession({ refetchOnMount: false });
14
- return useAuthQuery({
15
- authFn: authClient.listSessions,
16
- options: {
17
- queryKey: ["auth", "listSessions", session?.user.id],
18
- enabled: !!session,
19
- ...options
20
- }
21
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { useSession as t } from "../auth/use-session.js";
3
+ import { listSessionsOptions as n } from "../../queries/settings/list-sessions-options.js";
4
+ import { skipToken as r, useQuery as i } from "@tanstack/react-query";
5
+ //#region src/hooks/settings/use-list-sessions.ts
6
+ function a(a) {
7
+ let { authClient: o } = e(), { data: s } = t({ refetchOnMount: !1 }), c = s?.user.id, l = !c, { fetchOptions: u, ...d } = a ?? {};
8
+ return i({
9
+ ...n(o, c, { fetchOptions: u }),
10
+ ...l && { queryFn: r },
11
+ ...d
12
+ });
22
13
  }
14
+ //#endregion
15
+ export { a as useListSessions };
@@ -1,11 +1,14 @@
1
- import { type AuthClient } from "@better-auth-ui/react";
2
- import { type UseAuthQueryOptions } from "../auth/use-auth-query";
1
+ import { AuthClient } from '../../lib/auth-client';
2
+ import { listUserPasskeysOptions } from '../../queries/settings/list-user-passkeys-options';
3
+ export type UseListUserPasskeysParams = NonNullable<Parameters<AuthClient["passkey"]["listUserPasskeys"]>[0]>;
4
+ export type UseListUserPasskeysOptions = Omit<ReturnType<typeof listUserPasskeysOptions>, "queryKey" | "queryFn"> & UseListUserPasskeysParams;
3
5
  /**
4
6
  * Retrieve the passkeys registered for the current user.
5
7
  *
6
- * The underlying query is enabled only when session data is available.
8
+ * Keyed per-user; waits for the active session before firing.
7
9
  *
8
- * @param options - Optional React Query options to customize the query behavior.
9
- * @returns The React Query result for the passkeys list.
10
+ * @param options - Better Auth params (`fetchOptions`) and React Query
11
+ * options forwarded to `useQuery`.
12
+ * @returns React Query result for the passkeys list.
10
13
  */
11
- export declare function useListUserPasskeys(options?: Partial<UseAuthQueryOptions<AuthClient["passkey"]["listUserPasskeys"]>>): import("@tanstack/react-query").UseQueryResult<import("@better-auth/passkey/client").Passkey[] | null, import("better-auth/react").BetterFetchError>;
14
+ export declare function useListUserPasskeys(options?: UseListUserPasskeysOptions): import('@tanstack/react-query').UseQueryResult<import('@better-auth/passkey/client').Passkey[] | null, import('better-auth/client').BetterFetchError>;
@@ -1,22 +1,15 @@
1
- import { useAuth, useSession } from "@better-auth-ui/react";
2
- import { useAuthQuery } from "../auth/use-auth-query";
3
- /**
4
- * Retrieve the passkeys registered for the current user.
5
- *
6
- * The underlying query is enabled only when session data is available.
7
- *
8
- * @param options - Optional React Query options to customize the query behavior.
9
- * @returns The React Query result for the passkeys list.
10
- */
11
- export function useListUserPasskeys(options) {
12
- const { authClient } = useAuth();
13
- const { data: session } = useSession({ refetchOnMount: false });
14
- return useAuthQuery({
15
- authFn: authClient.passkey.listUserPasskeys,
16
- options: {
17
- queryKey: ["auth", "listUserPasskeys", session?.user.id],
18
- enabled: !!session,
19
- ...options
20
- }
21
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { useSession as t } from "../auth/use-session.js";
3
+ import { listUserPasskeysOptions as n } from "../../queries/settings/list-user-passkeys-options.js";
4
+ import { skipToken as r, useQuery as i } from "@tanstack/react-query";
5
+ //#region src/hooks/settings/use-list-user-passkeys.ts
6
+ function a(a) {
7
+ let { authClient: o } = e(), { data: s } = t({ refetchOnMount: !1 }), c = s?.user.id, l = !c, { fetchOptions: u, ...d } = a ?? {};
8
+ return i({
9
+ ...n(o, c, { fetchOptions: u }),
10
+ ...l && { queryFn: r },
11
+ ...d
12
+ });
22
13
  }
14
+ //#endregion
15
+ export { a as useListUserPasskeys };
@@ -1,19 +1,19 @@
1
- import { type AuthClient } from "@better-auth-ui/react";
2
- import type { UseAuthMutationOptions } from "../auth/use-auth-mutation";
1
+ import { AuthClient } from '../../lib/auth-client';
2
+ import { revokeMultiSessionOptions } from '../../mutations/settings/revoke-multi-session-options';
3
+ export type UseRevokeMultiSessionParams = NonNullable<Parameters<AuthClient["multiSession"]["revoke"]>[0]>;
4
+ export type UseRevokeMultiSessionOptions = Omit<ReturnType<typeof revokeMultiSessionOptions>, "mutationKey" | "mutationFn">;
3
5
  /**
4
6
  * Hook that creates a mutation for revoking a device session in multi-session mode.
5
7
  *
8
+ * Refetches the device sessions list on success.
9
+ *
10
+ * @param options - React Query options forwarded to `useMutation`.
6
11
  * @returns The `useMutation` result.
7
12
  */
8
- export declare function useRevokeMultiSession(options?: UseAuthMutationOptions<AuthClient["multiSession"]["revoke"]>): import("../auth/use-auth-mutation").UseAuthMutationResult<(<FetchOptions extends import("better-auth").ClientFetchOption<Partial<{
9
- sessionToken: string;
10
- }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined>>(data_0: import("better-auth").Prettify<{
13
+ export declare function useRevokeMultiSession(options?: UseRevokeMultiSessionOptions): import('@tanstack/react-query').UseMutationResult<never, import('better-auth/client').BetterFetchError, import('better-auth').Prettify<{
11
14
  sessionToken: string;
12
15
  } & {
13
- fetchOptions?: FetchOptions | undefined;
14
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
15
- status: boolean;
16
- }, {
17
- code?: string | undefined;
18
- message?: string | undefined;
19
- }, FetchOptions["throw"] extends true ? true : false>>)>;
16
+ fetchOptions?: import('better-auth').ClientFetchOption<Partial<{
17
+ sessionToken: string;
18
+ }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined> | undefined;
19
+ }>, unknown>;
@@ -1,20 +1,17 @@
1
- import { useAuth, useAuthMutation, useListDeviceSessions } from "@better-auth-ui/react";
2
- /**
3
- * Hook that creates a mutation for revoking a device session in multi-session mode.
4
- *
5
- * @returns The `useMutation` result.
6
- */
7
- export function useRevokeMultiSession(options) {
8
- const { authClient } = useAuth();
9
- const { refetch } = useListDeviceSessions({ refetchOnMount: false });
10
- return useAuthMutation({
11
- authFn: authClient.multiSession.revoke,
12
- options: {
13
- ...options,
14
- onSuccess: async (...args) => {
15
- await refetch();
16
- await options?.onSuccess?.(...args);
17
- }
18
- }
19
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { useListDeviceSessions as t } from "./use-list-device-sessions.js";
3
+ import { revokeMultiSessionOptions as n } from "../../mutations/settings/revoke-multi-session-options.js";
4
+ import { useMutation as r } from "@tanstack/react-query";
5
+ //#region src/hooks/settings/use-revoke-multi-session.ts
6
+ function i(i) {
7
+ let { authClient: a } = e(), { refetch: o } = t({ refetchOnMount: !1 });
8
+ return r({
9
+ ...n(a),
10
+ ...i,
11
+ onSuccess: async (...e) => {
12
+ await o(), await i?.onSuccess?.(...e);
13
+ }
14
+ });
20
15
  }
16
+ //#endregion
17
+ export { i as useRevokeMultiSession };
@@ -1,19 +1,19 @@
1
- import { type AuthClient } from "@better-auth-ui/react";
2
- import type { UseAuthMutationOptions } from "../auth/use-auth-mutation";
1
+ import { AuthClient } from '../../lib/auth-client';
2
+ import { revokeSessionOptions } from '../../mutations/settings/revoke-session-options';
3
+ export type UseRevokeSessionParams = NonNullable<Parameters<AuthClient["revokeSession"]>[0]>;
4
+ export type UseRevokeSessionOptions = Omit<ReturnType<typeof revokeSessionOptions>, "mutationKey" | "mutationFn">;
3
5
  /**
4
6
  * Hook that creates a mutation for revoking a user session.
5
7
  *
8
+ * Refetches the sessions list on success.
9
+ *
10
+ * @param options - React Query options forwarded to `useMutation`.
6
11
  * @returns The `useMutation` result.
7
12
  */
8
- export declare function useRevokeSession(options?: UseAuthMutationOptions<AuthClient["revokeSession"]>): import("../auth/use-auth-mutation").UseAuthMutationResult<(<FetchOptions extends import("better-auth").ClientFetchOption<Partial<{
9
- token: string;
10
- }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined>>(data_0: import("better-auth").Prettify<{
13
+ export declare function useRevokeSession(options?: UseRevokeSessionOptions): import('@tanstack/react-query').UseMutationResult<never, import('better-auth/client').BetterFetchError, import('better-auth').Prettify<{
11
14
  token: string;
12
15
  } & {
13
- fetchOptions?: FetchOptions | undefined;
14
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
15
- status: boolean;
16
- }, {
17
- code?: string | undefined;
18
- message?: string | undefined;
19
- }, FetchOptions["throw"] extends true ? true : false>>)>;
16
+ fetchOptions?: import('better-auth').ClientFetchOption<Partial<{
17
+ token: string;
18
+ }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined> | undefined;
19
+ }>, unknown>;
@@ -1,21 +1,17 @@
1
- import { useAuth, useAuthMutation } from "@better-auth-ui/react";
2
- import { useListSessions } from "./use-list-sessions";
3
- /**
4
- * Hook that creates a mutation for revoking a user session.
5
- *
6
- * @returns The `useMutation` result.
7
- */
8
- export function useRevokeSession(options) {
9
- const { authClient } = useAuth();
10
- const { refetch } = useListSessions({ refetchOnMount: false });
11
- return useAuthMutation({
12
- authFn: authClient.revokeSession,
13
- options: {
14
- ...options,
15
- onSuccess: async (...args) => {
16
- await refetch();
17
- await options?.onSuccess?.(...args);
18
- }
19
- }
20
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { useListSessions as t } from "./use-list-sessions.js";
3
+ import { revokeSessionOptions as n } from "../../mutations/settings/revoke-session-options.js";
4
+ import { useMutation as r } from "@tanstack/react-query";
5
+ //#region src/hooks/settings/use-revoke-session.ts
6
+ function i(i) {
7
+ let { authClient: a } = e(), { refetch: o } = t({ refetchOnMount: !1 });
8
+ return r({
9
+ ...n(a),
10
+ ...i,
11
+ onSuccess: async (...e) => {
12
+ await o(), await i?.onSuccess?.(...e);
13
+ }
14
+ });
21
15
  }
16
+ //#endregion
17
+ export { i as useRevokeSession };
@@ -1,37 +1,20 @@
1
- import { type AuthClient } from "@better-auth-ui/react";
2
- import type { UseAuthMutationOptions } from "../auth/use-auth-mutation";
1
+ import { AuthClient } from '../../lib/auth-client';
2
+ import { setActiveSessionOptions } from '../../mutations/settings/set-active-session-options';
3
+ export type UseSetActiveSessionParams = NonNullable<Parameters<AuthClient["multiSession"]["setActive"]>[0]>;
4
+ export type UseSetActiveSessionOptions = Omit<ReturnType<typeof setActiveSessionOptions>, "mutationKey" | "mutationFn">;
3
5
  /**
4
6
  * Hook that sets an active device session in multi-session mode.
5
7
  *
8
+ * Optimistically switches the cached session to the matching device session,
9
+ * scrolls to top, and refetches both the session and device-session queries.
10
+ *
11
+ * @param options - React Query options forwarded to `useMutation`.
6
12
  * @returns The `useMutation` result.
7
13
  */
8
- export declare function useSetActiveSession(options?: UseAuthMutationOptions<AuthClient["multiSession"]["setActive"]>): import("../auth/use-auth-mutation").UseAuthMutationResult<(<FetchOptions extends import("better-auth").ClientFetchOption<Partial<{
9
- sessionToken: string;
10
- }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined>>(data_0: import("better-auth").Prettify<{
14
+ export declare function useSetActiveSession(options?: UseSetActiveSessionOptions): import('@tanstack/react-query').UseMutationResult<never, import('better-auth/client').BetterFetchError, import('better-auth').Prettify<{
11
15
  sessionToken: string;
12
16
  } & {
13
- fetchOptions?: FetchOptions | undefined;
14
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
15
- session: {
16
- id: string;
17
- createdAt: Date;
18
- updatedAt: Date;
19
- userId: string;
20
- expiresAt: Date;
21
- token: string;
22
- ipAddress?: string | null | undefined;
23
- userAgent?: string | null | undefined;
24
- } & Record<string, any>;
25
- user: {
26
- id: string;
27
- createdAt: Date;
28
- updatedAt: Date;
29
- email: string;
30
- emailVerified: boolean;
31
- name: string;
32
- image?: string | null | undefined;
33
- } & Record<string, any>;
34
- }, {
35
- code?: string | undefined;
36
- message?: string | undefined;
37
- }, FetchOptions["throw"] extends true ? true : false>>)>;
17
+ fetchOptions?: import('better-auth').ClientFetchOption<Partial<{
18
+ sessionToken: string;
19
+ }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined> | undefined;
20
+ }>, unknown>;
@@ -1,28 +1,20 @@
1
- import { useAuth, useAuthMutation, useListDeviceSessions, useSession } from "@better-auth-ui/react";
2
- import { useQueryClient } from "@tanstack/react-query";
3
- /**
4
- * Hook that sets an active device session in multi-session mode.
5
- *
6
- * @returns The `useMutation` result.
7
- */
8
- export function useSetActiveSession(options) {
9
- const queryClient = useQueryClient();
10
- const { authClient } = useAuth();
11
- const { refetch: refetchSession } = useSession({ refetchOnMount: false });
12
- const { data: deviceSessions, refetch: refetchDeviceSessions } = useListDeviceSessions({ refetchOnMount: false });
13
- return useAuthMutation({
14
- authFn: authClient.multiSession.setActive,
15
- options: {
16
- ...options,
17
- onSuccess: async (data, { sessionToken }, ...args) => {
18
- const deviceSession = deviceSessions?.find((session) => session.session.token === sessionToken);
19
- if (deviceSession)
20
- queryClient.setQueryData(["auth", "getSession"], deviceSession);
21
- window.scrollTo({ top: 0 });
22
- await refetchSession();
23
- await refetchDeviceSessions();
24
- await options?.onSuccess?.(data, { sessionToken }, ...args);
25
- }
26
- }
27
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { sessionOptions as t } from "../../queries/auth/session-options.js";
3
+ import { useSession as n } from "../auth/use-session.js";
4
+ import { useListDeviceSessions as r } from "./use-list-device-sessions.js";
5
+ import { setActiveSessionOptions as i } from "../../mutations/settings/set-active-session-options.js";
6
+ import { useMutation as a, useQueryClient as o } from "@tanstack/react-query";
7
+ //#region src/hooks/settings/use-set-active-session.ts
8
+ function s(s) {
9
+ let c = o(), { authClient: l } = e(), { refetch: u } = n({ refetchOnMount: !1 }), { data: d, refetch: f } = r({ refetchOnMount: !1 });
10
+ return a({
11
+ ...i(l),
12
+ ...s,
13
+ onSuccess: async (e, n, ...r) => {
14
+ let i = n?.sessionToken, a = d?.find((e) => e.session.token === i);
15
+ a && c.setQueryData(t(l).queryKey, a), window.scrollTo({ top: 0 }), await u(), await f(), await s?.onSuccess?.(e, n, ...r);
16
+ }
17
+ });
28
18
  }
19
+ //#endregion
20
+ export { s as useSetActiveSession };
@@ -1,21 +1,21 @@
1
- import { type AuthClient } from "@better-auth-ui/react";
2
- import type { UseAuthMutationOptions } from "../auth/use-auth-mutation";
1
+ import { AuthClient } from '../../lib/auth-client';
2
+ import { unlinkAccountOptions } from '../../mutations/settings/unlink-account-options';
3
+ export type UseUnlinkAccountParams = NonNullable<Parameters<AuthClient["unlinkAccount"]>[0]>;
4
+ export type UseUnlinkAccountOptions = Omit<ReturnType<typeof unlinkAccountOptions>, "mutationKey" | "mutationFn">;
3
5
  /**
4
6
  * Hook that creates a mutation for unlinking a social provider from the current user.
5
7
  *
8
+ * Refetches the linked accounts list on success.
9
+ *
10
+ * @param options - React Query options forwarded to `useMutation`.
6
11
  * @returns The `useMutation` result.
7
12
  */
8
- export declare function useUnlinkAccount(options?: UseAuthMutationOptions<AuthClient["unlinkAccount"]>): import("../auth/use-auth-mutation").UseAuthMutationResult<(<FetchOptions extends import("better-auth").ClientFetchOption<Partial<{
9
- providerId: string;
10
- accountId?: string | undefined;
11
- }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined>>(data_0: import("better-auth").Prettify<{
13
+ export declare function useUnlinkAccount(options?: UseUnlinkAccountOptions): import('@tanstack/react-query').UseMutationResult<never, import('better-auth/client').BetterFetchError, import('better-auth').Prettify<{
12
14
  providerId: string;
13
15
  accountId?: string | undefined;
14
16
  } & {
15
- fetchOptions?: FetchOptions | undefined;
16
- }>, data_1?: FetchOptions | undefined) => Promise<import("better-auth/react").BetterFetchResponse<{
17
- status: boolean;
18
- }, {
19
- code?: string | undefined;
20
- message?: string | undefined;
21
- }, FetchOptions["throw"] extends true ? true : false>>)>;
17
+ fetchOptions?: import('better-auth').ClientFetchOption<Partial<{
18
+ providerId: string;
19
+ accountId?: string | undefined;
20
+ }> & Record<string, any>, Partial<Record<string, any>> & Record<string, any>, Record<string, any> | undefined> | undefined;
21
+ }>, unknown>;
@@ -1,21 +1,17 @@
1
- import { useAuth, useAuthMutation } from "@better-auth-ui/react";
2
- import { useListAccounts } from "./use-list-accounts";
3
- /**
4
- * Hook that creates a mutation for unlinking a social provider from the current user.
5
- *
6
- * @returns The `useMutation` result.
7
- */
8
- export function useUnlinkAccount(options) {
9
- const { authClient } = useAuth();
10
- const { refetch } = useListAccounts({ refetchOnMount: false });
11
- return useAuthMutation({
12
- authFn: authClient.unlinkAccount,
13
- options: {
14
- ...options,
15
- onSuccess: async (...args) => {
16
- await refetch();
17
- await options?.onSuccess?.(...args);
18
- }
19
- }
20
- });
1
+ import { useAuth as e } from "../../components/auth/auth-provider.js";
2
+ import { useListAccounts as t } from "./use-list-accounts.js";
3
+ import { unlinkAccountOptions as n } from "../../mutations/settings/unlink-account-options.js";
4
+ import { useMutation as r } from "@tanstack/react-query";
5
+ //#region src/hooks/settings/use-unlink-account.ts
6
+ function i(i) {
7
+ let { authClient: a } = e(), { refetch: o } = t({ refetchOnMount: !1 });
8
+ return r({
9
+ ...n(a),
10
+ ...i,
11
+ onSuccess: async (...e) => {
12
+ await o(), await i?.onSuccess?.(...e);
13
+ }
14
+ });
21
15
  }
16
+ //#endregion
17
+ export { i as useUnlinkAccount };