@revealui/auth 0.0.1-pre.0

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 (413) hide show
  1. package/LICENSE +202 -0
  2. package/dist/better-auth/adapter/__tests__/transform.test.js +213 -0
  3. package/dist/better-auth/adapter/__tests__/transform.test.js.map +1 -0
  4. package/dist/better-auth/adapter/generate-schema/biome.d.js +2 -0
  5. package/dist/better-auth/adapter/generate-schema/biome.d.js.map +1 -0
  6. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.d.ts +5 -0
  7. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.js +482 -0
  8. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.js.map +1 -0
  9. package/dist/better-auth/adapter/generate-schema/get-payload-schema.d.ts +1 -0
  10. package/dist/better-auth/adapter/generate-schema/get-payload-schema.js +42 -0
  11. package/dist/better-auth/adapter/generate-schema/get-payload-schema.js.map +1 -0
  12. package/dist/better-auth/adapter/generate-schema/index.d.ts +4 -0
  13. package/dist/better-auth/adapter/generate-schema/index.js +19 -0
  14. package/dist/better-auth/adapter/generate-schema/index.js.map +1 -0
  15. package/dist/better-auth/adapter/generate-schema/utils.d.ts +2 -0
  16. package/dist/better-auth/adapter/generate-schema/utils.js +20 -0
  17. package/dist/better-auth/adapter/generate-schema/utils.js.map +1 -0
  18. package/dist/better-auth/adapter/index.d.ts +15 -0
  19. package/dist/better-auth/adapter/index.js +731 -0
  20. package/dist/better-auth/adapter/index.js.map +1 -0
  21. package/dist/better-auth/adapter/tests/adapter.test.js +174 -0
  22. package/dist/better-auth/adapter/tests/adapter.test.js.map +1 -0
  23. package/dist/better-auth/adapter/tests/base-collections-tests.js +575 -0
  24. package/dist/better-auth/adapter/tests/base-collections-tests.js.map +1 -0
  25. package/dist/better-auth/adapter/tests/dev/index.js +117 -0
  26. package/dist/better-auth/adapter/tests/dev/index.js.map +1 -0
  27. package/dist/better-auth/adapter/tests/dev/migrate.js +26 -0
  28. package/dist/better-auth/adapter/tests/dev/migrate.js.map +1 -0
  29. package/dist/better-auth/adapter/tests/dev/migrations/20250423_232936_init.js +218 -0
  30. package/dist/better-auth/adapter/tests/dev/migrations/20250423_232936_init.js.map +1 -0
  31. package/dist/better-auth/adapter/tests/dev/schema.js +160 -0
  32. package/dist/better-auth/adapter/tests/dev/schema.js.map +1 -0
  33. package/dist/better-auth/adapter/tests/plugins-tests.js +2 -0
  34. package/dist/better-auth/adapter/tests/plugins-tests.js.map +1 -0
  35. package/dist/better-auth/adapter/transform/index.d.ts +27 -0
  36. package/dist/better-auth/adapter/transform/index.js +664 -0
  37. package/dist/better-auth/adapter/transform/index.js.map +1 -0
  38. package/dist/better-auth/adapter/types.d.ts +10 -0
  39. package/dist/better-auth/adapter/types.js +3 -0
  40. package/dist/better-auth/adapter/types.js.map +1 -0
  41. package/dist/better-auth/generated-types.d.ts +285 -0
  42. package/dist/better-auth/index.d.ts +3 -0
  43. package/dist/better-auth/index.js +5 -0
  44. package/dist/better-auth/index.js.map +1 -0
  45. package/dist/better-auth/plugin/__tests__/plugin.test.js +162 -0
  46. package/dist/better-auth/plugin/__tests__/plugin.test.js.map +1 -0
  47. package/dist/better-auth/plugin/constants.d.ts +220 -0
  48. package/dist/better-auth/plugin/constants.js +249 -0
  49. package/dist/better-auth/plugin/constants.js.map +1 -0
  50. package/dist/better-auth/plugin/helpers/check-plugin-exists.d.ts +12 -0
  51. package/dist/better-auth/plugin/helpers/check-plugin-exists.js +14 -0
  52. package/dist/better-auth/plugin/helpers/check-plugin-exists.js.map +1 -0
  53. package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts +29 -0
  54. package/dist/better-auth/plugin/helpers/generate-verify-email-url.js +46 -0
  55. package/dist/better-auth/plugin/helpers/generate-verify-email-url.js.map +1 -0
  56. package/dist/better-auth/plugin/helpers/get-admin-access.d.ts +7 -0
  57. package/dist/better-auth/plugin/helpers/get-admin-access.js +22 -0
  58. package/dist/better-auth/plugin/helpers/get-admin-access.js.map +1 -0
  59. package/dist/better-auth/plugin/helpers/get-all-roles.d.ts +5 -0
  60. package/dist/better-auth/plugin/helpers/get-all-roles.js +20 -0
  61. package/dist/better-auth/plugin/helpers/get-all-roles.js.map +1 -0
  62. package/dist/better-auth/plugin/helpers/get-better-auth-schema.d.ts +18 -0
  63. package/dist/better-auth/plugin/helpers/get-better-auth-schema.js +70 -0
  64. package/dist/better-auth/plugin/helpers/get-better-auth-schema.js.map +1 -0
  65. package/dist/better-auth/plugin/helpers/get-collection-slug.d.ts +5 -0
  66. package/dist/better-auth/plugin/helpers/get-collection-slug.js +20 -0
  67. package/dist/better-auth/plugin/helpers/get-collection-slug.js.map +1 -0
  68. package/dist/better-auth/plugin/helpers/get-collection.d.ts +15 -0
  69. package/dist/better-auth/plugin/helpers/get-collection.js +29 -0
  70. package/dist/better-auth/plugin/helpers/get-collection.js.map +1 -0
  71. package/dist/better-auth/plugin/helpers/get-ip.d.ts +2 -0
  72. package/dist/better-auth/plugin/helpers/get-ip.js +31 -0
  73. package/dist/better-auth/plugin/helpers/get-ip.js.map +1 -0
  74. package/dist/better-auth/plugin/helpers/get-signed-cookie.d.ts +2 -0
  75. package/dist/better-auth/plugin/helpers/get-signed-cookie.js +65 -0
  76. package/dist/better-auth/plugin/helpers/get-signed-cookie.js.map +1 -0
  77. package/dist/better-auth/plugin/helpers/index.d.ts +1 -0
  78. package/dist/better-auth/plugin/helpers/index.js +3 -0
  79. package/dist/better-auth/plugin/helpers/index.js.map +1 -0
  80. package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts +59 -0
  81. package/dist/better-auth/plugin/helpers/prepare-session-data.js +49 -0
  82. package/dist/better-auth/plugin/helpers/prepare-session-data.js.map +1 -0
  83. package/dist/better-auth/plugin/helpers/sync-resolved-schema-with-collection-map.d.ts +20 -0
  84. package/dist/better-auth/plugin/helpers/sync-resolved-schema-with-collection-map.js +67 -0
  85. package/dist/better-auth/plugin/helpers/sync-resolved-schema-with-collection-map.js.map +1 -0
  86. package/dist/better-auth/plugin/index.d.ts +11 -0
  87. package/dist/better-auth/plugin/index.js +125 -0
  88. package/dist/better-auth/plugin/index.js.map +1 -0
  89. package/dist/better-auth/plugin/lib/apply-disabled-default-auth-config.d.ts +12 -0
  90. package/dist/better-auth/plugin/lib/apply-disabled-default-auth-config.js +87 -0
  91. package/dist/better-auth/plugin/lib/apply-disabled-default-auth-config.js.map +1 -0
  92. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts +3 -0
  93. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +60 -0
  94. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js.map +1 -0
  95. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +3 -0
  96. package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +154 -0
  97. package/dist/better-auth/plugin/lib/build-collections/accounts/index.js.map +1 -0
  98. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts +5 -0
  99. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js +11 -0
  100. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js.map +1 -0
  101. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts +2 -0
  102. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js +8 -0
  103. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js.map +1 -0
  104. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +6 -0
  105. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +119 -0
  106. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js.map +1 -0
  107. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +3 -0
  108. package/dist/better-auth/plugin/lib/build-collections/api-keys.js +177 -0
  109. package/dist/better-auth/plugin/lib/build-collections/api-keys.js.map +1 -0
  110. package/dist/better-auth/plugin/lib/build-collections/device-code.d.ts +3 -0
  111. package/dist/better-auth/plugin/lib/build-collections/device-code.js +50 -0
  112. package/dist/better-auth/plugin/lib/build-collections/device-code.js.map +1 -0
  113. package/dist/better-auth/plugin/lib/build-collections/index.d.ts +10 -0
  114. package/dist/better-auth/plugin/lib/build-collections/index.js +73 -0
  115. package/dist/better-auth/plugin/lib/build-collections/index.js.map +1 -0
  116. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +3 -0
  117. package/dist/better-auth/plugin/lib/build-collections/invitations.js +94 -0
  118. package/dist/better-auth/plugin/lib/build-collections/invitations.js.map +1 -0
  119. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +3 -0
  120. package/dist/better-auth/plugin/lib/build-collections/jwks.js +59 -0
  121. package/dist/better-auth/plugin/lib/build-collections/jwks.js.map +1 -0
  122. package/dist/better-auth/plugin/lib/build-collections/members.d.ts +3 -0
  123. package/dist/better-auth/plugin/lib/build-collections/members.js +73 -0
  124. package/dist/better-auth/plugin/lib/build-collections/members.js.map +1 -0
  125. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +3 -0
  126. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +107 -0
  127. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js.map +1 -0
  128. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +3 -0
  129. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +118 -0
  130. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js.map +1 -0
  131. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +3 -0
  132. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +89 -0
  133. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js.map +1 -0
  134. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +3 -0
  135. package/dist/better-auth/plugin/lib/build-collections/organizations.js +70 -0
  136. package/dist/better-auth/plugin/lib/build-collections/organizations.js.map +1 -0
  137. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +3 -0
  138. package/dist/better-auth/plugin/lib/build-collections/passkeys.js +115 -0
  139. package/dist/better-auth/plugin/lib/build-collections/passkeys.js.map +1 -0
  140. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +3 -0
  141. package/dist/better-auth/plugin/lib/build-collections/sessions.js +170 -0
  142. package/dist/better-auth/plugin/lib/build-collections/sessions.js.map +1 -0
  143. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +3 -0
  144. package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +81 -0
  145. package/dist/better-auth/plugin/lib/build-collections/sso-providers.js.map +1 -0
  146. package/dist/better-auth/plugin/lib/build-collections/subscriptions.d.ts +3 -0
  147. package/dist/better-auth/plugin/lib/build-collections/subscriptions.js +111 -0
  148. package/dist/better-auth/plugin/lib/build-collections/subscriptions.js.map +1 -0
  149. package/dist/better-auth/plugin/lib/build-collections/team-members.d.ts +3 -0
  150. package/dist/better-auth/plugin/lib/build-collections/team-members.js +57 -0
  151. package/dist/better-auth/plugin/lib/build-collections/team-members.js.map +1 -0
  152. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +3 -0
  153. package/dist/better-auth/plugin/lib/build-collections/teams.js +76 -0
  154. package/dist/better-auth/plugin/lib/build-collections/teams.js.map +1 -0
  155. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +3 -0
  156. package/dist/better-auth/plugin/lib/build-collections/two-factors.js +67 -0
  157. package/dist/better-auth/plugin/lib/build-collections/two-factors.js.map +1 -0
  158. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts +7 -0
  159. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +53 -0
  160. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js.map +1 -0
  161. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts +11 -0
  162. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +75 -0
  163. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js.map +1 -0
  164. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.d.ts +4 -0
  165. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.js +6 -0
  166. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.js.map +1 -0
  167. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts +2 -0
  168. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js +115 -0
  169. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js.map +1 -0
  170. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts +3 -0
  171. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js +64 -0
  172. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js.map +1 -0
  173. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts +3 -0
  174. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +80 -0
  175. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js.map +1 -0
  176. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts +6 -0
  177. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +79 -0
  178. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js.map +1 -0
  179. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts +2 -0
  180. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +82 -0
  181. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js.map +1 -0
  182. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +2 -0
  183. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +54 -0
  184. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js.map +1 -0
  185. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts +6 -0
  186. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +15 -0
  187. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js.map +1 -0
  188. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.d.ts +6 -0
  189. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.js +8 -0
  190. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.js.map +1 -0
  191. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +2 -0
  192. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +17 -0
  193. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js.map +1 -0
  194. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts +2 -0
  195. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +91 -0
  196. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js.map +1 -0
  197. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +3 -0
  198. package/dist/better-auth/plugin/lib/build-collections/users/index.js +341 -0
  199. package/dist/better-auth/plugin/lib/build-collections/users/index.js.map +1 -0
  200. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.d.ts +15 -0
  201. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.js +24 -0
  202. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.js.map +1 -0
  203. package/dist/better-auth/plugin/lib/build-collections/utils/filter-duplicate-fields.d.ts +10 -0
  204. package/dist/better-auth/plugin/lib/build-collections/utils/filter-duplicate-fields.js +67 -0
  205. package/dist/better-auth/plugin/lib/build-collections/utils/filter-duplicate-fields.js.map +1 -0
  206. package/dist/better-auth/plugin/lib/build-collections/utils/filter-properties.d.ts +9 -0
  207. package/dist/better-auth/plugin/lib/build-collections/utils/filter-properties.js +94 -0
  208. package/dist/better-auth/plugin/lib/build-collections/utils/filter-properties.js.map +1 -0
  209. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +7 -0
  210. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +35 -0
  211. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js.map +1 -0
  212. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.d.ts +12 -0
  213. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.js +25 -0
  214. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.js.map +1 -0
  215. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts +14 -0
  216. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js +67 -0
  217. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js.map +1 -0
  218. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.d.ts +20 -0
  219. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.js +98 -0
  220. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.js.map +1 -0
  221. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +3 -0
  222. package/dist/better-auth/plugin/lib/build-collections/verifications.js +87 -0
  223. package/dist/better-auth/plugin/lib/build-collections/verifications.js.map +1 -0
  224. package/dist/better-auth/plugin/lib/get-payload-auth.d.ts +5 -0
  225. package/dist/better-auth/plugin/lib/get-payload-auth.js +9 -0
  226. package/dist/better-auth/plugin/lib/get-payload-auth.js.map +1 -0
  227. package/dist/better-auth/plugin/lib/init-better-auth.d.ts +7 -0
  228. package/dist/better-auth/plugin/lib/init-better-auth.js +46 -0
  229. package/dist/better-auth/plugin/lib/init-better-auth.js.map +1 -0
  230. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts +2 -0
  231. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +9 -0
  232. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js.map +1 -0
  233. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts +2 -0
  234. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +10 -0
  235. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js.map +1 -0
  236. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/device-authorization-plugin.d.ts +2 -0
  237. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/device-authorization-plugin.js +8 -0
  238. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/device-authorization-plugin.js.map +1 -0
  239. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +10 -0
  240. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +156 -0
  241. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js.map +1 -0
  242. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts +2 -0
  243. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +18 -0
  244. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js.map +1 -0
  245. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts +2 -0
  246. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +34 -0
  247. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js.map +1 -0
  248. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts +2 -0
  249. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +11 -0
  250. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js.map +1 -0
  251. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts +2 -0
  252. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +10 -0
  253. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js.map +1 -0
  254. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.d.ts +2 -0
  255. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.js +11 -0
  256. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.js.map +1 -0
  257. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts +7 -0
  258. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js +23 -0
  259. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js.map +1 -0
  260. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts +25 -0
  261. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js +62 -0
  262. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js.map +1 -0
  263. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.d.ts +9 -0
  264. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.js +47 -0
  265. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.js.map +1 -0
  266. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts +15 -0
  267. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +42 -0
  268. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js.map +1 -0
  269. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/use-admin-invite-after-email-sign-up-middleware.d.ts +9 -0
  270. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/use-admin-invite-after-email-sign-up-middleware.js +63 -0
  271. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/use-admin-invite-after-email-sign-up-middleware.js.map +1 -0
  272. package/dist/better-auth/plugin/lib/set-login-methods.d.ts +4 -0
  273. package/dist/better-auth/plugin/lib/set-login-methods.js +14 -0
  274. package/dist/better-auth/plugin/lib/set-login-methods.js.map +1 -0
  275. package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts +9 -0
  276. package/dist/better-auth/plugin/payload/components/admin-buttons/index.js +143 -0
  277. package/dist/better-auth/plugin/payload/components/admin-buttons/index.js.map +1 -0
  278. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts +10 -0
  279. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js +219 -0
  280. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js.map +1 -0
  281. package/dist/better-auth/plugin/payload/components/logout-button.d.ts +4 -0
  282. package/dist/better-auth/plugin/payload/components/logout-button.js +24 -0
  283. package/dist/better-auth/plugin/payload/components/logout-button.js.map +1 -0
  284. package/dist/better-auth/plugin/payload/components/passkeys/add-button.d.ts +8 -0
  285. package/dist/better-auth/plugin/payload/components/passkeys/add-button.js +117 -0
  286. package/dist/better-auth/plugin/payload/components/passkeys/add-button.js.map +1 -0
  287. package/dist/better-auth/plugin/payload/components/passkeys/client.d.ts +3 -0
  288. package/dist/better-auth/plugin/payload/components/passkeys/client.js +66 -0
  289. package/dist/better-auth/plugin/payload/components/passkeys/client.js.map +1 -0
  290. package/dist/better-auth/plugin/payload/components/passkeys/index.d.ts +4 -0
  291. package/dist/better-auth/plugin/payload/components/passkeys/index.js +52 -0
  292. package/dist/better-auth/plugin/payload/components/passkeys/index.js.map +1 -0
  293. package/dist/better-auth/plugin/payload/components/passkeys/list.d.ts +8 -0
  294. package/dist/better-auth/plugin/payload/components/passkeys/list.js +57 -0
  295. package/dist/better-auth/plugin/payload/components/passkeys/list.js.map +1 -0
  296. package/dist/better-auth/plugin/payload/components/passkeys/types.d.ts +22 -0
  297. package/dist/better-auth/plugin/payload/components/passkeys/types.js +3 -0
  298. package/dist/better-auth/plugin/payload/components/passkeys/types.js.map +1 -0
  299. package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts +6 -0
  300. package/dist/better-auth/plugin/payload/components/rsc-redirect.js +7 -0
  301. package/dist/better-auth/plugin/payload/components/rsc-redirect.js.map +1 -0
  302. package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.d.ts +15 -0
  303. package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.js +157 -0
  304. package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.js.map +1 -0
  305. package/dist/better-auth/plugin/payload/components/token-field.d.ts +4 -0
  306. package/dist/better-auth/plugin/payload/components/token-field.js +31 -0
  307. package/dist/better-auth/plugin/payload/components/token-field.js.map +1 -0
  308. package/dist/better-auth/plugin/payload/components/two-factor-auth/index.d.ts +8 -0
  309. package/dist/better-auth/plugin/payload/components/two-factor-auth/index.js +300 -0
  310. package/dist/better-auth/plugin/payload/components/two-factor-auth/index.js.map +1 -0
  311. package/dist/better-auth/plugin/payload/exports/client.d.ts +6 -0
  312. package/dist/better-auth/plugin/payload/exports/client.js +8 -0
  313. package/dist/better-auth/plugin/payload/exports/client.js.map +1 -0
  314. package/dist/better-auth/plugin/payload/exports/rsc.d.ts +8 -0
  315. package/dist/better-auth/plugin/payload/exports/rsc.js +10 -0
  316. package/dist/better-auth/plugin/payload/exports/rsc.js.map +1 -0
  317. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts +2 -0
  318. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js +9 -0
  319. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js.map +1 -0
  320. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts +1 -0
  321. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js +22 -0
  322. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js.map +1 -0
  323. package/dist/better-auth/plugin/payload/views/admin-login/client.d.ts +19 -0
  324. package/dist/better-auth/plugin/payload/views/admin-login/client.js +226 -0
  325. package/dist/better-auth/plugin/payload/views/admin-login/client.js.map +1 -0
  326. package/dist/better-auth/plugin/payload/views/admin-login/index.d.ts +10 -0
  327. package/dist/better-auth/plugin/payload/views/admin-login/index.js +150 -0
  328. package/dist/better-auth/plugin/payload/views/admin-login/index.js.map +1 -0
  329. package/dist/better-auth/plugin/payload/views/admin-signup/client.d.ts +16 -0
  330. package/dist/better-auth/plugin/payload/views/admin-signup/client.js +299 -0
  331. package/dist/better-auth/plugin/payload/views/admin-signup/client.js.map +1 -0
  332. package/dist/better-auth/plugin/payload/views/admin-signup/index.d.ts +9 -0
  333. package/dist/better-auth/plugin/payload/views/admin-signup/index.js +104 -0
  334. package/dist/better-auth/plugin/payload/views/admin-signup/index.js.map +1 -0
  335. package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts +7 -0
  336. package/dist/better-auth/plugin/payload/views/forgot-password/client.js +119 -0
  337. package/dist/better-auth/plugin/payload/views/forgot-password/client.js.map +1 -0
  338. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +8 -0
  339. package/dist/better-auth/plugin/payload/views/forgot-password/index.js +78 -0
  340. package/dist/better-auth/plugin/payload/views/forgot-password/index.js.map +1 -0
  341. package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts +10 -0
  342. package/dist/better-auth/plugin/payload/views/reset-password/client.js +144 -0
  343. package/dist/better-auth/plugin/payload/views/reset-password/client.js.map +1 -0
  344. package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts +8 -0
  345. package/dist/better-auth/plugin/payload/views/reset-password/index.js +96 -0
  346. package/dist/better-auth/plugin/payload/views/reset-password/index.js.map +1 -0
  347. package/dist/better-auth/plugin/payload/views/two-factor-verify/client.d.ts +6 -0
  348. package/dist/better-auth/plugin/payload/views/two-factor-verify/client.js +96 -0
  349. package/dist/better-auth/plugin/payload/views/two-factor-verify/client.js.map +1 -0
  350. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.d.ts +9 -0
  351. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.js +56 -0
  352. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.js.map +1 -0
  353. package/dist/better-auth/plugin/types.d.ts +429 -0
  354. package/dist/better-auth/plugin/types.js +3 -0
  355. package/dist/better-auth/plugin/types.js.map +1 -0
  356. package/dist/better-auth/plugin/utils/set.d.ts +39 -0
  357. package/dist/better-auth/plugin/utils/set.js +103 -0
  358. package/dist/better-auth/plugin/utils/set.js.map +1 -0
  359. package/dist/better-auth/scripts/generate-types.d.ts +1 -0
  360. package/dist/better-auth/scripts/generate-types.js +234 -0
  361. package/dist/better-auth/scripts/generate-types.js.map +1 -0
  362. package/dist/better-auth/types.d.ts +2 -0
  363. package/dist/better-auth/types.js +4 -0
  364. package/dist/better-auth/types.js.map +1 -0
  365. package/dist/index.d.ts +1 -0
  366. package/dist/index.js +4 -0
  367. package/dist/index.js.map +1 -0
  368. package/dist/shared/components/icons.d.ts +7 -0
  369. package/dist/shared/components/icons.js +442 -0
  370. package/dist/shared/components/icons.js.map +1 -0
  371. package/dist/shared/components/logo.d.ts +3 -0
  372. package/dist/shared/components/logo.js +24 -0
  373. package/dist/shared/components/logo.js.map +1 -0
  374. package/dist/shared/form/components/submit.d.ts +7 -0
  375. package/dist/shared/form/components/submit.js +16 -0
  376. package/dist/shared/form/components/submit.js.map +1 -0
  377. package/dist/shared/form/fields/text-field.d.ts +8 -0
  378. package/dist/shared/form/fields/text-field.js +37 -0
  379. package/dist/shared/form/fields/text-field.js.map +1 -0
  380. package/dist/shared/form/index.d.ts +4 -0
  381. package/dist/shared/form/index.js +8 -0
  382. package/dist/shared/form/index.js.map +1 -0
  383. package/dist/shared/form/ui/header/index.d.ts +8 -0
  384. package/dist/shared/form/ui/header/index.js +24 -0
  385. package/dist/shared/form/ui/header/index.js.map +1 -0
  386. package/dist/shared/form/ui/index.d.ts +31 -0
  387. package/dist/shared/form/ui/index.js +57 -0
  388. package/dist/shared/form/ui/index.js.map +1 -0
  389. package/dist/shared/form/validation.d.ts +51 -0
  390. package/dist/shared/form/validation.js +127 -0
  391. package/dist/shared/form/validation.js.map +1 -0
  392. package/dist/shared/index.d.ts +2 -0
  393. package/dist/shared/index.js +4 -0
  394. package/dist/shared/index.js.map +1 -0
  395. package/dist/shared/payload/fields/field-copy-button/index.d.ts +3 -0
  396. package/dist/shared/payload/fields/field-copy-button/index.js +38 -0
  397. package/dist/shared/payload/fields/field-copy-button/index.js.map +1 -0
  398. package/dist/shared/payload/fields/generate-uuid-button/index.d.ts +3 -0
  399. package/dist/shared/payload/fields/generate-uuid-button/index.js +26 -0
  400. package/dist/shared/payload/fields/generate-uuid-button/index.js.map +1 -0
  401. package/dist/shared/payload/fields/index.d.ts +2 -0
  402. package/dist/shared/payload/fields/index.js +4 -0
  403. package/dist/shared/payload/fields/index.js.map +1 -0
  404. package/dist/shared/utils/regex.d.ts +2 -0
  405. package/dist/shared/utils/regex.js +4 -0
  406. package/dist/shared/utils/regex.js.map +1 -0
  407. package/dist/shared/utils/try-catch.d.ts +11 -0
  408. package/dist/shared/utils/try-catch.js +17 -0
  409. package/dist/shared/utils/try-catch.js.map +1 -0
  410. package/dist/shared/utils/value-or-default.d.ts +9 -0
  411. package/dist/shared/utils/value-or-default.js +12 -0
  412. package/dist/shared/utils/value-or-default.js.map +1 -0
  413. package/package.json +122 -0
@@ -0,0 +1,220 @@
1
+ export declare const socialProviders: readonly ["apple", "discord", "facebook", "github", "google", "linkedin", "microsoft", "spotify", "tiktok", "twitter", "twitch", "zoom", "gitlab", "roblox", "vk", "kick", "reddit"];
2
+ export declare const loginMethods: readonly ["emailPassword", "magicLink", "emailOTP", "phonePassword", "phoneOTP", "phoneMagicLink", "passkey", "apple", "discord", "facebook", "github", "google", "linkedin", "microsoft", "spotify", "tiktok", "twitter", "twitch", "zoom", "gitlab", "roblox", "vk", "kick", "reddit"];
3
+ export declare const supportedBAPluginIds: {
4
+ readonly oneTimeToken: "one-time-token";
5
+ readonly oAuthProxy: "oauth-proxy";
6
+ readonly haveIBeenPwned: "haveIBeenPwned";
7
+ readonly captcha: "captcha";
8
+ readonly bearer: "bearer";
9
+ readonly genericOAuth: "generic-oauth";
10
+ readonly customSession: "custom-session";
11
+ readonly harmonyEmail: "harmony-email";
12
+ readonly harmonyPhoneNumber: "harmony-phone-number";
13
+ readonly twoFactor: "two-factor";
14
+ readonly username: "username";
15
+ readonly anonymous: "anonymous";
16
+ readonly phoneNumber: "phone-number";
17
+ readonly magicLink: "magic-link";
18
+ readonly emailOtp: "email-otp";
19
+ readonly passkey: "passkey";
20
+ readonly oneTap: "one-tap";
21
+ readonly admin: "admin";
22
+ readonly apiKey: "api-key";
23
+ readonly mcp: "mcp";
24
+ readonly organization: "organization";
25
+ readonly multiSession: "multi-session";
26
+ readonly openApi: "open-api";
27
+ readonly jwt: "jwt";
28
+ readonly nextCookies: "next-cookies";
29
+ readonly sso: "sso";
30
+ readonly oidc: "oidc";
31
+ readonly expo: "expo";
32
+ readonly polar: "polar";
33
+ readonly stripe: "stripe";
34
+ readonly autumn: "autumn";
35
+ readonly dodopayments: "dodopayments";
36
+ readonly dubAnalytics: "dub-analytics";
37
+ readonly deviceAuthorization: "device-authorization";
38
+ readonly lastLoginMethod: "last-login-method";
39
+ };
40
+ export declare const baseSlugs: {
41
+ readonly users: "users";
42
+ readonly sessions: "sessions";
43
+ readonly accounts: "accounts";
44
+ readonly verifications: "verifications";
45
+ readonly adminInvitations: "admin-invitations";
46
+ };
47
+ export declare const baPluginSlugs: {
48
+ readonly subscriptions: "subscriptions";
49
+ readonly apiKeys: "apiKeys";
50
+ readonly jwks: "jwks";
51
+ readonly twoFactors: "twoFactors";
52
+ readonly passkeys: "passkeys";
53
+ readonly oauthApplications: "oauthApplications";
54
+ readonly oauthAccessTokens: "oauthAccessTokens";
55
+ readonly oauthConsents: "oauthConsents";
56
+ readonly ssoProviders: "ssoProviders";
57
+ readonly organizations: "organizations";
58
+ readonly invitations: "invitations";
59
+ readonly members: "members";
60
+ readonly teams: "teams";
61
+ readonly teamMembers: "teamMembers";
62
+ };
63
+ export declare const baModelKey: {
64
+ readonly user: "user";
65
+ readonly session: "session";
66
+ readonly account: "account";
67
+ readonly verification: "verification";
68
+ readonly twoFactor: "twoFactor";
69
+ readonly passkey: "passkey";
70
+ readonly oauthApplication: "oauthApplication";
71
+ readonly oauthAccessToken: "oauthAccessToken";
72
+ readonly oauthConsent: "oauthConsent";
73
+ readonly ssoProvider: "ssoProvider";
74
+ readonly organization: "organization";
75
+ readonly invitation: "invitation";
76
+ readonly member: "member";
77
+ readonly team: "team";
78
+ readonly teamMember: "teamMember";
79
+ readonly subscription: "subscription";
80
+ readonly apikey: "apikey";
81
+ readonly jwks: "jwks";
82
+ readonly deviceCode: "deviceCode";
83
+ };
84
+ export declare const baModelFieldKeysToFieldNames: {
85
+ readonly user: {
86
+ readonly role: "role";
87
+ };
88
+ readonly account: {
89
+ readonly userId: "user";
90
+ };
91
+ readonly session: {
92
+ readonly userId: "user";
93
+ };
94
+ readonly member: {
95
+ readonly organizationId: "organization";
96
+ readonly userId: "user";
97
+ readonly teamId: "team";
98
+ };
99
+ readonly invitation: {
100
+ readonly organizationId: "organization";
101
+ readonly inviterId: "inviter";
102
+ readonly teamId: "team";
103
+ };
104
+ readonly team: {
105
+ readonly organizationId: "organization";
106
+ };
107
+ readonly apikey: {
108
+ readonly userId: "user";
109
+ };
110
+ readonly twoFactor: {
111
+ readonly userId: "user";
112
+ };
113
+ readonly passkey: {
114
+ readonly userId: "user";
115
+ };
116
+ readonly ssoProvider: {
117
+ readonly userId: "user";
118
+ };
119
+ readonly oauthApplication: {
120
+ readonly userId: "user";
121
+ };
122
+ readonly oauthAccessToken: {
123
+ readonly userId: "user";
124
+ readonly clientId: "client";
125
+ };
126
+ readonly oauthConsent: {
127
+ readonly userId: "user";
128
+ readonly clientId: "client";
129
+ };
130
+ };
131
+ export declare const baModelFieldKeys: {
132
+ readonly teamMember: {
133
+ readonly teamId: "teamId";
134
+ readonly userId: "userId";
135
+ };
136
+ readonly account: {
137
+ readonly userId: "userId";
138
+ };
139
+ readonly session: {
140
+ readonly userId: "userId";
141
+ readonly activeOrganizationId: "activeOrganizationId";
142
+ readonly impersonatedBy: "impersonatedBy";
143
+ readonly activeTeamId: "activeTeamId";
144
+ };
145
+ readonly member: {
146
+ readonly organizationId: "organizationId";
147
+ readonly userId: "userId";
148
+ readonly teamId: "teamId";
149
+ };
150
+ readonly invitation: {
151
+ readonly organizationId: "organizationId";
152
+ readonly inviterId: "inviterId";
153
+ readonly teamId: "teamId";
154
+ };
155
+ readonly team: {
156
+ readonly organizationId: "organizationId";
157
+ };
158
+ readonly apikey: {
159
+ readonly userId: "userId";
160
+ };
161
+ readonly twoFactor: {
162
+ readonly userId: "userId";
163
+ };
164
+ readonly passkey: {
165
+ readonly userId: "userId";
166
+ };
167
+ readonly ssoProvider: {
168
+ readonly userId: "userId";
169
+ };
170
+ readonly oauthApplication: {
171
+ readonly userId: "userId";
172
+ };
173
+ readonly oauthAccessToken: {
174
+ readonly userId: "userId";
175
+ readonly clientId: "clientId";
176
+ };
177
+ readonly oauthConsent: {
178
+ readonly userId: "userId";
179
+ readonly clientId: "clientId";
180
+ };
181
+ };
182
+ export declare const baModelKeyToSlug: {
183
+ readonly user: "users";
184
+ readonly session: "sessions";
185
+ readonly account: "accounts";
186
+ readonly verification: "verifications";
187
+ readonly twoFactor: "twoFactors";
188
+ readonly passkey: "passkeys";
189
+ readonly oauthApplication: "oauthApplications";
190
+ readonly oauthAccessToken: "oauthAccessTokens";
191
+ readonly oauthConsent: "oauthConsents";
192
+ readonly ssoProvider: "ssoProviders";
193
+ readonly organization: "organizations";
194
+ readonly invitation: "invitations";
195
+ readonly member: "members";
196
+ readonly team: "teams";
197
+ readonly teamMember: "teamMembers";
198
+ readonly subscription: "subscriptions";
199
+ readonly apikey: "apiKeys";
200
+ readonly jwks: "jwks";
201
+ };
202
+ export declare const adminRoutes: {
203
+ readonly forgotPassword: "/forgot-password";
204
+ readonly resetPassword: "/reset-password";
205
+ readonly adminSignup: "/signup";
206
+ readonly adminLogin: "/login";
207
+ readonly loginRedirect: "/login-redirect";
208
+ readonly twoFactorVerify: "/two-factor-verify";
209
+ };
210
+ export declare const adminEndpoints: {
211
+ readonly setAdminRole: "/set-admin-role";
212
+ readonly refreshToken: "/refresh-token";
213
+ readonly sendInvite: "/send-invite";
214
+ readonly generateInviteUrl: "/generate-invite-url";
215
+ readonly signup: "/signup";
216
+ };
217
+ export declare const defaults: {
218
+ readonly adminRole: "admin";
219
+ readonly userRole: "user";
220
+ };
@@ -0,0 +1,249 @@
1
+ export const socialProviders = [
2
+ 'apple',
3
+ 'discord',
4
+ 'facebook',
5
+ 'github',
6
+ 'google',
7
+ 'linkedin',
8
+ 'microsoft',
9
+ 'spotify',
10
+ 'tiktok',
11
+ 'twitter',
12
+ 'twitch',
13
+ 'zoom',
14
+ 'gitlab',
15
+ 'roblox',
16
+ 'vk',
17
+ 'kick',
18
+ 'reddit'
19
+ ];
20
+ export const loginMethods = [
21
+ 'emailPassword',
22
+ 'magicLink',
23
+ 'emailOTP',
24
+ 'phonePassword',
25
+ 'phoneOTP',
26
+ 'phoneMagicLink',
27
+ 'passkey',
28
+ ...socialProviders
29
+ ];
30
+ export const supportedBAPluginIds = {
31
+ oneTimeToken: 'one-time-token',
32
+ oAuthProxy: 'oauth-proxy',
33
+ haveIBeenPwned: 'haveIBeenPwned',
34
+ captcha: 'captcha',
35
+ bearer: 'bearer',
36
+ genericOAuth: 'generic-oauth',
37
+ customSession: 'custom-session',
38
+ harmonyEmail: 'harmony-email',
39
+ harmonyPhoneNumber: 'harmony-phone-number',
40
+ twoFactor: 'two-factor',
41
+ username: 'username',
42
+ anonymous: 'anonymous',
43
+ phoneNumber: 'phone-number',
44
+ magicLink: 'magic-link',
45
+ emailOtp: 'email-otp',
46
+ passkey: 'passkey',
47
+ oneTap: 'one-tap',
48
+ admin: 'admin',
49
+ apiKey: 'api-key',
50
+ mcp: 'mcp',
51
+ organization: 'organization',
52
+ multiSession: 'multi-session',
53
+ openApi: 'open-api',
54
+ jwt: 'jwt',
55
+ nextCookies: 'next-cookies',
56
+ sso: 'sso',
57
+ oidc: 'oidc',
58
+ expo: 'expo',
59
+ polar: 'polar',
60
+ stripe: 'stripe',
61
+ autumn: 'autumn',
62
+ dodopayments: 'dodopayments',
63
+ dubAnalytics: 'dub-analytics',
64
+ deviceAuthorization: 'device-authorization',
65
+ lastLoginMethod: 'last-login-method'
66
+ };
67
+ export const baseSlugs = {
68
+ users: 'users',
69
+ sessions: 'sessions',
70
+ accounts: 'accounts',
71
+ verifications: 'verifications',
72
+ adminInvitations: 'admin-invitations'
73
+ };
74
+ export const baPluginSlugs = {
75
+ subscriptions: 'subscriptions',
76
+ apiKeys: 'apiKeys',
77
+ jwks: 'jwks',
78
+ twoFactors: 'twoFactors',
79
+ passkeys: 'passkeys',
80
+ oauthApplications: 'oauthApplications',
81
+ oauthAccessTokens: 'oauthAccessTokens',
82
+ oauthConsents: 'oauthConsents',
83
+ ssoProviders: 'ssoProviders',
84
+ organizations: 'organizations',
85
+ invitations: 'invitations',
86
+ members: 'members',
87
+ teams: 'teams',
88
+ teamMembers: 'teamMembers'
89
+ };
90
+ export const baModelKey = {
91
+ user: 'user',
92
+ session: 'session',
93
+ account: 'account',
94
+ verification: 'verification',
95
+ twoFactor: 'twoFactor',
96
+ passkey: 'passkey',
97
+ oauthApplication: 'oauthApplication',
98
+ oauthAccessToken: 'oauthAccessToken',
99
+ oauthConsent: 'oauthConsent',
100
+ ssoProvider: 'ssoProvider',
101
+ organization: 'organization',
102
+ invitation: 'invitation',
103
+ member: 'member',
104
+ team: 'team',
105
+ teamMember: 'teamMember',
106
+ subscription: 'subscription',
107
+ apikey: 'apikey',
108
+ jwks: 'jwks',
109
+ deviceCode: 'deviceCode'
110
+ };
111
+ export const baModelFieldKeysToFieldNames = {
112
+ user: {
113
+ role: 'role'
114
+ },
115
+ account: {
116
+ userId: 'user'
117
+ },
118
+ session: {
119
+ userId: 'user'
120
+ },
121
+ member: {
122
+ organizationId: 'organization',
123
+ userId: 'user',
124
+ teamId: 'team'
125
+ },
126
+ invitation: {
127
+ organizationId: 'organization',
128
+ inviterId: 'inviter',
129
+ teamId: 'team'
130
+ },
131
+ team: {
132
+ organizationId: 'organization'
133
+ },
134
+ apikey: {
135
+ userId: 'user'
136
+ },
137
+ twoFactor: {
138
+ userId: 'user'
139
+ },
140
+ passkey: {
141
+ userId: 'user'
142
+ },
143
+ ssoProvider: {
144
+ userId: 'user'
145
+ },
146
+ oauthApplication: {
147
+ userId: 'user'
148
+ },
149
+ oauthAccessToken: {
150
+ userId: 'user',
151
+ clientId: 'client'
152
+ },
153
+ oauthConsent: {
154
+ userId: 'user',
155
+ clientId: 'client'
156
+ }
157
+ };
158
+ export const baModelFieldKeys = {
159
+ teamMember: {
160
+ teamId: 'teamId',
161
+ userId: 'userId'
162
+ },
163
+ account: {
164
+ userId: 'userId'
165
+ },
166
+ session: {
167
+ userId: 'userId',
168
+ activeOrganizationId: 'activeOrganizationId',
169
+ impersonatedBy: 'impersonatedBy',
170
+ activeTeamId: 'activeTeamId'
171
+ },
172
+ member: {
173
+ organizationId: 'organizationId',
174
+ userId: 'userId',
175
+ teamId: 'teamId'
176
+ },
177
+ invitation: {
178
+ organizationId: 'organizationId',
179
+ inviterId: 'inviterId',
180
+ teamId: 'teamId'
181
+ },
182
+ team: {
183
+ organizationId: 'organizationId'
184
+ },
185
+ apikey: {
186
+ userId: 'userId'
187
+ },
188
+ twoFactor: {
189
+ userId: 'userId'
190
+ },
191
+ passkey: {
192
+ userId: 'userId'
193
+ },
194
+ ssoProvider: {
195
+ userId: 'userId'
196
+ },
197
+ oauthApplication: {
198
+ userId: 'userId'
199
+ },
200
+ oauthAccessToken: {
201
+ userId: 'userId',
202
+ clientId: 'clientId'
203
+ },
204
+ oauthConsent: {
205
+ userId: 'userId',
206
+ clientId: 'clientId'
207
+ }
208
+ };
209
+ export const baModelKeyToSlug = {
210
+ user: baseSlugs.users,
211
+ session: baseSlugs.sessions,
212
+ account: baseSlugs.accounts,
213
+ verification: baseSlugs.verifications,
214
+ twoFactor: baPluginSlugs.twoFactors,
215
+ passkey: baPluginSlugs.passkeys,
216
+ oauthApplication: baPluginSlugs.oauthApplications,
217
+ oauthAccessToken: baPluginSlugs.oauthAccessTokens,
218
+ oauthConsent: baPluginSlugs.oauthConsents,
219
+ ssoProvider: baPluginSlugs.ssoProviders,
220
+ organization: baPluginSlugs.organizations,
221
+ invitation: baPluginSlugs.invitations,
222
+ member: baPluginSlugs.members,
223
+ team: baPluginSlugs.teams,
224
+ teamMember: baPluginSlugs.teamMembers,
225
+ subscription: baPluginSlugs.subscriptions,
226
+ apikey: baPluginSlugs.apiKeys,
227
+ jwks: baPluginSlugs.jwks
228
+ };
229
+ export const adminRoutes = {
230
+ forgotPassword: '/forgot-password',
231
+ resetPassword: '/reset-password',
232
+ adminSignup: '/signup',
233
+ adminLogin: '/login',
234
+ loginRedirect: '/login-redirect',
235
+ twoFactorVerify: '/two-factor-verify'
236
+ };
237
+ export const adminEndpoints = {
238
+ setAdminRole: '/set-admin-role',
239
+ refreshToken: '/refresh-token',
240
+ sendInvite: '/send-invite',
241
+ generateInviteUrl: '/generate-invite-url',
242
+ signup: '/signup'
243
+ };
244
+ export const defaults = {
245
+ adminRole: 'admin',
246
+ userRole: 'user'
247
+ };
248
+
249
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/better-auth/plugin/constants.ts"],"sourcesContent":["export const socialProviders = [\n 'apple',\n 'discord',\n 'facebook',\n 'github',\n 'google',\n 'linkedin',\n 'microsoft',\n 'spotify',\n 'tiktok',\n 'twitter',\n 'twitch',\n 'zoom',\n 'gitlab',\n 'roblox',\n 'vk',\n 'kick',\n 'reddit',\n] as const;\n\nexport const loginMethods = [\n 'emailPassword',\n 'magicLink',\n 'emailOTP',\n 'phonePassword',\n 'phoneOTP',\n 'phoneMagicLink',\n 'passkey',\n ...socialProviders,\n] as const;\n\nexport const supportedBAPluginIds = {\n oneTimeToken: 'one-time-token',\n oAuthProxy: 'oauth-proxy',\n haveIBeenPwned: 'haveIBeenPwned',\n captcha: 'captcha',\n bearer: 'bearer',\n genericOAuth: 'generic-oauth',\n customSession: 'custom-session',\n harmonyEmail: 'harmony-email',\n harmonyPhoneNumber: 'harmony-phone-number',\n twoFactor: 'two-factor',\n username: 'username',\n anonymous: 'anonymous',\n phoneNumber: 'phone-number',\n magicLink: 'magic-link',\n emailOtp: 'email-otp',\n passkey: 'passkey',\n oneTap: 'one-tap',\n admin: 'admin',\n apiKey: 'api-key',\n mcp: 'mcp',\n organization: 'organization',\n multiSession: 'multi-session',\n openApi: 'open-api',\n jwt: 'jwt',\n nextCookies: 'next-cookies',\n sso: 'sso',\n oidc: 'oidc',\n expo: 'expo',\n polar: 'polar',\n stripe: 'stripe',\n autumn: 'autumn',\n dodopayments: 'dodopayments',\n dubAnalytics: 'dub-analytics',\n deviceAuthorization: 'device-authorization',\n lastLoginMethod: 'last-login-method',\n} as const;\n\nexport const baseSlugs = {\n users: 'users',\n sessions: 'sessions',\n accounts: 'accounts',\n verifications: 'verifications',\n adminInvitations: 'admin-invitations',\n} as const;\n\nexport const baPluginSlugs = {\n subscriptions: 'subscriptions',\n apiKeys: 'apiKeys',\n jwks: 'jwks',\n twoFactors: 'twoFactors',\n passkeys: 'passkeys',\n oauthApplications: 'oauthApplications',\n oauthAccessTokens: 'oauthAccessTokens',\n oauthConsents: 'oauthConsents',\n ssoProviders: 'ssoProviders',\n organizations: 'organizations',\n invitations: 'invitations',\n members: 'members',\n teams: 'teams',\n teamMembers: 'teamMembers',\n} as const;\n\nexport const baModelKey = {\n user: 'user',\n session: 'session',\n account: 'account',\n verification: 'verification',\n twoFactor: 'twoFactor',\n passkey: 'passkey',\n oauthApplication: 'oauthApplication',\n oauthAccessToken: 'oauthAccessToken',\n oauthConsent: 'oauthConsent',\n ssoProvider: 'ssoProvider',\n organization: 'organization',\n invitation: 'invitation',\n member: 'member',\n team: 'team',\n teamMember: 'teamMember',\n subscription: 'subscription',\n apikey: 'apikey',\n jwks: 'jwks',\n deviceCode: 'deviceCode',\n} as const;\n\nexport const baModelFieldKeysToFieldNames = {\n user: {\n role: 'role',\n },\n account: {\n userId: 'user',\n },\n session: {\n userId: 'user',\n },\n member: {\n organizationId: 'organization',\n userId: 'user',\n teamId: 'team',\n },\n invitation: {\n organizationId: 'organization',\n inviterId: 'inviter',\n teamId: 'team',\n },\n team: {\n organizationId: 'organization',\n },\n apikey: {\n userId: 'user',\n },\n twoFactor: {\n userId: 'user',\n },\n passkey: {\n userId: 'user',\n },\n ssoProvider: {\n userId: 'user',\n },\n oauthApplication: {\n userId: 'user',\n },\n oauthAccessToken: {\n userId: 'user',\n clientId: 'client',\n },\n oauthConsent: {\n userId: 'user',\n clientId: 'client',\n },\n} as const;\n\nexport const baModelFieldKeys = {\n teamMember: {\n teamId: 'teamId',\n userId: 'userId',\n },\n account: {\n userId: 'userId',\n },\n session: {\n userId: 'userId',\n activeOrganizationId: 'activeOrganizationId',\n impersonatedBy: 'impersonatedBy',\n activeTeamId: 'activeTeamId',\n },\n member: {\n organizationId: 'organizationId',\n userId: 'userId',\n teamId: 'teamId',\n },\n invitation: {\n organizationId: 'organizationId',\n inviterId: 'inviterId',\n teamId: 'teamId',\n },\n team: {\n organizationId: 'organizationId',\n },\n apikey: {\n userId: 'userId',\n },\n twoFactor: {\n userId: 'userId',\n },\n passkey: {\n userId: 'userId',\n },\n ssoProvider: {\n userId: 'userId',\n },\n oauthApplication: {\n userId: 'userId',\n },\n oauthAccessToken: {\n userId: 'userId',\n clientId: 'clientId',\n },\n oauthConsent: {\n userId: 'userId',\n clientId: 'clientId',\n },\n} as const;\n\nexport const baModelKeyToSlug = {\n user: baseSlugs.users,\n session: baseSlugs.sessions,\n account: baseSlugs.accounts,\n verification: baseSlugs.verifications,\n twoFactor: baPluginSlugs.twoFactors,\n passkey: baPluginSlugs.passkeys,\n oauthApplication: baPluginSlugs.oauthApplications,\n oauthAccessToken: baPluginSlugs.oauthAccessTokens,\n oauthConsent: baPluginSlugs.oauthConsents,\n ssoProvider: baPluginSlugs.ssoProviders,\n organization: baPluginSlugs.organizations,\n invitation: baPluginSlugs.invitations,\n member: baPluginSlugs.members,\n team: baPluginSlugs.teams,\n teamMember: baPluginSlugs.teamMembers,\n subscription: baPluginSlugs.subscriptions,\n apikey: baPluginSlugs.apiKeys,\n jwks: baPluginSlugs.jwks,\n} as const;\n\nexport const adminRoutes = {\n forgotPassword: '/forgot-password',\n resetPassword: '/reset-password',\n adminSignup: '/signup',\n adminLogin: '/login',\n loginRedirect: '/login-redirect',\n twoFactorVerify: '/two-factor-verify',\n} as const;\n\nexport const adminEndpoints = {\n setAdminRole: '/set-admin-role',\n refreshToken: '/refresh-token',\n sendInvite: '/send-invite',\n generateInviteUrl: '/generate-invite-url',\n signup: '/signup',\n} as const;\n\nexport const defaults = {\n adminRole: 'admin',\n userRole: 'user',\n} as const;\n"],"names":["socialProviders","loginMethods","supportedBAPluginIds","oneTimeToken","oAuthProxy","haveIBeenPwned","captcha","bearer","genericOAuth","customSession","harmonyEmail","harmonyPhoneNumber","twoFactor","username","anonymous","phoneNumber","magicLink","emailOtp","passkey","oneTap","admin","apiKey","mcp","organization","multiSession","openApi","jwt","nextCookies","sso","oidc","expo","polar","stripe","autumn","dodopayments","dubAnalytics","deviceAuthorization","lastLoginMethod","baseSlugs","users","sessions","accounts","verifications","adminInvitations","baPluginSlugs","subscriptions","apiKeys","jwks","twoFactors","passkeys","oauthApplications","oauthAccessTokens","oauthConsents","ssoProviders","organizations","invitations","members","teams","teamMembers","baModelKey","user","session","account","verification","oauthApplication","oauthAccessToken","oauthConsent","ssoProvider","invitation","member","team","teamMember","subscription","apikey","deviceCode","baModelFieldKeysToFieldNames","role","userId","organizationId","teamId","inviterId","clientId","baModelFieldKeys","activeOrganizationId","impersonatedBy","activeTeamId","baModelKeyToSlug","adminRoutes","forgotPassword","resetPassword","adminSignup","adminLogin","loginRedirect","twoFactorVerify","adminEndpoints","setAdminRole","refreshToken","sendInvite","generateInviteUrl","signup","defaults","adminRole","userRole"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { BetterAuthOptions } from '../types';
2
+ /**
3
+ * Checks if a plugin with the specified ID exists in the Better Auth options
4
+ *
5
+ * This utility function examines the plugins array in the provided Better Auth options
6
+ * to determine if a plugin with the given ID is already registered.
7
+ *
8
+ * @param options - The Better Auth configuration options
9
+ * @param pluginId - The unique identifier of the plugin to check for
10
+ * @returns `true` if a plugin with the specified ID exists, `false` otherwise
11
+ */
12
+ export declare function checkPluginExists(options: BetterAuthOptions, pluginId: string): boolean;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Checks if a plugin with the specified ID exists in the Better Auth options
3
+ *
4
+ * This utility function examines the plugins array in the provided Better Auth options
5
+ * to determine if a plugin with the given ID is already registered.
6
+ *
7
+ * @param options - The Better Auth configuration options
8
+ * @param pluginId - The unique identifier of the plugin to check for
9
+ * @returns `true` if a plugin with the specified ID exists, `false` otherwise
10
+ */ export function checkPluginExists(options, pluginId) {
11
+ return options.plugins?.some((plugin)=>plugin.id === pluginId) ?? false;
12
+ }
13
+
14
+ //# sourceMappingURL=check-plugin-exists.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/better-auth/plugin/helpers/check-plugin-exists.ts"],"sourcesContent":["import type { BetterAuthOptions } from '../types';\n\n/**\n * Checks if a plugin with the specified ID exists in the Better Auth options\n *\n * This utility function examines the plugins array in the provided Better Auth options\n * to determine if a plugin with the given ID is already registered.\n *\n * @param options - The Better Auth configuration options\n * @param pluginId - The unique identifier of the plugin to check for\n * @returns `true` if a plugin with the specified ID exists, `false` otherwise\n */\nexport function checkPluginExists(options: BetterAuthOptions, pluginId: string): boolean {\n return options.plugins?.some(plugin => plugin.id === pluginId) ?? false;\n}\n"],"names":["checkPluginExists","options","pluginId","plugins","some","plugin","id"],"mappings":"AAEA;;;;;;;;;CASC,GACD,OAAO,SAASA,kBAAkBC,OAA0B,EAAEC,QAAgB;IAC5E,OAAOD,QAAQE,OAAO,EAAEC,KAAKC,CAAAA,SAAUA,OAAOC,EAAE,KAAKJ,aAAa;AACpE"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Generates a verification URL for email verification
3
+ *
4
+ * This utility function creates a JWT token containing the user's email and
5
+ * expiration information, signs it with the provided secret, and constructs
6
+ * a verification URL with the token as a query parameter.
7
+ *
8
+ * @param userEmail - The email address of the user to verify
9
+ * @param secret - The secret used to sign the JWT
10
+ * @param expiresIn - Duration in seconds for token expiration (default: 3600)
11
+ * @param verifyRouteUrl - The base URL for the verification endpoint
12
+ * @param callbackURL - Optional callback URL after verification (default: "/")
13
+ * @returns The complete verification URL with token
14
+ *
15
+ * @example
16
+ * const url = await generateVerifyEmailUrl({
17
+ * userEmail: 'user@example.com',
18
+ * secret: 'your-secret-key',
19
+ * verifyRouteUrl: 'https://your-app.com/api/auth/verify-email',
20
+ * callbackURL: '/profile'
21
+ * });
22
+ */
23
+ export declare const generateVerifyEmailUrl: ({ userEmail, secret, expiresIn, verifyRouteUrl, callbackURL, }: {
24
+ userEmail: string;
25
+ secret: string;
26
+ expiresIn?: number;
27
+ verifyRouteUrl: string;
28
+ callbackURL?: string;
29
+ }) => Promise<string>;
@@ -0,0 +1,46 @@
1
+ import { SignJWT } from "jose";
2
+ /**
3
+ * Generates a verification URL for email verification
4
+ *
5
+ * This utility function creates a JWT token containing the user's email and
6
+ * expiration information, signs it with the provided secret, and constructs
7
+ * a verification URL with the token as a query parameter.
8
+ *
9
+ * @param userEmail - The email address of the user to verify
10
+ * @param secret - The secret used to sign the JWT
11
+ * @param expiresIn - Duration in seconds for token expiration (default: 3600)
12
+ * @param verifyRouteUrl - The base URL for the verification endpoint
13
+ * @param callbackURL - Optional callback URL after verification (default: "/")
14
+ * @returns The complete verification URL with token
15
+ *
16
+ * @example
17
+ * const url = await generateVerifyEmailUrl({
18
+ * userEmail: 'user@example.com',
19
+ * secret: 'your-secret-key',
20
+ * verifyRouteUrl: 'https://your-app.com/api/auth/verify-email',
21
+ * callbackURL: '/profile'
22
+ * });
23
+ */ export const generateVerifyEmailUrl = async ({ userEmail, secret, expiresIn = 3600, verifyRouteUrl, callbackURL = '/' })=>{
24
+ if (!userEmail) {
25
+ throw new Error('userEmail is required to generate a verification URL');
26
+ }
27
+ if (!secret) {
28
+ throw new Error('secret is required to sign the JWT token');
29
+ }
30
+ if (!verifyRouteUrl) {
31
+ throw new Error('verifyRouteUrl is required to generate a verification URL');
32
+ }
33
+ // Create and sign the JWT token
34
+ const jwt = await new SignJWT({
35
+ email: userEmail,
36
+ iat: Math.floor(Date.now() / 1000),
37
+ exp: Math.floor(Date.now() / 1000) + expiresIn
38
+ }).setProtectedHeader({
39
+ alg: 'HS256'
40
+ }).sign(new TextEncoder().encode(secret));
41
+ // Build the verification URL
42
+ const verifyUrl = `${verifyRouteUrl}?token=${jwt}${callbackURL ? `&callbackURL=${encodeURIComponent(callbackURL)}` : ''}`;
43
+ return verifyUrl;
44
+ };
45
+
46
+ //# sourceMappingURL=generate-verify-email-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/better-auth/plugin/helpers/generate-verify-email-url.ts"],"sourcesContent":["import { SignJWT } from 'jose';\n\n/**\n * Generates a verification URL for email verification\n *\n * This utility function creates a JWT token containing the user's email and\n * expiration information, signs it with the provided secret, and constructs\n * a verification URL with the token as a query parameter.\n *\n * @param userEmail - The email address of the user to verify\n * @param secret - The secret used to sign the JWT\n * @param expiresIn - Duration in seconds for token expiration (default: 3600)\n * @param verifyRouteUrl - The base URL for the verification endpoint\n * @param callbackURL - Optional callback URL after verification (default: \"/\")\n * @returns The complete verification URL with token\n *\n * @example\n * const url = await generateVerifyEmailUrl({\n * userEmail: 'user@example.com',\n * secret: 'your-secret-key',\n * verifyRouteUrl: 'https://your-app.com/api/auth/verify-email',\n * callbackURL: '/profile'\n * });\n */\nexport const generateVerifyEmailUrl = async ({\n userEmail,\n secret,\n expiresIn = 3600,\n verifyRouteUrl,\n callbackURL = '/',\n}: {\n userEmail: string;\n secret: string;\n expiresIn?: number;\n verifyRouteUrl: string;\n callbackURL?: string;\n}): Promise<string> => {\n if (!userEmail) {\n throw new Error('userEmail is required to generate a verification URL');\n }\n\n if (!secret) {\n throw new Error('secret is required to sign the JWT token');\n }\n\n if (!verifyRouteUrl) {\n throw new Error('verifyRouteUrl is required to generate a verification URL');\n }\n\n // Create and sign the JWT token\n const jwt = await new SignJWT({\n email: userEmail,\n iat: Math.floor(Date.now() / 1000),\n exp: Math.floor(Date.now() / 1000) + expiresIn,\n })\n .setProtectedHeader({ alg: 'HS256' })\n .sign(new TextEncoder().encode(secret));\n\n // Build the verification URL\n const verifyUrl = `${verifyRouteUrl}?token=${jwt}${callbackURL ? `&callbackURL=${encodeURIComponent(callbackURL)}` : ''}`;\n\n return verifyUrl;\n};\n"],"names":["SignJWT","generateVerifyEmailUrl","userEmail","secret","expiresIn","verifyRouteUrl","callbackURL","Error","jwt","email","iat","Math","floor","Date","now","exp","setProtectedHeader","alg","sign","TextEncoder","encode","verifyUrl","encodeURIComponent"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAE/B;;;;;;;;;;;;;;;;;;;;;CAqBC,GACD,OAAO,MAAMC,yBAAyB,OAAO,EAC3CC,SAAS,EACTC,MAAM,EACNC,YAAY,IAAI,EAChBC,cAAc,EACdC,cAAc,GAAG,EAOlB;IACC,IAAI,CAACJ,WAAW;QACd,MAAM,IAAIK,MAAM;IAClB;IAEA,IAAI,CAACJ,QAAQ;QACX,MAAM,IAAII,MAAM;IAClB;IAEA,IAAI,CAACF,gBAAgB;QACnB,MAAM,IAAIE,MAAM;IAClB;IAEA,gCAAgC;IAChC,MAAMC,MAAM,MAAM,IAAIR,QAAQ;QAC5BS,OAAOP;QACPQ,KAAKC,KAAKC,KAAK,CAACC,KAAKC,GAAG,KAAK;QAC7BC,KAAKJ,KAAKC,KAAK,CAACC,KAAKC,GAAG,KAAK,QAAQV;IACvC,GACGY,kBAAkB,CAAC;QAAEC,KAAK;IAAQ,GAClCC,IAAI,CAAC,IAAIC,cAAcC,MAAM,CAACjB;IAEjC,6BAA6B;IAC7B,MAAMkB,YAAY,GAAGhB,eAAe,OAAO,EAAEG,MAAMF,cAAc,CAAC,aAAa,EAAEgB,mBAAmBhB,cAAc,GAAG,IAAI;IAEzH,OAAOe;AACT,EAAE"}
@@ -0,0 +1,7 @@
1
+ import type { BetterAuthPluginOptions } from '../types';
2
+ export declare function getAdminAccess(pluginOptions: BetterAuthPluginOptions): {
3
+ create: import("payload").FieldAccess;
4
+ read: import("payload").FieldAccess;
5
+ update: import("payload").FieldAccess;
6
+ delete: import("payload").FieldAccess;
7
+ };
@@ -0,0 +1,22 @@
1
+ import { isAdminWithRoles } from "../lib/build-collections/utils/payload-access";
2
+ export function getAdminAccess(pluginOptions) {
3
+ const adminRoles = pluginOptions.users?.adminRoles ?? [
4
+ 'admin'
5
+ ];
6
+ return {
7
+ create: isAdminWithRoles({
8
+ adminRoles
9
+ }),
10
+ read: isAdminWithRoles({
11
+ adminRoles
12
+ }),
13
+ update: isAdminWithRoles({
14
+ adminRoles
15
+ }),
16
+ delete: isAdminWithRoles({
17
+ adminRoles
18
+ })
19
+ };
20
+ }
21
+
22
+ //# sourceMappingURL=get-admin-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/better-auth/plugin/helpers/get-admin-access.ts"],"sourcesContent":["import { isAdminWithRoles } from '../lib/build-collections/utils/payload-access';\nimport type { BetterAuthPluginOptions } from '../types';\n\nexport function getAdminAccess(pluginOptions: BetterAuthPluginOptions) {\n const adminRoles = pluginOptions.users?.adminRoles ?? ['admin'];\n return {\n create: isAdminWithRoles({\n adminRoles,\n }),\n read: isAdminWithRoles({\n adminRoles,\n }),\n update: isAdminWithRoles({\n adminRoles,\n }),\n delete: isAdminWithRoles({\n adminRoles,\n }),\n };\n}\n"],"names":["isAdminWithRoles","getAdminAccess","pluginOptions","adminRoles","users","create","read","update","delete"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,gDAAgD;AAGjF,OAAO,SAASC,eAAeC,aAAsC;IACnE,MAAMC,aAAaD,cAAcE,KAAK,EAAED,cAAc;QAAC;KAAQ;IAC/D,OAAO;QACLE,QAAQL,iBAAiB;YACvBG;QACF;QACAG,MAAMN,iBAAiB;YACrBG;QACF;QACAI,QAAQP,iBAAiB;YACvBG;QACF;QACAK,QAAQR,iBAAiB;YACvBG;QACF;IACF;AACF"}
@@ -0,0 +1,5 @@
1
+ import type { BetterAuthPluginOptions } from '../types';
2
+ export declare function getAllRoleOptions(pluginOptions: BetterAuthPluginOptions): {
3
+ label: any;
4
+ value: any;
5
+ }[];