@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,25 +1,25 @@
1
- import { BetterFetchError } from 'better-auth/react';
2
- import { MultiSessionAuthClient } from '../../lib/auth-client';
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { MultiSessionAuthClient } from "../../lib/auth-client";
3
4
  export type RevokeMultiSessionParams<TAuthClient extends MultiSessionAuthClient> = Parameters<TAuthClient["multiSession"]["revoke"]>[0];
4
- export type RevokeMultiSessionOptions<TAuthClient extends MultiSessionAuthClient> = Omit<ReturnType<typeof revokeMultiSessionOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
5
+ export type RevokeMultiSessionOptions<TAuthClient extends MultiSessionAuthClient> = Omit<ReturnType<typeof revokeMultiSessionOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
5
6
  /**
6
7
  * Mutation options factory for revoking a device session in multi-session mode.
7
8
  *
8
9
  * @param authClient - The Better Auth client with the multi-session plugin.
9
10
  */
10
- export declare function revokeMultiSessionOptions<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient): import('@tanstack/react-query').WithRequired<import('@tanstack/react-query').UseMutationOptions<{
11
+ export declare function revokeMultiSessionOptions<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
11
12
  status: boolean;
12
13
  }, BetterFetchError, RevokeMultiSessionParams<TAuthClient>, unknown>, "mutationKey">;
13
14
  /**
14
15
  * Create a mutation for revoking a device session in multi-session mode.
15
16
  *
16
- * Wraps `authClient.multiSession.revoke`, refetches the device sessions list
17
- * on success, and forwards React Query mutation options such as `onSuccess`,
18
- * `onError`, and `retry`.
17
+ * On success, `MutationInvalidator` awaits invalidation of the device
18
+ * sessions list (see `meta.awaits`).
19
19
  *
20
20
  * @param authClient - The Better Auth client with the multi-session plugin.
21
21
  * @param options - React Query options forwarded to `useMutation`.
22
22
  */
23
- export declare function useRevokeMultiSession<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient, options?: RevokeMultiSessionOptions<TAuthClient>): import('@tanstack/react-query').UseMutationResult<{
23
+ export declare function useRevokeMultiSession<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient, options?: RevokeMultiSessionOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
24
24
  status: boolean;
25
25
  }, BetterFetchError, RevokeMultiSessionParams<TAuthClient>, unknown>;
@@ -1,29 +1,39 @@
1
- import { useListDeviceSessions as e } from "../../queries/multi-session/list-device-sessions-query.js";
2
- import { authMutationKeys as t } from "@better-auth-ui/core";
3
- import { mutationOptions as n, useMutation as r } from "@tanstack/react-query";
4
- //#region src/mutations/multi-session/revoke-multi-session-mutation.ts
5
- function i(e) {
6
- let r = t.multiSession.revoke;
7
- return n({
8
- mutationKey: r,
9
- mutationFn: (t) => e.multiSession.revoke({
10
- ...t,
11
- fetchOptions: {
12
- ...t?.fetchOptions,
13
- throw: !0
14
- }
15
- })
16
- });
1
+ import { multiSessionMutationKeys, multiSessionQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ /**
5
+ * Mutation options factory for revoking a device session in multi-session mode.
6
+ *
7
+ * @param authClient - The Better Auth client with the multi-session plugin.
8
+ */
9
+ export function revokeMultiSessionOptions(authClient) {
10
+ const mutationKey = multiSessionMutationKeys.revoke;
11
+ const mutationFn = (params) => authClient.multiSession.revoke({
12
+ ...params,
13
+ fetchOptions: { ...params?.fetchOptions, throw: true }
14
+ });
15
+ return mutationOptions({
16
+ mutationKey,
17
+ mutationFn
18
+ });
17
19
  }
18
- function a(t, n) {
19
- let { refetch: a } = e(t, { refetchOnMount: !1 });
20
- return r({
21
- ...i(t),
22
- ...n,
23
- onSuccess: async (...e) => {
24
- await a(), await n?.onSuccess?.(...e);
25
- }
26
- });
20
+ /**
21
+ * Create a mutation for revoking a device session in multi-session mode.
22
+ *
23
+ * On success, `MutationInvalidator` awaits invalidation of the device
24
+ * sessions list (see `meta.awaits`).
25
+ *
26
+ * @param authClient - The Better Auth client with the multi-session plugin.
27
+ * @param options - React Query options forwarded to `useMutation`.
28
+ */
29
+ export function useRevokeMultiSession(authClient, options, queryClient) {
30
+ const { data: session } = useSession(authClient, undefined, queryClient);
31
+ const userId = session?.user.id;
32
+ return useMutation({
33
+ ...revokeMultiSessionOptions(authClient),
34
+ ...options,
35
+ meta: {
36
+ awaits: [multiSessionQueryKeys.lists(userId)]
37
+ }
38
+ }, queryClient);
27
39
  }
28
- //#endregion
29
- export { i as revokeMultiSessionOptions, a as useRevokeMultiSession };
@@ -1,13 +1,14 @@
1
- import { BetterFetchError } from 'better-auth/react';
2
- import { MultiSessionAuthClient } from '../../lib/auth-client';
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { MultiSessionAuthClient } from "../../lib/auth-client";
3
4
  export type SetActiveSessionParams<TAuthClient extends MultiSessionAuthClient> = Parameters<TAuthClient["multiSession"]["setActive"]>[0];
4
- export type SetActiveSessionOptions<TAuthClient extends MultiSessionAuthClient> = Omit<ReturnType<typeof setActiveSessionOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
5
+ export type SetActiveSessionOptions<TAuthClient extends MultiSessionAuthClient> = Omit<ReturnType<typeof setActiveSessionOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
5
6
  /**
6
7
  * Mutation options factory for switching the active device session.
7
8
  *
8
9
  * @param authClient - The Better Auth client with the multi-session plugin.
9
10
  */
10
- export declare function setActiveSessionOptions<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient): import('@tanstack/react-query').WithRequired<import('@tanstack/react-query').UseMutationOptions<{
11
+ export declare function setActiveSessionOptions<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
11
12
  session: {
12
13
  id: string;
13
14
  createdAt: Date;
@@ -31,15 +32,13 @@ export declare function setActiveSessionOptions<TAuthClient extends MultiSession
31
32
  /**
32
33
  * Create a mutation for switching the active device session.
33
34
  *
34
- * Wraps `authClient.multiSession.setActive`, optimistically swaps the cached
35
- * session to the matching device session, refetches both the session and
36
- * device-session queries, and forwards React Query mutation options such as
37
- * `onSuccess`, `onError`, and `retry`.
35
+ * On success, `MutationInvalidator` awaits invalidation of the session
36
+ * and device sessions queries (see `meta.awaits`).
38
37
  *
39
38
  * @param authClient - The Better Auth client with the multi-session plugin.
40
39
  * @param options - React Query options forwarded to `useMutation`.
41
40
  */
42
- export declare function useSetActiveSession<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient, options?: SetActiveSessionOptions<TAuthClient>): import('@tanstack/react-query').UseMutationResult<{
41
+ export declare function useSetActiveSession<TAuthClient extends MultiSessionAuthClient>(authClient: TAuthClient, options?: SetActiveSessionOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
43
42
  session: {
44
43
  id: string;
45
44
  createdAt: Date;
@@ -1,31 +1,40 @@
1
- import { sessionOptions as e, useSession as t } from "../../queries/auth/session-query.js";
2
- import { useListDeviceSessions as n } from "../../queries/multi-session/list-device-sessions-query.js";
3
- import { authMutationKeys as r } from "@better-auth-ui/core";
4
- import { mutationOptions as i, useMutation as a, useQueryClient as o } from "@tanstack/react-query";
5
- //#region src/mutations/multi-session/set-active-session-mutation.ts
6
- function s(e) {
7
- let t = r.multiSession.setActive;
8
- return i({
9
- mutationKey: t,
10
- mutationFn: (t) => e.multiSession.setActive({
11
- ...t,
12
- fetchOptions: {
13
- ...t?.fetchOptions,
14
- throw: !0
15
- }
16
- })
17
- });
1
+ import { authQueryKeys } from "@better-auth-ui/core";
2
+ import { multiSessionMutationKeys, multiSessionQueryKeys } from "@better-auth-ui/core/plugins";
3
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
4
+ import { useSession } from "../../queries/auth/session-query";
5
+ /**
6
+ * Mutation options factory for switching the active device session.
7
+ *
8
+ * @param authClient - The Better Auth client with the multi-session plugin.
9
+ */
10
+ export function setActiveSessionOptions(authClient) {
11
+ const mutationKey = multiSessionMutationKeys.setActive;
12
+ const mutationFn = (params) => authClient.multiSession.setActive({
13
+ ...params,
14
+ fetchOptions: { ...params?.fetchOptions, throw: true }
15
+ });
16
+ return mutationOptions({
17
+ mutationKey,
18
+ mutationFn
19
+ });
18
20
  }
19
- function c(r, i) {
20
- let c = o(), { refetch: l } = t(r, { refetchOnMount: !1 }), { data: u, refetch: d } = n(r, { refetchOnMount: !1 });
21
- return a({
22
- ...s(r),
23
- ...i,
24
- onSuccess: async (t, n, ...a) => {
25
- let o = n?.sessionToken, s = u?.find(({ session: { token: e } }) => e === o);
26
- s && c.setQueryData(e(r).queryKey, s), await l(), await d(), await i?.onSuccess?.(t, n, ...a);
27
- }
28
- });
21
+ /**
22
+ * Create a mutation for switching the active device session.
23
+ *
24
+ * On success, `MutationInvalidator` awaits invalidation of the session
25
+ * and device sessions queries (see `meta.awaits`).
26
+ *
27
+ * @param authClient - The Better Auth client with the multi-session plugin.
28
+ * @param options - React Query options forwarded to `useMutation`.
29
+ */
30
+ export function useSetActiveSession(authClient, options, queryClient) {
31
+ const { data: session } = useSession(authClient, undefined, queryClient);
32
+ const userId = session?.user.id;
33
+ return useMutation({
34
+ ...setActiveSessionOptions(authClient),
35
+ ...options,
36
+ meta: {
37
+ awaits: [authQueryKeys.session, multiSessionQueryKeys.lists(userId)]
38
+ }
39
+ }, queryClient);
29
40
  }
30
- //#endregion
31
- export { s as setActiveSessionOptions, c as useSetActiveSession };
@@ -0,0 +1,43 @@
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
4
+ export type AcceptInvitationParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["acceptInvitation"]>[0];
5
+ export type AcceptInvitationOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof acceptInvitationOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
6
+ export declare function acceptInvitationOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
7
+ invitation: {
8
+ id: string;
9
+ organizationId: string;
10
+ email: string;
11
+ role: "member" | "admin" | "owner";
12
+ status: import("better-auth/client").InvitationStatus;
13
+ inviterId: string;
14
+ expiresAt: Date;
15
+ createdAt: Date;
16
+ };
17
+ member: {
18
+ id: string;
19
+ organizationId: string;
20
+ userId: string;
21
+ role: string;
22
+ createdAt: Date;
23
+ };
24
+ }, BetterFetchError, AcceptInvitationParams<TAuthClient>, unknown>, "mutationKey">;
25
+ export declare function useAcceptInvitation<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient, options?: AcceptInvitationOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
26
+ invitation: {
27
+ id: string;
28
+ organizationId: string;
29
+ email: string;
30
+ role: "member" | "admin" | "owner";
31
+ status: import("better-auth/client").InvitationStatus;
32
+ inviterId: string;
33
+ expiresAt: Date;
34
+ createdAt: Date;
35
+ };
36
+ member: {
37
+ id: string;
38
+ organizationId: string;
39
+ userId: string;
40
+ role: string;
41
+ createdAt: Date;
42
+ };
43
+ }, BetterFetchError, AcceptInvitationParams<TAuthClient>, unknown>;
@@ -0,0 +1,32 @@
1
+ import { organizationMutationKeys, organizationQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ export function acceptInvitationOptions(authClient) {
5
+ const mutationKey = organizationMutationKeys.acceptInvitation;
6
+ const mutationFn = (params) => authClient.organization.acceptInvitation({
7
+ ...params,
8
+ fetchOptions: { ...params?.fetchOptions, throw: true }
9
+ });
10
+ return mutationOptions({
11
+ mutationKey,
12
+ mutationFn
13
+ });
14
+ }
15
+ export function useAcceptInvitation(authClient, options, queryClient) {
16
+ const { data: session } = useSession(authClient, undefined, queryClient);
17
+ const userId = session?.user.id;
18
+ return useMutation({
19
+ ...acceptInvitationOptions(authClient),
20
+ ...options,
21
+ meta: {
22
+ awaits: [
23
+ organizationQueryKeys.userInvitations.all(userId),
24
+ organizationQueryKeys.lists(userId)
25
+ ],
26
+ invalidates: [
27
+ organizationQueryKeys.fullDetails(userId),
28
+ organizationQueryKeys.activeOrganizations(userId)
29
+ ]
30
+ }
31
+ }, queryClient);
32
+ }
@@ -0,0 +1,25 @@
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
4
+ export type CancelInvitationParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["cancelInvitation"]>[0];
5
+ export type CancelInvitationOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof cancelInvitationOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
6
+ export declare function cancelInvitationOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
7
+ id: string;
8
+ organizationId: string;
9
+ email: string;
10
+ role: "member" | "admin" | "owner";
11
+ status: import("better-auth/client").InvitationStatus;
12
+ inviterId: string;
13
+ expiresAt: Date;
14
+ createdAt: Date;
15
+ }, BetterFetchError, CancelInvitationParams<TAuthClient>, unknown>, "mutationKey">;
16
+ export declare function useCancelInvitation<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient, options?: CancelInvitationOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
17
+ id: string;
18
+ organizationId: string;
19
+ email: string;
20
+ role: "member" | "admin" | "owner";
21
+ status: import("better-auth/client").InvitationStatus;
22
+ inviterId: string;
23
+ expiresAt: Date;
24
+ createdAt: Date;
25
+ }, BetterFetchError, CancelInvitationParams<TAuthClient>, unknown>;
@@ -0,0 +1,28 @@
1
+ import { organizationMutationKeys, organizationQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ export function cancelInvitationOptions(authClient) {
5
+ const mutationKey = organizationMutationKeys.cancelInvitation;
6
+ const mutationFn = (params) => authClient.organization.cancelInvitation({
7
+ ...params,
8
+ fetchOptions: { ...params?.fetchOptions, throw: true }
9
+ });
10
+ return mutationOptions({
11
+ mutationKey,
12
+ mutationFn
13
+ });
14
+ }
15
+ export function useCancelInvitation(authClient, options, queryClient) {
16
+ const { data: session } = useSession(authClient, undefined, queryClient);
17
+ const userId = session?.user.id;
18
+ return useMutation({
19
+ ...cancelInvitationOptions(authClient),
20
+ ...options,
21
+ meta: {
22
+ awaits: [
23
+ organizationQueryKeys.invitations.all(userId),
24
+ organizationQueryKeys.fullDetails(userId)
25
+ ]
26
+ }
27
+ }, queryClient);
28
+ }
@@ -0,0 +1,21 @@
1
+ import type { BetterFetchError } from "better-auth/react";
2
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
3
+ export type CheckSlugParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["checkSlug"]>[0];
4
+ export type CheckSlugOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof checkSlugOptions<TAuthClient>>, "mutationKey" | "mutationFn">;
5
+ /**
6
+ * Mutation options factory for checking organization slug availability.
7
+ *
8
+ * @param authClient - The Better Auth client.
9
+ */
10
+ export declare function checkSlugOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
11
+ status: boolean;
12
+ }, BetterFetchError, CheckSlugParams<TAuthClient>, unknown>, "mutationKey">;
13
+ /**
14
+ * Create a mutation for checking whether an organization slug is available.
15
+ *
16
+ * @param authClient - The Better Auth client with the organization plugin.
17
+ * @param options - React Query options forwarded to `useMutation`.
18
+ */
19
+ export declare function useCheckSlug<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient, options?: CheckSlugOptions<TAuthClient>): import("@tanstack/react-query").UseMutationResult<{
20
+ status: boolean;
21
+ }, BetterFetchError, CheckSlugParams<TAuthClient>, unknown>;
@@ -0,0 +1,30 @@
1
+ import { organizationMutationKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ /**
4
+ * Mutation options factory for checking organization slug availability.
5
+ *
6
+ * @param authClient - The Better Auth client.
7
+ */
8
+ export function checkSlugOptions(authClient) {
9
+ const mutationKey = organizationMutationKeys.checkSlug;
10
+ const mutationFn = (params) => authClient.organization.checkSlug({
11
+ ...params,
12
+ fetchOptions: { ...params?.fetchOptions, throw: true }
13
+ });
14
+ return mutationOptions({
15
+ mutationKey,
16
+ mutationFn
17
+ });
18
+ }
19
+ /**
20
+ * Create a mutation for checking whether an organization slug is available.
21
+ *
22
+ * @param authClient - The Better Auth client with the organization plugin.
23
+ * @param options - React Query options forwarded to `useMutation`.
24
+ */
25
+ export function useCheckSlug(authClient, options) {
26
+ return useMutation({
27
+ ...checkSlugOptions(authClient),
28
+ ...options
29
+ });
30
+ }
@@ -0,0 +1,39 @@
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
4
+ export type CreateOrganizationParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["create"]>[0];
5
+ export type CreateOrganizationOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof createOrganizationOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
6
+ export declare function createOrganizationOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
7
+ id: string;
8
+ name: string;
9
+ slug: string;
10
+ createdAt: Date;
11
+ logo?: string | null | undefined | undefined;
12
+ metadata?: any;
13
+ } & {
14
+ metadata: any;
15
+ members: ({
16
+ id: string;
17
+ organizationId: string;
18
+ userId: string;
19
+ role: string;
20
+ createdAt: Date;
21
+ } | undefined)[];
22
+ }, BetterFetchError, CreateOrganizationParams<TAuthClient>, unknown>, "mutationKey">;
23
+ export declare function useCreateOrganization<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient, options?: CreateOrganizationOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
24
+ id: string;
25
+ name: string;
26
+ slug: string;
27
+ createdAt: Date;
28
+ logo?: string | null | undefined | undefined;
29
+ metadata?: any;
30
+ } & {
31
+ metadata: any;
32
+ members: ({
33
+ id: string;
34
+ organizationId: string;
35
+ userId: string;
36
+ role: string;
37
+ createdAt: Date;
38
+ } | undefined)[];
39
+ }, BetterFetchError, CreateOrganizationParams<TAuthClient>, unknown>;
@@ -0,0 +1,29 @@
1
+ import { organizationMutationKeys, organizationQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ export function createOrganizationOptions(authClient) {
5
+ const mutationKey = organizationMutationKeys.create;
6
+ const mutationFn = (params) => authClient.organization.create({
7
+ ...params,
8
+ fetchOptions: { ...params?.fetchOptions, throw: true }
9
+ });
10
+ return mutationOptions({
11
+ mutationKey,
12
+ mutationFn
13
+ });
14
+ }
15
+ export function useCreateOrganization(authClient, options, queryClient) {
16
+ const { data: session } = useSession(authClient, undefined, queryClient);
17
+ const userId = session?.user.id;
18
+ return useMutation({
19
+ ...createOrganizationOptions(authClient),
20
+ ...options,
21
+ meta: {
22
+ awaits: [organizationQueryKeys.lists(userId)],
23
+ invalidates: [
24
+ organizationQueryKeys.fullDetails(userId),
25
+ organizationQueryKeys.activeOrganizations(userId)
26
+ ]
27
+ }
28
+ }, queryClient);
29
+ }
@@ -0,0 +1,21 @@
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
4
+ export type DeleteOrganizationParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["delete"]>[0];
5
+ export type DeleteOrganizationOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof deleteOrganizationOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
6
+ export declare function deleteOrganizationOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<{
7
+ id: string;
8
+ name: string;
9
+ slug: string;
10
+ createdAt: Date;
11
+ logo?: string | null | undefined | undefined;
12
+ metadata?: any;
13
+ }, BetterFetchError, DeleteOrganizationParams<TAuthClient>, unknown>, "mutationKey">;
14
+ export declare function useDeleteOrganization<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient, options?: DeleteOrganizationOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<{
15
+ id: string;
16
+ name: string;
17
+ slug: string;
18
+ createdAt: Date;
19
+ logo?: string | null | undefined | undefined;
20
+ metadata?: any;
21
+ }, BetterFetchError, DeleteOrganizationParams<TAuthClient>, unknown>;
@@ -0,0 +1,29 @@
1
+ import { organizationMutationKeys, organizationQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ export function deleteOrganizationOptions(authClient) {
5
+ const mutationKey = organizationMutationKeys.delete;
6
+ const mutationFn = (params) => authClient.organization.delete({
7
+ ...params,
8
+ fetchOptions: { ...params?.fetchOptions, throw: true }
9
+ });
10
+ return mutationOptions({
11
+ mutationKey,
12
+ mutationFn
13
+ });
14
+ }
15
+ export function useDeleteOrganization(authClient, options, queryClient) {
16
+ const { data: session } = useSession(authClient, undefined, queryClient);
17
+ const userId = session?.user.id;
18
+ return useMutation({
19
+ ...deleteOrganizationOptions(authClient),
20
+ ...options,
21
+ meta: {
22
+ awaits: [organizationQueryKeys.lists(userId)],
23
+ invalidates: [
24
+ organizationQueryKeys.fullDetails(userId),
25
+ organizationQueryKeys.activeOrganizations(userId)
26
+ ]
27
+ }
28
+ }, queryClient);
29
+ }
@@ -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,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,43 @@
1
+ import { type QueryClient } from "@tanstack/react-query";
2
+ import type { BetterFetchError } from "better-auth/react";
3
+ import type { OrganizationAuthClient } from "../../lib/auth-client";
4
+ export type InviteMemberParams<TAuthClient extends OrganizationAuthClient> = Parameters<TAuthClient["organization"]["inviteMember"]>[0];
5
+ export type InviteMemberOptions<TAuthClient extends OrganizationAuthClient> = Omit<ReturnType<typeof inviteMemberOptions<TAuthClient>>, "mutationKey" | "mutationFn" | "meta">;
6
+ export declare function inviteMemberOptions<TAuthClient extends OrganizationAuthClient>(authClient: TAuthClient): import("@tanstack/react-query").WithRequired<import("@tanstack/react-query").UseMutationOptions<NonNullable<{
7
+ id: string;
8
+ organizationId: string;
9
+ email: string;
10
+ role: "member" | "admin" | "owner";
11
+ status: import("better-auth/client").InvitationStatus;
12
+ inviterId: string;
13
+ expiresAt: Date;
14
+ createdAt: Date;
15
+ } | {
16
+ id: string;
17
+ organizationId: string;
18
+ email: string;
19
+ role: "member" | "admin" | "owner";
20
+ status: import("better-auth/client").InvitationStatus;
21
+ inviterId: string;
22
+ expiresAt: Date;
23
+ createdAt: Date;
24
+ }>, BetterFetchError, InviteMemberParams<TAuthClient>, unknown>, "mutationKey">;
25
+ export declare function useInviteMember<TAuthClient extends OrganizationAuthClient = OrganizationAuthClient>(authClient: TAuthClient, options?: InviteMemberOptions<TAuthClient>, queryClient?: QueryClient): import("@tanstack/react-query").UseMutationResult<NonNullable<{
26
+ id: string;
27
+ organizationId: string;
28
+ email: string;
29
+ role: "member" | "admin" | "owner";
30
+ status: import("better-auth/client").InvitationStatus;
31
+ inviterId: string;
32
+ expiresAt: Date;
33
+ createdAt: Date;
34
+ } | {
35
+ id: string;
36
+ organizationId: string;
37
+ email: string;
38
+ role: "member" | "admin" | "owner";
39
+ status: import("better-auth/client").InvitationStatus;
40
+ inviterId: string;
41
+ expiresAt: Date;
42
+ createdAt: Date;
43
+ }>, BetterFetchError, InviteMemberParams<TAuthClient>, unknown>;
@@ -0,0 +1,35 @@
1
+ import { organizationMutationKeys, organizationQueryKeys } from "@better-auth-ui/core/plugins";
2
+ import { mutationOptions, useMutation } from "@tanstack/react-query";
3
+ import { useSession } from "../../queries/auth/session-query";
4
+ import { useActiveOrganization } from "../../queries/organization";
5
+ export function inviteMemberOptions(authClient) {
6
+ const mutationKey = organizationMutationKeys.inviteMember;
7
+ const mutationFn = (params) => authClient.organization.inviteMember({
8
+ ...params,
9
+ fetchOptions: { ...params?.fetchOptions, throw: true }
10
+ });
11
+ return mutationOptions({
12
+ mutationKey,
13
+ mutationFn
14
+ });
15
+ }
16
+ export function useInviteMember(authClient, options, queryClient) {
17
+ const { data: session } = useSession(authClient, undefined, queryClient);
18
+ const userId = session?.user.id;
19
+ const { data: activeOrganization } = useActiveOrganization(authClient, undefined, queryClient);
20
+ return useMutation({
21
+ ...inviteMemberOptions(authClient),
22
+ ...options,
23
+ mutationFn: (params) => authClient.organization.inviteMember({
24
+ ...params,
25
+ organizationId: params?.organizationId ?? activeOrganization?.id,
26
+ fetchOptions: { ...params?.fetchOptions, throw: true }
27
+ }),
28
+ meta: {
29
+ awaits: [
30
+ organizationQueryKeys.invitations.all(userId),
31
+ organizationQueryKeys.fullDetails(userId)
32
+ ]
33
+ }
34
+ }, queryClient);
35
+ }