@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
@@ -1,18 +1,17 @@
1
- import { authMutationKeys } from "@better-auth-ui/core"
1
+ import { authQueryKeys } from "@better-auth-ui/core"
2
+ import {
3
+ multiSessionMutationKeys,
4
+ multiSessionQueryKeys
5
+ } from "@better-auth-ui/core/plugins"
2
6
  import {
3
7
  mutationOptions,
4
- useMutation,
5
- useQueryClient
8
+ type QueryClient,
9
+ useMutation
6
10
  } from "@tanstack/react-query"
7
11
  import type { BetterFetchError } from "better-auth/react"
8
12
 
9
13
  import type { MultiSessionAuthClient } from "../../lib/auth-client"
10
- import {
11
- type SessionData,
12
- sessionOptions,
13
- useSession
14
- } from "../../queries/auth/session-query"
15
- import { useListDeviceSessions } from "../../queries/multi-session/list-device-sessions-query"
14
+ import { useSession } from "../../queries/auth/session-query"
16
15
 
17
16
  export type SetActiveSessionParams<TAuthClient extends MultiSessionAuthClient> =
18
17
  Parameters<TAuthClient["multiSession"]["setActive"]>[0]
@@ -21,7 +20,7 @@ export type SetActiveSessionOptions<
21
20
  TAuthClient extends MultiSessionAuthClient
22
21
  > = Omit<
23
22
  ReturnType<typeof setActiveSessionOptions<TAuthClient>>,
24
- "mutationKey" | "mutationFn"
23
+ "mutationKey" | "mutationFn" | "meta"
25
24
  >
26
25
 
27
26
  /**
@@ -32,7 +31,7 @@ export type SetActiveSessionOptions<
32
31
  export function setActiveSessionOptions<
33
32
  TAuthClient extends MultiSessionAuthClient
34
33
  >(authClient: TAuthClient) {
35
- const mutationKey = authMutationKeys.multiSession.setActive
34
+ const mutationKey = multiSessionMutationKeys.setActive
36
35
 
37
36
  const mutationFn = (params: SetActiveSessionParams<TAuthClient>) =>
38
37
  authClient.multiSession.setActive({
@@ -53,46 +52,28 @@ export function setActiveSessionOptions<
53
52
  /**
54
53
  * Create a mutation for switching the active device session.
55
54
  *
56
- * Wraps `authClient.multiSession.setActive`, optimistically swaps the cached
57
- * session to the matching device session, refetches both the session and
58
- * device-session queries, and forwards React Query mutation options such as
59
- * `onSuccess`, `onError`, and `retry`.
55
+ * On success, `MutationInvalidator` awaits invalidation of the session
56
+ * and device sessions queries (see `meta.awaits`).
60
57
  *
61
58
  * @param authClient - The Better Auth client with the multi-session plugin.
62
59
  * @param options - React Query options forwarded to `useMutation`.
63
60
  */
64
61
  export function useSetActiveSession<TAuthClient extends MultiSessionAuthClient>(
65
62
  authClient: TAuthClient,
66
- options?: SetActiveSessionOptions<TAuthClient>
63
+ options?: SetActiveSessionOptions<TAuthClient>,
64
+ queryClient?: QueryClient
67
65
  ) {
68
- const queryClient = useQueryClient()
69
- const { refetch: refetchSession } = useSession(authClient, {
70
- refetchOnMount: false
71
- })
72
- const { data: deviceSessions, refetch: refetchDeviceSessions } =
73
- useListDeviceSessions(authClient, {
74
- refetchOnMount: false
75
- })
66
+ const { data: session } = useSession(authClient, undefined, queryClient)
67
+ const userId = session?.user.id
76
68
 
77
- return useMutation({
78
- ...setActiveSessionOptions(authClient),
79
- ...options,
80
- onSuccess: async (data, variables, ...rest) => {
81
- const sessionToken = variables?.sessionToken
82
- const deviceSession = deviceSessions?.find(
83
- ({ session: { token } }) => token === sessionToken
84
- )
85
-
86
- if (deviceSession) {
87
- queryClient.setQueryData(
88
- sessionOptions(authClient).queryKey,
89
- deviceSession as SessionData<TAuthClient>
90
- )
69
+ return useMutation(
70
+ {
71
+ ...setActiveSessionOptions(authClient),
72
+ ...options,
73
+ meta: {
74
+ awaits: [authQueryKeys.session, multiSessionQueryKeys.lists(userId)]
91
75
  }
92
-
93
- await refetchSession()
94
- await refetchDeviceSessions()
95
- await options?.onSuccess?.(data, variables, ...rest)
96
- }
97
- })
76
+ },
77
+ queryClient
78
+ )
98
79
  }
@@ -0,0 +1,71 @@
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 AcceptInvitationParams<TAuthClient extends OrganizationAuthClient> =
16
+ Parameters<TAuthClient["organization"]["acceptInvitation"]>[0]
17
+
18
+ export type AcceptInvitationOptions<
19
+ TAuthClient extends OrganizationAuthClient
20
+ > = Omit<
21
+ ReturnType<typeof acceptInvitationOptions<TAuthClient>>,
22
+ "mutationKey" | "mutationFn" | "meta"
23
+ >
24
+
25
+ export function acceptInvitationOptions<
26
+ TAuthClient extends OrganizationAuthClient
27
+ >(authClient: TAuthClient) {
28
+ const mutationKey = organizationMutationKeys.acceptInvitation
29
+
30
+ const mutationFn = (params: AcceptInvitationParams<TAuthClient>) =>
31
+ authClient.organization.acceptInvitation({
32
+ ...params,
33
+ fetchOptions: { ...params?.fetchOptions, throw: true }
34
+ })
35
+
36
+ return mutationOptions<
37
+ Awaited<ReturnType<typeof mutationFn>>,
38
+ BetterFetchError,
39
+ Parameters<typeof mutationFn>[0]
40
+ >({
41
+ mutationKey,
42
+ mutationFn
43
+ })
44
+ }
45
+
46
+ export function useAcceptInvitation<TAuthClient extends OrganizationAuthClient>(
47
+ authClient: TAuthClient,
48
+ options?: AcceptInvitationOptions<TAuthClient>,
49
+ queryClient?: QueryClient
50
+ ) {
51
+ const { data: session } = useSession(authClient, undefined, queryClient)
52
+ const userId = session?.user.id
53
+
54
+ return useMutation(
55
+ {
56
+ ...acceptInvitationOptions(authClient),
57
+ ...options,
58
+ meta: {
59
+ awaits: [
60
+ organizationQueryKeys.userInvitations.all(userId),
61
+ organizationQueryKeys.lists(userId)
62
+ ],
63
+ invalidates: [
64
+ organizationQueryKeys.fullDetails(userId),
65
+ organizationQueryKeys.activeOrganizations(userId)
66
+ ]
67
+ }
68
+ },
69
+ queryClient
70
+ )
71
+ }
@@ -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 CancelInvitationParams<TAuthClient extends OrganizationAuthClient> =
16
+ Parameters<TAuthClient["organization"]["cancelInvitation"]>[0]
17
+
18
+ export type CancelInvitationOptions<
19
+ TAuthClient extends OrganizationAuthClient
20
+ > = Omit<
21
+ ReturnType<typeof cancelInvitationOptions<TAuthClient>>,
22
+ "mutationKey" | "mutationFn" | "meta"
23
+ >
24
+
25
+ export function cancelInvitationOptions<
26
+ TAuthClient extends OrganizationAuthClient
27
+ >(authClient: TAuthClient) {
28
+ const mutationKey = organizationMutationKeys.cancelInvitation
29
+
30
+ const mutationFn = (params: CancelInvitationParams<TAuthClient>) =>
31
+ authClient.organization.cancelInvitation({
32
+ ...params,
33
+ fetchOptions: { ...params?.fetchOptions, throw: true }
34
+ })
35
+
36
+ return mutationOptions<
37
+ Awaited<ReturnType<typeof mutationFn>>,
38
+ BetterFetchError,
39
+ Parameters<typeof mutationFn>[0]
40
+ >({
41
+ mutationKey,
42
+ mutationFn
43
+ })
44
+ }
45
+
46
+ export function useCancelInvitation<TAuthClient extends OrganizationAuthClient>(
47
+ authClient: TAuthClient,
48
+ options?: CancelInvitationOptions<TAuthClient>,
49
+ queryClient?: QueryClient
50
+ ) {
51
+ const { data: session } = useSession(authClient, undefined, queryClient)
52
+ const userId = session?.user.id
53
+
54
+ return useMutation(
55
+ {
56
+ ...cancelInvitationOptions(authClient),
57
+ ...options,
58
+ meta: {
59
+ awaits: [
60
+ organizationQueryKeys.invitations.all(userId),
61
+ organizationQueryKeys.fullDetails(userId)
62
+ ]
63
+ }
64
+ },
65
+ queryClient
66
+ )
67
+ }
@@ -0,0 +1,55 @@
1
+ import { organizationMutationKeys } from "@better-auth-ui/core/plugins"
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query"
3
+ import type { BetterFetchError } from "better-auth/react"
4
+
5
+ import type { OrganizationAuthClient } from "../../lib/auth-client"
6
+
7
+ export type CheckSlugParams<TAuthClient extends OrganizationAuthClient> =
8
+ Parameters<TAuthClient["organization"]["checkSlug"]>[0]
9
+
10
+ export type CheckSlugOptions<TAuthClient extends OrganizationAuthClient> = Omit<
11
+ ReturnType<typeof checkSlugOptions<TAuthClient>>,
12
+ "mutationKey" | "mutationFn"
13
+ >
14
+
15
+ /**
16
+ * Mutation options factory for checking organization slug availability.
17
+ *
18
+ * @param authClient - The Better Auth client.
19
+ */
20
+ export function checkSlugOptions<TAuthClient extends OrganizationAuthClient>(
21
+ authClient: TAuthClient
22
+ ) {
23
+ const mutationKey = organizationMutationKeys.checkSlug
24
+
25
+ const mutationFn = (params: CheckSlugParams<TAuthClient>) =>
26
+ authClient.organization.checkSlug({
27
+ ...params,
28
+ fetchOptions: { ...params?.fetchOptions, throw: true }
29
+ })
30
+
31
+ return mutationOptions<
32
+ Awaited<ReturnType<typeof mutationFn>>,
33
+ BetterFetchError,
34
+ Parameters<typeof mutationFn>[0]
35
+ >({
36
+ mutationKey,
37
+ mutationFn
38
+ })
39
+ }
40
+
41
+ /**
42
+ * Create a mutation for checking whether an organization slug is available.
43
+ *
44
+ * @param authClient - The Better Auth client with the organization plugin.
45
+ * @param options - React Query options forwarded to `useMutation`.
46
+ */
47
+ export function useCheckSlug<TAuthClient extends OrganizationAuthClient>(
48
+ authClient: TAuthClient,
49
+ options?: CheckSlugOptions<TAuthClient>
50
+ ) {
51
+ return useMutation({
52
+ ...checkSlugOptions(authClient),
53
+ ...options
54
+ })
55
+ }
@@ -0,0 +1,71 @@
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 CreateOrganizationParams<
16
+ TAuthClient extends OrganizationAuthClient
17
+ > = Parameters<TAuthClient["organization"]["create"]>[0]
18
+
19
+ export type CreateOrganizationOptions<
20
+ TAuthClient extends OrganizationAuthClient
21
+ > = Omit<
22
+ ReturnType<typeof createOrganizationOptions<TAuthClient>>,
23
+ "mutationKey" | "mutationFn" | "meta"
24
+ >
25
+
26
+ export function createOrganizationOptions<
27
+ TAuthClient extends OrganizationAuthClient
28
+ >(authClient: TAuthClient) {
29
+ const mutationKey = organizationMutationKeys.create
30
+
31
+ const mutationFn = (params: CreateOrganizationParams<TAuthClient>) =>
32
+ authClient.organization.create({
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 useCreateOrganization<
48
+ TAuthClient extends OrganizationAuthClient
49
+ >(
50
+ authClient: TAuthClient,
51
+ options?: CreateOrganizationOptions<TAuthClient>,
52
+ queryClient?: QueryClient
53
+ ) {
54
+ const { data: session } = useSession(authClient, undefined, queryClient)
55
+ const userId = session?.user.id
56
+
57
+ return useMutation(
58
+ {
59
+ ...createOrganizationOptions(authClient),
60
+ ...options,
61
+ meta: {
62
+ awaits: [organizationQueryKeys.lists(userId)],
63
+ invalidates: [
64
+ organizationQueryKeys.fullDetails(userId),
65
+ organizationQueryKeys.activeOrganizations(userId)
66
+ ]
67
+ }
68
+ },
69
+ queryClient
70
+ )
71
+ }
@@ -0,0 +1,71 @@
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 DeleteOrganizationParams<
16
+ TAuthClient extends OrganizationAuthClient
17
+ > = Parameters<TAuthClient["organization"]["delete"]>[0]
18
+
19
+ export type DeleteOrganizationOptions<
20
+ TAuthClient extends OrganizationAuthClient
21
+ > = Omit<
22
+ ReturnType<typeof deleteOrganizationOptions<TAuthClient>>,
23
+ "mutationKey" | "mutationFn" | "meta"
24
+ >
25
+
26
+ export function deleteOrganizationOptions<
27
+ TAuthClient extends OrganizationAuthClient
28
+ >(authClient: TAuthClient) {
29
+ const mutationKey = organizationMutationKeys.delete
30
+
31
+ const mutationFn = (params: DeleteOrganizationParams<TAuthClient>) =>
32
+ authClient.organization.delete({
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 useDeleteOrganization<
48
+ TAuthClient extends OrganizationAuthClient
49
+ >(
50
+ authClient: TAuthClient,
51
+ options?: DeleteOrganizationOptions<TAuthClient>,
52
+ queryClient?: QueryClient
53
+ ) {
54
+ const { data: session } = useSession(authClient, undefined, queryClient)
55
+ const userId = session?.user.id
56
+
57
+ return useMutation(
58
+ {
59
+ ...deleteOrganizationOptions(authClient),
60
+ ...options,
61
+ meta: {
62
+ awaits: [organizationQueryKeys.lists(userId)],
63
+ invalidates: [
64
+ organizationQueryKeys.fullDetails(userId),
65
+ organizationQueryKeys.activeOrganizations(userId)
66
+ ]
67
+ }
68
+ },
69
+ queryClient
70
+ )
71
+ }
@@ -0,0 +1,12 @@
1
+ export * from "./accept-invitation-mutation"
2
+ export * from "./cancel-invitation-mutation"
3
+ export * from "./check-slug-mutation"
4
+ export * from "./create-organization-mutation"
5
+ export * from "./delete-organization-mutation"
6
+ export * from "./invite-member-mutation"
7
+ export * from "./leave-organization-mutation"
8
+ export * from "./reject-invitation-mutation"
9
+ export * from "./remove-member-mutation"
10
+ export * from "./set-active-organization-mutation"
11
+ export * from "./update-member-role-mutation"
12
+ export * from "./update-organization-mutation"
@@ -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 InviteMemberParams<TAuthClient extends OrganizationAuthClient> =
17
+ Parameters<TAuthClient["organization"]["inviteMember"]>[0]
18
+
19
+ export type InviteMemberOptions<TAuthClient extends OrganizationAuthClient> =
20
+ Omit<
21
+ ReturnType<typeof inviteMemberOptions<TAuthClient>>,
22
+ "mutationKey" | "mutationFn" | "meta"
23
+ >
24
+
25
+ export function inviteMemberOptions<TAuthClient extends OrganizationAuthClient>(
26
+ authClient: TAuthClient
27
+ ) {
28
+ const mutationKey = organizationMutationKeys.inviteMember
29
+
30
+ const mutationFn = (params: InviteMemberParams<TAuthClient>) =>
31
+ authClient.organization.inviteMember({
32
+ ...params,
33
+ fetchOptions: { ...params?.fetchOptions, throw: true }
34
+ })
35
+
36
+ return mutationOptions<
37
+ Awaited<ReturnType<typeof mutationFn>>,
38
+ BetterFetchError,
39
+ Parameters<typeof mutationFn>[0]
40
+ >({
41
+ mutationKey,
42
+ mutationFn
43
+ })
44
+ }
45
+
46
+ export function useInviteMember<
47
+ TAuthClient extends OrganizationAuthClient = OrganizationAuthClient
48
+ >(
49
+ authClient: TAuthClient,
50
+ options?: InviteMemberOptions<TAuthClient>,
51
+ queryClient?: QueryClient
52
+ ) {
53
+ const { data: session } = useSession(authClient, undefined, queryClient)
54
+ const userId = session?.user.id
55
+
56
+ const { data: activeOrganization } = useActiveOrganization(
57
+ authClient,
58
+ undefined,
59
+ queryClient
60
+ )
61
+
62
+ return useMutation(
63
+ {
64
+ ...inviteMemberOptions(authClient),
65
+ ...options,
66
+ mutationFn: (params: InviteMemberParams<TAuthClient>) =>
67
+ authClient.organization.inviteMember({
68
+ ...params,
69
+ organizationId: params?.organizationId ?? activeOrganization?.id,
70
+ fetchOptions: { ...params?.fetchOptions, throw: true }
71
+ }),
72
+ meta: {
73
+ awaits: [
74
+ organizationQueryKeys.invitations.all(userId),
75
+ organizationQueryKeys.fullDetails(userId)
76
+ ]
77
+ }
78
+ },
79
+ queryClient
80
+ )
81
+ }
@@ -0,0 +1,74 @@
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 LeaveOrganizationParams<
16
+ TAuthClient extends OrganizationAuthClient
17
+ > = Parameters<TAuthClient["organization"]["leave"]>[0]
18
+
19
+ export type LeaveOrganizationOptions<
20
+ TAuthClient extends OrganizationAuthClient
21
+ > = Omit<
22
+ ReturnType<typeof leaveOrganizationOptions<TAuthClient>>,
23
+ "mutationKey" | "mutationFn" | "meta"
24
+ >
25
+
26
+ export function leaveOrganizationOptions<
27
+ TAuthClient extends OrganizationAuthClient
28
+ >(authClient: TAuthClient) {
29
+ const mutationKey = organizationMutationKeys.leave
30
+
31
+ const mutationFn = (params: LeaveOrganizationParams<TAuthClient>) =>
32
+ authClient.organization.leave({
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 useLeaveOrganization<
48
+ TAuthClient extends OrganizationAuthClient
49
+ >(
50
+ authClient: TAuthClient,
51
+ options?: LeaveOrganizationOptions<TAuthClient>,
52
+ queryClient?: QueryClient
53
+ ) {
54
+ const { data: session } = useSession(authClient, undefined, queryClient)
55
+ const userId = session?.user.id
56
+
57
+ return useMutation(
58
+ {
59
+ ...leaveOrganizationOptions(authClient),
60
+ ...options,
61
+ meta: {
62
+ awaits: [
63
+ organizationQueryKeys.members.all(userId),
64
+ organizationQueryKeys.fullDetails(userId)
65
+ ],
66
+ invalidates: [
67
+ organizationQueryKeys.lists(userId),
68
+ organizationQueryKeys.activeOrganizations(userId)
69
+ ]
70
+ }
71
+ },
72
+ queryClient
73
+ )
74
+ }
@@ -0,0 +1,64 @@
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 RejectInvitationParams<TAuthClient extends OrganizationAuthClient> =
16
+ Parameters<TAuthClient["organization"]["rejectInvitation"]>[0]
17
+
18
+ export type RejectInvitationOptions<
19
+ TAuthClient extends OrganizationAuthClient
20
+ > = Omit<
21
+ ReturnType<typeof rejectInvitationOptions<TAuthClient>>,
22
+ "mutationKey" | "mutationFn" | "meta"
23
+ >
24
+
25
+ export function rejectInvitationOptions<
26
+ TAuthClient extends OrganizationAuthClient
27
+ >(authClient: TAuthClient) {
28
+ const mutationKey = organizationMutationKeys.rejectInvitation
29
+
30
+ const mutationFn = (params: RejectInvitationParams<TAuthClient>) =>
31
+ authClient.organization.rejectInvitation({
32
+ ...params,
33
+ fetchOptions: { ...params?.fetchOptions, throw: true }
34
+ })
35
+
36
+ return mutationOptions<
37
+ Awaited<ReturnType<typeof mutationFn>>,
38
+ BetterFetchError,
39
+ Parameters<typeof mutationFn>[0]
40
+ >({
41
+ mutationKey,
42
+ mutationFn
43
+ })
44
+ }
45
+
46
+ export function useRejectInvitation<TAuthClient extends OrganizationAuthClient>(
47
+ authClient: TAuthClient,
48
+ options?: RejectInvitationOptions<TAuthClient>,
49
+ queryClient?: QueryClient
50
+ ) {
51
+ const { data: session } = useSession(authClient, undefined, queryClient)
52
+ const userId = session?.user.id
53
+
54
+ return useMutation(
55
+ {
56
+ ...rejectInvitationOptions(authClient),
57
+ ...options,
58
+ meta: {
59
+ awaits: [organizationQueryKeys.userInvitations.all(userId)]
60
+ }
61
+ },
62
+ queryClient
63
+ )
64
+ }