@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.
Files changed (334) hide show
  1. package/dist/components/auth/auth-context.d.ts +3 -0
  2. package/dist/components/auth/auth-context.js +4 -0
  3. package/dist/components/auth/auth-provider.d.ts +4 -4
  4. package/dist/components/auth/auth-provider.js +65 -41
  5. package/dist/components/auth/email/email-changed.d.ts +2 -2
  6. package/dist/components/auth/email/email-changed.js +68 -154
  7. package/dist/components/auth/email/email-localization.d.ts +11 -3
  8. package/dist/components/auth/email/email-localization.js +25 -18
  9. package/dist/components/auth/email/email-styles.js +77 -52
  10. package/dist/components/auth/email/email-verification.d.ts +2 -2
  11. package/dist/components/auth/email/email-verification.js +73 -138
  12. package/dist/components/auth/email/index.d.ts +10 -9
  13. package/dist/components/auth/email/index.js +10 -9
  14. package/dist/components/auth/email/magic-link.d.ts +2 -2
  15. package/dist/components/auth/email/magic-link.js +70 -139
  16. package/dist/components/auth/email/new-device.d.ts +2 -2
  17. package/dist/components/auth/email/new-device.js +88 -221
  18. package/dist/components/auth/email/organization-invitation.d.ts +121 -0
  19. package/dist/components/auth/email/organization-invitation.js +110 -0
  20. package/dist/components/auth/email/otp-email.d.ts +2 -2
  21. package/dist/components/auth/email/otp-email.js +63 -127
  22. package/dist/components/auth/email/password-changed.d.ts +2 -2
  23. package/dist/components/auth/email/password-changed.js +74 -157
  24. package/dist/components/auth/email/reset-password.d.ts +2 -2
  25. package/dist/components/auth/email/reset-password.js +66 -138
  26. package/dist/components/auth/fetch-options-provider.d.ts +1 -1
  27. package/dist/components/auth/fetch-options-provider.js +28 -27
  28. package/dist/components/icons/apple.d.ts +1 -1
  29. package/dist/components/icons/apple.js +9 -16
  30. package/dist/components/icons/atlassian.d.ts +1 -1
  31. package/dist/components/icons/atlassian.js +13 -38
  32. package/dist/components/icons/cognito.d.ts +1 -1
  33. package/dist/components/icons/cognito.js +9 -19
  34. package/dist/components/icons/discord.d.ts +1 -1
  35. package/dist/components/icons/discord.js +9 -16
  36. package/dist/components/icons/dropbox.d.ts +1 -1
  37. package/dist/components/icons/dropbox.js +9 -16
  38. package/dist/components/icons/facebook.d.ts +1 -1
  39. package/dist/components/icons/facebook.js +11 -19
  40. package/dist/components/icons/figma.d.ts +1 -1
  41. package/dist/components/icons/figma.js +12 -34
  42. package/dist/components/icons/github.d.ts +1 -1
  43. package/dist/components/icons/github.js +11 -16
  44. package/dist/components/icons/gitlab.d.ts +1 -1
  45. package/dist/components/icons/gitlab.js +9 -30
  46. package/dist/components/icons/google.d.ts +1 -1
  47. package/dist/components/icons/google.js +9 -39
  48. package/dist/components/icons/huggingface.d.ts +1 -1
  49. package/dist/components/icons/huggingface.js +9 -38
  50. package/dist/components/icons/index.d.ts +35 -35
  51. package/dist/components/icons/index.js +35 -35
  52. package/dist/components/icons/kakao.d.ts +1 -1
  53. package/dist/components/icons/kakao.js +11 -16
  54. package/dist/components/icons/kick.d.ts +1 -1
  55. package/dist/components/icons/kick.js +11 -20
  56. package/dist/components/icons/line.d.ts +1 -1
  57. package/dist/components/icons/line.js +9 -16
  58. package/dist/components/icons/linear.d.ts +1 -1
  59. package/dist/components/icons/linear.js +9 -16
  60. package/dist/components/icons/linkedin.d.ts +1 -1
  61. package/dist/components/icons/linkedin.js +9 -33
  62. package/dist/components/icons/microsoft.d.ts +1 -1
  63. package/dist/components/icons/microsoft.js +9 -30
  64. package/dist/components/icons/naver.d.ts +1 -1
  65. package/dist/components/icons/naver.js +9 -16
  66. package/dist/components/icons/notion.d.ts +1 -1
  67. package/dist/components/icons/notion.js +9 -16
  68. package/dist/components/icons/paybin.d.ts +1 -1
  69. package/dist/components/icons/paybin.js +8 -32
  70. package/dist/components/icons/paypal.d.ts +1 -1
  71. package/dist/components/icons/paypal.js +9 -30
  72. package/dist/components/icons/polar.d.ts +1 -1
  73. package/dist/components/icons/polar.js +9 -24
  74. package/dist/components/icons/railway.d.ts +1 -1
  75. package/dist/components/icons/railway.js +9 -16
  76. package/dist/components/icons/reddit.d.ts +1 -1
  77. package/dist/components/icons/reddit.js +9 -21
  78. package/dist/components/icons/roblox.d.ts +1 -1
  79. package/dist/components/icons/roblox.js +12 -17
  80. package/dist/components/icons/salesforce.d.ts +1 -1
  81. package/dist/components/icons/salesforce.js +9 -16
  82. package/dist/components/icons/slack.d.ts +1 -1
  83. package/dist/components/icons/slack.js +9 -30
  84. package/dist/components/icons/spotify.d.ts +1 -1
  85. package/dist/components/icons/spotify.js +9 -16
  86. package/dist/components/icons/tiktok.d.ts +1 -1
  87. package/dist/components/icons/tiktok.js +10 -23
  88. package/dist/components/icons/twitch.d.ts +1 -1
  89. package/dist/components/icons/twitch.js +12 -43
  90. package/dist/components/icons/vercel.d.ts +1 -1
  91. package/dist/components/icons/vercel.js +9 -16
  92. package/dist/components/icons/vk.d.ts +1 -1
  93. package/dist/components/icons/vk.js +9 -16
  94. package/dist/components/icons/wechat.d.ts +1 -1
  95. package/dist/components/icons/wechat.js +9 -16
  96. package/dist/components/icons/x.d.ts +1 -1
  97. package/dist/components/icons/x.js +9 -16
  98. package/dist/components/icons/zoom.d.ts +1 -1
  99. package/dist/components/icons/zoom.js +11 -69
  100. package/dist/components/mutation-invalidator.d.ts +1 -0
  101. package/dist/components/mutation-invalidator.js +31 -0
  102. package/dist/components/settings/account/theme-preview.js +7 -286
  103. package/dist/email.d.ts +1 -1
  104. package/dist/email.js +1 -11
  105. package/dist/hooks/auth/use-authenticate.d.ts +3 -3
  106. package/dist/hooks/auth/use-authenticate.js +28 -22
  107. package/dist/hooks/auth/use-user.d.ts +34 -34
  108. package/dist/hooks/auth/use-user.js +14 -10
  109. package/dist/hooks/use-auth-mutation.d.ts +4 -4
  110. package/dist/hooks/use-auth-mutation.js +18 -10
  111. package/dist/hooks/use-auth-plugin.d.ts +1 -1
  112. package/dist/hooks/use-auth-plugin.js +26 -8
  113. package/dist/hooks/use-auth-query.d.ts +3 -3
  114. package/dist/hooks/use-auth-query.js +20 -14
  115. package/dist/index.d.ts +48 -45
  116. package/dist/index.js +47 -79
  117. package/dist/lib/auth-client.d.ts +7 -4
  118. package/dist/lib/auth-client.js +1 -0
  119. package/dist/lib/auth-plugin.d.ts +19 -3
  120. package/dist/lib/auth-plugin.js +1 -0
  121. package/dist/lib/auth-server.d.ts +10 -3
  122. package/dist/lib/auth-server.js +1 -0
  123. package/dist/lib/provider-icons.d.ts +2 -2
  124. package/dist/lib/provider-icons.js +47 -75
  125. package/dist/lib/settings-tab.d.ts +19 -0
  126. package/dist/lib/settings-tab.js +1 -0
  127. package/dist/lib/utils.d.ts +1 -1
  128. package/dist/lib/utils.js +4 -7
  129. package/dist/mutations/api-key/create-api-key-mutation.d.ts +9 -7
  130. package/dist/mutations/api-key/create-api-key-mutation.js +37 -27
  131. package/dist/mutations/api-key/delete-api-key-mutation.d.ts +10 -6
  132. package/dist/mutations/api-key/delete-api-key-mutation.js +37 -27
  133. package/dist/mutations/auth/request-password-reset-mutation.d.ts +4 -4
  134. package/dist/mutations/auth/request-password-reset-mutation.js +31 -22
  135. package/dist/mutations/auth/reset-password-mutation.d.ts +4 -4
  136. package/dist/mutations/auth/reset-password-mutation.js +32 -22
  137. package/dist/mutations/auth/send-verification-email-mutation.d.ts +4 -4
  138. package/dist/mutations/auth/send-verification-email-mutation.js +31 -22
  139. package/dist/mutations/auth/sign-in-email-mutation.d.ts +10 -10
  140. package/dist/mutations/auth/sign-in-email-mutation.js +38 -27
  141. package/dist/mutations/auth/sign-in-social-mutation.d.ts +6 -6
  142. package/dist/mutations/auth/sign-in-social-mutation.js +36 -22
  143. package/dist/mutations/auth/sign-out-mutation.d.ts +9 -7
  144. package/dist/mutations/auth/sign-out-mutation.js +39 -26
  145. package/dist/mutations/auth/sign-up-email-mutation.d.ts +12 -12
  146. package/dist/mutations/auth/sign-up-email-mutation.js +34 -27
  147. package/dist/mutations/auth-mutation-options.d.ts +2 -2
  148. package/dist/mutations/auth-mutation-options.js +22 -18
  149. package/dist/mutations/magic-link/sign-in-magic-link-mutation.d.ts +4 -4
  150. package/dist/mutations/magic-link/sign-in-magic-link-mutation.js +31 -22
  151. package/dist/mutations/multi-session/revoke-multi-session-mutation.d.ts +8 -8
  152. package/dist/mutations/multi-session/revoke-multi-session-mutation.js +37 -27
  153. package/dist/mutations/multi-session/set-active-session-mutation.d.ts +8 -9
  154. package/dist/mutations/multi-session/set-active-session-mutation.js +38 -29
  155. package/dist/mutations/organization/accept-invitation-mutation.d.ts +43 -0
  156. package/dist/mutations/organization/accept-invitation-mutation.js +32 -0
  157. package/dist/mutations/organization/cancel-invitation-mutation.d.ts +25 -0
  158. package/dist/mutations/organization/cancel-invitation-mutation.js +28 -0
  159. package/dist/mutations/organization/check-slug-mutation.d.ts +21 -0
  160. package/dist/mutations/organization/check-slug-mutation.js +30 -0
  161. package/dist/mutations/organization/create-organization-mutation.d.ts +39 -0
  162. package/dist/mutations/organization/create-organization-mutation.js +29 -0
  163. package/dist/mutations/organization/delete-organization-mutation.d.ts +21 -0
  164. package/dist/mutations/organization/delete-organization-mutation.js +29 -0
  165. package/dist/mutations/organization/index.d.ts +12 -0
  166. package/dist/mutations/organization/index.js +12 -0
  167. package/dist/mutations/organization/invite-member-mutation.d.ts +43 -0
  168. package/dist/mutations/organization/invite-member-mutation.js +35 -0
  169. package/dist/mutations/organization/leave-organization-mutation.d.ts +65 -0
  170. package/dist/mutations/organization/leave-organization-mutation.js +32 -0
  171. package/dist/mutations/organization/reject-invitation-mutation.d.ts +31 -0
  172. package/dist/mutations/organization/reject-invitation-mutation.js +25 -0
  173. package/dist/mutations/organization/remove-member-mutation.d.ts +35 -0
  174. package/dist/mutations/organization/remove-member-mutation.js +29 -0
  175. package/dist/mutations/organization/set-active-organization-mutation.d.ts +71 -0
  176. package/dist/mutations/organization/set-active-organization-mutation.js +72 -0
  177. package/dist/mutations/organization/update-member-role-mutation.d.ts +31 -0
  178. package/dist/mutations/organization/update-member-role-mutation.js +36 -0
  179. package/dist/mutations/organization/update-organization-mutation.d.ts +21 -0
  180. package/dist/mutations/organization/update-organization-mutation.js +36 -0
  181. package/dist/mutations/passkey/add-passkey-mutation.d.ts +16 -16
  182. package/dist/mutations/passkey/add-passkey-mutation.js +38 -27
  183. package/dist/mutations/passkey/delete-passkey-mutation.d.ts +8 -8
  184. package/dist/mutations/passkey/delete-passkey-mutation.js +37 -27
  185. package/dist/mutations/passkey/sign-in-passkey-mutation.d.ts +24 -24
  186. package/dist/mutations/passkey/sign-in-passkey-mutation.js +36 -27
  187. package/dist/mutations/settings/change-email-mutation.d.ts +9 -8
  188. package/dist/mutations/settings/change-email-mutation.js +35 -27
  189. package/dist/mutations/settings/change-password-mutation.d.ts +6 -6
  190. package/dist/mutations/settings/change-password-mutation.js +31 -22
  191. package/dist/mutations/settings/delete-user-mutation.d.ts +4 -4
  192. package/dist/mutations/settings/delete-user-mutation.js +31 -22
  193. package/dist/mutations/settings/link-social-mutation.d.ts +4 -4
  194. package/dist/mutations/settings/link-social-mutation.js +31 -22
  195. package/dist/mutations/settings/revoke-session-mutation.d.ts +8 -8
  196. package/dist/mutations/settings/revoke-session-mutation.js +37 -27
  197. package/dist/mutations/settings/unlink-account-mutation.d.ts +8 -8
  198. package/dist/mutations/settings/unlink-account-mutation.js +37 -27
  199. package/dist/mutations/settings/update-user-mutation.d.ts +8 -8
  200. package/dist/mutations/settings/update-user-mutation.js +34 -33
  201. package/dist/mutations/username/is-username-available-mutation.d.ts +4 -4
  202. package/dist/mutations/username/is-username-available-mutation.js +34 -22
  203. package/dist/mutations/username/sign-in-username-mutation.d.ts +10 -10
  204. package/dist/mutations/username/sign-in-username-mutation.js +35 -27
  205. package/dist/plugins/captcha-plugin.d.ts +3 -3
  206. package/dist/plugins/captcha-plugin.js +31 -26
  207. package/dist/plugins.d.ts +1 -1
  208. package/dist/plugins.js +1 -2
  209. package/dist/queries/api-key/list-api-keys-query.d.ts +20 -11
  210. package/dist/queries/api-key/list-api-keys-query.js +52 -29
  211. package/dist/queries/auth/session-query.d.ts +6 -6
  212. package/dist/queries/auth/session-query.js +70 -28
  213. package/dist/queries/auth-query-options.d.ts +2 -2
  214. package/dist/queries/auth-query-options.js +20 -16
  215. package/dist/queries/multi-session/list-device-sessions-query.d.ts +8 -8
  216. package/dist/queries/multi-session/list-device-sessions-query.js +83 -29
  217. package/dist/queries/organization/active-organization-query.d.ts +39 -0
  218. package/dist/queries/organization/active-organization-query.js +37 -0
  219. package/dist/queries/organization/full-organization-query.d.ts +37 -0
  220. package/dist/queries/organization/full-organization-query.js +31 -0
  221. package/dist/queries/organization/has-permission-query.d.ts +21 -0
  222. package/dist/queries/organization/has-permission-query.js +38 -0
  223. package/dist/queries/organization/index.d.ts +7 -0
  224. package/dist/queries/organization/index.js +7 -0
  225. package/dist/queries/organization/list-invitations-query.d.ts +29 -0
  226. package/dist/queries/organization/list-invitations-query.js +37 -0
  227. package/dist/queries/organization/list-members-query.d.ts +61 -0
  228. package/dist/queries/organization/list-members-query.js +37 -0
  229. package/dist/queries/organization/list-organizations-query.d.ts +22 -0
  230. package/dist/queries/organization/list-organizations-query.js +31 -0
  231. package/dist/queries/organization/list-user-invitations-query.d.ts +29 -0
  232. package/dist/queries/organization/list-user-invitations-query.js +31 -0
  233. package/dist/queries/passkey/list-passkeys-query.d.ts +8 -8
  234. package/dist/queries/passkey/list-passkeys-query.js +81 -29
  235. package/dist/queries/settings/account-info-query.d.ts +6 -6
  236. package/dist/queries/settings/account-info-query.js +85 -29
  237. package/dist/queries/settings/list-accounts-query.d.ts +6 -6
  238. package/dist/queries/settings/list-accounts-query.js +83 -29
  239. package/dist/queries/settings/list-sessions-query.d.ts +6 -6
  240. package/dist/queries/settings/list-sessions-query.js +81 -29
  241. package/dist/server/queries/api-key/list-api-keys-query.d.ts +83 -0
  242. package/dist/server/queries/api-key/list-api-keys-query.js +49 -0
  243. package/dist/server/queries/auth/session-query.d.ts +5 -5
  244. package/dist/server/queries/auth/session-query.js +50 -12
  245. package/dist/server/queries/multi-session/list-device-sessions-query.d.ts +7 -7
  246. package/dist/server/queries/multi-session/list-device-sessions-query.js +53 -11
  247. package/dist/server/queries/organization/active-organization-query.d.ts +61 -0
  248. package/dist/server/queries/organization/active-organization-query.js +25 -0
  249. package/dist/server/queries/organization/full-organization-query.d.ts +42 -0
  250. package/dist/server/queries/organization/full-organization-query.js +21 -0
  251. package/dist/server/queries/organization/has-permission-query.d.ts +66 -0
  252. package/dist/server/queries/organization/has-permission-query.js +23 -0
  253. package/dist/server/queries/organization/list-invitations-query.d.ts +34 -0
  254. package/dist/server/queries/organization/list-invitations-query.js +21 -0
  255. package/dist/server/queries/organization/list-members-query.d.ts +66 -0
  256. package/dist/server/queries/organization/list-members-query.js +21 -0
  257. package/dist/server/queries/organization/list-organizations-query.d.ts +27 -0
  258. package/dist/server/queries/organization/list-organizations-query.js +21 -0
  259. package/dist/server/queries/organization/list-user-invitations-query.d.ts +34 -0
  260. package/dist/server/queries/organization/list-user-invitations-query.js +21 -0
  261. package/dist/server/queries/passkey/list-passkeys-query.d.ts +7 -7
  262. package/dist/server/queries/passkey/list-passkeys-query.js +53 -11
  263. package/dist/server/queries/settings/account-info-query.d.ts +5 -5
  264. package/dist/server/queries/settings/account-info-query.js +53 -11
  265. package/dist/server/queries/settings/list-accounts-query.d.ts +5 -5
  266. package/dist/server/queries/settings/list-accounts-query.js +53 -11
  267. package/dist/server/queries/settings/list-sessions-query.d.ts +5 -5
  268. package/dist/server/queries/settings/list-sessions-query.js +53 -11
  269. package/dist/server.d.ts +15 -7
  270. package/dist/server.js +14 -7
  271. package/package.json +20 -17
  272. package/src/components/auth/auth-context.tsx +7 -0
  273. package/src/components/auth/auth-provider.tsx +19 -31
  274. package/src/components/auth/email/email-localization.tsx +5 -3
  275. package/src/components/auth/email/index.ts +1 -0
  276. package/src/components/auth/email/organization-invitation.tsx +454 -0
  277. package/src/components/mutation-invalidator.tsx +67 -0
  278. package/src/index.ts +3 -0
  279. package/src/lib/auth-client.ts +7 -0
  280. package/src/lib/auth-plugin.ts +17 -0
  281. package/src/lib/auth-server.ts +17 -1
  282. package/src/lib/settings-tab.ts +21 -0
  283. package/src/mutations/api-key/create-api-key-mutation.ts +34 -19
  284. package/src/mutations/api-key/delete-api-key-mutation.ts +36 -19
  285. package/src/mutations/auth/sign-in-email-mutation.ts +18 -22
  286. package/src/mutations/auth/sign-out-mutation.ts +19 -13
  287. package/src/mutations/auth/sign-up-email-mutation.ts +18 -22
  288. package/src/mutations/multi-session/revoke-multi-session-mutation.ts +31 -20
  289. package/src/mutations/multi-session/set-active-session-mutation.ts +25 -44
  290. package/src/mutations/organization/accept-invitation-mutation.ts +71 -0
  291. package/src/mutations/organization/cancel-invitation-mutation.ts +67 -0
  292. package/src/mutations/organization/check-slug-mutation.ts +55 -0
  293. package/src/mutations/organization/create-organization-mutation.ts +71 -0
  294. package/src/mutations/organization/delete-organization-mutation.ts +71 -0
  295. package/src/mutations/organization/index.ts +12 -0
  296. package/src/mutations/organization/invite-member-mutation.ts +81 -0
  297. package/src/mutations/organization/leave-organization-mutation.ts +74 -0
  298. package/src/mutations/organization/reject-invitation-mutation.ts +64 -0
  299. package/src/mutations/organization/remove-member-mutation.ts +67 -0
  300. package/src/mutations/organization/set-active-organization-mutation.ts +142 -0
  301. package/src/mutations/organization/update-member-role-mutation.ts +81 -0
  302. package/src/mutations/organization/update-organization-mutation.ts +84 -0
  303. package/src/mutations/passkey/add-passkey-mutation.ts +28 -17
  304. package/src/mutations/passkey/delete-passkey-mutation.ts +27 -17
  305. package/src/mutations/passkey/sign-in-passkey-mutation.ts +18 -21
  306. package/src/mutations/settings/change-email-mutation.ts +22 -18
  307. package/src/mutations/settings/delete-user-mutation.ts +2 -2
  308. package/src/mutations/settings/revoke-session-mutation.ts +24 -19
  309. package/src/mutations/settings/unlink-account-mutation.ts +24 -17
  310. package/src/mutations/settings/update-user-mutation.ts +18 -30
  311. package/src/mutations/username/is-username-available-mutation.ts +2 -2
  312. package/src/mutations/username/sign-in-username-mutation.ts +20 -23
  313. package/src/queries/api-key/list-api-keys-query.ts +20 -8
  314. package/src/queries/multi-session/list-device-sessions-query.ts +2 -2
  315. package/src/queries/organization/active-organization-query.ts +140 -0
  316. package/src/queries/organization/full-organization-query.ts +113 -0
  317. package/src/queries/organization/has-permission-query.ts +124 -0
  318. package/src/queries/organization/index.ts +7 -0
  319. package/src/queries/organization/list-invitations-query.ts +133 -0
  320. package/src/queries/organization/list-members-query.ts +133 -0
  321. package/src/queries/organization/list-organizations-query.ts +122 -0
  322. package/src/queries/organization/list-user-invitations-query.ts +122 -0
  323. package/src/queries/passkey/list-passkeys-query.ts +2 -2
  324. package/src/server/queries/api-key/list-api-keys-query.ts +94 -0
  325. package/src/server/queries/multi-session/list-device-sessions-query.ts +2 -2
  326. package/src/server/queries/organization/active-organization-query.ts +92 -0
  327. package/src/server/queries/organization/full-organization-query.ts +64 -0
  328. package/src/server/queries/organization/has-permission-query.ts +66 -0
  329. package/src/server/queries/organization/list-invitations-query.ts +81 -0
  330. package/src/server/queries/organization/list-members-query.ts +75 -0
  331. package/src/server/queries/organization/list-organizations-query.ts +67 -0
  332. package/src/server/queries/organization/list-user-invitations-query.ts +68 -0
  333. package/src/server/queries/passkey/list-passkeys-query.ts +2 -2
  334. package/src/server.ts +8 -0
@@ -0,0 +1,67 @@
1
+ import {
2
+ organizationMutationKeys,
3
+ organizationQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
10
+ import type { BetterFetchError } from "better-auth/react"
11
+
12
+ import type { OrganizationAuthClient } from "../../lib/auth-client"
13
+ import { useSession } from "../../queries/auth/session-query"
14
+
15
+ export type RemoveMemberParams<TAuthClient extends OrganizationAuthClient> =
16
+ Parameters<TAuthClient["organization"]["removeMember"]>[0]
17
+
18
+ export type RemoveMemberOptions<TAuthClient extends OrganizationAuthClient> =
19
+ Omit<
20
+ ReturnType<typeof removeMemberOptions<TAuthClient>>,
21
+ "mutationKey" | "mutationFn" | "meta"
22
+ >
23
+
24
+ export function removeMemberOptions<TAuthClient extends OrganizationAuthClient>(
25
+ authClient: TAuthClient
26
+ ) {
27
+ const mutationKey = organizationMutationKeys.removeMember
28
+
29
+ const mutationFn = (params: RemoveMemberParams<TAuthClient>) =>
30
+ authClient.organization.removeMember({
31
+ ...params,
32
+ fetchOptions: { ...params?.fetchOptions, throw: true }
33
+ })
34
+
35
+ return mutationOptions<
36
+ Awaited<ReturnType<typeof mutationFn>>,
37
+ BetterFetchError,
38
+ Parameters<typeof mutationFn>[0]
39
+ >({
40
+ mutationKey,
41
+ mutationFn
42
+ })
43
+ }
44
+
45
+ export function useRemoveMember<TAuthClient extends OrganizationAuthClient>(
46
+ authClient: TAuthClient,
47
+ options?: RemoveMemberOptions<TAuthClient>,
48
+ queryClient?: QueryClient
49
+ ) {
50
+ const { data: session } = useSession(authClient, undefined, queryClient)
51
+ const userId = session?.user.id
52
+
53
+ return useMutation(
54
+ {
55
+ ...removeMemberOptions(authClient),
56
+ ...options,
57
+ meta: {
58
+ awaits: [
59
+ organizationQueryKeys.members.all(userId),
60
+ organizationQueryKeys.fullDetails(userId)
61
+ ],
62
+ invalidates: [organizationQueryKeys.lists(userId)]
63
+ }
64
+ },
65
+ queryClient
66
+ )
67
+ }
@@ -0,0 +1,142 @@
1
+ import {
2
+ organizationMutationKeys,
3
+ organizationQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
10
+ import type { BetterFetchError } from "better-auth/react"
11
+
12
+ import type { OrganizationAuthClient } from "../../lib/auth-client"
13
+ import { useSession } from "../../queries/auth/session-query"
14
+ import { useListOrganizations } from "../../queries/organization"
15
+
16
+ export type SetActiveOrganizationParams<
17
+ TAuthClient extends OrganizationAuthClient
18
+ > = Parameters<TAuthClient["organization"]["setActive"]>[0]
19
+
20
+ export type SetActiveOrganizationOptions<
21
+ TAuthClient extends OrganizationAuthClient
22
+ > = Omit<
23
+ ReturnType<typeof setActiveOrganizationOptions<TAuthClient>>,
24
+ "mutationKey" | "mutationFn" | "meta"
25
+ >
26
+
27
+ export function setActiveOrganizationOptions<
28
+ TAuthClient extends OrganizationAuthClient
29
+ >(authClient: TAuthClient) {
30
+ const mutationKey = organizationMutationKeys.setActive
31
+
32
+ const mutationFn = (params: SetActiveOrganizationParams<TAuthClient>) =>
33
+ authClient.organization.setActive({
34
+ ...params,
35
+ fetchOptions: { ...params?.fetchOptions, throw: true }
36
+ })
37
+
38
+ return mutationOptions<
39
+ Awaited<ReturnType<typeof mutationFn>>,
40
+ BetterFetchError,
41
+ Parameters<typeof mutationFn>[0]
42
+ >({
43
+ mutationKey,
44
+ mutationFn
45
+ })
46
+ }
47
+
48
+ export function useSetActiveOrganization<
49
+ TAuthClient extends OrganizationAuthClient
50
+ >(
51
+ authClient: TAuthClient,
52
+ options?: SetActiveOrganizationOptions<TAuthClient>,
53
+ queryClient?: QueryClient
54
+ ) {
55
+ const { data: session } = useSession(authClient, undefined, queryClient)
56
+ const userId = session?.user.id
57
+ const { data: organizations } = useListOrganizations(
58
+ authClient,
59
+ undefined,
60
+ queryClient
61
+ )
62
+
63
+ return useMutation(
64
+ {
65
+ ...setActiveOrganizationOptions(authClient),
66
+ ...options,
67
+ onMutate: async (variables, context) => {
68
+ // Cancel any outgoing refetches across every slug-partitioned
69
+ // active-organization cache entry so they don't overwrite our
70
+ // optimistic update.
71
+ await context.client.cancelQueries({
72
+ queryKey: organizationQueryKeys.activeOrganizations(userId)
73
+ })
74
+
75
+ // Snapshot every slug-partitioned variant so the rollback hits
76
+ // whichever cache entry the UI is actually subscribed to (the
77
+ // entry's key is `[..., 'active', { organizationSlug }]` when the
78
+ // plugin's slug option is set, and `[..., 'active', null]`
79
+ // otherwise).
80
+ const previousOrganizations = context.client.getQueriesData({
81
+ queryKey: organizationQueryKeys.activeOrganizations(userId)
82
+ })
83
+
84
+ // Optimistically update to the new value
85
+ if (variables?.organizationId === null) {
86
+ context.client.setQueriesData(
87
+ { queryKey: organizationQueryKeys.activeOrganizations(userId) },
88
+ null
89
+ )
90
+
91
+ return { previousOrganizations }
92
+ }
93
+
94
+ const newOrganization = organizations?.find(
95
+ (organization) =>
96
+ (variables?.organizationId !== undefined &&
97
+ organization.id === variables.organizationId) ||
98
+ (variables?.organizationSlug !== undefined &&
99
+ organization.slug === variables.organizationSlug)
100
+ )
101
+
102
+ if (newOrganization) {
103
+ context.client.setQueriesData(
104
+ { queryKey: organizationQueryKeys.activeOrganizations(userId) },
105
+ newOrganization
106
+ )
107
+ }
108
+
109
+ return { previousOrganizations }
110
+ },
111
+ // If the mutation fails,
112
+ // use the result returned from onMutate to roll back
113
+ onError: (error, variables, onMutateResult, context) => {
114
+ const previousOrganizations = onMutateResult?.previousOrganizations
115
+
116
+ if (previousOrganizations?.length && error.error) {
117
+ for (const [queryKey, data] of previousOrganizations) {
118
+ context.client.setQueryData(queryKey, data)
119
+ }
120
+ }
121
+
122
+ return options?.onError?.(error, variables, onMutateResult, context)
123
+ },
124
+ // Always refetch after error or success — invalidate every
125
+ // slug-partitioned variant via the broader prefix.
126
+ onSettled: async (data, error, variables, onMutateResult, context) => {
127
+ await context.client.invalidateQueries({
128
+ queryKey: organizationQueryKeys.activeOrganizations(userId)
129
+ })
130
+
131
+ return options?.onSettled?.(
132
+ data,
133
+ error,
134
+ variables,
135
+ onMutateResult,
136
+ context
137
+ )
138
+ }
139
+ },
140
+ queryClient
141
+ )
142
+ }
@@ -0,0 +1,81 @@
1
+ import {
2
+ organizationMutationKeys,
3
+ organizationQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
10
+ import type { BetterFetchError } from "better-auth/react"
11
+
12
+ import type { OrganizationAuthClient } from "../../lib/auth-client"
13
+ import { useSession } from "../../queries/auth/session-query"
14
+ import { useActiveOrganization } from "../../queries/organization"
15
+
16
+ export type UpdateMemberRoleParams<TAuthClient extends OrganizationAuthClient> =
17
+ Parameters<TAuthClient["organization"]["updateMemberRole"]>[0]
18
+
19
+ export type UpdateMemberRoleOptions<
20
+ TAuthClient extends OrganizationAuthClient
21
+ > = Omit<
22
+ ReturnType<typeof updateMemberRoleOptions<TAuthClient>>,
23
+ "mutationKey" | "mutationFn" | "meta"
24
+ >
25
+
26
+ export function updateMemberRoleOptions<
27
+ TAuthClient extends OrganizationAuthClient
28
+ >(authClient: TAuthClient) {
29
+ const mutationKey = organizationMutationKeys.updateMemberRole
30
+
31
+ const mutationFn = (params: UpdateMemberRoleParams<TAuthClient>) =>
32
+ authClient.organization.updateMemberRole({
33
+ ...params,
34
+ fetchOptions: { ...params?.fetchOptions, throw: true }
35
+ })
36
+
37
+ return mutationOptions<
38
+ Awaited<ReturnType<typeof mutationFn>>,
39
+ BetterFetchError,
40
+ Parameters<typeof mutationFn>[0]
41
+ >({
42
+ mutationKey,
43
+ mutationFn
44
+ })
45
+ }
46
+
47
+ export function useUpdateMemberRole<TAuthClient extends OrganizationAuthClient>(
48
+ authClient: TAuthClient,
49
+ options?: UpdateMemberRoleOptions<TAuthClient>,
50
+ queryClient?: QueryClient
51
+ ) {
52
+ const { data: session } = useSession(authClient, undefined, queryClient)
53
+ const userId = session?.user.id
54
+
55
+ const { data: activeOrganization } = useActiveOrganization(
56
+ authClient,
57
+ undefined,
58
+ queryClient
59
+ )
60
+
61
+ return useMutation(
62
+ {
63
+ ...updateMemberRoleOptions(authClient),
64
+ ...options,
65
+ mutationFn: (params: UpdateMemberRoleParams<TAuthClient>) =>
66
+ authClient.organization.updateMemberRole({
67
+ ...params,
68
+ organizationId: params?.organizationId ?? activeOrganization?.id,
69
+ fetchOptions: { ...params?.fetchOptions, throw: true }
70
+ }),
71
+ meta: {
72
+ awaits: [
73
+ organizationQueryKeys.members.all(userId),
74
+ organizationQueryKeys.fullDetails(userId)
75
+ ],
76
+ invalidates: [organizationQueryKeys.permissions.all(userId)]
77
+ }
78
+ },
79
+ queryClient
80
+ )
81
+ }
@@ -0,0 +1,84 @@
1
+ import {
2
+ organizationMutationKeys,
3
+ organizationQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
10
+ import type { BetterFetchError } from "better-auth/react"
11
+
12
+ import type { OrganizationAuthClient } from "../../lib/auth-client"
13
+ import { useSession } from "../../queries/auth/session-query"
14
+ import { useActiveOrganization } from "../../queries/organization"
15
+
16
+ export type UpdateOrganizationParams<
17
+ TAuthClient extends OrganizationAuthClient
18
+ > = Parameters<TAuthClient["organization"]["update"]>[0]
19
+
20
+ export type UpdateOrganizationOptions<
21
+ TAuthClient extends OrganizationAuthClient
22
+ > = Omit<
23
+ ReturnType<typeof updateOrganizationOptions<TAuthClient>>,
24
+ "mutationKey" | "mutationFn" | "meta"
25
+ >
26
+
27
+ export function updateOrganizationOptions<
28
+ TAuthClient extends OrganizationAuthClient
29
+ >(authClient: TAuthClient) {
30
+ const mutationKey = organizationMutationKeys.update
31
+
32
+ const mutationFn = (params: UpdateOrganizationParams<TAuthClient>) =>
33
+ authClient.organization.update({
34
+ ...params,
35
+ fetchOptions: { ...params?.fetchOptions, throw: true }
36
+ })
37
+
38
+ return mutationOptions<
39
+ Awaited<ReturnType<typeof mutationFn>>,
40
+ BetterFetchError,
41
+ Parameters<typeof mutationFn>[0]
42
+ >({
43
+ mutationKey,
44
+ mutationFn
45
+ })
46
+ }
47
+
48
+ export function useUpdateOrganization<
49
+ TAuthClient extends OrganizationAuthClient
50
+ >(
51
+ authClient: TAuthClient,
52
+ options?: UpdateOrganizationOptions<TAuthClient>,
53
+ queryClient?: QueryClient
54
+ ) {
55
+ const { data: session } = useSession(authClient, undefined, queryClient)
56
+ const userId = session?.user.id
57
+
58
+ const { data: activeOrganization } = useActiveOrganization(
59
+ authClient,
60
+ undefined,
61
+ queryClient
62
+ )
63
+
64
+ return useMutation(
65
+ {
66
+ ...updateOrganizationOptions(authClient),
67
+ ...options,
68
+ mutationFn: (params: UpdateOrganizationParams<TAuthClient>) =>
69
+ authClient.organization.update({
70
+ ...params,
71
+ organizationId: params?.organizationId ?? activeOrganization?.id,
72
+ fetchOptions: { ...params?.fetchOptions, throw: true }
73
+ }),
74
+ meta: {
75
+ awaits: [
76
+ organizationQueryKeys.lists(userId),
77
+ organizationQueryKeys.fullDetails(userId),
78
+ organizationQueryKeys.activeOrganizations(userId)
79
+ ]
80
+ }
81
+ },
82
+ queryClient
83
+ )
84
+ }
@@ -1,15 +1,23 @@
1
- import { passkeyMutationKeys } from "@better-auth-ui/core/plugins"
2
- import { mutationOptions, useMutation } from "@tanstack/react-query"
1
+ import {
2
+ passkeyMutationKeys,
3
+ passkeyQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
3
10
  import type { BetterFetchError } from "better-auth/react"
11
+
4
12
  import type { PasskeyAuthClient } from "../../lib/auth-client"
5
- import { useListPasskeys } from "../../queries/passkey/list-passkeys-query"
13
+ import { useSession } from "../../queries/auth/session-query"
6
14
 
7
15
  export type AddPasskeyParams<TAuthClient extends PasskeyAuthClient> =
8
16
  Parameters<TAuthClient["passkey"]["addPasskey"]>[0]
9
17
 
10
18
  export type AddPasskeyOptions<TAuthClient extends PasskeyAuthClient> = Omit<
11
19
  ReturnType<typeof addPasskeyOptions<TAuthClient>>,
12
- "mutationKey" | "mutationFn"
20
+ "mutationKey" | "mutationFn" | "meta"
13
21
  >
14
22
 
15
23
  /**
@@ -42,25 +50,28 @@ export function addPasskeyOptions<TAuthClient extends PasskeyAuthClient>(
42
50
  /**
43
51
  * Create a mutation for registering a new passkey.
44
52
  *
45
- * Wraps `authClient.passkey.addPasskey`, refetches the user's passkey list
46
- * on success, and forwards React Query mutation options such as
47
- * `onSuccess`, `onError`, and `retry`.
53
+ * On success, `MutationInvalidator` awaits invalidation of the user's
54
+ * passkey list (see `meta.awaits`).
48
55
  *
49
56
  * @param authClient - The Better Auth client with the passkey plugin.
50
57
  * @param options - React Query options forwarded to `useMutation`.
51
58
  */
52
59
  export function useAddPasskey<TAuthClient extends PasskeyAuthClient>(
53
60
  authClient: TAuthClient,
54
- options?: AddPasskeyOptions<TAuthClient>
61
+ options?: AddPasskeyOptions<TAuthClient>,
62
+ queryClient?: QueryClient
55
63
  ) {
56
- const { refetch } = useListPasskeys(authClient, { refetchOnMount: false })
64
+ const { data: session } = useSession(authClient, undefined, queryClient)
65
+ const userId = session?.user.id
57
66
 
58
- return useMutation({
59
- ...addPasskeyOptions(authClient),
60
- ...options,
61
- onSuccess: async (...args) => {
62
- await refetch()
63
- await options?.onSuccess?.(...args)
64
- }
65
- })
67
+ return useMutation(
68
+ {
69
+ ...addPasskeyOptions(authClient),
70
+ ...options,
71
+ meta: {
72
+ awaits: [passkeyQueryKeys.lists(userId)]
73
+ }
74
+ },
75
+ queryClient
76
+ )
66
77
  }
@@ -1,16 +1,23 @@
1
- import { passkeyMutationKeys } from "@better-auth-ui/core/plugins"
2
- import { mutationOptions, useMutation } from "@tanstack/react-query"
1
+ import {
2
+ passkeyMutationKeys,
3
+ passkeyQueryKeys
4
+ } from "@better-auth-ui/core/plugins"
5
+ import {
6
+ mutationOptions,
7
+ type QueryClient,
8
+ useMutation
9
+ } from "@tanstack/react-query"
3
10
  import type { BetterFetchError } from "better-auth/react"
4
11
 
5
12
  import type { PasskeyAuthClient } from "../../lib/auth-client"
6
- import { useListPasskeys } from "../../queries/passkey/list-passkeys-query"
13
+ import { useSession } from "../../queries/auth/session-query"
7
14
 
8
15
  export type DeletePasskeyParams<TAuthClient extends PasskeyAuthClient> =
9
16
  Parameters<TAuthClient["passkey"]["deletePasskey"]>[0]
10
17
 
11
18
  export type DeletePasskeyOptions<TAuthClient extends PasskeyAuthClient> = Omit<
12
19
  ReturnType<typeof deletePasskeyOptions<TAuthClient>>,
13
- "mutationKey" | "mutationFn"
20
+ "mutationKey" | "mutationFn" | "meta"
14
21
  >
15
22
 
16
23
  /**
@@ -42,25 +49,28 @@ export function deletePasskeyOptions<TAuthClient extends PasskeyAuthClient>(
42
49
  /**
43
50
  * Create a mutation for deleting a passkey.
44
51
  *
45
- * Wraps `authClient.passkey.deletePasskey`, refetches the user's passkey
46
- * list on success, and forwards React Query mutation options such as
47
- * `onSuccess`, `onError`, and `retry`.
52
+ * On success, `MutationInvalidator` awaits invalidation of the user's
53
+ * passkey list (see `meta.awaits`).
48
54
  *
49
55
  * @param authClient - The Better Auth client with the passkey plugin.
50
56
  * @param options - React Query options forwarded to `useMutation`.
51
57
  */
52
58
  export function useDeletePasskey<TAuthClient extends PasskeyAuthClient>(
53
59
  authClient: TAuthClient,
54
- options?: DeletePasskeyOptions<TAuthClient>
60
+ options?: DeletePasskeyOptions<TAuthClient>,
61
+ queryClient?: QueryClient
55
62
  ) {
56
- const { refetch } = useListPasskeys(authClient, { refetchOnMount: false })
63
+ const { data: session } = useSession(authClient, undefined, queryClient)
64
+ const userId = session?.user.id
57
65
 
58
- return useMutation({
59
- ...deletePasskeyOptions(authClient),
60
- ...options,
61
- onSuccess: async (...args) => {
62
- await refetch()
63
- await options?.onSuccess?.(...args)
64
- }
65
- })
66
+ return useMutation(
67
+ {
68
+ ...deletePasskeyOptions(authClient),
69
+ ...options,
70
+ meta: {
71
+ awaits: [passkeyQueryKeys.lists(userId)]
72
+ }
73
+ },
74
+ queryClient
75
+ )
66
76
  }
@@ -1,20 +1,20 @@
1
+ import { authQueryKeys } from "@better-auth-ui/core"
1
2
  import { passkeyMutationKeys } from "@better-auth-ui/core/plugins"
2
3
  import {
3
4
  mutationOptions,
4
- useMutation,
5
- useQueryClient
5
+ type QueryClient,
6
+ useMutation
6
7
  } from "@tanstack/react-query"
7
8
  import type { BetterFetchError } from "better-auth/react"
8
9
 
9
10
  import type { PasskeyAuthClient } from "../../lib/auth-client"
10
- import { sessionOptions } from "../../queries/auth/session-query"
11
11
 
12
12
  export type SignInPasskeyParams<TAuthClient extends PasskeyAuthClient> =
13
13
  Parameters<TAuthClient["signIn"]["passkey"]>[0]
14
14
 
15
15
  export type SignInPasskeyOptions<TAuthClient extends PasskeyAuthClient> = Omit<
16
16
  ReturnType<typeof signInPasskeyOptions<TAuthClient>>,
17
- "mutationKey" | "mutationFn"
17
+ "mutationKey" | "mutationFn" | "meta"
18
18
  >
19
19
 
20
20
  /**
@@ -47,28 +47,25 @@ export function signInPasskeyOptions<TAuthClient extends PasskeyAuthClient>(
47
47
  /**
48
48
  * Create a mutation for passkey sign-in.
49
49
  *
50
- * Wraps `authClient.signIn.passkey`, resets the session query on success so
51
- * the new session is refetched, and forwards React Query mutation options
52
- * such as `onSuccess`, `onError`, and `retry`.
50
+ * On success, `MutationInvalidator` awaits invalidation of the session
51
+ * query so the new session is refetched (see `meta.awaits`).
53
52
  *
54
53
  * @param authClient - The Better Auth client with the passkey plugin.
55
54
  * @param options - React Query options forwarded to `useMutation`.
56
55
  */
57
56
  export function useSignInPasskey<TAuthClient extends PasskeyAuthClient>(
58
57
  authClient: TAuthClient,
59
- options?: SignInPasskeyOptions<TAuthClient>
58
+ options?: SignInPasskeyOptions<TAuthClient>,
59
+ queryClient?: QueryClient
60
60
  ) {
61
- const queryClient = useQueryClient()
62
-
63
- return useMutation({
64
- ...signInPasskeyOptions(authClient),
65
- ...options,
66
- onSuccess: async (...args) => {
67
- queryClient.resetQueries({
68
- queryKey: sessionOptions(authClient).queryKey
69
- })
70
-
71
- await options?.onSuccess?.(...args)
72
- }
73
- })
61
+ return useMutation(
62
+ {
63
+ ...signInPasskeyOptions(authClient),
64
+ ...options,
65
+ meta: {
66
+ awaits: [authQueryKeys.session]
67
+ }
68
+ },
69
+ queryClient
70
+ )
74
71
  }
@@ -1,9 +1,12 @@
1
- import { authMutationKeys } from "@better-auth-ui/core"
2
- import { mutationOptions, useMutation } from "@tanstack/react-query"
1
+ import { authMutationKeys, authQueryKeys } from "@better-auth-ui/core"
2
+ import {
3
+ mutationOptions,
4
+ type QueryClient,
5
+ useMutation
6
+ } from "@tanstack/react-query"
3
7
  import type { BetterFetchError } from "better-auth/react"
4
8
 
5
9
  import type { AuthClient } from "../../lib/auth-client"
6
- import { useSession } from "../../queries/auth/session-query"
7
10
 
8
11
  export type ChangeEmailParams<TAuthClient extends AuthClient> = Parameters<
9
12
  TAuthClient["changeEmail"]
@@ -11,7 +14,7 @@ export type ChangeEmailParams<TAuthClient extends AuthClient> = Parameters<
11
14
 
12
15
  export type ChangeEmailOptions<TAuthClient extends AuthClient> = Omit<
13
16
  ReturnType<typeof changeEmailOptions<TAuthClient>>,
14
- "mutationKey" | "mutationFn"
17
+ "mutationKey" | "mutationFn" | "meta"
15
18
  >
16
19
 
17
20
  /**
@@ -43,25 +46,26 @@ export function changeEmailOptions<TAuthClient extends AuthClient>(
43
46
  /**
44
47
  * Create a mutation for changing the current user's email address.
45
48
  *
46
- * Wraps `authClient.changeEmail`, refetches the session on success to
47
- * surface the new email, and forwards React Query mutation options such
48
- * as `onSuccess`, `onError`, and `retry`.
49
+ * On success, `MutationInvalidator` awaits invalidation of the session
50
+ * query so the new email is reflected on the user object (see
51
+ * `meta.awaits`).
49
52
  *
50
53
  * @param authClient - The Better Auth client.
51
54
  * @param options - React Query options forwarded to `useMutation`.
52
55
  */
53
56
  export function useChangeEmail<TAuthClient extends AuthClient>(
54
57
  authClient: TAuthClient,
55
- options?: ChangeEmailOptions<TAuthClient>
58
+ options?: ChangeEmailOptions<TAuthClient>,
59
+ queryClient?: QueryClient
56
60
  ) {
57
- const { refetch } = useSession(authClient, { refetchOnMount: false })
58
-
59
- return useMutation({
60
- ...changeEmailOptions(authClient),
61
- ...options,
62
- onSuccess: async (...args) => {
63
- await refetch()
64
- await options?.onSuccess?.(...args)
65
- }
66
- })
61
+ return useMutation(
62
+ {
63
+ ...changeEmailOptions(authClient),
64
+ ...options,
65
+ meta: {
66
+ awaits: [authQueryKeys.session]
67
+ }
68
+ },
69
+ queryClient
70
+ )
67
71
  }
@@ -1,4 +1,4 @@
1
- import { authMutationKeys } from "@better-auth-ui/core"
1
+ import { deleteUserMutationKeys } from "@better-auth-ui/core/plugins"
2
2
  import { mutationOptions, useMutation } from "@tanstack/react-query"
3
3
  import type { BetterFetchError } from "better-auth/react"
4
4
 
@@ -21,7 +21,7 @@ export type DeleteUserOptions<TAuthClient extends AuthClient> = Omit<
21
21
  export function deleteUserOptions<TAuthClient extends AuthClient>(
22
22
  authClient: TAuthClient
23
23
  ) {
24
- const mutationKey = authMutationKeys.deleteUser
24
+ const mutationKey = deleteUserMutationKeys.deleteUser
25
25
 
26
26
  const mutationFn = (params: DeleteUserParams<TAuthClient>) =>
27
27
  authClient.deleteUser({