@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 @@
1
+ {"version":3,"sources":["../../../../../../src/better-auth/plugin/lib/build-collections/utils/filter-properties.ts"],"sourcesContent":["import type {\n CheckboxField,\n DateField,\n Field,\n FieldBase,\n NumberField,\n RelationshipField,\n TextField,\n} from 'payload';\n\nexport const COMMON_FIELD_KEYS = [\n 'access',\n 'admin',\n 'custom',\n 'defaultValue',\n 'hidden',\n 'hooks',\n 'index',\n 'label',\n 'localized',\n 'name',\n 'required',\n 'saveToJWT',\n 'typescriptSchema',\n 'unique',\n 'validate',\n 'virtual',\n '_sanitized',\n] as const satisfies readonly (keyof FieldBase)[];\nexport const TEXT_FIELD_KEYS = [\n ...COMMON_FIELD_KEYS,\n 'maxLength',\n 'maxRows',\n 'minLength',\n 'minRows',\n] as const satisfies readonly (keyof TextField)[];\nexport const NUMBER_FIELD_KEYS = [\n ...COMMON_FIELD_KEYS,\n 'max',\n 'min',\n] as const satisfies readonly (keyof NumberField)[];\nexport const DATE_FIELD_KEYS = [\n ...COMMON_FIELD_KEYS,\n 'timezone',\n] as const satisfies readonly (keyof DateField)[];\nexport const CHECKBOX_FIELD_KEYS = [\n ...COMMON_FIELD_KEYS,\n] as const satisfies readonly (keyof CheckboxField)[];\nexport const RELATIONSHIP_FIELD_KEYS = [\n ...COMMON_FIELD_KEYS,\n 'filterOptions',\n 'graphQL',\n 'hasMany',\n 'max',\n 'maxDepth',\n 'maxRows',\n 'min',\n 'minRows',\n 'relationTo',\n 'type',\n] as const satisfies readonly (keyof RelationshipField)[];\n\nexport function getValidFieldPropertyKeysForType(type: Field['type']) {\n switch (type) {\n case 'relationship':\n return [...RELATIONSHIP_FIELD_KEYS];\n case 'text':\n return [...TEXT_FIELD_KEYS];\n case 'number':\n return [...NUMBER_FIELD_KEYS];\n case 'date':\n return [...DATE_FIELD_KEYS];\n case 'checkbox':\n return [...CHECKBOX_FIELD_KEYS];\n default:\n return [...COMMON_FIELD_KEYS];\n }\n}\n\nexport function filterProps<T extends object, K extends readonly (keyof T)[]>(\n obj: Partial<T>,\n allowed: K,\n extra: readonly string[] = []\n): Partial<T> {\n const allow = new Set<string>([...allowed.map(String), ...extra]);\n // Using Record<string, unknown> because filtered object structure varies by input object type and cannot be strictly typed\n const out: /* Using Record<string, unknown> because filtered object structure varies by input object type and cannot be strictly typed */ Record<\n string,\n unknown\n > = {};\n for (const [k, v] of Object.entries(obj)) {\n if (!allow.has(k)) continue;\n out[k] = v;\n }\n return out as Partial<T>;\n}\n"],"names":["COMMON_FIELD_KEYS","TEXT_FIELD_KEYS","NUMBER_FIELD_KEYS","DATE_FIELD_KEYS","CHECKBOX_FIELD_KEYS","RELATIONSHIP_FIELD_KEYS","getValidFieldPropertyKeysForType","type","filterProps","obj","allowed","extra","allow","Set","map","String","out","k","v","Object","entries","has"],"mappings":"AAUA,OAAO,MAAMA,oBAAoB;IAC/B;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD,CAAiD;AAClD,OAAO,MAAMC,kBAAkB;OAC1BD;IACH;IACA;IACA;IACA;CACD,CAAiD;AAClD,OAAO,MAAME,oBAAoB;OAC5BF;IACH;IACA;CACD,CAAmD;AACpD,OAAO,MAAMG,kBAAkB;OAC1BH;IACH;CACD,CAAiD;AAClD,OAAO,MAAMI,sBAAsB;OAC9BJ;CACJ,CAAqD;AACtD,OAAO,MAAMK,0BAA0B;OAClCL;IACH;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD,CAAyD;AAE1D,OAAO,SAASM,iCAAiCC,IAAmB;IAClE,OAAQA;QACN,KAAK;YACH,OAAO;mBAAIF;aAAwB;QACrC,KAAK;YACH,OAAO;mBAAIJ;aAAgB;QAC7B,KAAK;YACH,OAAO;mBAAIC;aAAkB;QAC/B,KAAK;YACH,OAAO;mBAAIC;aAAgB;QAC7B,KAAK;YACH,OAAO;mBAAIC;aAAoB;QACjC;YACE,OAAO;mBAAIJ;aAAkB;IACjC;AACF;AAEA,OAAO,SAASQ,YACdC,GAAe,EACfC,OAAU,EACVC,QAA2B,EAAE;IAE7B,MAAMC,QAAQ,IAAIC,IAAY;WAAIH,QAAQI,GAAG,CAACC;WAAYJ;KAAM;IAChE,2HAA2H;IAC3H,MAAMK,MAGF,CAAC;IACL,KAAK,MAAM,CAACC,GAAGC,EAAE,IAAIC,OAAOC,OAAO,CAACX,KAAM;QACxC,IAAI,CAACG,MAAMS,GAAG,CAACJ,IAAI;QACnBD,GAAG,CAACC,EAAE,GAAGC;IACX;IACA,OAAOF;AACT"}
@@ -0,0 +1,7 @@
1
+ import type { Field } from 'payload';
2
+ interface GetTimestampFieldsOptions {
3
+ saveUpdatedAtToJWT?: boolean;
4
+ saveCreatedAtToJWT?: boolean;
5
+ }
6
+ export declare function getTimestampFields(options?: GetTimestampFieldsOptions): Field[];
7
+ export {};
@@ -0,0 +1,35 @@
1
+ export function getTimestampFields(options = {
2
+ saveUpdatedAtToJWT: true,
3
+ saveCreatedAtToJWT: true
4
+ }) {
5
+ return [
6
+ {
7
+ name: 'updatedAt',
8
+ type: 'date',
9
+ ...options.saveUpdatedAtToJWT !== undefined && {
10
+ saveToJWT: options.saveUpdatedAtToJWT
11
+ },
12
+ admin: {
13
+ disableBulkEdit: true,
14
+ hidden: true
15
+ },
16
+ index: true,
17
+ label: ({ t })=>t('general:updatedAt')
18
+ },
19
+ {
20
+ name: 'createdAt',
21
+ ...options.saveCreatedAtToJWT !== undefined && {
22
+ saveToJWT: options.saveCreatedAtToJWT
23
+ },
24
+ admin: {
25
+ disableBulkEdit: true,
26
+ hidden: true
27
+ },
28
+ type: 'date',
29
+ index: true,
30
+ label: ({ t })=>t('general:createdAt')
31
+ }
32
+ ];
33
+ }
34
+
35
+ //# sourceMappingURL=get-timestamp-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.ts"],"sourcesContent":["import type { Field } from 'payload';\n\ninterface GetTimestampFieldsOptions {\n saveUpdatedAtToJWT?: boolean;\n saveCreatedAtToJWT?: boolean;\n}\n\nexport function getTimestampFields(\n options: GetTimestampFieldsOptions = {\n saveUpdatedAtToJWT: true,\n saveCreatedAtToJWT: true,\n }\n): Field[] {\n return [\n {\n name: 'updatedAt',\n type: 'date',\n ...(options.saveUpdatedAtToJWT !== undefined && { saveToJWT: options.saveUpdatedAtToJWT }),\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n index: true,\n label: ({ t }) => t('general:updatedAt'),\n },\n {\n name: 'createdAt',\n ...(options.saveCreatedAtToJWT !== undefined && { saveToJWT: options.saveCreatedAtToJWT }),\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n type: 'date',\n index: true,\n label: ({ t }) => t('general:createdAt'),\n },\n ];\n}\n"],"names":["getTimestampFields","options","saveUpdatedAtToJWT","saveCreatedAtToJWT","name","type","undefined","saveToJWT","admin","disableBulkEdit","hidden","index","label","t"],"mappings":"AAOA,OAAO,SAASA,mBACdC,UAAqC;IACnCC,oBAAoB;IACpBC,oBAAoB;AACtB,CAAC;IAED,OAAO;QACL;YACEC,MAAM;YACNC,MAAM;YACN,GAAIJ,QAAQC,kBAAkB,KAAKI,aAAa;gBAAEC,WAAWN,QAAQC,kBAAkB;YAAC,CAAC;YACzFM,OAAO;gBACLC,iBAAiB;gBACjBC,QAAQ;YACV;YACAC,OAAO;YACPC,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;QACtB;QACA;YACET,MAAM;YACN,GAAIH,QAAQE,kBAAkB,KAAKG,aAAa;gBAAEC,WAAWN,QAAQE,kBAAkB;YAAC,CAAC;YACzFK,OAAO;gBACLC,iBAAiB;gBACjBC,QAAQ;YACV;YACAL,MAAM;YACNM,OAAO;YACPC,OAAO,CAAC,EAAEC,CAAC,EAAE,GAAKA,EAAE;QACtB;KACD;AACH"}
@@ -0,0 +1,12 @@
1
+ import type { FieldRule } from '@/better-auth/plugin/types';
2
+ import type { DBFieldAttribute } from 'better-auth/db';
3
+ import type { Field } from 'payload';
4
+ export declare const getAdditionalFieldProperties: ({ field, fieldKey, fieldRules, additionalProperties, validFieldPropertyKeys, }: {
5
+ field: DBFieldAttribute;
6
+ fieldKey: string;
7
+ fieldRules?: FieldRule[];
8
+ additionalProperties?: {
9
+ [key: string]: (field: DBFieldAttribute) => Partial<Field>;
10
+ };
11
+ validFieldPropertyKeys?: string[];
12
+ }) => Partial<Field>;
@@ -0,0 +1,25 @@
1
+ import { filterProps } from "./filter-properties";
2
+ function getRuleBasedFieldProperties({ field }, fieldRules = []) {
3
+ return fieldRules.reduce((acc, rule)=>{
4
+ const conditionMatch = !rule.condition || rule.condition(field);
5
+ if (conditionMatch) {
6
+ Object.assign(acc, rule.transform(field));
7
+ }
8
+ return acc;
9
+ }, {});
10
+ }
11
+ export const getAdditionalFieldProperties = ({ field, fieldKey, fieldRules = [], additionalProperties = {}, validFieldPropertyKeys = [] })=>{
12
+ const ruleProps = getRuleBasedFieldProperties({
13
+ field
14
+ }, fieldRules);
15
+ const specificProps = additionalProperties[fieldKey]?.(field) ?? {};
16
+ const mergedProps = {
17
+ ...ruleProps,
18
+ ...specificProps
19
+ };
20
+ // Using any because filterProps accepts dynamic field property structures that vary by field type
21
+ // biome-ignore lint/suspicious/noExplicitAny: filterProps accepts dynamic field property structures
22
+ return filterProps(mergedProps, validFieldPropertyKeys);
23
+ };
24
+
25
+ //# sourceMappingURL=model-field-transformations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/better-auth/plugin/lib/build-collections/utils/model-field-transformations.ts"],"sourcesContent":["import type { FieldRule } from '@/better-auth/plugin/types';\nimport type { DBFieldAttribute } from 'better-auth/db';\nimport type { Field } from 'payload';\nimport { filterProps } from './filter-properties';\n\nfunction getRuleBasedFieldProperties(\n { field }: { field: DBFieldAttribute },\n fieldRules: FieldRule[] = []\n): Record<string, unknown> {\n return fieldRules.reduce<Record<string, unknown>>((acc, rule) => {\n const conditionMatch = !rule.condition || rule.condition(field);\n\n if (conditionMatch) {\n Object.assign(acc, rule.transform(field));\n }\n\n return acc;\n }, {});\n}\n\nexport const getAdditionalFieldProperties = ({\n field,\n fieldKey,\n fieldRules = [],\n additionalProperties = {},\n validFieldPropertyKeys = [],\n}: {\n field: DBFieldAttribute;\n fieldKey: string;\n fieldRules?: FieldRule[];\n additionalProperties?: { [key: string]: (field: DBFieldAttribute) => Partial<Field> };\n validFieldPropertyKeys?: string[];\n}): Partial<Field> => {\n const ruleProps = getRuleBasedFieldProperties({ field }, fieldRules);\n const specificProps = additionalProperties[fieldKey]?.(field) ?? {};\n\n const mergedProps = { ...ruleProps, ...specificProps };\n\n // Using any because filterProps accepts dynamic field property structures that vary by field type\n // biome-ignore lint/suspicious/noExplicitAny: filterProps accepts dynamic field property structures\n return filterProps(mergedProps as any, validFieldPropertyKeys as any);\n};\n"],"names":["filterProps","getRuleBasedFieldProperties","field","fieldRules","reduce","acc","rule","conditionMatch","condition","Object","assign","transform","getAdditionalFieldProperties","fieldKey","additionalProperties","validFieldPropertyKeys","ruleProps","specificProps","mergedProps"],"mappings":"AAGA,SAASA,WAAW,QAAQ,sBAAsB;AAElD,SAASC,4BACP,EAAEC,KAAK,EAA+B,EACtCC,aAA0B,EAAE;IAE5B,OAAOA,WAAWC,MAAM,CAA0B,CAACC,KAAKC;QACtD,MAAMC,iBAAiB,CAACD,KAAKE,SAAS,IAAIF,KAAKE,SAAS,CAACN;QAEzD,IAAIK,gBAAgB;YAClBE,OAAOC,MAAM,CAACL,KAAKC,KAAKK,SAAS,CAACT;QACpC;QAEA,OAAOG;IACT,GAAG,CAAC;AACN;AAEA,OAAO,MAAMO,+BAA+B,CAAC,EAC3CV,KAAK,EACLW,QAAQ,EACRV,aAAa,EAAE,EACfW,uBAAuB,CAAC,CAAC,EACzBC,yBAAyB,EAAE,EAO5B;IACC,MAAMC,YAAYf,4BAA4B;QAAEC;IAAM,GAAGC;IACzD,MAAMc,gBAAgBH,oBAAoB,CAACD,SAAS,GAAGX,UAAU,CAAC;IAElE,MAAMgB,cAAc;QAAE,GAAGF,SAAS;QAAE,GAAGC,aAAa;IAAC;IAErD,kGAAkG;IAClG,oGAAoG;IACpG,OAAOjB,YAAYkB,aAAoBH;AACzC,EAAE"}
@@ -0,0 +1,14 @@
1
+ import type { Access, FieldAccess } from 'payload';
2
+ export type AdminRolesConfig = {
3
+ adminRoles?: string[];
4
+ };
5
+ export type AdminOrCurrentUserConfig = AdminRolesConfig & {
6
+ idField?: string;
7
+ };
8
+ export type AdminOrCurrentUserUpdateConfig = AdminOrCurrentUserConfig & {
9
+ allowedFields?: string[];
10
+ userSlug: string;
11
+ };
12
+ export declare const isAdminWithRoles: (config?: AdminRolesConfig) => FieldAccess;
13
+ export declare const isAdminOrCurrentUserWithRoles: (config?: AdminOrCurrentUserConfig) => Access;
14
+ export declare const isAdminOrCurrentUserUpdateWithAllowedFields: (config: AdminOrCurrentUserUpdateConfig) => Access;
@@ -0,0 +1,67 @@
1
+ export const isAdminWithRoles = (config = {})=>({ req })=>{
2
+ const { adminRoles = [
3
+ 'admin'
4
+ ] } = config;
5
+ if (!req?.user || !req.user.role || !adminRoles.includes(req.user.role)) return false;
6
+ return true;
7
+ };
8
+ export const isAdminOrCurrentUserWithRoles = (config = {})=>({ req })=>{
9
+ const { adminRoles = [
10
+ 'admin'
11
+ ], idField = 'id' } = config;
12
+ if (isAdminWithRoles({
13
+ adminRoles
14
+ })({
15
+ req
16
+ })) return true;
17
+ if (!req?.user) return false;
18
+ return {
19
+ [idField]: {
20
+ equals: req?.user?.id
21
+ }
22
+ };
23
+ };
24
+ export const isAdminOrCurrentUserUpdateWithAllowedFields = (config)=>{
25
+ return async ({ req, id, data })=>{
26
+ const { adminRoles = [
27
+ 'admin'
28
+ ], allowedFields = [], userSlug, idField = 'id' } = config;
29
+ const user = req.user;
30
+ if (isAdminWithRoles({
31
+ adminRoles
32
+ })({
33
+ req
34
+ })) return true;
35
+ if (!user) return false;
36
+ // Using Record<string, unknown> because user object structure varies by collection configuration and idField can be any property
37
+ if (user[idField] === id && data) {
38
+ const dataKeys = Object.keys(data);
39
+ const hasCurrentPassword = dataKeys.includes('currentPassword');
40
+ const hasPassword = dataKeys.includes('password');
41
+ if (hasPassword || hasCurrentPassword) {
42
+ if (!(hasCurrentPassword && hasPassword)) return false;
43
+ try {
44
+ if (!user.email) return false;
45
+ const result = await req.payload.login({
46
+ collection: userSlug,
47
+ data: {
48
+ email: user.email,
49
+ password: data.currentPassword
50
+ }
51
+ });
52
+ if (!result) return false;
53
+ allowedFields.push('password', 'currentPassword');
54
+ } catch (_error) {
55
+ // Password validation failed - user doesn't have permission to change password
56
+ // Error details are intentionally not logged to avoid exposing sensitive authentication information
57
+ return false;
58
+ }
59
+ }
60
+ const hasDisallowedField = dataKeys.some((key)=>!allowedFields.includes(key));
61
+ return !hasDisallowedField;
62
+ }
63
+ return false;
64
+ };
65
+ };
66
+
67
+ //# sourceMappingURL=payload-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/better-auth/plugin/lib/build-collections/utils/payload-access.ts"],"sourcesContent":["import type { Access, CollectionSlug, FieldAccess } from 'payload';\n\nexport type AdminRolesConfig = {\n adminRoles?: string[];\n};\n\nexport type AdminOrCurrentUserConfig = AdminRolesConfig & {\n idField?: string;\n};\n\nexport type AdminOrCurrentUserUpdateConfig = AdminOrCurrentUserConfig & {\n allowedFields?: string[];\n userSlug: string;\n};\n\nexport const isAdminWithRoles =\n (config: AdminRolesConfig = {}): FieldAccess =>\n ({ req }) => {\n const { adminRoles = ['admin'] } = config;\n if (!req?.user || !req.user.role || !adminRoles.includes(req.user.role)) return false;\n return true;\n };\n\nexport const isAdminOrCurrentUserWithRoles =\n (config: AdminOrCurrentUserConfig = {}): Access =>\n ({ req }) => {\n const { adminRoles = ['admin'], idField = 'id' } = config;\n if (isAdminWithRoles({ adminRoles })({ req })) return true;\n if (!req?.user) return false;\n return {\n [idField]: {\n equals: req?.user?.id,\n },\n };\n };\n\nexport const isAdminOrCurrentUserUpdateWithAllowedFields = (\n config: AdminOrCurrentUserUpdateConfig\n): Access => {\n return async ({ req, id, data }) => {\n const { adminRoles = ['admin'], allowedFields = [], userSlug, idField = 'id' } = config;\n const user = req.user;\n\n if (isAdminWithRoles({ adminRoles })({ req })) return true;\n\n if (!user) return false;\n\n // Using Record<string, unknown> because user object structure varies by collection configuration and idField can be any property\n if (\n (\n user as /* Using Record<string, unknown> because user object structure varies by collection configuration and idField can be any property */ Record<\n string,\n unknown\n >\n )[idField] === id &&\n data\n ) {\n const dataKeys = Object.keys(data);\n\n const hasCurrentPassword = dataKeys.includes('currentPassword');\n const hasPassword = dataKeys.includes('password');\n\n if (hasPassword || hasCurrentPassword) {\n if (!(hasCurrentPassword && hasPassword)) return false;\n try {\n if (!user.email) return false;\n\n const result = await req.payload.login({\n collection: userSlug as CollectionSlug,\n data: {\n email: user.email,\n password: data.currentPassword,\n },\n });\n\n if (!result) return false;\n\n allowedFields.push('password', 'currentPassword');\n } catch (_error) {\n // Password validation failed - user doesn't have permission to change password\n // Error details are intentionally not logged to avoid exposing sensitive authentication information\n return false;\n }\n }\n\n const hasDisallowedField = dataKeys.some(key => !allowedFields.includes(key));\n\n return !hasDisallowedField;\n }\n\n return false;\n };\n};\n"],"names":["isAdminWithRoles","config","req","adminRoles","user","role","includes","isAdminOrCurrentUserWithRoles","idField","equals","id","isAdminOrCurrentUserUpdateWithAllowedFields","data","allowedFields","userSlug","dataKeys","Object","keys","hasCurrentPassword","hasPassword","email","result","payload","login","collection","password","currentPassword","push","_error","hasDisallowedField","some","key"],"mappings":"AAeA,OAAO,MAAMA,mBACX,CAACC,SAA2B,CAAC,CAAC,GAC9B,CAAC,EAAEC,GAAG,EAAE;QACN,MAAM,EAAEC,aAAa;YAAC;SAAQ,EAAE,GAAGF;QACnC,IAAI,CAACC,KAAKE,QAAQ,CAACF,IAAIE,IAAI,CAACC,IAAI,IAAI,CAACF,WAAWG,QAAQ,CAACJ,IAAIE,IAAI,CAACC,IAAI,GAAG,OAAO;QAChF,OAAO;IACT,EAAE;AAEJ,OAAO,MAAME,gCACX,CAACN,SAAmC,CAAC,CAAC,GACtC,CAAC,EAAEC,GAAG,EAAE;QACN,MAAM,EAAEC,aAAa;YAAC;SAAQ,EAAEK,UAAU,IAAI,EAAE,GAAGP;QACnD,IAAID,iBAAiB;YAAEG;QAAW,GAAG;YAAED;QAAI,IAAI,OAAO;QACtD,IAAI,CAACA,KAAKE,MAAM,OAAO;QACvB,OAAO;YACL,CAACI,QAAQ,EAAE;gBACTC,QAAQP,KAAKE,MAAMM;YACrB;QACF;IACF,EAAE;AAEJ,OAAO,MAAMC,8CAA8C,CACzDV;IAEA,OAAO,OAAO,EAAEC,GAAG,EAAEQ,EAAE,EAAEE,IAAI,EAAE;QAC7B,MAAM,EAAET,aAAa;YAAC;SAAQ,EAAEU,gBAAgB,EAAE,EAAEC,QAAQ,EAAEN,UAAU,IAAI,EAAE,GAAGP;QACjF,MAAMG,OAAOF,IAAIE,IAAI;QAErB,IAAIJ,iBAAiB;YAAEG;QAAW,GAAG;YAAED;QAAI,IAAI,OAAO;QAEtD,IAAI,CAACE,MAAM,OAAO;QAElB,iIAAiI;QACjI,IACE,AACEA,IAID,CAACI,QAAQ,KAAKE,MACfE,MACA;YACA,MAAMG,WAAWC,OAAOC,IAAI,CAACL;YAE7B,MAAMM,qBAAqBH,SAAST,QAAQ,CAAC;YAC7C,MAAMa,cAAcJ,SAAST,QAAQ,CAAC;YAEtC,IAAIa,eAAeD,oBAAoB;gBACrC,IAAI,CAAEA,CAAAA,sBAAsBC,WAAU,GAAI,OAAO;gBACjD,IAAI;oBACF,IAAI,CAACf,KAAKgB,KAAK,EAAE,OAAO;oBAExB,MAAMC,SAAS,MAAMnB,IAAIoB,OAAO,CAACC,KAAK,CAAC;wBACrCC,YAAYV;wBACZF,MAAM;4BACJQ,OAAOhB,KAAKgB,KAAK;4BACjBK,UAAUb,KAAKc,eAAe;wBAChC;oBACF;oBAEA,IAAI,CAACL,QAAQ,OAAO;oBAEpBR,cAAcc,IAAI,CAAC,YAAY;gBACjC,EAAE,OAAOC,QAAQ;oBACf,+EAA+E;oBAC/E,oGAAoG;oBACpG,OAAO;gBACT;YACF;YAEA,MAAMC,qBAAqBd,SAASe,IAAI,CAACC,CAAAA,MAAO,CAAClB,cAAcP,QAAQ,CAACyB;YAExE,OAAO,CAACF;QACV;QAEA,OAAO;IACT;AACF,EAAE"}
@@ -0,0 +1,20 @@
1
+ import type { BuiltBetterAuthSchema, FieldRule } from '@/better-auth/plugin/types';
2
+ import type { DBFieldAttribute } from 'better-auth/db';
3
+ import type { Field } from 'payload';
4
+ export declare function getCollectionFields({ schema, fieldRules, additionalProperties, }: {
5
+ schema: BuiltBetterAuthSchema;
6
+ fieldRules?: FieldRule[];
7
+ additionalProperties?: Record<string, (field: DBFieldAttribute) => Partial<Field>>;
8
+ }): Field[] | null;
9
+ export declare function convertSchemaFieldToPayload({ field, fieldKey, fieldRules, additionalProperties, }: {
10
+ field: DBFieldAttribute;
11
+ fieldKey: string;
12
+ fieldRules?: FieldRule[];
13
+ additionalProperties?: Record<string, (field: DBFieldAttribute) => Partial<Field>>;
14
+ }): Field;
15
+ export declare function getPayloadFieldProperties({ field }: {
16
+ field: DBFieldAttribute;
17
+ }): {
18
+ type: Field['type'];
19
+ hasMany?: boolean;
20
+ };
@@ -0,0 +1,98 @@
1
+ import { getValidFieldPropertyKeysForType } from "./filter-properties";
2
+ import { getAdditionalFieldProperties } from "./model-field-transformations";
3
+ export function getCollectionFields({ schema, fieldRules = [], additionalProperties = {} }) {
4
+ const payloadFields = Object.entries(schema.fields).map(([fieldKey, field])=>{
5
+ return convertSchemaFieldToPayload({
6
+ field,
7
+ fieldKey,
8
+ fieldRules,
9
+ additionalProperties
10
+ });
11
+ });
12
+ return payloadFields;
13
+ }
14
+ export function convertSchemaFieldToPayload({ field, fieldKey, fieldRules = [], additionalProperties = {} }) {
15
+ const { type, hasMany } = getPayloadFieldProperties({
16
+ field
17
+ });
18
+ const validFieldPropertyKeys = getValidFieldPropertyKeysForType(type);
19
+ const additionalFieldProperties = getAdditionalFieldProperties({
20
+ field,
21
+ fieldKey,
22
+ fieldRules,
23
+ additionalProperties,
24
+ validFieldPropertyKeys
25
+ });
26
+ const baseField = {
27
+ name: field.fieldName ?? fieldKey,
28
+ type,
29
+ ...hasMany && {
30
+ hasMany
31
+ },
32
+ ...field.required && {
33
+ required: true
34
+ },
35
+ ...field.unique && {
36
+ unique: true
37
+ },
38
+ ...additionalFieldProperties,
39
+ custom: {
40
+ betterAuthFieldKey: fieldKey
41
+ }
42
+ };
43
+ if (field.references) {
44
+ return {
45
+ ...baseField,
46
+ ...'relationTo' in additionalFieldProperties ? {
47
+ relationTo: additionalFieldProperties.relationTo
48
+ } : {
49
+ relationTo: field.references.model
50
+ }
51
+ };
52
+ }
53
+ return baseField;
54
+ }
55
+ export function getPayloadFieldProperties({ field }) {
56
+ const type = field.type;
57
+ if ('references' in field) {
58
+ return {
59
+ type: 'relationship'
60
+ };
61
+ }
62
+ if (type === 'number[]') {
63
+ return {
64
+ type: 'number',
65
+ hasMany: true
66
+ };
67
+ }
68
+ if (type === 'string[]') {
69
+ return {
70
+ type: 'text',
71
+ hasMany: true
72
+ };
73
+ }
74
+ switch(type){
75
+ case 'boolean':
76
+ return {
77
+ type: 'checkbox'
78
+ };
79
+ case 'date':
80
+ return {
81
+ type: 'date'
82
+ };
83
+ case 'string':
84
+ return {
85
+ type: 'text'
86
+ };
87
+ case 'number':
88
+ return {
89
+ type: 'number'
90
+ };
91
+ default:
92
+ return {
93
+ type: 'text'
94
+ };
95
+ }
96
+ }
97
+
98
+ //# sourceMappingURL=transform-schema-fields-to-payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.ts"],"sourcesContent":["import type { BuiltBetterAuthSchema, FieldRule } from '@/better-auth/plugin/types';\nimport type { DBFieldAttribute } from 'better-auth/db';\nimport type { Field, RelationshipField } from 'payload';\nimport { getValidFieldPropertyKeysForType } from './filter-properties';\nimport { getAdditionalFieldProperties } from './model-field-transformations';\n\nexport function getCollectionFields({\n schema,\n fieldRules = [],\n additionalProperties = {},\n}: {\n schema: BuiltBetterAuthSchema;\n fieldRules?: FieldRule[];\n additionalProperties?: Record<string, (field: DBFieldAttribute) => Partial<Field>>;\n}): Field[] | null {\n const payloadFields = Object.entries(schema.fields).map(([fieldKey, field]) => {\n return convertSchemaFieldToPayload({ field, fieldKey, fieldRules, additionalProperties });\n });\n\n return payloadFields;\n}\n\nexport function convertSchemaFieldToPayload({\n field,\n fieldKey,\n fieldRules = [],\n additionalProperties = {},\n}: {\n field: DBFieldAttribute;\n fieldKey: string;\n fieldRules?: FieldRule[];\n additionalProperties?: Record<string, (field: DBFieldAttribute) => Partial<Field>>;\n}): Field {\n const { type, hasMany } = getPayloadFieldProperties({ field });\n const validFieldPropertyKeys = getValidFieldPropertyKeysForType(type);\n const additionalFieldProperties = getAdditionalFieldProperties({\n field,\n fieldKey,\n fieldRules,\n additionalProperties,\n validFieldPropertyKeys,\n });\n const baseField = {\n name: field.fieldName ?? fieldKey,\n type,\n ...(hasMany && { hasMany }),\n ...(field.required && { required: true }),\n ...(field.unique && { unique: true }),\n ...additionalFieldProperties,\n custom: {\n betterAuthFieldKey: fieldKey,\n },\n } as Field;\n\n if (field.references) {\n return {\n ...baseField,\n ...('relationTo' in additionalFieldProperties\n ? { relationTo: additionalFieldProperties.relationTo }\n : { relationTo: field.references.model }),\n } as RelationshipField;\n }\n\n return baseField;\n}\n\nexport function getPayloadFieldProperties({ field }: { field: DBFieldAttribute }): {\n type: Field['type'];\n hasMany?: boolean;\n} {\n const type = field.type;\n\n if ('references' in field) {\n return { type: 'relationship' };\n }\n\n if (type === 'number[]') {\n return { type: 'number', hasMany: true };\n }\n\n if (type === 'string[]') {\n return { type: 'text', hasMany: true };\n }\n\n switch (type) {\n case 'boolean':\n return { type: 'checkbox' };\n case 'date':\n return { type: 'date' };\n case 'string':\n return { type: 'text' };\n case 'number':\n return { type: 'number' };\n default:\n return { type: 'text' };\n }\n}\n"],"names":["getValidFieldPropertyKeysForType","getAdditionalFieldProperties","getCollectionFields","schema","fieldRules","additionalProperties","payloadFields","Object","entries","fields","map","fieldKey","field","convertSchemaFieldToPayload","type","hasMany","getPayloadFieldProperties","validFieldPropertyKeys","additionalFieldProperties","baseField","name","fieldName","required","unique","custom","betterAuthFieldKey","references","relationTo","model"],"mappings":"AAGA,SAASA,gCAAgC,QAAQ,sBAAsB;AACvE,SAASC,4BAA4B,QAAQ,gCAAgC;AAE7E,OAAO,SAASC,oBAAoB,EAClCC,MAAM,EACNC,aAAa,EAAE,EACfC,uBAAuB,CAAC,CAAC,EAK1B;IACC,MAAMC,gBAAgBC,OAAOC,OAAO,CAACL,OAAOM,MAAM,EAAEC,GAAG,CAAC,CAAC,CAACC,UAAUC,MAAM;QACxE,OAAOC,4BAA4B;YAAED;YAAOD;YAAUP;YAAYC;QAAqB;IACzF;IAEA,OAAOC;AACT;AAEA,OAAO,SAASO,4BAA4B,EAC1CD,KAAK,EACLD,QAAQ,EACRP,aAAa,EAAE,EACfC,uBAAuB,CAAC,CAAC,EAM1B;IACC,MAAM,EAAES,IAAI,EAAEC,OAAO,EAAE,GAAGC,0BAA0B;QAAEJ;IAAM;IAC5D,MAAMK,yBAAyBjB,iCAAiCc;IAChE,MAAMI,4BAA4BjB,6BAA6B;QAC7DW;QACAD;QACAP;QACAC;QACAY;IACF;IACA,MAAME,YAAY;QAChBC,MAAMR,MAAMS,SAAS,IAAIV;QACzBG;QACA,GAAIC,WAAW;YAAEA;QAAQ,CAAC;QAC1B,GAAIH,MAAMU,QAAQ,IAAI;YAAEA,UAAU;QAAK,CAAC;QACxC,GAAIV,MAAMW,MAAM,IAAI;YAAEA,QAAQ;QAAK,CAAC;QACpC,GAAGL,yBAAyB;QAC5BM,QAAQ;YACNC,oBAAoBd;QACtB;IACF;IAEA,IAAIC,MAAMc,UAAU,EAAE;QACpB,OAAO;YACL,GAAGP,SAAS;YACZ,GAAI,gBAAgBD,4BAChB;gBAAES,YAAYT,0BAA0BS,UAAU;YAAC,IACnD;gBAAEA,YAAYf,MAAMc,UAAU,CAACE,KAAK;YAAC,CAAC;QAC5C;IACF;IAEA,OAAOT;AACT;AAEA,OAAO,SAASH,0BAA0B,EAAEJ,KAAK,EAA+B;IAI9E,MAAME,OAAOF,MAAME,IAAI;IAEvB,IAAI,gBAAgBF,OAAO;QACzB,OAAO;YAAEE,MAAM;QAAe;IAChC;IAEA,IAAIA,SAAS,YAAY;QACvB,OAAO;YAAEA,MAAM;YAAUC,SAAS;QAAK;IACzC;IAEA,IAAID,SAAS,YAAY;QACvB,OAAO;YAAEA,MAAM;YAAQC,SAAS;QAAK;IACvC;IAEA,OAAQD;QACN,KAAK;YACH,OAAO;gBAAEA,MAAM;YAAW;QAC5B,KAAK;YACH,OAAO;gBAAEA,MAAM;YAAO;QACxB,KAAK;YACH,OAAO;gBAAEA,MAAM;YAAO;QACxB,KAAK;YACH,OAAO;gBAAEA,MAAM;YAAS;QAC1B;YACE,OAAO;gBAAEA,MAAM;YAAO;IAC1B;AACF"}
@@ -0,0 +1,3 @@
1
+ import type { CollectionConfig } from 'payload';
2
+ import type { BuildCollectionProps } from '../../types';
3
+ export declare function buildVerificationsCollection({ incomingCollections, pluginOptions, resolvedSchemas, }: BuildCollectionProps): CollectionConfig;
@@ -0,0 +1,87 @@
1
+ import { baModelKey } from "../../constants";
2
+ import { getAdminAccess } from "../../helpers/get-admin-access";
3
+ import { assertAllSchemaFields, getSchemaCollectionSlug, getSchemaFieldName } from "./utils/collection-schema";
4
+ import { filterDuplicateFields } from "./utils/filter-duplicate-fields";
5
+ import { getCollectionFields } from "./utils/transform-schema-fields-to-payload";
6
+ export function buildVerificationsCollection({ incomingCollections, pluginOptions, resolvedSchemas }) {
7
+ const verificationSlug = getSchemaCollectionSlug(resolvedSchemas, baModelKey.verification);
8
+ const verificationSchema = resolvedSchemas[baModelKey.verification];
9
+ const existingVerificationCollection = incomingCollections.find((collection)=>collection.slug === verificationSlug);
10
+ const fieldOverrides = {
11
+ identifier: ()=>({
12
+ index: true,
13
+ admin: {
14
+ readOnly: true,
15
+ description: 'The identifier of the verification request'
16
+ }
17
+ }),
18
+ value: ()=>({
19
+ admin: {
20
+ readOnly: true,
21
+ description: 'The value to be verified'
22
+ }
23
+ }),
24
+ expiresAt: ()=>({
25
+ admin: {
26
+ readOnly: true,
27
+ description: 'The date and time when the verification request will expire'
28
+ }
29
+ })
30
+ };
31
+ const verificationFieldRules = [
32
+ {
33
+ condition: (field)=>field.type === 'date',
34
+ transform: (field)=>({
35
+ ...field,
36
+ saveToJWT: false,
37
+ admin: {
38
+ disableBulkEdit: true,
39
+ hidden: true
40
+ },
41
+ index: true,
42
+ // Using any because PayloadCMS label function receives translation function with dynamic type
43
+ label: ({ t })=>t('general:updatedAt')
44
+ })
45
+ }
46
+ ];
47
+ const collectionFields = getCollectionFields({
48
+ schema: verificationSchema,
49
+ fieldRules: verificationFieldRules,
50
+ additionalProperties: fieldOverrides
51
+ });
52
+ let verificationCollection = {
53
+ ...existingVerificationCollection,
54
+ slug: verificationSlug,
55
+ admin: {
56
+ useAsTitle: getSchemaFieldName(resolvedSchemas, baModelKey.verification, 'identifier'),
57
+ description: 'Verifications are used to verify authentication requests',
58
+ group: pluginOptions?.collectionAdminGroup ?? 'Auth',
59
+ ...existingVerificationCollection?.admin,
60
+ ...pluginOptions.verifications?.hidden !== undefined && {
61
+ hidden: pluginOptions.verifications.hidden
62
+ }
63
+ },
64
+ access: {
65
+ ...getAdminAccess(pluginOptions),
66
+ ...existingVerificationCollection?.access ?? {}
67
+ },
68
+ custom: {
69
+ ...existingVerificationCollection?.custom ?? {},
70
+ betterAuthModelKey: baModelKey.verification
71
+ },
72
+ fields: [
73
+ ...existingVerificationCollection?.fields ?? [],
74
+ // Filter out fields that already exist to prevent duplicates
75
+ ...filterDuplicateFields(existingVerificationCollection?.fields, collectionFields)
76
+ ]
77
+ };
78
+ if (typeof pluginOptions.verifications?.collectionOverrides === 'function') {
79
+ verificationCollection = pluginOptions.verifications.collectionOverrides({
80
+ collection: verificationCollection
81
+ });
82
+ }
83
+ assertAllSchemaFields(verificationCollection, verificationSchema);
84
+ return verificationCollection;
85
+ }
86
+
87
+ //# sourceMappingURL=verifications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/better-auth/plugin/lib/build-collections/verifications.ts"],"sourcesContent":["import type { Verification } from '@/better-auth/generated-types';\nimport type { CollectionConfig } from 'payload';\nimport { baModelKey } from '../../constants';\nimport { getAdminAccess } from '../../helpers/get-admin-access';\nimport type { BuildCollectionProps, FieldOverrides, FieldRule } from '../../types';\nimport {\n assertAllSchemaFields,\n getSchemaCollectionSlug,\n getSchemaFieldName,\n} from './utils/collection-schema';\nimport { filterDuplicateFields } from './utils/filter-duplicate-fields';\nimport { getCollectionFields } from './utils/transform-schema-fields-to-payload';\n\nexport function buildVerificationsCollection({\n incomingCollections,\n pluginOptions,\n resolvedSchemas,\n}: BuildCollectionProps): CollectionConfig {\n const verificationSlug = getSchemaCollectionSlug(resolvedSchemas, baModelKey.verification);\n const verificationSchema = resolvedSchemas[baModelKey.verification];\n\n const existingVerificationCollection = incomingCollections.find(\n collection => collection.slug === verificationSlug\n ) as CollectionConfig | undefined;\n\n const fieldOverrides: FieldOverrides<keyof Verification> = {\n identifier: () => ({\n index: true,\n admin: {\n readOnly: true,\n description: 'The identifier of the verification request',\n },\n }),\n value: () => ({\n admin: {\n readOnly: true,\n description: 'The value to be verified',\n },\n }),\n expiresAt: () => ({\n admin: {\n readOnly: true,\n description: 'The date and time when the verification request will expire',\n },\n }),\n };\n\n const verificationFieldRules: FieldRule[] = [\n {\n condition: field => field.type === 'date',\n transform: field => ({\n ...field,\n saveToJWT: false,\n admin: {\n disableBulkEdit: true,\n hidden: true,\n },\n index: true,\n // Using any because PayloadCMS label function receives translation function with dynamic type\n label: ({ t }: any) => t('general:updatedAt'),\n }),\n },\n ];\n\n const collectionFields = getCollectionFields({\n schema: verificationSchema,\n fieldRules: verificationFieldRules,\n additionalProperties: fieldOverrides,\n });\n\n let verificationCollection: CollectionConfig = {\n ...existingVerificationCollection,\n slug: verificationSlug,\n admin: {\n useAsTitle: getSchemaFieldName(resolvedSchemas, baModelKey.verification, 'identifier'),\n description: 'Verifications are used to verify authentication requests',\n group: pluginOptions?.collectionAdminGroup ?? 'Auth',\n ...existingVerificationCollection?.admin,\n ...(pluginOptions.verifications?.hidden !== undefined && {\n hidden: pluginOptions.verifications.hidden,\n }),\n },\n access: {\n ...getAdminAccess(pluginOptions),\n ...(existingVerificationCollection?.access ?? {}),\n },\n custom: {\n ...(existingVerificationCollection?.custom ?? {}),\n betterAuthModelKey: baModelKey.verification,\n },\n fields: [\n ...(existingVerificationCollection?.fields ?? []),\n // Filter out fields that already exist to prevent duplicates\n ...filterDuplicateFields(existingVerificationCollection?.fields, collectionFields),\n ],\n };\n\n if (typeof pluginOptions.verifications?.collectionOverrides === 'function') {\n verificationCollection = pluginOptions.verifications.collectionOverrides({\n collection: verificationCollection,\n });\n }\n\n assertAllSchemaFields(verificationCollection, verificationSchema);\n\n return verificationCollection;\n}\n"],"names":["baModelKey","getAdminAccess","assertAllSchemaFields","getSchemaCollectionSlug","getSchemaFieldName","filterDuplicateFields","getCollectionFields","buildVerificationsCollection","incomingCollections","pluginOptions","resolvedSchemas","verificationSlug","verification","verificationSchema","existingVerificationCollection","find","collection","slug","fieldOverrides","identifier","index","admin","readOnly","description","value","expiresAt","verificationFieldRules","condition","field","type","transform","saveToJWT","disableBulkEdit","hidden","label","t","collectionFields","schema","fieldRules","additionalProperties","verificationCollection","useAsTitle","group","collectionAdminGroup","verifications","undefined","access","custom","betterAuthModelKey","fields","collectionOverrides"],"mappings":"AAEA,SAASA,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,cAAc,QAAQ,iCAAiC;AAEhE,SACEC,qBAAqB,EACrBC,uBAAuB,EACvBC,kBAAkB,QACb,4BAA4B;AACnC,SAASC,qBAAqB,QAAQ,kCAAkC;AACxE,SAASC,mBAAmB,QAAQ,6CAA6C;AAEjF,OAAO,SAASC,6BAA6B,EAC3CC,mBAAmB,EACnBC,aAAa,EACbC,eAAe,EACM;IACrB,MAAMC,mBAAmBR,wBAAwBO,iBAAiBV,WAAWY,YAAY;IACzF,MAAMC,qBAAqBH,eAAe,CAACV,WAAWY,YAAY,CAAC;IAEnE,MAAME,iCAAiCN,oBAAoBO,IAAI,CAC7DC,CAAAA,aAAcA,WAAWC,IAAI,KAAKN;IAGpC,MAAMO,iBAAqD;QACzDC,YAAY,IAAO,CAAA;gBACjBC,OAAO;gBACPC,OAAO;oBACLC,UAAU;oBACVC,aAAa;gBACf;YACF,CAAA;QACAC,OAAO,IAAO,CAAA;gBACZH,OAAO;oBACLC,UAAU;oBACVC,aAAa;gBACf;YACF,CAAA;QACAE,WAAW,IAAO,CAAA;gBAChBJ,OAAO;oBACLC,UAAU;oBACVC,aAAa;gBACf;YACF,CAAA;IACF;IAEA,MAAMG,yBAAsC;QAC1C;YACEC,WAAWC,CAAAA,QAASA,MAAMC,IAAI,KAAK;YACnCC,WAAWF,CAAAA,QAAU,CAAA;oBACnB,GAAGA,KAAK;oBACRG,WAAW;oBACXV,OAAO;wBACLW,iBAAiB;wBACjBC,QAAQ;oBACV;oBACAb,OAAO;oBACP,8FAA8F;oBAC9Fc,OAAO,CAAC,EAAEC,CAAC,EAAO,GAAKA,EAAE;gBAC3B,CAAA;QACF;KACD;IAED,MAAMC,mBAAmB9B,oBAAoB;QAC3C+B,QAAQxB;QACRyB,YAAYZ;QACZa,sBAAsBrB;IACxB;IAEA,IAAIsB,yBAA2C;QAC7C,GAAG1B,8BAA8B;QACjCG,MAAMN;QACNU,OAAO;YACLoB,YAAYrC,mBAAmBM,iBAAiBV,WAAWY,YAAY,EAAE;YACzEW,aAAa;YACbmB,OAAOjC,eAAekC,wBAAwB;YAC9C,GAAG7B,gCAAgCO,KAAK;YACxC,GAAIZ,cAAcmC,aAAa,EAAEX,WAAWY,aAAa;gBACvDZ,QAAQxB,cAAcmC,aAAa,CAACX,MAAM;YAC5C,CAAC;QACH;QACAa,QAAQ;YACN,GAAG7C,eAAeQ,cAAc;YAChC,GAAIK,gCAAgCgC,UAAU,CAAC,CAAC;QAClD;QACAC,QAAQ;YACN,GAAIjC,gCAAgCiC,UAAU,CAAC,CAAC;YAChDC,oBAAoBhD,WAAWY,YAAY;QAC7C;QACAqC,QAAQ;eACFnC,gCAAgCmC,UAAU,EAAE;YAChD,6DAA6D;eAC1D5C,sBAAsBS,gCAAgCmC,QAAQb;SAClE;IACH;IAEA,IAAI,OAAO3B,cAAcmC,aAAa,EAAEM,wBAAwB,YAAY;QAC1EV,yBAAyB/B,cAAcmC,aAAa,CAACM,mBAAmB,CAAC;YACvElC,YAAYwB;QACd;IACF;IAEAtC,sBAAsBsC,wBAAwB3B;IAE9C,OAAO2B;AACT"}
@@ -0,0 +1,5 @@
1
+ import type { BasePayload, SanitizedConfig } from 'payload';
2
+ import type { BetterAuthReturn, TPlugins } from '../types';
3
+ export declare function getPayloadAuth<P extends TPlugins>(config: Promise<SanitizedConfig> | SanitizedConfig): Promise<BasePayload & {
4
+ betterAuth: BetterAuthReturn<P>;
5
+ }>;
@@ -0,0 +1,9 @@
1
+ import { getPayload } from "payload";
2
+ export async function getPayloadAuth(config) {
3
+ const payload = await getPayload({
4
+ config
5
+ });
6
+ return payload;
7
+ }
8
+
9
+ //# sourceMappingURL=get-payload-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/better-auth/plugin/lib/get-payload-auth.ts"],"sourcesContent":["import { getPayload } from 'payload';\nimport type { BasePayload, SanitizedConfig } from 'payload';\nimport type { BetterAuthReturn, TPlugins } from '../types';\n\nexport async function getPayloadAuth<P extends TPlugins>(\n config: Promise<SanitizedConfig> | SanitizedConfig\n): Promise<BasePayload & { betterAuth: BetterAuthReturn<P> }> {\n const payload = (await getPayload({ config })) as BasePayload & {\n betterAuth: BetterAuthReturn<P>;\n };\n return payload;\n}\n"],"names":["getPayload","getPayloadAuth","config","payload"],"mappings":"AAAA,SAASA,UAAU,QAAQ,UAAU;AAIrC,OAAO,eAAeC,eACpBC,MAAkD;IAElD,MAAMC,UAAW,MAAMH,WAAW;QAAEE;IAAO;IAG3C,OAAOC;AACT"}
@@ -0,0 +1,7 @@
1
+ import type { BasePayload } from 'payload';
2
+ import type { BetterAuthFunctionOptions, BetterAuthReturn, TPlugins } from '../types';
3
+ export declare function initBetterAuth<P extends TPlugins>({ payload, idType, options: { enableDebugLogs, ...restOptions }, }: {
4
+ payload: BasePayload;
5
+ idType: 'number' | 'text';
6
+ options: BetterAuthFunctionOptions<P>;
7
+ }): BetterAuthReturn<P>;
@@ -0,0 +1,46 @@
1
+ import { betterAuth } from "../..";
2
+ import { payloadAdapter } from "../../adapter/index";
3
+ export function initBetterAuth({ payload, idType, options: { enableDebugLogs = false, ...restOptions } }) {
4
+ return betterAuth({
5
+ ...restOptions,
6
+ // Using any because BetterAuth accepts empty objects for optional config when not provided
7
+ // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config
8
+ ...restOptions.user ? {
9
+ user: restOptions.user
10
+ } : {
11
+ user: {}
12
+ },
13
+ // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config
14
+ ...restOptions.session ? {
15
+ session: restOptions.session
16
+ } : {
17
+ session: {}
18
+ },
19
+ // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config
20
+ ...restOptions.account ? {
21
+ account: restOptions.account
22
+ } : {
23
+ account: {}
24
+ },
25
+ ...restOptions.verification ? {
26
+ verification: restOptions.verification
27
+ } : {
28
+ verification: {}
29
+ },
30
+ // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config
31
+ ...restOptions.advanced ? {
32
+ advanced: restOptions.advanced
33
+ } : {
34
+ advanced: {}
35
+ },
36
+ database: payloadAdapter({
37
+ payloadClient: payload,
38
+ adapterConfig: {
39
+ enableDebugLogs,
40
+ idType
41
+ }
42
+ })
43
+ });
44
+ }
45
+
46
+ //# sourceMappingURL=init-better-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/better-auth/plugin/lib/init-better-auth.ts"],"sourcesContent":["import { betterAuth } from 'better-auth';\nimport type { BasePayload } from 'payload';\nimport { payloadAdapter } from '../../adapter/index';\nimport type { BetterAuthFunctionOptions, BetterAuthReturn, TPlugins } from '../types';\n\nexport function initBetterAuth<P extends TPlugins>({\n payload,\n idType,\n options: { enableDebugLogs = false, ...restOptions },\n}: {\n payload: BasePayload;\n idType: 'number' | 'text';\n options: BetterAuthFunctionOptions<P>;\n}): BetterAuthReturn<P> {\n return betterAuth({\n ...restOptions,\n // Using any because BetterAuth accepts empty objects for optional config when not provided\n // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config\n ...(restOptions.user ? { user: restOptions.user } : { user: {} as any }),\n // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config\n ...(restOptions.session ? { session: restOptions.session } : { session: {} as any }),\n // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config\n ...(restOptions.account ? { account: restOptions.account } : { account: {} as any }),\n ...(restOptions.verification\n ? { verification: restOptions.verification }\n : // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config\n { verification: {} as any }),\n // biome-ignore lint/suspicious/noExplicitAny: BetterAuth accepts empty objects for optional config\n ...(restOptions.advanced ? { advanced: restOptions.advanced } : { advanced: {} as any }),\n database: payloadAdapter({\n payloadClient: payload,\n adapterConfig: {\n enableDebugLogs,\n idType,\n },\n }),\n }) as unknown as BetterAuthReturn<P>;\n}\n"],"names":["betterAuth","payloadAdapter","initBetterAuth","payload","idType","options","enableDebugLogs","restOptions","user","session","account","verification","advanced","database","payloadClient","adapterConfig"],"mappings":"AAAA,SAASA,UAAU,QAAQ,QAAc;AAEzC,SAASC,cAAc,QAAQ,sBAAsB;AAGrD,OAAO,SAASC,eAAmC,EACjDC,OAAO,EACPC,MAAM,EACNC,SAAS,EAAEC,kBAAkB,KAAK,EAAE,GAAGC,aAAa,EAKrD;IACC,OAAOP,WAAW;QAChB,GAAGO,WAAW;QACd,2FAA2F;QAC3F,mGAAmG;QACnG,GAAIA,YAAYC,IAAI,GAAG;YAAEA,MAAMD,YAAYC,IAAI;QAAC,IAAI;YAAEA,MAAM,CAAC;QAAS,CAAC;QACvE,mGAAmG;QACnG,GAAID,YAAYE,OAAO,GAAG;YAAEA,SAASF,YAAYE,OAAO;QAAC,IAAI;YAAEA,SAAS,CAAC;QAAS,CAAC;QACnF,mGAAmG;QACnG,GAAIF,YAAYG,OAAO,GAAG;YAAEA,SAASH,YAAYG,OAAO;QAAC,IAAI;YAAEA,SAAS,CAAC;QAAS,CAAC;QACnF,GAAIH,YAAYI,YAAY,GACxB;YAAEA,cAAcJ,YAAYI,YAAY;QAAC,IAEzC;YAAEA,cAAc,CAAC;QAAS,CAAC;QAC/B,mGAAmG;QACnG,GAAIJ,YAAYK,QAAQ,GAAG;YAAEA,UAAUL,YAAYK,QAAQ;QAAC,IAAI;YAAEA,UAAU,CAAC;QAAS,CAAC;QACvFC,UAAUZ,eAAe;YACvBa,eAAeX;YACfY,eAAe;gBACbT;gBACAF;YACF;QACF;IACF;AACF"}
@@ -0,0 +1,2 @@
1
+ import type { BetterAuthPluginOptions } from '../../types';
2
+ export declare function configureAdminPlugin(plugin: any, options: BetterAuthPluginOptions): void;
@@ -0,0 +1,9 @@
1
+ import { defaults } from "../../constants";
2
+ export function configureAdminPlugin(plugin, options) {
3
+ plugin.defaultRole = options.users?.defaultRole ?? defaults.userRole;
4
+ plugin.adminRoles = options.users?.adminRoles ?? [
5
+ defaults.adminRole
6
+ ];
7
+ }
8
+
9
+ //# sourceMappingURL=admin-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.ts"],"sourcesContent":["import { defaults } from '../../constants';\nimport type { BetterAuthPluginOptions } from '../../types';\n\nexport function configureAdminPlugin(plugin: any, options: BetterAuthPluginOptions): void {\n plugin.defaultRole = options.users?.defaultRole ?? defaults.userRole;\n plugin.adminRoles = options.users?.adminRoles ?? [defaults.adminRole];\n}\n"],"names":["defaults","configureAdminPlugin","plugin","options","defaultRole","users","userRole","adminRoles","adminRole"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,kBAAkB;AAG3C,OAAO,SAASC,qBAAqBC,MAAW,EAAEC,OAAgC;IAChFD,OAAOE,WAAW,GAAGD,QAAQE,KAAK,EAAED,eAAeJ,SAASM,QAAQ;IACpEJ,OAAOK,UAAU,GAAGJ,QAAQE,KAAK,EAAEE,cAAc;QAACP,SAASQ,SAAS;KAAC;AACvE"}
@@ -0,0 +1,2 @@
1
+ import type { BetterAuthSchemas } from '@/better-auth/types';
2
+ export declare function configureApiKeyPlugin(plugin: any, resolvedSchemas: BetterAuthSchemas): void;
@@ -0,0 +1,10 @@
1
+ import { baModelFieldKeys, baModelKey } from "@/better-auth/plugin/constants";
2
+ import { set } from "../../utils/set";
3
+ import { getSchemaCollectionSlug, getSchemaFieldName } from "../build-collections/utils/collection-schema";
4
+ export function configureApiKeyPlugin(plugin, resolvedSchemas) {
5
+ const model = baModelKey.apikey;
6
+ set(plugin, `schema.${model}.modelName`, getSchemaCollectionSlug(resolvedSchemas, model));
7
+ set(plugin, `schema.${model}.fields.userId.fieldName`, getSchemaFieldName(resolvedSchemas, model, baModelFieldKeys.apikey.userId));
8
+ }
9
+
10
+ //# sourceMappingURL=api-key-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.ts"],"sourcesContent":["import { baModelFieldKeys, baModelKey } from '@/better-auth/plugin/constants';\nimport type { BetterAuthSchemas } from '@/better-auth/types';\nimport { set } from '../../utils/set';\nimport {\n getSchemaCollectionSlug,\n getSchemaFieldName,\n} from '../build-collections/utils/collection-schema';\n\nexport function configureApiKeyPlugin(plugin: any, resolvedSchemas: BetterAuthSchemas): void {\n const model = baModelKey.apikey;\n set(plugin, `schema.${model}.modelName`, getSchemaCollectionSlug(resolvedSchemas, model));\n set(\n plugin,\n `schema.${model}.fields.userId.fieldName`,\n getSchemaFieldName(resolvedSchemas, model, baModelFieldKeys.apikey.userId)\n );\n}\n"],"names":["baModelFieldKeys","baModelKey","set","getSchemaCollectionSlug","getSchemaFieldName","configureApiKeyPlugin","plugin","resolvedSchemas","model","apikey","userId"],"mappings":"AAAA,SAASA,gBAAgB,EAAEC,UAAU,QAAQ,iCAAiC;AAE9E,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SACEC,uBAAuB,EACvBC,kBAAkB,QACb,+CAA+C;AAEtD,OAAO,SAASC,sBAAsBC,MAAW,EAAEC,eAAkC;IACnF,MAAMC,QAAQP,WAAWQ,MAAM;IAC/BP,IAAII,QAAQ,CAAC,OAAO,EAAEE,MAAM,UAAU,CAAC,EAAEL,wBAAwBI,iBAAiBC;IAClFN,IACEI,QACA,CAAC,OAAO,EAAEE,MAAM,wBAAwB,CAAC,EACzCJ,mBAAmBG,iBAAiBC,OAAOR,iBAAiBS,MAAM,CAACC,MAAM;AAE7E"}
@@ -0,0 +1,2 @@
1
+ import type { BetterAuthSchemas } from '@/better-auth/types';
2
+ export declare function configureDeviceAuthorizationPlugin(plugin: any, resolvedSchemas: BetterAuthSchemas): void;
@@ -0,0 +1,8 @@
1
+ import { baModelKey } from "@/better-auth/plugin/constants";
2
+ import { set } from "../../utils/set";
3
+ import { getSchemaCollectionSlug } from "../build-collections/utils/collection-schema";
4
+ export function configureDeviceAuthorizationPlugin(plugin, resolvedSchemas) {
5
+ set(plugin, `schema.${baModelKey.deviceCode}.modelName`, getSchemaCollectionSlug(resolvedSchemas, baModelKey.deviceCode));
6
+ }
7
+
8
+ //# sourceMappingURL=device-authorization-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/better-auth/plugin/lib/sanitize-better-auth-options/device-authorization-plugin.ts"],"sourcesContent":["import { baModelKey } from '@/better-auth/plugin/constants';\nimport type { BetterAuthSchemas } from '@/better-auth/types';\nimport { set } from '../../utils/set';\nimport { getSchemaCollectionSlug } from '../build-collections/utils/collection-schema';\n\nexport function configureDeviceAuthorizationPlugin(\n plugin: any,\n resolvedSchemas: BetterAuthSchemas\n): void {\n set(\n plugin,\n `schema.${baModelKey.deviceCode}.modelName`,\n getSchemaCollectionSlug(resolvedSchemas, baModelKey.deviceCode)\n );\n}\n"],"names":["baModelKey","set","getSchemaCollectionSlug","configureDeviceAuthorizationPlugin","plugin","resolvedSchemas","deviceCode"],"mappings":"AAAA,SAASA,UAAU,QAAQ,iCAAiC;AAE5D,SAASC,GAAG,QAAQ,kBAAkB;AACtC,SAASC,uBAAuB,QAAQ,+CAA+C;AAEvF,OAAO,SAASC,mCACdC,MAAW,EACXC,eAAkC;IAElCJ,IACEG,QACA,CAAC,OAAO,EAAEJ,WAAWM,UAAU,CAAC,UAAU,CAAC,EAC3CJ,wBAAwBG,iBAAiBL,WAAWM,UAAU;AAElE"}
@@ -0,0 +1,10 @@
1
+ import type { BetterAuthPluginOptions, BetterAuthSchemas, SanitizedBetterAuthOptions } from '@/better-auth/plugin/types';
2
+ import type { Config, Payload } from 'payload';
3
+ /**
4
+ * Sanitizes the BetterAuth options
5
+ */
6
+ export declare function sanitizeBetterAuthOptions({ config, pluginOptions, resolvedSchemas, }: {
7
+ config: Payload['config'] | Config | Promise<Payload['config'] | Config>;
8
+ pluginOptions: BetterAuthPluginOptions;
9
+ resolvedSchemas: BetterAuthSchemas;
10
+ }): SanitizedBetterAuthOptions;