@better-auth-ui/react 1.6.3 → 1.6.4

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 (346) hide show
  1. package/dist/components/auth/auth-provider.d.ts +23 -8
  2. package/dist/components/auth/auth-provider.js +32 -17
  3. package/dist/components/{email → auth/email}/email-changed.js +2 -2
  4. package/dist/components/{email → auth/email}/email-localization.js +1 -1
  5. package/dist/components/{email → auth/email}/email-styles.js +1 -1
  6. package/dist/components/{email → auth/email}/email-verification.js +2 -2
  7. package/dist/components/{email → auth/email}/magic-link.js +2 -2
  8. package/dist/components/{email → auth/email}/new-device.js +2 -2
  9. package/dist/components/{email → auth/email}/otp-email.js +2 -2
  10. package/dist/components/{email → auth/email}/password-changed.js +2 -2
  11. package/dist/components/{email → auth/email}/reset-password.js +2 -2
  12. package/dist/email.d.ts +1 -0
  13. package/dist/email.js +11 -0
  14. package/dist/hooks/auth/use-authenticate.d.ts +5 -28
  15. package/dist/hooks/auth/use-authenticate.js +12 -12
  16. package/dist/hooks/auth/use-user.d.ts +19 -314
  17. package/dist/hooks/auth/use-user.js +5 -5
  18. package/dist/hooks/use-auth-mutation.d.ts +12 -7
  19. package/dist/hooks/use-auth-plugin.d.ts +31 -0
  20. package/dist/hooks/use-auth-plugin.js +10 -0
  21. package/dist/hooks/use-auth-query.d.ts +3 -3
  22. package/dist/index.d.ts +33 -32
  23. package/dist/index.js +74 -83
  24. package/dist/lib/auth-client.d.ts +23 -3687
  25. package/dist/lib/auth-plugin.d.ts +59 -0
  26. package/dist/lib/auth-server.d.ts +16 -0
  27. package/dist/mutations/auth/request-password-reset-mutation.d.ts +26 -0
  28. package/dist/mutations/auth/request-password-reset-mutation.js +24 -0
  29. package/dist/mutations/auth/reset-password-mutation.d.ts +25 -0
  30. package/dist/mutations/auth/reset-password-mutation.js +24 -0
  31. package/dist/mutations/auth/send-verification-email-mutation.d.ts +24 -0
  32. package/dist/mutations/auth/send-verification-email-mutation.js +24 -0
  33. package/dist/mutations/auth/sign-in-email-mutation.d.ts +71 -0
  34. package/dist/mutations/auth/sign-in-email-mutation.js +29 -0
  35. package/dist/mutations/auth/sign-in-social-mutation.d.ts +77 -0
  36. package/dist/mutations/auth/sign-in-social-mutation.js +24 -0
  37. package/dist/mutations/auth/sign-out-mutation.d.ts +25 -0
  38. package/dist/mutations/auth/sign-out-mutation.js +28 -0
  39. package/dist/mutations/auth/sign-up-email-mutation.d.ts +105 -0
  40. package/dist/mutations/auth/sign-up-email-mutation.js +29 -0
  41. package/dist/mutations/auth-mutation-options.d.ts +37 -20
  42. package/dist/mutations/auth-mutation-options.js +2 -2
  43. package/dist/mutations/magic-link/sign-in-magic-link-mutation.d.ts +24 -0
  44. package/dist/mutations/magic-link/sign-in-magic-link-mutation.js +24 -0
  45. package/dist/mutations/multi-session/revoke-multi-session-mutation.d.ts +25 -0
  46. package/dist/mutations/multi-session/revoke-multi-session-mutation.js +29 -0
  47. package/dist/mutations/multi-session/set-active-session-mutation.d.ts +62 -0
  48. package/dist/mutations/multi-session/set-active-session-mutation.js +31 -0
  49. package/dist/mutations/passkey/add-passkey-mutation.d.ts +71 -0
  50. package/dist/mutations/passkey/add-passkey-mutation.js +29 -0
  51. package/dist/mutations/passkey/delete-passkey-mutation.d.ts +25 -0
  52. package/dist/mutations/passkey/delete-passkey-mutation.js +29 -0
  53. package/dist/mutations/passkey/sign-in-passkey-mutation.d.ts +105 -0
  54. package/dist/mutations/passkey/sign-in-passkey-mutation.js +29 -0
  55. package/dist/mutations/settings/change-email-mutation.d.ts +25 -0
  56. package/dist/mutations/settings/change-email-mutation.js +29 -0
  57. package/dist/mutations/settings/change-password-mutation.d.ts +78 -0
  58. package/dist/mutations/settings/change-password-mutation.js +24 -0
  59. package/dist/mutations/settings/delete-user-mutation.d.ts +26 -0
  60. package/dist/mutations/settings/delete-user-mutation.js +24 -0
  61. package/dist/mutations/settings/link-social-mutation.d.ts +26 -0
  62. package/dist/mutations/settings/link-social-mutation.js +24 -0
  63. package/dist/mutations/settings/revoke-session-mutation.d.ts +25 -0
  64. package/dist/mutations/settings/revoke-session-mutation.js +29 -0
  65. package/dist/mutations/settings/unlink-account-mutation.d.ts +25 -0
  66. package/dist/mutations/settings/unlink-account-mutation.js +29 -0
  67. package/dist/mutations/settings/update-user-mutation.d.ts +25 -0
  68. package/dist/mutations/settings/update-user-mutation.js +35 -0
  69. package/dist/mutations/username/is-username-available-mutation.d.ts +27 -0
  70. package/dist/mutations/username/is-username-available-mutation.js +24 -0
  71. package/dist/mutations/username/sign-in-username-mutation.d.ts +75 -0
  72. package/dist/mutations/username/sign-in-username-mutation.js +29 -0
  73. package/dist/queries/auth/session-query.d.ts +71 -0
  74. package/dist/queries/auth/session-query.js +30 -0
  75. package/dist/queries/auth-query-options.d.ts +26 -15
  76. package/dist/queries/multi-session/list-device-sessions-query.d.ts +76 -0
  77. package/dist/queries/multi-session/list-device-sessions-query.js +31 -0
  78. package/dist/queries/passkey/list-passkeys-query.d.ts +74 -0
  79. package/dist/queries/passkey/list-passkeys-query.js +31 -0
  80. package/dist/queries/settings/account-info-query.d.ts +85 -0
  81. package/dist/queries/settings/account-info-query.js +31 -0
  82. package/dist/queries/settings/list-accounts-query.d.ts +76 -0
  83. package/dist/queries/settings/list-accounts-query.js +31 -0
  84. package/dist/queries/settings/list-sessions-query.d.ts +74 -0
  85. package/dist/queries/settings/list-sessions-query.js +31 -0
  86. package/dist/server/queries/auth/session-query.d.ts +57 -0
  87. package/dist/server/queries/auth/session-query.js +13 -0
  88. package/dist/server/queries/multi-session/list-device-sessions-query.d.ts +60 -0
  89. package/dist/server/queries/multi-session/list-device-sessions-query.js +12 -0
  90. package/dist/server/queries/passkey/list-passkeys-query.d.ts +60 -0
  91. package/dist/server/queries/passkey/list-passkeys-query.js +12 -0
  92. package/dist/server/queries/settings/account-info-query.d.ts +68 -0
  93. package/dist/server/queries/settings/account-info-query.js +12 -0
  94. package/dist/server/queries/settings/list-accounts-query.d.ts +60 -0
  95. package/dist/server/queries/settings/list-accounts-query.js +12 -0
  96. package/dist/server/queries/settings/list-sessions-query.d.ts +60 -0
  97. package/dist/server/queries/settings/list-sessions-query.js +12 -0
  98. package/dist/server.d.ts +7 -0
  99. package/dist/server.js +7 -0
  100. package/package.json +24 -22
  101. package/src/components/auth/auth-provider.tsx +87 -24
  102. package/src/components/{email → auth/email}/email-changed.tsx +1 -1
  103. package/src/components/{email → auth/email}/email-verification.tsx +1 -1
  104. package/src/components/{email → auth/email}/magic-link.tsx +1 -1
  105. package/src/components/{email → auth/email}/new-device.tsx +1 -1
  106. package/src/components/{email → auth/email}/otp-email.tsx +1 -1
  107. package/src/components/{email → auth/email}/password-changed.tsx +1 -1
  108. package/src/components/{email → auth/email}/reset-password.tsx +1 -1
  109. package/src/email.ts +1 -0
  110. package/src/hooks/auth/use-authenticate.ts +12 -6
  111. package/src/hooks/auth/use-user.ts +14 -9
  112. package/src/hooks/use-auth-mutation.ts +30 -12
  113. package/src/hooks/use-auth-plugin.ts +50 -0
  114. package/src/hooks/use-auth-query.ts +11 -7
  115. package/src/index.ts +33 -32
  116. package/src/lib/auth-client.ts +33 -31
  117. package/src/lib/auth-plugin.ts +75 -0
  118. package/src/lib/auth-server.ts +30 -0
  119. package/src/mutations/auth/request-password-reset-mutation.ts +58 -0
  120. package/src/mutations/auth/reset-password-mutation.ts +60 -0
  121. package/src/mutations/auth/send-verification-email-mutation.ts +58 -0
  122. package/src/mutations/auth/sign-in-email-mutation.ts +78 -0
  123. package/src/mutations/auth/sign-in-social-mutation.ts +64 -0
  124. package/src/mutations/auth/sign-out-mutation.ts +71 -0
  125. package/src/mutations/auth/sign-up-email-mutation.ts +74 -0
  126. package/src/mutations/auth-mutation-options.ts +83 -38
  127. package/src/mutations/magic-link/sign-in-magic-link-mutation.ts +59 -0
  128. package/src/mutations/multi-session/revoke-multi-session-mutation.ts +70 -0
  129. package/src/mutations/multi-session/set-active-session-mutation.ts +98 -0
  130. package/src/mutations/passkey/add-passkey-mutation.ts +66 -0
  131. package/src/mutations/passkey/delete-passkey-mutation.ts +66 -0
  132. package/src/mutations/passkey/sign-in-passkey-mutation.ts +74 -0
  133. package/src/mutations/settings/change-email-mutation.ts +67 -0
  134. package/src/mutations/settings/change-password-mutation.ts +59 -0
  135. package/src/mutations/settings/delete-user-mutation.ts +59 -0
  136. package/src/mutations/settings/link-social-mutation.ts +59 -0
  137. package/src/mutations/settings/revoke-session-mutation.ts +69 -0
  138. package/src/mutations/settings/unlink-account-mutation.ts +67 -0
  139. package/src/mutations/settings/update-user-mutation.ts +82 -0
  140. package/src/mutations/username/is-username-available-mutation.ts +62 -0
  141. package/src/mutations/username/sign-in-username-mutation.ts +74 -0
  142. package/src/queries/auth/session-query.ts +135 -0
  143. package/src/queries/auth-query-options.ts +61 -12
  144. package/src/queries/multi-session/list-device-sessions-query.ts +177 -0
  145. package/src/queries/passkey/list-passkeys-query.ts +154 -0
  146. package/src/queries/settings/account-info-query.ts +158 -0
  147. package/src/queries/settings/list-accounts-query.ts +156 -0
  148. package/src/queries/settings/list-sessions-query.ts +154 -0
  149. package/src/server/queries/auth/session-query.ts +94 -0
  150. package/src/server/queries/multi-session/list-device-sessions-query.ts +102 -0
  151. package/src/server/queries/passkey/list-passkeys-query.ts +100 -0
  152. package/src/server/queries/settings/account-info-query.ts +101 -0
  153. package/src/server/queries/settings/list-accounts-query.ts +101 -0
  154. package/src/server/queries/settings/list-sessions-query.ts +101 -0
  155. package/src/server.ts +7 -0
  156. package/dist/core.d.ts +0 -1
  157. package/dist/core.js +0 -1
  158. package/dist/hooks/auth/use-is-username-available.d.ts +0 -20
  159. package/dist/hooks/auth/use-is-username-available.js +0 -13
  160. package/dist/hooks/auth/use-request-password-reset.d.ts +0 -21
  161. package/dist/hooks/auth/use-request-password-reset.js +0 -13
  162. package/dist/hooks/auth/use-reset-password.d.ts +0 -23
  163. package/dist/hooks/auth/use-reset-password.js +0 -13
  164. package/dist/hooks/auth/use-send-verification-email.d.ts +0 -19
  165. package/dist/hooks/auth/use-send-verification-email.js +0 -13
  166. package/dist/hooks/auth/use-session.d.ts +0 -35
  167. package/dist/hooks/auth/use-session.js +0 -16
  168. package/dist/hooks/auth/use-sign-in-email.d.ts +0 -26
  169. package/dist/hooks/auth/use-sign-in-email.js +0 -17
  170. package/dist/hooks/auth/use-sign-in-magic-link.d.ts +0 -27
  171. package/dist/hooks/auth/use-sign-in-magic-link.js +0 -13
  172. package/dist/hooks/auth/use-sign-in-passkey.d.ts +0 -21
  173. package/dist/hooks/auth/use-sign-in-passkey.js +0 -17
  174. package/dist/hooks/auth/use-sign-in-social.d.ts +0 -63
  175. package/dist/hooks/auth/use-sign-in-social.js +0 -13
  176. package/dist/hooks/auth/use-sign-in-username.d.ts +0 -25
  177. package/dist/hooks/auth/use-sign-in-username.js +0 -17
  178. package/dist/hooks/auth/use-sign-out.d.ts +0 -18
  179. package/dist/hooks/auth/use-sign-out.js +0 -16
  180. package/dist/hooks/auth/use-sign-up-email.d.ts +0 -1186
  181. package/dist/hooks/auth/use-sign-up-email.js +0 -17
  182. package/dist/hooks/settings/use-account-info.d.ts +0 -17
  183. package/dist/hooks/settings/use-account-info.js +0 -18
  184. package/dist/hooks/settings/use-add-passkey.d.ts +0 -21
  185. package/dist/hooks/settings/use-add-passkey.js +0 -17
  186. package/dist/hooks/settings/use-change-email.d.ts +0 -21
  187. package/dist/hooks/settings/use-change-email.js +0 -17
  188. package/dist/hooks/settings/use-change-password.d.ts +0 -21
  189. package/dist/hooks/settings/use-change-password.js +0 -13
  190. package/dist/hooks/settings/use-delete-passkey.d.ts +0 -19
  191. package/dist/hooks/settings/use-delete-passkey.js +0 -17
  192. package/dist/hooks/settings/use-delete-user.d.ts +0 -24
  193. package/dist/hooks/settings/use-delete-user.js +0 -13
  194. package/dist/hooks/settings/use-link-social.d.ts +0 -43
  195. package/dist/hooks/settings/use-link-social.js +0 -13
  196. package/dist/hooks/settings/use-list-accounts.d.ts +0 -22
  197. package/dist/hooks/settings/use-list-accounts.js +0 -15
  198. package/dist/hooks/settings/use-list-device-sessions.d.ts +0 -34
  199. package/dist/hooks/settings/use-list-device-sessions.js +0 -15
  200. package/dist/hooks/settings/use-list-sessions.d.ts +0 -23
  201. package/dist/hooks/settings/use-list-sessions.js +0 -15
  202. package/dist/hooks/settings/use-list-user-passkeys.d.ts +0 -14
  203. package/dist/hooks/settings/use-list-user-passkeys.js +0 -15
  204. package/dist/hooks/settings/use-revoke-multi-session.d.ts +0 -19
  205. package/dist/hooks/settings/use-revoke-multi-session.js +0 -17
  206. package/dist/hooks/settings/use-revoke-session.d.ts +0 -19
  207. package/dist/hooks/settings/use-revoke-session.js +0 -17
  208. package/dist/hooks/settings/use-set-active-session.d.ts +0 -20
  209. package/dist/hooks/settings/use-set-active-session.js +0 -20
  210. package/dist/hooks/settings/use-unlink-account.d.ts +0 -21
  211. package/dist/hooks/settings/use-unlink-account.js +0 -17
  212. package/dist/hooks/settings/use-update-user.d.ts +0 -1185
  213. package/dist/hooks/settings/use-update-user.js +0 -24
  214. package/dist/lib/auth-client.js +0 -11
  215. package/dist/lib/auth-config.d.ts +0 -43
  216. package/dist/lib/auth-context.d.ts +0 -2
  217. package/dist/lib/auth-context.js +0 -6
  218. package/dist/mutations/auth/is-username-available-options.d.ts +0 -19
  219. package/dist/mutations/auth/is-username-available-options.js +0 -7
  220. package/dist/mutations/auth/request-password-reset-options.d.ts +0 -15
  221. package/dist/mutations/auth/request-password-reset-options.js +0 -7
  222. package/dist/mutations/auth/reset-password-options.d.ts +0 -17
  223. package/dist/mutations/auth/reset-password-options.js +0 -7
  224. package/dist/mutations/auth/send-verification-email-options.d.ts +0 -15
  225. package/dist/mutations/auth/send-verification-email-options.js +0 -7
  226. package/dist/mutations/auth/sign-in-email-options.d.ts +0 -23
  227. package/dist/mutations/auth/sign-in-email-options.js +0 -11
  228. package/dist/mutations/auth/sign-in-magic-link-options.d.ts +0 -23
  229. package/dist/mutations/auth/sign-in-magic-link-options.js +0 -11
  230. package/dist/mutations/auth/sign-in-passkey-options.d.ts +0 -15
  231. package/dist/mutations/auth/sign-in-passkey-options.js +0 -11
  232. package/dist/mutations/auth/sign-in-social-options.d.ts +0 -61
  233. package/dist/mutations/auth/sign-in-social-options.js +0 -11
  234. package/dist/mutations/auth/sign-in-username-options.d.ts +0 -19
  235. package/dist/mutations/auth/sign-in-username-options.js +0 -11
  236. package/dist/mutations/auth/sign-out-options.d.ts +0 -12
  237. package/dist/mutations/auth/sign-out-options.js +0 -7
  238. package/dist/mutations/auth/sign-up-email-options.d.ts +0 -1180
  239. package/dist/mutations/auth/sign-up-email-options.js +0 -11
  240. package/dist/mutations/settings/add-passkey-options.d.ts +0 -15
  241. package/dist/mutations/settings/add-passkey-options.js +0 -11
  242. package/dist/mutations/settings/change-email-options.d.ts +0 -15
  243. package/dist/mutations/settings/change-email-options.js +0 -7
  244. package/dist/mutations/settings/change-password-options.d.ts +0 -17
  245. package/dist/mutations/settings/change-password-options.js +0 -7
  246. package/dist/mutations/settings/delete-passkey-options.d.ts +0 -13
  247. package/dist/mutations/settings/delete-passkey-options.js +0 -11
  248. package/dist/mutations/settings/delete-user-options.d.ts +0 -20
  249. package/dist/mutations/settings/delete-user-options.js +0 -7
  250. package/dist/mutations/settings/link-social-options.d.ts +0 -39
  251. package/dist/mutations/settings/link-social-options.js +0 -7
  252. package/dist/mutations/settings/revoke-multi-session-options.d.ts +0 -13
  253. package/dist/mutations/settings/revoke-multi-session-options.js +0 -11
  254. package/dist/mutations/settings/revoke-session-options.d.ts +0 -13
  255. package/dist/mutations/settings/revoke-session-options.js +0 -7
  256. package/dist/mutations/settings/set-active-session-options.d.ts +0 -13
  257. package/dist/mutations/settings/set-active-session-options.js +0 -11
  258. package/dist/mutations/settings/unlink-account-options.d.ts +0 -15
  259. package/dist/mutations/settings/unlink-account-options.js +0 -7
  260. package/dist/mutations/settings/update-user-options.d.ts +0 -1182
  261. package/dist/mutations/settings/update-user-options.js +0 -7
  262. package/dist/queries/auth/session-options.d.ts +0 -110
  263. package/dist/queries/auth/session-options.js +0 -7
  264. package/dist/queries/settings/account-info-options.d.ts +0 -32
  265. package/dist/queries/settings/account-info-options.js +0 -12
  266. package/dist/queries/settings/list-accounts-options.d.ts +0 -53
  267. package/dist/queries/settings/list-accounts-options.js +0 -12
  268. package/dist/queries/settings/list-device-sessions-options.d.ts +0 -99
  269. package/dist/queries/settings/list-device-sessions-options.js +0 -12
  270. package/dist/queries/settings/list-sessions-options.d.ts +0 -54
  271. package/dist/queries/settings/list-sessions-options.js +0 -12
  272. package/dist/queries/settings/list-user-passkeys-options.d.ts +0 -18
  273. package/dist/queries/settings/list-user-passkeys-options.js +0 -12
  274. package/src/core.ts +0 -1
  275. package/src/hooks/auth/use-is-username-available.ts +0 -31
  276. package/src/hooks/auth/use-request-password-reset.ts +0 -33
  277. package/src/hooks/auth/use-reset-password.ts +0 -31
  278. package/src/hooks/auth/use-send-verification-email.ts +0 -31
  279. package/src/hooks/auth/use-session.ts +0 -31
  280. package/src/hooks/auth/use-sign-in-email.ts +0 -41
  281. package/src/hooks/auth/use-sign-in-magic-link.ts +0 -29
  282. package/src/hooks/auth/use-sign-in-passkey.ts +0 -40
  283. package/src/hooks/auth/use-sign-in-social.ts +0 -31
  284. package/src/hooks/auth/use-sign-in-username.ts +0 -40
  285. package/src/hooks/auth/use-sign-out.ts +0 -34
  286. package/src/hooks/auth/use-sign-up-email.ts +0 -40
  287. package/src/hooks/settings/use-account-info.ts +0 -40
  288. package/src/hooks/settings/use-add-passkey.ts +0 -37
  289. package/src/hooks/settings/use-change-email.ts +0 -37
  290. package/src/hooks/settings/use-change-password.ts +0 -29
  291. package/src/hooks/settings/use-delete-passkey.ts +0 -37
  292. package/src/hooks/settings/use-delete-user.ts +0 -29
  293. package/src/hooks/settings/use-link-social.ts +0 -29
  294. package/src/hooks/settings/use-list-accounts.ts +0 -39
  295. package/src/hooks/settings/use-list-device-sessions.ts +0 -39
  296. package/src/hooks/settings/use-list-sessions.ts +0 -39
  297. package/src/hooks/settings/use-list-user-passkeys.ts +0 -39
  298. package/src/hooks/settings/use-revoke-multi-session.ts +0 -39
  299. package/src/hooks/settings/use-revoke-session.ts +0 -39
  300. package/src/hooks/settings/use-set-active-session.ts +0 -58
  301. package/src/hooks/settings/use-unlink-account.ts +0 -37
  302. package/src/hooks/settings/use-update-user.ts +0 -50
  303. package/src/lib/auth-config.ts +0 -48
  304. package/src/lib/auth-context.ts +0 -6
  305. package/src/mutations/auth/is-username-available-options.ts +0 -18
  306. package/src/mutations/auth/request-password-reset-options.ts +0 -14
  307. package/src/mutations/auth/reset-password-options.ts +0 -14
  308. package/src/mutations/auth/send-verification-email-options.ts +0 -14
  309. package/src/mutations/auth/sign-in-email-options.ts +0 -19
  310. package/src/mutations/auth/sign-in-magic-link-options.ts +0 -15
  311. package/src/mutations/auth/sign-in-passkey-options.ts +0 -15
  312. package/src/mutations/auth/sign-in-social-options.ts +0 -19
  313. package/src/mutations/auth/sign-in-username-options.ts +0 -15
  314. package/src/mutations/auth/sign-out-options.ts +0 -11
  315. package/src/mutations/auth/sign-up-email-options.ts +0 -15
  316. package/src/mutations/settings/add-passkey-options.ts +0 -15
  317. package/src/mutations/settings/change-email-options.ts +0 -11
  318. package/src/mutations/settings/change-password-options.ts +0 -14
  319. package/src/mutations/settings/delete-passkey-options.ts +0 -15
  320. package/src/mutations/settings/delete-user-options.ts +0 -11
  321. package/src/mutations/settings/link-social-options.ts +0 -11
  322. package/src/mutations/settings/revoke-multi-session-options.ts +0 -15
  323. package/src/mutations/settings/revoke-session-options.ts +0 -14
  324. package/src/mutations/settings/set-active-session-options.ts +0 -15
  325. package/src/mutations/settings/unlink-account-options.ts +0 -14
  326. package/src/mutations/settings/update-user-options.ts +0 -15
  327. package/src/queries/auth/session-options.ts +0 -18
  328. package/src/queries/settings/account-info-options.ts +0 -25
  329. package/src/queries/settings/list-accounts-options.ts +0 -26
  330. package/src/queries/settings/list-device-sessions-options.ts +0 -24
  331. package/src/queries/settings/list-sessions-options.ts +0 -23
  332. package/src/queries/settings/list-user-passkeys-options.ts +0 -23
  333. /package/dist/components/{email → auth/email}/email-changed.d.ts +0 -0
  334. /package/dist/components/{email → auth/email}/email-localization.d.ts +0 -0
  335. /package/dist/components/{email → auth/email}/email-styles.d.ts +0 -0
  336. /package/dist/components/{email → auth/email}/email-verification.d.ts +0 -0
  337. /package/dist/components/{email → auth/email}/index.d.ts +0 -0
  338. /package/dist/components/{email → auth/email}/index.js +0 -0
  339. /package/dist/components/{email → auth/email}/magic-link.d.ts +0 -0
  340. /package/dist/components/{email → auth/email}/new-device.d.ts +0 -0
  341. /package/dist/components/{email → auth/email}/otp-email.d.ts +0 -0
  342. /package/dist/components/{email → auth/email}/password-changed.d.ts +0 -0
  343. /package/dist/components/{email → auth/email}/reset-password.d.ts +0 -0
  344. /package/src/components/{email → auth/email}/email-localization.tsx +0 -0
  345. /package/src/components/{email → auth/email}/email-styles.tsx +0 -0
  346. /package/src/components/{email → auth/email}/index.ts +0 -0
@@ -1,29 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signInMagicLinkOptions } from "../../mutations/auth/sign-in-magic-link-options"
6
-
7
- export type UseSignInMagicLinkParams = NonNullable<
8
- Parameters<AuthClient["signIn"]["magicLink"]>[0]
9
- >
10
-
11
- export type UseSignInMagicLinkOptions = Omit<
12
- ReturnType<typeof signInMagicLinkOptions>,
13
- "mutationKey" | "mutationFn"
14
- >
15
-
16
- /**
17
- * Hook that creates a mutation for magic-link sign-in.
18
- *
19
- * @param options - React Query options forwarded to `useMutation`.
20
- * @returns The `useMutation` result.
21
- */
22
- export function useSignInMagicLink(options?: UseSignInMagicLinkOptions) {
23
- const { authClient } = useAuth()
24
-
25
- return useMutation({
26
- ...signInMagicLinkOptions(authClient),
27
- ...options
28
- })
29
- }
@@ -1,40 +0,0 @@
1
- import { useMutation, useQueryClient } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signInPasskeyOptions } from "../../mutations/auth/sign-in-passkey-options"
6
- import { sessionOptions } from "../../queries/auth/session-options"
7
-
8
- export type UseSignInPasskeyParams = NonNullable<
9
- Parameters<AuthClient["signIn"]["passkey"]>[0]
10
- >
11
-
12
- export type UseSignInPasskeyOptions = Omit<
13
- ReturnType<typeof signInPasskeyOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for passkey sign-in.
19
- *
20
- * Resets the session query on completion so the new session is refetched.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useSignInPasskey(options?: UseSignInPasskeyOptions) {
26
- const { authClient } = useAuth()
27
- const queryClient = useQueryClient()
28
-
29
- return useMutation({
30
- ...signInPasskeyOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- queryClient.resetQueries({
34
- queryKey: sessionOptions(authClient).queryKey
35
- })
36
-
37
- await options?.onSuccess?.(...args)
38
- }
39
- })
40
- }
@@ -1,31 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signInSocialOptions } from "../../mutations/auth/sign-in-social-options"
6
-
7
- export type UseSignInSocialParams = NonNullable<
8
- Parameters<AuthClient["signIn"]["social"]>[0]
9
- >
10
-
11
- export type UseSignInSocialOptions = Omit<
12
- ReturnType<typeof signInSocialOptions>,
13
- "mutationKey" | "mutationFn"
14
- >
15
-
16
- /**
17
- * Hook that creates a mutation for social sign-in.
18
- *
19
- * The mutation initiates a social sign-in flow with the specified provider.
20
- *
21
- * @param options - React Query options forwarded to `useMutation`.
22
- * @returns The `useMutation` result.
23
- */
24
- export function useSignInSocial(options?: UseSignInSocialOptions) {
25
- const { authClient } = useAuth()
26
-
27
- return useMutation({
28
- ...signInSocialOptions(authClient),
29
- ...options
30
- })
31
- }
@@ -1,40 +0,0 @@
1
- import { useMutation, useQueryClient } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signInUsernameOptions } from "../../mutations/auth/sign-in-username-options"
6
- import { sessionOptions } from "../../queries/auth/session-options"
7
-
8
- export type UseSignInUsernameParams = NonNullable<
9
- Parameters<AuthClient["signIn"]["username"]>[0]
10
- >
11
-
12
- export type UseSignInUsernameOptions = Omit<
13
- ReturnType<typeof signInUsernameOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for username/password sign-in.
19
- *
20
- * Resets the session query on completion so the new session is refetched.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useSignInUsername(options?: UseSignInUsernameOptions) {
26
- const { authClient } = useAuth()
27
- const queryClient = useQueryClient()
28
-
29
- return useMutation({
30
- ...signInUsernameOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- queryClient.resetQueries({
34
- queryKey: sessionOptions(authClient).queryKey
35
- })
36
-
37
- await options?.onSuccess?.(...args)
38
- }
39
- })
40
- }
@@ -1,34 +0,0 @@
1
- import { useMutation, useQueryClient } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signOutOptions } from "../../mutations/auth/sign-out-options"
6
-
7
- export type UseSignOutParams = NonNullable<Parameters<AuthClient["signOut"]>[0]>
8
-
9
- export type UseSignOutOptions = Omit<
10
- ReturnType<typeof signOutOptions>,
11
- "mutationKey" | "mutationFn"
12
- >
13
-
14
- /**
15
- * Hook that creates a mutation for signing out.
16
- *
17
- * Removes all cached auth queries on completion.
18
- *
19
- * @param options - React Query options forwarded to `useMutation`.
20
- * @returns The `useMutation` result.
21
- */
22
- export function useSignOut(options?: UseSignOutOptions) {
23
- const { authClient } = useAuth()
24
- const queryClient = useQueryClient()
25
-
26
- return useMutation({
27
- ...signOutOptions(authClient),
28
- ...options,
29
- onSuccess: async (...args) => {
30
- queryClient.removeQueries({ queryKey: ["auth"] })
31
- await options?.onSuccess?.(...args)
32
- }
33
- })
34
- }
@@ -1,40 +0,0 @@
1
- import { useMutation, useQueryClient } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { signUpEmailOptions } from "../../mutations/auth/sign-up-email-options"
6
- import { sessionOptions } from "../../queries/auth/session-options"
7
-
8
- export type UseSignUpEmailParams = NonNullable<
9
- Parameters<AuthClient["signUp"]["email"]>[0]
10
- >
11
-
12
- export type UseSignUpEmailOptions = Omit<
13
- ReturnType<typeof signUpEmailOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for email/password sign-up.
19
- *
20
- * Resets the session query on success so the new session is refetched.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useSignUpEmail(options?: UseSignUpEmailOptions) {
26
- const { authClient } = useAuth()
27
- const queryClient = useQueryClient()
28
-
29
- return useMutation({
30
- ...signUpEmailOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- queryClient.resetQueries({
34
- queryKey: sessionOptions(authClient).queryKey
35
- })
36
-
37
- await options?.onSuccess?.(...args)
38
- }
39
- })
40
- }
@@ -1,40 +0,0 @@
1
- import { skipToken, useQuery } from "@tanstack/react-query"
2
- import { useAuth } from "../../components/auth/auth-provider"
3
- import type { AuthClient } from "../../lib/auth-client"
4
- import { accountInfoOptions } from "../../queries/settings/account-info-options"
5
- import { useSession } from "../auth/use-session"
6
-
7
- export type UseAccountInfoParams = NonNullable<
8
- Parameters<AuthClient["accountInfo"]>[0]
9
- >
10
-
11
- export type UseAccountInfoOptions = Omit<
12
- ReturnType<typeof accountInfoOptions>,
13
- "queryKey" | "queryFn"
14
- > &
15
- UseAccountInfoParams
16
-
17
- /**
18
- * Retrieve provider-specific info for a linked account.
19
- *
20
- * Keyed per-user; waits for the active session and `options.query.accountId`
21
- * before firing.
22
- *
23
- * @param options - Better Auth params (`query`, `fetchOptions`) and React
24
- * Query options forwarded to `useQuery`.
25
- */
26
- export function useAccountInfo(options?: UseAccountInfoOptions) {
27
- const { authClient } = useAuth()
28
- const { data: session } = useSession({ refetchOnMount: false })
29
- const userId = session?.user.id
30
-
31
- const { query, fetchOptions, ...queryOptions } = options ?? {}
32
- const accountId = query?.accountId
33
- const disabled = !userId || !accountId
34
-
35
- return useQuery({
36
- ...accountInfoOptions(authClient, userId, { query, fetchOptions }),
37
- ...(disabled && { queryFn: skipToken }),
38
- ...queryOptions
39
- })
40
- }
@@ -1,37 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { addPasskeyOptions } from "../../mutations/settings/add-passkey-options"
6
- import { useListUserPasskeys } from "./use-list-user-passkeys"
7
-
8
- export type UseAddPasskeyParams = NonNullable<
9
- Parameters<AuthClient["passkey"]["addPasskey"]>[0]
10
- >
11
-
12
- export type UseAddPasskeyOptions = Omit<
13
- ReturnType<typeof addPasskeyOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for registering a new passkey.
19
- *
20
- * Refetches the user's passkey list on success.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useAddPasskey(options?: UseAddPasskeyOptions) {
26
- const { authClient } = useAuth()
27
- const { refetch } = useListUserPasskeys()
28
-
29
- return useMutation({
30
- ...addPasskeyOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- await refetch()
34
- await options?.onSuccess?.(...args)
35
- }
36
- })
37
- }
@@ -1,37 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { changeEmailOptions } from "../../mutations/settings/change-email-options"
6
- import { useSession } from "../auth/use-session"
7
-
8
- export type UseChangeEmailParams = NonNullable<
9
- Parameters<AuthClient["changeEmail"]>[0]
10
- >
11
-
12
- export type UseChangeEmailOptions = Omit<
13
- ReturnType<typeof changeEmailOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for changing the current user's email address.
19
- *
20
- * Refetches the session on success to surface the new email.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useChangeEmail(options?: UseChangeEmailOptions) {
26
- const { authClient } = useAuth()
27
- const { refetch } = useSession({ refetchOnMount: false })
28
-
29
- return useMutation({
30
- ...changeEmailOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- await refetch()
34
- await options?.onSuccess?.(...args)
35
- }
36
- })
37
- }
@@ -1,29 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { changePasswordOptions } from "../../mutations/settings/change-password-options"
6
-
7
- export type UseChangePasswordParams = NonNullable<
8
- Parameters<AuthClient["changePassword"]>[0]
9
- >
10
-
11
- export type UseChangePasswordOptions = Omit<
12
- ReturnType<typeof changePasswordOptions>,
13
- "mutationKey" | "mutationFn"
14
- >
15
-
16
- /**
17
- * Hook that creates a mutation for changing the authenticated user's password.
18
- *
19
- * @param options - React Query options forwarded to `useMutation`.
20
- * @returns The `useMutation` result.
21
- */
22
- export function useChangePassword(options?: UseChangePasswordOptions) {
23
- const { authClient } = useAuth()
24
-
25
- return useMutation({
26
- ...changePasswordOptions(authClient),
27
- ...options
28
- })
29
- }
@@ -1,37 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { deletePasskeyOptions } from "../../mutations/settings/delete-passkey-options"
6
- import { useListUserPasskeys } from "./use-list-user-passkeys"
7
-
8
- export type UseDeletePasskeyParams = NonNullable<
9
- Parameters<AuthClient["passkey"]["deletePasskey"]>[0]
10
- >
11
-
12
- export type UseDeletePasskeyOptions = Omit<
13
- ReturnType<typeof deletePasskeyOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for deleting a passkey.
19
- *
20
- * Refetches the user's passkey list on success.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useDeletePasskey(options?: UseDeletePasskeyOptions) {
26
- const { authClient } = useAuth()
27
- const { refetch } = useListUserPasskeys()
28
-
29
- return useMutation({
30
- ...deletePasskeyOptions(authClient),
31
- ...options,
32
- onSuccess: async (...args) => {
33
- await refetch()
34
- await options?.onSuccess?.(...args)
35
- }
36
- })
37
- }
@@ -1,29 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { deleteUserOptions } from "../../mutations/settings/delete-user-options"
6
-
7
- export type UseDeleteUserParams = NonNullable<
8
- Parameters<AuthClient["deleteUser"]>[0]
9
- >
10
-
11
- export type UseDeleteUserOptions = Omit<
12
- ReturnType<typeof deleteUserOptions>,
13
- "mutationKey" | "mutationFn"
14
- >
15
-
16
- /**
17
- * Hook that creates a mutation for deleting the authenticated user account.
18
- *
19
- * @param options - React Query options forwarded to `useMutation`.
20
- * @returns The `useMutation` result.
21
- */
22
- export function useDeleteUser(options?: UseDeleteUserOptions) {
23
- const { authClient } = useAuth()
24
-
25
- return useMutation({
26
- ...deleteUserOptions(authClient),
27
- ...options
28
- })
29
- }
@@ -1,29 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { linkSocialOptions } from "../../mutations/settings/link-social-options"
6
-
7
- export type UseLinkSocialParams = NonNullable<
8
- Parameters<AuthClient["linkSocial"]>[0]
9
- >
10
-
11
- export type UseLinkSocialOptions = Omit<
12
- ReturnType<typeof linkSocialOptions>,
13
- "mutationKey" | "mutationFn"
14
- >
15
-
16
- /**
17
- * Hook that creates a mutation for linking a social provider to the current user.
18
- *
19
- * @param options - React Query options forwarded to `useMutation`.
20
- * @returns The `useMutation` result.
21
- */
22
- export function useLinkSocial(options?: UseLinkSocialOptions) {
23
- const { authClient } = useAuth()
24
-
25
- return useMutation({
26
- ...linkSocialOptions(authClient),
27
- ...options
28
- })
29
- }
@@ -1,39 +0,0 @@
1
- import { skipToken, useQuery } from "@tanstack/react-query"
2
- import { useAuth } from "../../components/auth/auth-provider"
3
- import type { AuthClient } from "../../lib/auth-client"
4
- import { listAccountsOptions } from "../../queries/settings/list-accounts-options"
5
- import { useSession } from "../auth/use-session"
6
-
7
- export type UseListAccountsParams = NonNullable<
8
- Parameters<AuthClient["listAccounts"]>[0]
9
- >
10
-
11
- export type UseListAccountsOptions = Omit<
12
- ReturnType<typeof listAccountsOptions>,
13
- "queryKey" | "queryFn"
14
- > &
15
- UseListAccountsParams
16
-
17
- /**
18
- * Retrieve the current user's linked social accounts.
19
- *
20
- * Keyed per-user; waits for the active session before firing.
21
- *
22
- * @param options - Better Auth params (`fetchOptions`) and React Query
23
- * options forwarded to `useQuery`.
24
- * @returns React Query result for the user's linked accounts.
25
- */
26
- export function useListAccounts(options?: UseListAccountsOptions) {
27
- const { authClient } = useAuth()
28
- const { data: session } = useSession({ refetchOnMount: false })
29
- const userId = session?.user.id
30
- const disabled = !userId
31
-
32
- const { fetchOptions, ...queryOptions } = options ?? {}
33
-
34
- return useQuery({
35
- ...listAccountsOptions(authClient, userId, { fetchOptions }),
36
- ...(disabled && { queryFn: skipToken }),
37
- ...queryOptions
38
- })
39
- }
@@ -1,39 +0,0 @@
1
- import { skipToken, useQuery } from "@tanstack/react-query"
2
- import { useAuth } from "../../components/auth/auth-provider"
3
- import type { AuthClient } from "../../lib/auth-client"
4
- import { listDeviceSessionsOptions } from "../../queries/settings/list-device-sessions-options"
5
- import { useSession } from "../auth/use-session"
6
-
7
- export type UseListDeviceSessionsParams = NonNullable<
8
- Parameters<AuthClient["multiSession"]["listDeviceSessions"]>[0]
9
- >
10
-
11
- export type UseListDeviceSessionsOptions = Omit<
12
- ReturnType<typeof listDeviceSessionsOptions>,
13
- "queryKey" | "queryFn"
14
- > &
15
- UseListDeviceSessionsParams
16
-
17
- /**
18
- * Retrieve the device sessions (multi-session account switcher).
19
- *
20
- * Keyed per-user; waits for the active session before firing.
21
- *
22
- * @param options - Better Auth params (`fetchOptions`) and React Query
23
- * options forwarded to `useQuery`.
24
- * @returns React Query result for the device sessions list.
25
- */
26
- export function useListDeviceSessions(options?: UseListDeviceSessionsOptions) {
27
- const { authClient } = useAuth()
28
- const { data: session } = useSession({ refetchOnMount: false })
29
- const userId = session?.user.id
30
- const disabled = !userId
31
-
32
- const { fetchOptions, ...queryOptions } = options ?? {}
33
-
34
- return useQuery({
35
- ...listDeviceSessionsOptions(authClient, userId, { fetchOptions }),
36
- ...(disabled && { queryFn: skipToken }),
37
- ...queryOptions
38
- })
39
- }
@@ -1,39 +0,0 @@
1
- import { skipToken, useQuery } from "@tanstack/react-query"
2
- import { useAuth } from "../../components/auth/auth-provider"
3
- import type { AuthClient } from "../../lib/auth-client"
4
- import { listSessionsOptions } from "../../queries/settings/list-sessions-options"
5
- import { useSession } from "../auth/use-session"
6
-
7
- export type UseListSessionsParams = NonNullable<
8
- Parameters<AuthClient["listSessions"]>[0]
9
- >
10
-
11
- export type UseListSessionsOptions = Omit<
12
- ReturnType<typeof listSessionsOptions>,
13
- "queryKey" | "queryFn"
14
- > &
15
- UseListSessionsParams
16
-
17
- /**
18
- * Retrieve the active sessions (devices where the current user is signed in).
19
- *
20
- * Keyed per-user; waits for the active session before firing.
21
- *
22
- * @param options - Better Auth params (`fetchOptions`) and React Query
23
- * options forwarded to `useQuery`.
24
- * @returns React Query result for the sessions list.
25
- */
26
- export function useListSessions(options?: UseListSessionsOptions) {
27
- const { authClient } = useAuth()
28
- const { data: session } = useSession({ refetchOnMount: false })
29
- const userId = session?.user.id
30
- const disabled = !userId
31
-
32
- const { fetchOptions, ...queryOptions } = options ?? {}
33
-
34
- return useQuery({
35
- ...listSessionsOptions(authClient, userId, { fetchOptions }),
36
- ...(disabled && { queryFn: skipToken }),
37
- ...queryOptions
38
- })
39
- }
@@ -1,39 +0,0 @@
1
- import { skipToken, useQuery } from "@tanstack/react-query"
2
- import { useAuth } from "../../components/auth/auth-provider"
3
- import type { AuthClient } from "../../lib/auth-client"
4
- import { listUserPasskeysOptions } from "../../queries/settings/list-user-passkeys-options"
5
- import { useSession } from "../auth/use-session"
6
-
7
- export type UseListUserPasskeysParams = NonNullable<
8
- Parameters<AuthClient["passkey"]["listUserPasskeys"]>[0]
9
- >
10
-
11
- export type UseListUserPasskeysOptions = Omit<
12
- ReturnType<typeof listUserPasskeysOptions>,
13
- "queryKey" | "queryFn"
14
- > &
15
- UseListUserPasskeysParams
16
-
17
- /**
18
- * Retrieve the passkeys registered for the current user.
19
- *
20
- * Keyed per-user; waits for the active session before firing.
21
- *
22
- * @param options - Better Auth params (`fetchOptions`) and React Query
23
- * options forwarded to `useQuery`.
24
- * @returns React Query result for the passkeys list.
25
- */
26
- export function useListUserPasskeys(options?: UseListUserPasskeysOptions) {
27
- const { authClient } = useAuth()
28
- const { data: session } = useSession({ refetchOnMount: false })
29
- const userId = session?.user.id
30
- const disabled = !userId
31
-
32
- const { fetchOptions, ...queryOptions } = options ?? {}
33
-
34
- return useQuery({
35
- ...listUserPasskeysOptions(authClient, userId, { fetchOptions }),
36
- ...(disabled && { queryFn: skipToken }),
37
- ...queryOptions
38
- })
39
- }
@@ -1,39 +0,0 @@
1
- import { useMutation } from "@tanstack/react-query"
2
-
3
- import { useAuth } from "../../components/auth/auth-provider"
4
- import type { AuthClient } from "../../lib/auth-client"
5
- import { revokeMultiSessionOptions } from "../../mutations/settings/revoke-multi-session-options"
6
- import { useListDeviceSessions } from "./use-list-device-sessions"
7
-
8
- export type UseRevokeMultiSessionParams = NonNullable<
9
- Parameters<AuthClient["multiSession"]["revoke"]>[0]
10
- >
11
-
12
- export type UseRevokeMultiSessionOptions = Omit<
13
- ReturnType<typeof revokeMultiSessionOptions>,
14
- "mutationKey" | "mutationFn"
15
- >
16
-
17
- /**
18
- * Hook that creates a mutation for revoking a device session in multi-session mode.
19
- *
20
- * Refetches the device sessions list on success.
21
- *
22
- * @param options - React Query options forwarded to `useMutation`.
23
- * @returns The `useMutation` result.
24
- */
25
- export function useRevokeMultiSession(options?: UseRevokeMultiSessionOptions) {
26
- const { authClient } = useAuth()
27
- const { refetch } = useListDeviceSessions({
28
- refetchOnMount: false
29
- })
30
-
31
- return useMutation({
32
- ...revokeMultiSessionOptions(authClient),
33
- ...options,
34
- onSuccess: async (...args) => {
35
- await refetch()
36
- await options?.onSuccess?.(...args)
37
- }
38
- })
39
- }