payload-auth 1.0.1 → 1.1.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 (538) hide show
  1. package/dist/authjs/index.d.ts +1 -0
  2. package/dist/authjs/index.d.ts.map +1 -0
  3. package/dist/authjs/index.js +1 -1
  4. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.d.ts +1 -0
  5. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.d.ts.map +1 -0
  6. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.js +1 -1
  7. package/dist/better-auth/adapter/generate-schema/get-payload-schema.d.ts +1 -0
  8. package/dist/better-auth/adapter/generate-schema/get-payload-schema.d.ts.map +1 -0
  9. package/dist/better-auth/adapter/generate-schema/get-payload-schema.js +1 -1
  10. package/dist/better-auth/adapter/generate-schema/index.d.ts +1 -0
  11. package/dist/better-auth/adapter/generate-schema/index.d.ts.map +1 -0
  12. package/dist/better-auth/adapter/generate-schema/index.js +3 -3
  13. package/dist/better-auth/adapter/generate-schema/utils.d.ts +1 -0
  14. package/dist/better-auth/adapter/generate-schema/utils.d.ts.map +1 -0
  15. package/dist/better-auth/adapter/generate-schema/utils.js +1 -1
  16. package/dist/better-auth/adapter/index.d.ts +3 -2
  17. package/dist/better-auth/adapter/index.d.ts.map +1 -0
  18. package/dist/better-auth/adapter/index.js +115 -69
  19. package/dist/better-auth/adapter/transform/index.d.ts +19 -6
  20. package/dist/better-auth/adapter/transform/index.d.ts.map +1 -0
  21. package/dist/better-auth/adapter/transform/index.js +387 -96
  22. package/dist/better-auth/adapter/types.d.ts +3 -1
  23. package/dist/better-auth/adapter/types.d.ts.map +1 -0
  24. package/dist/better-auth/adapter/types.js +1 -1
  25. package/dist/better-auth/index.d.ts +1 -0
  26. package/dist/better-auth/index.d.ts.map +1 -0
  27. package/dist/better-auth/index.js +1 -1
  28. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts +3 -0
  29. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts.map +1 -0
  30. package/dist/better-auth/plugin/helpers/check-passkey-plugin.js +5 -0
  31. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts +3 -0
  32. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts.map +1 -0
  33. package/dist/better-auth/plugin/helpers/check-username-plugin.js +5 -0
  34. package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts +1 -0
  35. package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts.map +1 -0
  36. package/dist/better-auth/plugin/helpers/generate-verify-email-url.js +8 -8
  37. package/dist/better-auth/plugin/helpers/get-admin-access.d.ts +8 -0
  38. package/dist/better-auth/plugin/helpers/get-admin-access.d.ts.map +1 -0
  39. package/dist/better-auth/plugin/helpers/get-admin-access.js +22 -0
  40. package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts +14 -0
  41. package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts.map +1 -0
  42. package/dist/better-auth/plugin/helpers/get-admin-routes.js +6 -0
  43. package/dist/better-auth/plugin/helpers/get-all-roles.d.ts +6 -0
  44. package/dist/better-auth/plugin/helpers/get-all-roles.d.ts.map +1 -0
  45. package/dist/better-auth/plugin/helpers/get-all-roles.js +20 -0
  46. package/dist/better-auth/plugin/helpers/get-ip.d.ts +2 -1
  47. package/dist/better-auth/plugin/helpers/get-ip.d.ts.map +1 -0
  48. package/dist/better-auth/plugin/helpers/get-ip.js +14 -14
  49. package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts +3 -0
  50. package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts.map +1 -0
  51. package/dist/better-auth/plugin/helpers/get-requst-collection.js +14 -0
  52. package/dist/better-auth/plugin/helpers/index.d.ts +2 -1
  53. package/dist/better-auth/plugin/helpers/index.d.ts.map +1 -0
  54. package/dist/better-auth/plugin/helpers/index.js +2 -2
  55. package/dist/better-auth/plugin/{lib → helpers}/prepare-session-data.d.ts +3 -2
  56. package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts.map +1 -0
  57. package/dist/better-auth/plugin/helpers/prepare-session-data.js +42 -0
  58. package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts +3 -2
  59. package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts.map +1 -0
  60. package/dist/better-auth/plugin/helpers/serialize-cookie.js +34 -34
  61. package/dist/better-auth/plugin/index.d.ts +8 -7
  62. package/dist/better-auth/plugin/index.d.ts.map +1 -0
  63. package/dist/better-auth/plugin/index.js +145 -37
  64. package/dist/better-auth/plugin/{collections → lib/build-collections}/accounts/hooks/sync-password-to-user.d.ts +2 -1
  65. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts.map +1 -0
  66. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +47 -0
  67. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +7 -0
  68. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts.map +1 -0
  69. package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +159 -0
  70. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts +6 -0
  71. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts.map +1 -0
  72. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js +11 -0
  73. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts +3 -0
  74. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts.map +1 -0
  75. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js +8 -0
  76. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +7 -0
  77. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts.map +1 -0
  78. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +107 -0
  79. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +6 -0
  80. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts.map +1 -0
  81. package/dist/better-auth/plugin/lib/build-collections/api-keys.js +196 -0
  82. package/dist/better-auth/plugin/lib/build-collections/index.d.ts +12 -0
  83. package/dist/better-auth/plugin/lib/build-collections/index.d.ts.map +1 -0
  84. package/dist/better-auth/plugin/lib/build-collections/index.js +96 -0
  85. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +6 -0
  86. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts.map +1 -0
  87. package/dist/better-auth/plugin/lib/build-collections/invitations.js +91 -0
  88. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +6 -0
  89. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts.map +1 -0
  90. package/dist/better-auth/plugin/lib/build-collections/jwks.js +43 -0
  91. package/dist/better-auth/plugin/lib/build-collections/members.d.ts +6 -0
  92. package/dist/better-auth/plugin/lib/build-collections/members.d.ts.map +1 -0
  93. package/dist/better-auth/plugin/lib/build-collections/members.js +71 -0
  94. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +6 -0
  95. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts.map +1 -0
  96. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +98 -0
  97. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +6 -0
  98. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts.map +1 -0
  99. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +113 -0
  100. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +6 -0
  101. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts.map +1 -0
  102. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +67 -0
  103. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +6 -0
  104. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts.map +1 -0
  105. package/dist/better-auth/plugin/lib/build-collections/organizations.js +59 -0
  106. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +6 -0
  107. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts.map +1 -0
  108. package/dist/better-auth/plugin/lib/build-collections/passkeys.js +108 -0
  109. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +8 -0
  110. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts.map +1 -0
  111. package/dist/better-auth/plugin/lib/build-collections/sessions.js +123 -0
  112. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +6 -0
  113. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts.map +1 -0
  114. package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +83 -0
  115. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +6 -0
  116. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts.map +1 -0
  117. package/dist/better-auth/plugin/lib/build-collections/teams.js +45 -0
  118. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +6 -0
  119. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts.map +1 -0
  120. package/dist/better-auth/plugin/lib/build-collections/two-factors.js +56 -0
  121. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts +8 -0
  122. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts.map +1 -0
  123. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +52 -0
  124. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts +3 -0
  125. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts.map +1 -0
  126. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.js +96 -0
  127. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts +13 -0
  128. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts.map +1 -0
  129. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +67 -0
  130. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts +4 -0
  131. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts.map +1 -0
  132. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.js +115 -0
  133. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts +3 -0
  134. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts.map +1 -0
  135. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js +110 -0
  136. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts +3 -0
  137. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts.map +1 -0
  138. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.js +62 -0
  139. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts +3 -0
  140. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts.map +1 -0
  141. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js +42 -0
  142. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts +4 -0
  143. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts.map +1 -0
  144. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +79 -0
  145. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts +4 -0
  146. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts.map +1 -0
  147. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.js +153 -0
  148. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/after-login.d.ts +2 -1
  149. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts.map +1 -0
  150. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +75 -0
  151. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/after-logout.d.ts +2 -1
  152. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts.map +1 -0
  153. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +74 -0
  154. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +7 -0
  155. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts.map +1 -0
  156. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +45 -0
  157. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/before-login.d.ts +2 -1
  158. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts.map +1 -0
  159. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +18 -0
  160. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +3 -0
  161. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts.map +1 -0
  162. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +14 -0
  163. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/sync-account.d.ts +2 -1
  164. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts.map +1 -0
  165. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +82 -0
  166. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +8 -0
  167. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts.map +1 -0
  168. package/dist/better-auth/plugin/lib/build-collections/users/index.js +345 -0
  169. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +8 -0
  170. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts.map +1 -0
  171. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +31 -0
  172. package/dist/better-auth/plugin/lib/{payload-access.d.ts → build-collections/utils/payload-access.d.ts} +2 -1
  173. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts.map +1 -0
  174. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js +64 -0
  175. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +7 -0
  176. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts.map +1 -0
  177. package/dist/better-auth/plugin/lib/build-collections/verifications.js +63 -0
  178. package/dist/better-auth/plugin/lib/{config.d.ts → constants.d.ts} +14 -0
  179. package/dist/better-auth/plugin/lib/constants.d.ts.map +1 -0
  180. package/dist/better-auth/plugin/lib/constants.js +56 -0
  181. package/dist/better-auth/plugin/lib/get-payload-auth.d.ts +3 -2
  182. package/dist/better-auth/plugin/lib/get-payload-auth.d.ts.map +1 -0
  183. package/dist/better-auth/plugin/lib/get-payload-auth.js +2 -2
  184. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts +5 -4
  185. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts.map +1 -0
  186. package/dist/better-auth/plugin/lib/get-required-collection-slugs.js +26 -43
  187. package/dist/better-auth/plugin/lib/init-better-auth.d.ts +5 -3
  188. package/dist/better-auth/plugin/lib/init-better-auth.d.ts.map +1 -0
  189. package/dist/better-auth/plugin/lib/init-better-auth.js +6 -6
  190. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts +3 -0
  191. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts.map +1 -0
  192. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +8 -0
  193. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts +2 -0
  194. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts.map +1 -0
  195. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +17 -0
  196. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +10 -0
  197. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts.map +1 -0
  198. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +118 -0
  199. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts +2 -0
  200. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts.map +1 -0
  201. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +58 -0
  202. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts +2 -0
  203. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts.map +1 -0
  204. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +86 -0
  205. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts +2 -0
  206. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts.map +1 -0
  207. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +17 -0
  208. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts +2 -0
  209. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts.map +1 -0
  210. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +17 -0
  211. package/dist/better-auth/plugin/lib/{ensure-password-set-before-create.d.ts → sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts} +2 -1
  212. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts.map +1 -0
  213. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js +23 -0
  214. package/dist/better-auth/plugin/lib/{password.d.ts → sanitize-better-auth-options/utils/password.d.ts} +1 -0
  215. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts.map +1 -0
  216. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js +62 -0
  217. package/dist/better-auth/plugin/lib/{respect-save-to-jwt-fields-middleware.d.ts → sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts} +6 -5
  218. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts.map +1 -0
  219. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +30 -0
  220. package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts +8 -0
  221. package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts.map +1 -0
  222. package/dist/better-auth/plugin/payload/components/admin-buttons/index.js +115 -0
  223. package/dist/better-auth/plugin/payload/components/admin-buttons/index.scss +31 -0
  224. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts +11 -0
  225. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts.map +1 -0
  226. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js +196 -0
  227. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.scss +131 -0
  228. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts +14 -0
  229. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts.map +1 -0
  230. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.js +111 -0
  231. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.scss +51 -0
  232. package/dist/better-auth/plugin/payload/components/form-header/index.d.ts +9 -0
  233. package/dist/better-auth/plugin/payload/components/form-header/index.d.ts.map +1 -0
  234. package/dist/better-auth/plugin/payload/components/form-header/index.js +23 -0
  235. package/dist/better-auth/plugin/payload/components/form-header/index.scss +8 -0
  236. package/dist/better-auth/plugin/payload/components/icons.d.ts +9 -0
  237. package/dist/better-auth/plugin/payload/components/icons.d.ts.map +1 -0
  238. package/dist/better-auth/plugin/payload/components/icons.js +437 -0
  239. package/dist/better-auth/plugin/payload/components/logo.d.ts +4 -1
  240. package/dist/better-auth/plugin/payload/components/logo.d.ts.map +1 -0
  241. package/dist/better-auth/plugin/payload/components/logo.js +22 -34
  242. package/dist/better-auth/plugin/payload/components/logout-button.d.ts +6 -0
  243. package/dist/better-auth/plugin/payload/components/logout-button.d.ts.map +1 -0
  244. package/dist/better-auth/plugin/payload/components/logout-button.js +27 -0
  245. package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts +7 -0
  246. package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts.map +1 -0
  247. package/dist/better-auth/plugin/payload/components/rsc-redirect.js +8 -0
  248. package/dist/better-auth/plugin/payload/components/styles.css +2 -2
  249. package/dist/better-auth/plugin/payload/components/token-field.d.ts +5 -0
  250. package/dist/better-auth/plugin/payload/components/token-field.d.ts.map +1 -0
  251. package/dist/better-auth/plugin/payload/components/token-field.js +30 -0
  252. package/dist/better-auth/plugin/payload/exports/client.d.ts +7 -3
  253. package/dist/better-auth/plugin/payload/exports/client.d.ts.map +1 -0
  254. package/dist/better-auth/plugin/payload/exports/client.js +7 -4
  255. package/dist/better-auth/plugin/payload/exports/rsc.d.ts +10 -5
  256. package/dist/better-auth/plugin/payload/exports/rsc.d.ts.map +1 -0
  257. package/dist/better-auth/plugin/payload/exports/rsc.js +10 -6
  258. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts +3 -0
  259. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts.map +1 -0
  260. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js +8 -0
  261. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts +15 -0
  262. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts.map +1 -0
  263. package/dist/better-auth/plugin/payload/utils/generate-metadata.js +74 -0
  264. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts +2 -0
  265. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts.map +1 -0
  266. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js +23 -0
  267. package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts +12 -0
  268. package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts.map +1 -0
  269. package/dist/better-auth/plugin/payload/views/admin-invite/client.js +92 -0
  270. package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts +11 -0
  271. package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts.map +1 -0
  272. package/dist/better-auth/plugin/payload/views/admin-invite/index.js +84 -0
  273. package/dist/better-auth/plugin/payload/views/admin-invite/index.scss +25 -0
  274. package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts +14 -0
  275. package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts.map +1 -0
  276. package/dist/better-auth/plugin/payload/views/create-first-admin/client.js +95 -0
  277. package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts +11 -3
  278. package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts.map +1 -0
  279. package/dist/better-auth/plugin/payload/views/create-first-admin/index.js +124 -92
  280. package/dist/better-auth/plugin/payload/views/create-first-admin/index.scss +29 -0
  281. package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts +8 -0
  282. package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts.map +1 -0
  283. package/dist/better-auth/plugin/payload/views/forgot-password/client.js +119 -0
  284. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +9 -0
  285. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts.map +1 -0
  286. package/dist/better-auth/plugin/payload/views/forgot-password/index.js +69 -0
  287. package/dist/better-auth/plugin/payload/views/forgot-password/index.scss +0 -0
  288. package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts +5 -0
  289. package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts.map +1 -0
  290. package/dist/better-auth/plugin/payload/views/inactivity/index.js +12 -0
  291. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts +9 -0
  292. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts.map +1 -0
  293. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.js +54 -0
  294. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts +1 -0
  295. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts.map +1 -0
  296. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.js +121 -0
  297. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.scss +31 -0
  298. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts +56 -0
  299. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts.map +1 -0
  300. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.js +3 -0
  301. package/dist/better-auth/plugin/payload/views/login/form/index.d.ts +17 -0
  302. package/dist/better-auth/plugin/payload/views/login/form/index.d.ts.map +1 -0
  303. package/dist/better-auth/plugin/payload/views/login/form/index.js +137 -0
  304. package/dist/better-auth/plugin/payload/views/login/form/index.scss +23 -0
  305. package/dist/better-auth/plugin/payload/views/login/index.d.ts +11 -4
  306. package/dist/better-auth/plugin/payload/views/login/index.d.ts.map +1 -0
  307. package/dist/better-auth/plugin/payload/views/login/index.js +81 -61
  308. package/dist/better-auth/plugin/payload/views/login/index.scss +10 -0
  309. package/dist/better-auth/plugin/payload/views/logout/client.d.ts +8 -0
  310. package/dist/better-auth/plugin/payload/views/logout/client.d.ts.map +1 -0
  311. package/dist/better-auth/plugin/payload/views/logout/client.js +76 -0
  312. package/dist/better-auth/plugin/payload/views/logout/index.d.ts +8 -0
  313. package/dist/better-auth/plugin/payload/views/logout/index.d.ts.map +1 -0
  314. package/dist/better-auth/plugin/payload/views/logout/index.js +14 -0
  315. package/dist/better-auth/plugin/payload/views/logout/index.scss +0 -0
  316. package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts +7 -0
  317. package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts.map +1 -0
  318. package/dist/better-auth/plugin/payload/views/reset-password/client.js +72 -0
  319. package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts +5 -0
  320. package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts.map +1 -0
  321. package/dist/better-auth/plugin/payload/views/reset-password/index.js +81 -0
  322. package/dist/better-auth/plugin/payload/views/reset-password/index.scss +9 -0
  323. package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts +3 -0
  324. package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts.map +1 -0
  325. package/dist/better-auth/plugin/payload/views/reset-password/metadata.js +11 -0
  326. package/dist/better-auth/plugin/types.d.ts +171 -33
  327. package/dist/better-auth/plugin/types.d.ts.map +1 -0
  328. package/dist/better-auth/plugin/types.js +1 -1
  329. package/dist/better-auth/types.d.ts +1 -0
  330. package/dist/better-auth/types.d.ts.map +1 -0
  331. package/dist/better-auth/types.js +1 -1
  332. package/dist/clerk/admin-ui.d.ts +4 -0
  333. package/dist/clerk/admin-ui.d.ts.map +1 -0
  334. package/dist/clerk/admin-ui.js +5 -0
  335. package/dist/clerk/index.d.ts +7 -1
  336. package/dist/clerk/index.d.ts.map +1 -0
  337. package/dist/clerk/index.js +7 -2
  338. package/dist/clerk/plugin/auth-strategy.d.ts +11 -0
  339. package/dist/clerk/plugin/auth-strategy.d.ts.map +1 -0
  340. package/dist/clerk/plugin/auth-strategy.js +45 -0
  341. package/dist/clerk/plugin/collections/users/access.d.ts +14 -0
  342. package/dist/clerk/plugin/collections/users/access.d.ts.map +1 -0
  343. package/dist/clerk/plugin/collections/users/access.js +36 -0
  344. package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.d.ts +14 -0
  345. package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.d.ts.map +1 -0
  346. package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.js +108 -0
  347. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/index.d.ts +4 -0
  348. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/index.d.ts.map +1 -0
  349. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/index.js +5 -0
  350. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.d.ts +13 -0
  351. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.d.ts.map +1 -0
  352. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.js +33 -0
  353. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.d.ts +11 -0
  354. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.d.ts.map +1 -0
  355. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.js +27 -0
  356. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.d.ts +13 -0
  357. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.d.ts.map +1 -0
  358. package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.js +35 -0
  359. package/dist/clerk/plugin/collections/users/endpoints/webhook/index.d.ts +12 -0
  360. package/dist/clerk/plugin/collections/users/endpoints/webhook/index.d.ts.map +1 -0
  361. package/dist/clerk/plugin/collections/users/endpoints/webhook/index.js +86 -0
  362. package/dist/clerk/plugin/collections/users/fields.d.ts +6 -0
  363. package/dist/clerk/plugin/collections/users/fields.d.ts.map +1 -0
  364. package/dist/clerk/plugin/collections/users/fields.js +81 -0
  365. package/dist/clerk/plugin/collections/users/index.d.ts +10 -0
  366. package/dist/clerk/plugin/collections/users/index.d.ts.map +1 -0
  367. package/dist/clerk/plugin/collections/users/index.js +95 -0
  368. package/dist/clerk/plugin/components/after-login-form.d.ts +4 -0
  369. package/dist/clerk/plugin/components/after-login-form.d.ts.map +1 -0
  370. package/dist/clerk/plugin/components/after-login-form.js +65 -0
  371. package/dist/clerk/plugin/components/logout-button.d.ts +2 -0
  372. package/dist/clerk/plugin/components/logout-button.d.ts.map +1 -0
  373. package/dist/clerk/plugin/components/logout-button.js +49 -0
  374. package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts +6 -0
  375. package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts.map +1 -0
  376. package/dist/clerk/plugin/components/sync-clerk-users-button.js +75 -0
  377. package/dist/clerk/plugin.d.ts +6 -0
  378. package/dist/clerk/plugin.d.ts.map +1 -0
  379. package/dist/clerk/plugin.js +63 -0
  380. package/dist/clerk/types.d.ts +63 -0
  381. package/dist/clerk/types.d.ts.map +1 -0
  382. package/dist/clerk/types.js +3 -0
  383. package/dist/clerk/utils/clerk-user.d.ts +21 -0
  384. package/dist/clerk/utils/clerk-user.d.ts.map +1 -0
  385. package/dist/clerk/utils/clerk-user.js +45 -0
  386. package/dist/clerk/utils/index.d.ts +4 -0
  387. package/dist/clerk/utils/index.d.ts.map +1 -0
  388. package/dist/clerk/utils/index.js +5 -0
  389. package/dist/clerk/utils/load-clerk-instance.d.ts +8 -0
  390. package/dist/clerk/utils/load-clerk-instance.d.ts.map +1 -0
  391. package/dist/clerk/utils/load-clerk-instance.js +11 -0
  392. package/dist/clerk/utils/svix.d.ts +9 -0
  393. package/dist/clerk/utils/svix.d.ts.map +1 -0
  394. package/dist/clerk/utils/svix.js +40 -0
  395. package/dist/clerk/utils/user.d.ts +17 -0
  396. package/dist/clerk/utils/user.d.ts.map +1 -0
  397. package/dist/clerk/utils/user.js +46 -0
  398. package/dist/index.d.ts +5 -0
  399. package/dist/index.d.ts.map +1 -0
  400. package/dist/index.js +5 -5
  401. package/dist/kinde/index.d.ts +1 -0
  402. package/dist/kinde/index.d.ts.map +1 -0
  403. package/dist/kinde/index.js +1 -1
  404. package/package.json +44 -18
  405. package/LICENSE.md +0 -17
  406. package/dist/authjs/index.js.map +0 -1
  407. package/dist/better-auth/adapter/dev/bin/run.d.ts +0 -1
  408. package/dist/better-auth/adapter/dev/bin/run.js +0 -64
  409. package/dist/better-auth/adapter/dev/bin/run.js.map +0 -1
  410. package/dist/better-auth/adapter/dev/bin/schema.d.ts +0 -22
  411. package/dist/better-auth/adapter/dev/bin/schema.js +0 -160
  412. package/dist/better-auth/adapter/dev/bin/schema.js.map +0 -1
  413. package/dist/better-auth/adapter/dev/collections.d.ts +0 -3
  414. package/dist/better-auth/adapter/dev/collections.js +0 -212
  415. package/dist/better-auth/adapter/dev/collections.js.map +0 -1
  416. package/dist/better-auth/adapter/dev/index.d.ts +0 -3
  417. package/dist/better-auth/adapter/dev/index.js +0 -168
  418. package/dist/better-auth/adapter/dev/index.js.map +0 -1
  419. package/dist/better-auth/adapter/generate-schema/generate-schema-builder.js.map +0 -1
  420. package/dist/better-auth/adapter/generate-schema/get-payload-schema.js.map +0 -1
  421. package/dist/better-auth/adapter/generate-schema/index.js.map +0 -1
  422. package/dist/better-auth/adapter/generate-schema/utils.js.map +0 -1
  423. package/dist/better-auth/adapter/index.js.map +0 -1
  424. package/dist/better-auth/adapter/test/adapter.test.d.ts +0 -1
  425. package/dist/better-auth/adapter/test/adapter.test.js +0 -181
  426. package/dist/better-auth/adapter/test/adapter.test.js.map +0 -1
  427. package/dist/better-auth/adapter/test/better-auth-adapter-test.d.ts +0 -7
  428. package/dist/better-auth/adapter/test/better-auth-adapter-test.js +0 -425
  429. package/dist/better-auth/adapter/test/better-auth-adapter-test.js.map +0 -1
  430. package/dist/better-auth/adapter/test/schema.test.d.ts +0 -1
  431. package/dist/better-auth/adapter/test/schema.test.js +0 -796
  432. package/dist/better-auth/adapter/test/schema.test.js.map +0 -1
  433. package/dist/better-auth/adapter/test/test_payload1/schema.d.ts +0 -23
  434. package/dist/better-auth/adapter/test/test_payload1/schema.js +0 -177
  435. package/dist/better-auth/adapter/test/test_payload1/schema.js.map +0 -1
  436. package/dist/better-auth/adapter/test/test_payload2/schema.d.ts +0 -23
  437. package/dist/better-auth/adapter/test/test_payload2/schema.js +0 -167
  438. package/dist/better-auth/adapter/test/test_payload2/schema.js.map +0 -1
  439. package/dist/better-auth/adapter/test/test_payload3/schema.d.ts +0 -23
  440. package/dist/better-auth/adapter/test/test_payload3/schema.js +0 -198
  441. package/dist/better-auth/adapter/test/test_payload3/schema.js.map +0 -1
  442. package/dist/better-auth/adapter/transform/index.js.map +0 -1
  443. package/dist/better-auth/adapter/types.js.map +0 -1
  444. package/dist/better-auth/index.js.map +0 -1
  445. package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.js +0 -47
  446. package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.js.map +0 -1
  447. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.d.ts +0 -6
  448. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.js +0 -106
  449. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.js.map +0 -1
  450. package/dist/better-auth/plugin/collections/users/hooks/after-login.js +0 -71
  451. package/dist/better-auth/plugin/collections/users/hooks/after-login.js.map +0 -1
  452. package/dist/better-auth/plugin/collections/users/hooks/after-logout.js +0 -49
  453. package/dist/better-auth/plugin/collections/users/hooks/after-logout.js.map +0 -1
  454. package/dist/better-auth/plugin/collections/users/hooks/before-login.js +0 -18
  455. package/dist/better-auth/plugin/collections/users/hooks/before-login.js.map +0 -1
  456. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.d.ts +0 -5
  457. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.js +0 -33
  458. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.js.map +0 -1
  459. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.d.ts +0 -2
  460. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.js +0 -14
  461. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.js.map +0 -1
  462. package/dist/better-auth/plugin/collections/users/hooks/sync-account.js +0 -82
  463. package/dist/better-auth/plugin/collections/users/hooks/sync-account.js.map +0 -1
  464. package/dist/better-auth/plugin/helpers/generate-verify-email-url.js.map +0 -1
  465. package/dist/better-auth/plugin/helpers/get-ip.js.map +0 -1
  466. package/dist/better-auth/plugin/helpers/index.js.map +0 -1
  467. package/dist/better-auth/plugin/helpers/serialize-cookie.js.map +0 -1
  468. package/dist/better-auth/plugin/index.js.map +0 -1
  469. package/dist/better-auth/plugin/lib/auth-strategy.d.ts +0 -8
  470. package/dist/better-auth/plugin/lib/auth-strategy.js +0 -48
  471. package/dist/better-auth/plugin/lib/auth-strategy.js.map +0 -1
  472. package/dist/better-auth/plugin/lib/build-collection-configs.d.ts +0 -11
  473. package/dist/better-auth/plugin/lib/build-collection-configs.js +0 -1558
  474. package/dist/better-auth/plugin/lib/build-collection-configs.js.map +0 -1
  475. package/dist/better-auth/plugin/lib/config.js +0 -43
  476. package/dist/better-auth/plugin/lib/config.js.map +0 -1
  477. package/dist/better-auth/plugin/lib/ensure-password-set-before-create.js +0 -24
  478. package/dist/better-auth/plugin/lib/ensure-password-set-before-create.js.map +0 -1
  479. package/dist/better-auth/plugin/lib/get-payload-auth.js.map +0 -1
  480. package/dist/better-auth/plugin/lib/get-required-collection-slugs.js.map +0 -1
  481. package/dist/better-auth/plugin/lib/init-better-auth.js.map +0 -1
  482. package/dist/better-auth/plugin/lib/password.js +0 -63
  483. package/dist/better-auth/plugin/lib/password.js.map +0 -1
  484. package/dist/better-auth/plugin/lib/payload-access.js +0 -64
  485. package/dist/better-auth/plugin/lib/payload-access.js.map +0 -1
  486. package/dist/better-auth/plugin/lib/prepare-session-data.js +0 -42
  487. package/dist/better-auth/plugin/lib/prepare-session-data.js.map +0 -1
  488. package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.js +0 -30
  489. package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.js.map +0 -1
  490. package/dist/better-auth/plugin/lib/sanitize-auth-options.d.ts +0 -5
  491. package/dist/better-auth/plugin/lib/sanitize-auth-options.js +0 -298
  492. package/dist/better-auth/plugin/lib/sanitize-auth-options.js.map +0 -1
  493. package/dist/better-auth/plugin/payload/components/admin-buttons.d.ts +0 -5
  494. package/dist/better-auth/plugin/payload/components/admin-buttons.js +0 -222
  495. package/dist/better-auth/plugin/payload/components/admin-buttons.js.map +0 -1
  496. package/dist/better-auth/plugin/payload/components/login-redirect.d.ts +0 -1
  497. package/dist/better-auth/plugin/payload/components/login-redirect.js +0 -6
  498. package/dist/better-auth/plugin/payload/components/login-redirect.js.map +0 -1
  499. package/dist/better-auth/plugin/payload/components/logo.js.map +0 -1
  500. package/dist/better-auth/plugin/payload/components/logout.d.ts +0 -1
  501. package/dist/better-auth/plugin/payload/components/logout.js +0 -61
  502. package/dist/better-auth/plugin/payload/components/logout.js.map +0 -1
  503. package/dist/better-auth/plugin/payload/components/sign-in.d.ts +0 -3
  504. package/dist/better-auth/plugin/payload/components/sign-in.js +0 -384
  505. package/dist/better-auth/plugin/payload/components/sign-in.js.map +0 -1
  506. package/dist/better-auth/plugin/payload/components/sign-up.d.ts +0 -6
  507. package/dist/better-auth/plugin/payload/components/sign-up.js +0 -502
  508. package/dist/better-auth/plugin/payload/components/sign-up.js.map +0 -1
  509. package/dist/better-auth/plugin/payload/components/ui/button.d.ts +0 -10
  510. package/dist/better-auth/plugin/payload/components/ui/button.js +0 -42
  511. package/dist/better-auth/plugin/payload/components/ui/button.js.map +0 -1
  512. package/dist/better-auth/plugin/payload/components/ui/card.d.ts +0 -9
  513. package/dist/better-auth/plugin/payload/components/ui/card.js +0 -55
  514. package/dist/better-auth/plugin/payload/components/ui/card.js.map +0 -1
  515. package/dist/better-auth/plugin/payload/components/ui/checkbox.d.ts +0 -4
  516. package/dist/better-auth/plugin/payload/components/ui/checkbox.js +0 -23
  517. package/dist/better-auth/plugin/payload/components/ui/checkbox.js.map +0 -1
  518. package/dist/better-auth/plugin/payload/components/ui/cn.d.ts +0 -2
  519. package/dist/better-auth/plugin/payload/components/ui/cn.js +0 -7
  520. package/dist/better-auth/plugin/payload/components/ui/cn.js.map +0 -1
  521. package/dist/better-auth/plugin/payload/components/ui/input.d.ts +0 -3
  522. package/dist/better-auth/plugin/payload/components/ui/input.js +0 -14
  523. package/dist/better-auth/plugin/payload/components/ui/input.js.map +0 -1
  524. package/dist/better-auth/plugin/payload/components/ui/label.d.ts +0 -4
  525. package/dist/better-auth/plugin/payload/components/ui/label.js +0 -15
  526. package/dist/better-auth/plugin/payload/components/ui/label.js.map +0 -1
  527. package/dist/better-auth/plugin/payload/components/ui/password-input.d.ts +0 -2
  528. package/dist/better-auth/plugin/payload/components/ui/password-input.js +0 -55
  529. package/dist/better-auth/plugin/payload/components/ui/password-input.js.map +0 -1
  530. package/dist/better-auth/plugin/payload/exports/client.js.map +0 -1
  531. package/dist/better-auth/plugin/payload/exports/rsc.js.map +0 -1
  532. package/dist/better-auth/plugin/payload/views/create-first-admin/index.js.map +0 -1
  533. package/dist/better-auth/plugin/payload/views/login/index.js.map +0 -1
  534. package/dist/better-auth/plugin/types.js.map +0 -1
  535. package/dist/better-auth/types.js.map +0 -1
  536. package/dist/clerk/index.js.map +0 -1
  537. package/dist/index.js.map +0 -1
  538. package/dist/kinde/index.js.map +0 -1
@@ -0,0 +1,108 @@
1
+ import { APIError } from "payload";
2
+ import { createClerkClient } from "@clerk/backend";
3
+ import { getPrimaryEmail } from "../../../../utils";
4
+ export const syncClerkUsersEndpoint = ({ userCollectionSlug })=>{
5
+ return {
6
+ path: "/sync-from-clerk",
7
+ method: "post",
8
+ handler: async (req)=>{
9
+ try {
10
+ const { payload } = req;
11
+ const mappingFunction = payload.config.custom.clerkPlugin.clerkToPayloadMapping;
12
+ if (!process.env.CLERK_SECRET_KEY) {
13
+ throw new APIError("CLERK_SECRET_KEY is not defined", 400);
14
+ }
15
+ const clerkClient = createClerkClient({
16
+ secretKey: process.env.CLERK_SECRET_KEY
17
+ });
18
+ const totalUsers = await clerkClient.users.getCount();
19
+ const limit = 100;
20
+ const totalPages = Math.ceil(totalUsers / limit);
21
+ let allUsers = [];
22
+ for(let page = 0; page < totalPages; page++){
23
+ const offset = page * limit;
24
+ const pageUsers = await fetch(`https://api.clerk.com/v1/users?limit=${limit}&offset=${offset}`, {
25
+ headers: {
26
+ Authorization: `Bearer ${process.env.CLERK_SECRET_KEY}`
27
+ }
28
+ });
29
+ const pageUsersData = await pageUsers.json();
30
+ allUsers = [
31
+ ...allUsers,
32
+ ...pageUsersData
33
+ ];
34
+ console.log(`Fetched page ${page + 1}/${totalPages}, users: ${pageUsersData.length}`);
35
+ }
36
+ let created = 0;
37
+ let updated = 0;
38
+ for (const clerkUser of allUsers){
39
+ const payloadUserData = mappingFunction(clerkUser);
40
+ const randomPassword = Array(3).fill(0).map(()=>Math.random().toString(36).slice(2)).join("");
41
+ let existingUser = await payload.find({
42
+ collection: userCollectionSlug,
43
+ where: {
44
+ clerkId: {
45
+ equals: clerkUser.id
46
+ }
47
+ }
48
+ });
49
+ if (!existingUser.docs.length && clerkUser.emailAddresses && clerkUser.emailAddresses.length > 0) {
50
+ const primaryEmail = getPrimaryEmail(clerkUser);
51
+ if (primaryEmail) {
52
+ existingUser = await payload.find({
53
+ collection: userCollectionSlug,
54
+ where: {
55
+ email: {
56
+ equals: primaryEmail
57
+ }
58
+ }
59
+ });
60
+ }
61
+ }
62
+ if (existingUser.docs.length > 0) {
63
+ await payload.update({
64
+ collection: userCollectionSlug,
65
+ id: existingUser.docs[0].id,
66
+ data: payloadUserData
67
+ });
68
+ updated++;
69
+ } else {
70
+ await payload.create({
71
+ collection: userCollectionSlug,
72
+ data: {
73
+ ...payloadUserData,
74
+ password: randomPassword
75
+ }
76
+ });
77
+ created++;
78
+ }
79
+ }
80
+ console.log(`Synced ${allUsers.length} users from Clerk. Created: ${created}, Updated: ${updated}`);
81
+ const response = {
82
+ syncedUsers: allUsers.length,
83
+ success: true,
84
+ message: `Successfully synced ${allUsers.length} users from Clerk. Created: ${created}, Updated: ${updated}`,
85
+ count: allUsers.length,
86
+ created,
87
+ updated
88
+ };
89
+ return new Response(JSON.stringify(response), {
90
+ status: 200,
91
+ headers: {
92
+ "Content-Type": "application/json"
93
+ }
94
+ });
95
+ } catch (error) {
96
+ console.error("Error syncing users from Clerk:", error);
97
+ const errorResponse = {
98
+ syncedUsers: 0,
99
+ success: false,
100
+ error: error instanceof Error ? error.message : "Failed to sync users from Clerk"
101
+ };
102
+ throw new APIError(errorResponse.error || "Unknown error", 500);
103
+ }
104
+ }
105
+ };
106
+ };
107
+
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3N5bmMtZnJvbS1jbGVyay50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUElFcnJvciwgRW5kcG9pbnQgfSBmcm9tIFwicGF5bG9hZFwiO1xuaW1wb3J0IHsgY3JlYXRlQ2xlcmtDbGllbnQgfSBmcm9tIFwiQGNsZXJrL2JhY2tlbmRcIjtcbmltcG9ydCB0eXBlIHsgVXNlciB9IGZyb20gXCJAY2xlcmsvYmFja2VuZFwiO1xuaW1wb3J0IHsgZ2V0UHJpbWFyeUVtYWlsIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3V0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3luY0NsZXJrVXNlcnNSZXNwb25zZSB7XG4gIHN5bmNlZFVzZXJzOiBudW1iZXI7XG4gIHN1Y2Nlc3M6IGJvb2xlYW47XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIGVycm9yPzogc3RyaW5nO1xuICBjb3VudD86IG51bWJlcjtcbiAgY3JlYXRlZD86IG51bWJlcjtcbiAgdXBkYXRlZD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IHN5bmNDbGVya1VzZXJzRW5kcG9pbnQgPSAoe1xuICB1c2VyQ29sbGVjdGlvblNsdWcsXG59OiB7XG4gIHVzZXJDb2xsZWN0aW9uU2x1Zzogc3RyaW5nO1xufSk6IEVuZHBvaW50ID0+IHtcbiAgcmV0dXJuIHtcbiAgICBwYXRoOiBcIi9zeW5jLWZyb20tY2xlcmtcIixcbiAgICBtZXRob2Q6IFwicG9zdFwiLFxuICAgIGhhbmRsZXI6IGFzeW5jIChyZXEpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gcmVxO1xuICAgICAgICBjb25zdCBtYXBwaW5nRnVuY3Rpb24gPVxuICAgICAgICAgIHBheWxvYWQuY29uZmlnLmN1c3RvbS5jbGVya1BsdWdpbi5jbGVya1RvUGF5bG9hZE1hcHBpbmc7XG5cbiAgICAgICAgaWYgKCFwcm9jZXNzLmVudi5DTEVSS19TRUNSRVRfS0VZKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKFwiQ0xFUktfU0VDUkVUX0tFWSBpcyBub3QgZGVmaW5lZFwiLCA0MDApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2xlcmtDbGllbnQgPSBjcmVhdGVDbGVya0NsaWVudCh7XG4gICAgICAgICAgc2VjcmV0S2V5OiBwcm9jZXNzLmVudi5DTEVSS19TRUNSRVRfS0VZLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCB0b3RhbFVzZXJzID0gYXdhaXQgY2xlcmtDbGllbnQudXNlcnMuZ2V0Q291bnQoKTtcblxuICAgICAgICBjb25zdCBsaW1pdCA9IDEwMDtcbiAgICAgICAgY29uc3QgdG90YWxQYWdlcyA9IE1hdGguY2VpbCh0b3RhbFVzZXJzIC8gbGltaXQpO1xuICAgICAgICBsZXQgYWxsVXNlcnM6IFVzZXJbXSA9IFtdO1xuXG4gICAgICAgIGZvciAobGV0IHBhZ2UgPSAwOyBwYWdlIDwgdG90YWxQYWdlczsgcGFnZSsrKSB7XG4gICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gcGFnZSAqIGxpbWl0O1xuICAgICAgICAgIGNvbnN0IHBhZ2VVc2VycyA9IGF3YWl0IGZldGNoKGBodHRwczovL2FwaS5jbGVyay5jb20vdjEvdXNlcnM/bGltaXQ9JHtsaW1pdH0mb2Zmc2V0PSR7b2Zmc2V0fWAsIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3Byb2Nlc3MuZW52LkNMRVJLX1NFQ1JFVF9LRVl9YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBjb25zdCBwYWdlVXNlcnNEYXRhID0gYXdhaXQgcGFnZVVzZXJzLmpzb24oKTtcblxuICAgICAgICAgIGFsbFVzZXJzID0gWy4uLmFsbFVzZXJzLCAuLi5wYWdlVXNlcnNEYXRhXTtcblxuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYEZldGNoZWQgcGFnZSAke3BhZ2UgKyAxfS8ke3RvdGFsUGFnZXN9LCB1c2VyczogJHtwYWdlVXNlcnNEYXRhLmxlbmd0aH1gXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBjcmVhdGVkID0gMDtcbiAgICAgICAgbGV0IHVwZGF0ZWQgPSAwO1xuXG4gICAgICAgIGZvciAoY29uc3QgY2xlcmtVc2VyIG9mIGFsbFVzZXJzKSB7XG4gICAgICAgICAgY29uc3QgcGF5bG9hZFVzZXJEYXRhID0gbWFwcGluZ0Z1bmN0aW9uKGNsZXJrVXNlcik7XG5cbiAgICAgICAgICBjb25zdCByYW5kb21QYXNzd29yZCA9IEFycmF5KDMpXG4gICAgICAgICAgICAuZmlsbCgwKVxuICAgICAgICAgICAgLm1hcCgoKSA9PiBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyKSlcbiAgICAgICAgICAgIC5qb2luKFwiXCIpO1xuXG4gICAgICAgICAgbGV0IGV4aXN0aW5nVXNlciA9IGF3YWl0IHBheWxvYWQuZmluZCh7XG4gICAgICAgICAgICBjb2xsZWN0aW9uOiB1c2VyQ29sbGVjdGlvblNsdWcsXG4gICAgICAgICAgICB3aGVyZTogeyBjbGVya0lkOiB7IGVxdWFsczogY2xlcmtVc2VyLmlkIH0gfSxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICFleGlzdGluZ1VzZXIuZG9jcy5sZW5ndGggJiZcbiAgICAgICAgICAgIGNsZXJrVXNlci5lbWFpbEFkZHJlc3NlcyAmJlxuICAgICAgICAgICAgY2xlcmtVc2VyLmVtYWlsQWRkcmVzc2VzLmxlbmd0aCA+IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IHByaW1hcnlFbWFpbCA9IGdldFByaW1hcnlFbWFpbChjbGVya1VzZXIpO1xuXG4gICAgICAgICAgICBpZiAocHJpbWFyeUVtYWlsKSB7XG4gICAgICAgICAgICAgIGV4aXN0aW5nVXNlciA9IGF3YWl0IHBheWxvYWQuZmluZCh7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbjogdXNlckNvbGxlY3Rpb25TbHVnLFxuICAgICAgICAgICAgICAgIHdoZXJlOiB7IGVtYWlsOiB7IGVxdWFsczogcHJpbWFyeUVtYWlsIH0gfSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGV4aXN0aW5nVXNlci5kb2NzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGF3YWl0IHBheWxvYWQudXBkYXRlKHtcbiAgICAgICAgICAgICAgY29sbGVjdGlvbjogdXNlckNvbGxlY3Rpb25TbHVnLFxuICAgICAgICAgICAgICBpZDogZXhpc3RpbmdVc2VyLmRvY3NbMF0uaWQsXG4gICAgICAgICAgICAgIGRhdGE6IHBheWxvYWRVc2VyRGF0YSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdXBkYXRlZCsrO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhd2FpdCBwYXlsb2FkLmNyZWF0ZSh7XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb246IHVzZXJDb2xsZWN0aW9uU2x1ZyxcbiAgICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIC4uLnBheWxvYWRVc2VyRGF0YSxcbiAgICAgICAgICAgICAgICBwYXNzd29yZDogcmFuZG9tUGFzc3dvcmQsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNyZWF0ZWQrKztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zb2xlLmxvZyhcbiAgICAgICAgICBgU3luY2VkICR7YWxsVXNlcnMubGVuZ3RofSB1c2VycyBmcm9tIENsZXJrLiBDcmVhdGVkOiAke2NyZWF0ZWR9LCBVcGRhdGVkOiAke3VwZGF0ZWR9YFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlOiBTeW5jQ2xlcmtVc2Vyc1Jlc3BvbnNlID0ge1xuICAgICAgICAgIHN5bmNlZFVzZXJzOiBhbGxVc2Vycy5sZW5ndGgsXG4gICAgICAgICAgc3VjY2VzczogdHJ1ZSxcbiAgICAgICAgICBtZXNzYWdlOiBgU3VjY2Vzc2Z1bGx5IHN5bmNlZCAke2FsbFVzZXJzLmxlbmd0aH0gdXNlcnMgZnJvbSBDbGVyay4gQ3JlYXRlZDogJHtjcmVhdGVkfSwgVXBkYXRlZDogJHt1cGRhdGVkfWAsXG4gICAgICAgICAgY291bnQ6IGFsbFVzZXJzLmxlbmd0aCxcbiAgICAgICAgICBjcmVhdGVkLFxuICAgICAgICAgIHVwZGF0ZWQsXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIG5ldyBSZXNwb25zZShcbiAgICAgICAgICBKU09OLnN0cmluZ2lmeShyZXNwb25zZSksXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3RhdHVzOiAyMDAsXG4gICAgICAgICAgICBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0sXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIHN5bmNpbmcgdXNlcnMgZnJvbSBDbGVyazpcIiwgZXJyb3IpO1xuXG4gICAgICAgIGNvbnN0IGVycm9yUmVzcG9uc2U6IFN5bmNDbGVya1VzZXJzUmVzcG9uc2UgPSB7XG4gICAgICAgICAgc3luY2VkVXNlcnM6IDAsXG4gICAgICAgICAgc3VjY2VzczogZmFsc2UsXG4gICAgICAgICAgZXJyb3I6IGVycm9yIGluc3RhbmNlb2YgRXJyb3JcbiAgICAgICAgICAgID8gZXJyb3IubWVzc2FnZVxuICAgICAgICAgICAgOiBcIkZhaWxlZCB0byBzeW5jIHVzZXJzIGZyb20gQ2xlcmtcIixcbiAgICAgICAgfTtcblxuICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoXG4gICAgICAgICAgZXJyb3JSZXNwb25zZS5lcnJvciB8fCBcIlVua25vd24gZXJyb3JcIixcbiAgICAgICAgICA1MDBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xufTtcbiJdLCJuYW1lcyI6WyJBUElFcnJvciIsImNyZWF0ZUNsZXJrQ2xpZW50IiwiZ2V0UHJpbWFyeUVtYWlsIiwic3luY0NsZXJrVXNlcnNFbmRwb2ludCIsInVzZXJDb2xsZWN0aW9uU2x1ZyIsInBhdGgiLCJtZXRob2QiLCJoYW5kbGVyIiwicmVxIiwicGF5bG9hZCIsIm1hcHBpbmdGdW5jdGlvbiIsImNvbmZpZyIsImN1c3RvbSIsImNsZXJrUGx1Z2luIiwiY2xlcmtUb1BheWxvYWRNYXBwaW5nIiwicHJvY2VzcyIsImVudiIsIkNMRVJLX1NFQ1JFVF9LRVkiLCJjbGVya0NsaWVudCIsInNlY3JldEtleSIsInRvdGFsVXNlcnMiLCJ1c2VycyIsImdldENvdW50IiwibGltaXQiLCJ0b3RhbFBhZ2VzIiwiTWF0aCIsImNlaWwiLCJhbGxVc2VycyIsInBhZ2UiLCJvZmZzZXQiLCJwYWdlVXNlcnMiLCJmZXRjaCIsImhlYWRlcnMiLCJBdXRob3JpemF0aW9uIiwicGFnZVVzZXJzRGF0YSIsImpzb24iLCJjb25zb2xlIiwibG9nIiwibGVuZ3RoIiwiY3JlYXRlZCIsInVwZGF0ZWQiLCJjbGVya1VzZXIiLCJwYXlsb2FkVXNlckRhdGEiLCJyYW5kb21QYXNzd29yZCIsIkFycmF5IiwiZmlsbCIsIm1hcCIsInJhbmRvbSIsInRvU3RyaW5nIiwic2xpY2UiLCJqb2luIiwiZXhpc3RpbmdVc2VyIiwiZmluZCIsImNvbGxlY3Rpb24iLCJ3aGVyZSIsImNsZXJrSWQiLCJlcXVhbHMiLCJpZCIsImRvY3MiLCJlbWFpbEFkZHJlc3NlcyIsInByaW1hcnlFbWFpbCIsImVtYWlsIiwidXBkYXRlIiwiZGF0YSIsImNyZWF0ZSIsInBhc3N3b3JkIiwicmVzcG9uc2UiLCJzeW5jZWRVc2VycyIsInN1Y2Nlc3MiLCJtZXNzYWdlIiwiY291bnQiLCJSZXNwb25zZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdGF0dXMiLCJlcnJvciIsImVycm9yUmVzcG9uc2UiLCJFcnJvciJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsUUFBUSxRQUFrQixVQUFVO0FBQzdDLFNBQVNDLGlCQUFpQixRQUFRLGlCQUFpQjtBQUVuRCxTQUFTQyxlQUFlLFFBQVEsb0JBQW9CO0FBWXBELE9BQU8sTUFBTUMseUJBQXlCLENBQUMsRUFDckNDLGtCQUFrQixFQUduQjtJQUNDLE9BQU87UUFDTEMsTUFBTTtRQUNOQyxRQUFRO1FBQ1JDLFNBQVMsT0FBT0M7WUFDZCxJQUFJO2dCQUNGLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEdBQUdEO2dCQUNwQixNQUFNRSxrQkFDSkQsUUFBUUUsTUFBTSxDQUFDQyxNQUFNLENBQUNDLFdBQVcsQ0FBQ0MscUJBQXFCO2dCQUV6RCxJQUFJLENBQUNDLFFBQVFDLEdBQUcsQ0FBQ0MsZ0JBQWdCLEVBQUU7b0JBQ2pDLE1BQU0sSUFBSWpCLFNBQVMsbUNBQW1DO2dCQUN4RDtnQkFFQSxNQUFNa0IsY0FBY2pCLGtCQUFrQjtvQkFDcENrQixXQUFXSixRQUFRQyxHQUFHLENBQUNDLGdCQUFnQjtnQkFDekM7Z0JBRUEsTUFBTUcsYUFBYSxNQUFNRixZQUFZRyxLQUFLLENBQUNDLFFBQVE7Z0JBRW5ELE1BQU1DLFFBQVE7Z0JBQ2QsTUFBTUMsYUFBYUMsS0FBS0MsSUFBSSxDQUFDTixhQUFhRztnQkFDMUMsSUFBSUksV0FBbUIsRUFBRTtnQkFFekIsSUFBSyxJQUFJQyxPQUFPLEdBQUdBLE9BQU9KLFlBQVlJLE9BQVE7b0JBQzVDLE1BQU1DLFNBQVNELE9BQU9MO29CQUN0QixNQUFNTyxZQUFZLE1BQU1DLE1BQU0sQ0FBQyxxQ0FBcUMsRUFBRVIsTUFBTSxRQUFRLEVBQUVNLFFBQVEsRUFBRTt3QkFDOUZHLFNBQVM7NEJBQ1BDLGVBQWUsQ0FBQyxPQUFPLEVBQUVsQixRQUFRQyxHQUFHLENBQUNDLGdCQUFnQixFQUFFO3dCQUN6RDtvQkFDRjtvQkFFQSxNQUFNaUIsZ0JBQWdCLE1BQU1KLFVBQVVLLElBQUk7b0JBRTFDUixXQUFXOzJCQUFJQTsyQkFBYU87cUJBQWM7b0JBRTFDRSxRQUFRQyxHQUFHLENBQ1QsQ0FBQyxhQUFhLEVBQUVULE9BQU8sRUFBRSxDQUFDLEVBQUVKLFdBQVcsU0FBUyxFQUFFVSxjQUFjSSxNQUFNLEVBQUU7Z0JBRTVFO2dCQUVBLElBQUlDLFVBQVU7Z0JBQ2QsSUFBSUMsVUFBVTtnQkFFZCxLQUFLLE1BQU1DLGFBQWFkLFNBQVU7b0JBQ2hDLE1BQU1lLGtCQUFrQmhDLGdCQUFnQitCO29CQUV4QyxNQUFNRSxpQkFBaUJDLE1BQU0sR0FDMUJDLElBQUksQ0FBQyxHQUNMQyxHQUFHLENBQUMsSUFBTXJCLEtBQUtzQixNQUFNLEdBQUdDLFFBQVEsQ0FBQyxJQUFJQyxLQUFLLENBQUMsSUFDM0NDLElBQUksQ0FBQztvQkFFUixJQUFJQyxlQUFlLE1BQU0xQyxRQUFRMkMsSUFBSSxDQUFDO3dCQUNwQ0MsWUFBWWpEO3dCQUNaa0QsT0FBTzs0QkFBRUMsU0FBUztnQ0FBRUMsUUFBUWYsVUFBVWdCLEVBQUU7NEJBQUM7d0JBQUU7b0JBQzdDO29CQUVBLElBQ0UsQ0FBQ04sYUFBYU8sSUFBSSxDQUFDcEIsTUFBTSxJQUN6QkcsVUFBVWtCLGNBQWMsSUFDeEJsQixVQUFVa0IsY0FBYyxDQUFDckIsTUFBTSxHQUFHLEdBQ2xDO3dCQUNBLE1BQU1zQixlQUFlMUQsZ0JBQWdCdUM7d0JBRXJDLElBQUltQixjQUFjOzRCQUNoQlQsZUFBZSxNQUFNMUMsUUFBUTJDLElBQUksQ0FBQztnQ0FDaENDLFlBQVlqRDtnQ0FDWmtELE9BQU87b0NBQUVPLE9BQU87d0NBQUVMLFFBQVFJO29DQUFhO2dDQUFFOzRCQUMzQzt3QkFDRjtvQkFDRjtvQkFFQSxJQUFJVCxhQUFhTyxJQUFJLENBQUNwQixNQUFNLEdBQUcsR0FBRzt3QkFDaEMsTUFBTTdCLFFBQVFxRCxNQUFNLENBQUM7NEJBQ25CVCxZQUFZakQ7NEJBQ1pxRCxJQUFJTixhQUFhTyxJQUFJLENBQUMsRUFBRSxDQUFDRCxFQUFFOzRCQUMzQk0sTUFBTXJCO3dCQUNSO3dCQUNBRjtvQkFDRixPQUFPO3dCQUNMLE1BQU0vQixRQUFRdUQsTUFBTSxDQUFDOzRCQUNuQlgsWUFBWWpEOzRCQUNaMkQsTUFBTTtnQ0FDSixHQUFHckIsZUFBZTtnQ0FDbEJ1QixVQUFVdEI7NEJBQ1o7d0JBQ0Y7d0JBQ0FKO29CQUNGO2dCQUNGO2dCQUVBSCxRQUFRQyxHQUFHLENBQ1QsQ0FBQyxPQUFPLEVBQUVWLFNBQVNXLE1BQU0sQ0FBQyw0QkFBNEIsRUFBRUMsUUFBUSxXQUFXLEVBQUVDLFNBQVM7Z0JBR3hGLE1BQU0wQixXQUFtQztvQkFDdkNDLGFBQWF4QyxTQUFTVyxNQUFNO29CQUM1QjhCLFNBQVM7b0JBQ1RDLFNBQVMsQ0FBQyxvQkFBb0IsRUFBRTFDLFNBQVNXLE1BQU0sQ0FBQyw0QkFBNEIsRUFBRUMsUUFBUSxXQUFXLEVBQUVDLFNBQVM7b0JBQzVHOEIsT0FBTzNDLFNBQVNXLE1BQU07b0JBQ3RCQztvQkFDQUM7Z0JBQ0Y7Z0JBRUEsT0FBTyxJQUFJK0IsU0FDVEMsS0FBS0MsU0FBUyxDQUFDUCxXQUNmO29CQUNFUSxRQUFRO29CQUNSMUMsU0FBUzt3QkFBRSxnQkFBZ0I7b0JBQW1CO2dCQUNoRDtZQUVKLEVBQUUsT0FBTzJDLE9BQU87Z0JBQ2R2QyxRQUFRdUMsS0FBSyxDQUFDLG1DQUFtQ0E7Z0JBRWpELE1BQU1DLGdCQUF3QztvQkFDNUNULGFBQWE7b0JBQ2JDLFNBQVM7b0JBQ1RPLE9BQU9BLGlCQUFpQkUsUUFDcEJGLE1BQU1OLE9BQU8sR0FDYjtnQkFDTjtnQkFFQSxNQUFNLElBQUlyRSxTQUNSNEUsY0FBY0QsS0FBSyxJQUFJLGlCQUN2QjtZQUVKO1FBQ0Y7SUFDRjtBQUNGLEVBQUUifQ==
@@ -0,0 +1,4 @@
1
+ export { handleUserCreated } from './userCreated';
2
+ export { handleUserUpdated } from './userUpdated';
3
+ export { handleUserDeleted } from './userDeleted';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/clerk/plugin/collections/users/endpoints/webhook/handlers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { handleUserCreated } from './userCreated';
2
+ export { handleUserUpdated } from './userUpdated';
3
+ export { handleUserDeleted } from './userDeleted';
4
+
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3dlYmhvb2svaGFuZGxlcnMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgaGFuZGxlVXNlckNyZWF0ZWQgfSBmcm9tICcuL3VzZXJDcmVhdGVkJ1xuZXhwb3J0IHsgaGFuZGxlVXNlclVwZGF0ZWQgfSBmcm9tICcuL3VzZXJVcGRhdGVkJ1xuZXhwb3J0IHsgaGFuZGxlVXNlckRlbGV0ZWQgfSBmcm9tICcuL3VzZXJEZWxldGVkJyAiXSwibmFtZXMiOlsiaGFuZGxlVXNlckNyZWF0ZWQiLCJoYW5kbGVVc2VyVXBkYXRlZCIsImhhbmRsZVVzZXJEZWxldGVkIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxpQkFBaUIsUUFBUSxnQkFBZTtBQUNqRCxTQUFTQyxpQkFBaUIsUUFBUSxnQkFBZTtBQUNqRCxTQUFTQyxpQkFBaUIsUUFBUSxnQkFBZSJ9
@@ -0,0 +1,13 @@
1
+ import type { UserJSON } from '@clerk/backend';
2
+ import type { BasePayload, User } from 'payload';
3
+ import { ClerkPluginOptions } from '../../../../../../types';
4
+ interface UserCreatedHandlerParams {
5
+ data: any;
6
+ payload: BasePayload;
7
+ userSlug: string;
8
+ mappingFunction: (clerkUser: UserJSON) => Omit<User, 'id'>;
9
+ options: ClerkPluginOptions;
10
+ }
11
+ export declare function handleUserCreated({ data, payload, userSlug, mappingFunction, options }: UserCreatedHandlerParams): Promise<void>;
12
+ export {};
13
+ //# sourceMappingURL=userCreated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userCreated.d.ts","sourceRoot":"","sources":["../../../../../../../../src/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAI5D,UAAU,wBAAwB;IAChC,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,EAAE,WAAW,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,CAAC,SAAS,EAAE,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC1D,OAAO,EAAE,kBAAkB,CAAA;CAC5B;AAED,wBAAsB,iBAAiB,CAAC,EACtC,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,OAAO,EACR,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsC1C"}
@@ -0,0 +1,33 @@
1
+ import { findUserFromClerkUser } from '../../../../../../utils/user';
2
+ export async function handleUserCreated({ data, payload, userSlug, mappingFunction, options }) {
3
+ const clerkUser = data;
4
+ try {
5
+ const existingUsers = await findUserFromClerkUser({
6
+ payload,
7
+ userSlug,
8
+ clerkUser
9
+ });
10
+ if (existingUsers.docs.length === 0) {
11
+ let userData = {
12
+ ...mappingFunction(clerkUser)
13
+ };
14
+ if (!userData.role) {
15
+ userData.role = 'user';
16
+ }
17
+ if (!userData.password) {
18
+ userData.password = Array(3).fill(0).map(()=>Math.random().toString(36).slice(2)).join('');
19
+ }
20
+ await payload.create({
21
+ collection: userSlug,
22
+ data: userData
23
+ });
24
+ if (options.enableDebugLogs) {
25
+ console.log(`Created new user from Clerk: ${clerkUser.id}`);
26
+ }
27
+ }
28
+ } catch (error) {
29
+ console.error('Error creating user from Clerk webhook:', error);
30
+ }
31
+ }
32
+
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3dlYmhvb2svaGFuZGxlcnMvdXNlckNyZWF0ZWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVc2VySlNPTiB9IGZyb20gJ0BjbGVyay9iYWNrZW5kJ1xuaW1wb3J0IHR5cGUgeyBCYXNlUGF5bG9hZCwgVXNlciB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBDbGVya1BsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi90eXBlcydcbmltcG9ydCB7IGZpbmRVc2VyRnJvbUNsZXJrVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL3V0aWxzL3VzZXInXG5cblxuaW50ZXJmYWNlIFVzZXJDcmVhdGVkSGFuZGxlclBhcmFtcyB7XG4gIGRhdGE6IGFueVxuICBwYXlsb2FkOiBCYXNlUGF5bG9hZFxuICB1c2VyU2x1Zzogc3RyaW5nXG4gIG1hcHBpbmdGdW5jdGlvbjogKGNsZXJrVXNlcjogVXNlckpTT04pID0+IE9taXQ8VXNlciwgJ2lkJz5cbiAgb3B0aW9uczogQ2xlcmtQbHVnaW5PcHRpb25zXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVVc2VyQ3JlYXRlZCh7XG4gIGRhdGEsXG4gIHBheWxvYWQsXG4gIHVzZXJTbHVnLFxuICBtYXBwaW5nRnVuY3Rpb24sXG4gIG9wdGlvbnNcbn06IFVzZXJDcmVhdGVkSGFuZGxlclBhcmFtcyk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBjbGVya1VzZXIgPSBkYXRhIGFzIFVzZXJKU09OXG4gIFxuICB0cnkge1xuICAgIGNvbnN0IGV4aXN0aW5nVXNlcnMgPSBhd2FpdCBmaW5kVXNlckZyb21DbGVya1VzZXIoe1xuICAgICAgcGF5bG9hZCxcbiAgICAgIHVzZXJTbHVnLFxuICAgICAgY2xlcmtVc2VyXG4gICAgfSlcbiAgICBcbiAgICBpZiAoZXhpc3RpbmdVc2Vycy5kb2NzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgbGV0IHVzZXJEYXRhID0ge1xuICAgICAgICAuLi5tYXBwaW5nRnVuY3Rpb24oY2xlcmtVc2VyKSxcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaWYgKCF1c2VyRGF0YS5yb2xlKSB7XG4gICAgICAgIHVzZXJEYXRhLnJvbGUgPSAndXNlcidcbiAgICAgIH1cblxuICAgICAgaWYoIXVzZXJEYXRhLnBhc3N3b3JkKSB7XG4gICAgICAgIHVzZXJEYXRhLnBhc3N3b3JkID0gQXJyYXkoMylcbiAgICAgICAgICAuZmlsbCgwKVxuICAgICAgICAgIC5tYXAoKCkgPT4gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMikpXG4gICAgICAgICAgLmpvaW4oJycpXG4gICAgICB9XG4gICAgICBcbiAgICAgIGF3YWl0IHBheWxvYWQuY3JlYXRlKHtcbiAgICAgICAgY29sbGVjdGlvbjogdXNlclNsdWcsXG4gICAgICAgIGRhdGE6IHVzZXJEYXRhLFxuICAgICAgfSlcbiAgICAgIFxuICAgICAgaWYgKG9wdGlvbnMuZW5hYmxlRGVidWdMb2dzKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGBDcmVhdGVkIG5ldyB1c2VyIGZyb20gQ2xlcms6ICR7Y2xlcmtVc2VyLmlkfWApXG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGNyZWF0aW5nIHVzZXIgZnJvbSBDbGVyayB3ZWJob29rOicsIGVycm9yKVxuICB9XG59ICJdLCJuYW1lcyI6WyJmaW5kVXNlckZyb21DbGVya1VzZXIiLCJoYW5kbGVVc2VyQ3JlYXRlZCIsImRhdGEiLCJwYXlsb2FkIiwidXNlclNsdWciLCJtYXBwaW5nRnVuY3Rpb24iLCJvcHRpb25zIiwiY2xlcmtVc2VyIiwiZXhpc3RpbmdVc2VycyIsImRvY3MiLCJsZW5ndGgiLCJ1c2VyRGF0YSIsInJvbGUiLCJwYXNzd29yZCIsIkFycmF5IiwiZmlsbCIsIm1hcCIsIk1hdGgiLCJyYW5kb20iLCJ0b1N0cmluZyIsInNsaWNlIiwiam9pbiIsImNyZWF0ZSIsImNvbGxlY3Rpb24iLCJlbmFibGVEZWJ1Z0xvZ3MiLCJjb25zb2xlIiwibG9nIiwiaWQiLCJlcnJvciJdLCJtYXBwaW5ncyI6IkFBR0EsU0FBU0EscUJBQXFCLFFBQVEsK0JBQThCO0FBV3BFLE9BQU8sZUFBZUMsa0JBQWtCLEVBQ3RDQyxJQUFJLEVBQ0pDLE9BQU8sRUFDUEMsUUFBUSxFQUNSQyxlQUFlLEVBQ2ZDLE9BQU8sRUFDa0I7SUFDekIsTUFBTUMsWUFBWUw7SUFFbEIsSUFBSTtRQUNGLE1BQU1NLGdCQUFnQixNQUFNUixzQkFBc0I7WUFDaERHO1lBQ0FDO1lBQ0FHO1FBQ0Y7UUFFQSxJQUFJQyxjQUFjQyxJQUFJLENBQUNDLE1BQU0sS0FBSyxHQUFHO1lBQ25DLElBQUlDLFdBQVc7Z0JBQ2IsR0FBR04sZ0JBQWdCRSxVQUFVO1lBQy9CO1lBRUEsSUFBSSxDQUFDSSxTQUFTQyxJQUFJLEVBQUU7Z0JBQ2xCRCxTQUFTQyxJQUFJLEdBQUc7WUFDbEI7WUFFQSxJQUFHLENBQUNELFNBQVNFLFFBQVEsRUFBRTtnQkFDckJGLFNBQVNFLFFBQVEsR0FBR0MsTUFBTSxHQUN2QkMsSUFBSSxDQUFDLEdBQ0xDLEdBQUcsQ0FBQyxJQUFNQyxLQUFLQyxNQUFNLEdBQUdDLFFBQVEsQ0FBQyxJQUFJQyxLQUFLLENBQUMsSUFDM0NDLElBQUksQ0FBQztZQUNWO1lBRUEsTUFBTWxCLFFBQVFtQixNQUFNLENBQUM7Z0JBQ25CQyxZQUFZbkI7Z0JBQ1pGLE1BQU1TO1lBQ1I7WUFFQSxJQUFJTCxRQUFRa0IsZUFBZSxFQUFFO2dCQUMzQkMsUUFBUUMsR0FBRyxDQUFDLENBQUMsNkJBQTZCLEVBQUVuQixVQUFVb0IsRUFBRSxFQUFFO1lBQzVEO1FBQ0Y7SUFDRixFQUFFLE9BQU9DLE9BQU87UUFDZEgsUUFBUUcsS0FBSyxDQUFDLDJDQUEyQ0E7SUFDM0Q7QUFDRiJ9
@@ -0,0 +1,11 @@
1
+ import { Payload } from 'payload';
2
+ import { ClerkPluginOptions } from '../../../../../../types';
3
+ interface UserDeletedHandlerParams {
4
+ data: any;
5
+ payload: Payload;
6
+ userSlug: string;
7
+ options: ClerkPluginOptions;
8
+ }
9
+ export declare function handleUserDeleted({ data, payload, userSlug, options }: UserDeletedHandlerParams): Promise<void>;
10
+ export {};
11
+ //# sourceMappingURL=userDeleted.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userDeleted.d.ts","sourceRoot":"","sources":["../../../../../../../../src/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAG5D,UAAU,wBAAwB;IAChC,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,kBAAkB,CAAA;CAC5B;AAED,wBAAsB,iBAAiB,CAAC,EACtC,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,EACR,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB1C"}
@@ -0,0 +1,27 @@
1
+ import { findUserFromClerkUser } from '../../../../../../utils/user';
2
+ export async function handleUserDeleted({ data, payload, userSlug, options }) {
3
+ const clerkId = data.id;
4
+ try {
5
+ const existingUsers = await findUserFromClerkUser({
6
+ payload,
7
+ userSlug,
8
+ clerkUser: {
9
+ id: clerkId
10
+ }
11
+ });
12
+ if (existingUsers.docs.length > 0) {
13
+ const existingUser = existingUsers.docs[0];
14
+ await payload.delete({
15
+ collection: userSlug,
16
+ id: existingUser.id
17
+ });
18
+ if (options.enableDebugLogs) {
19
+ console.log(`Deleted user from Clerk: ${clerkId}`);
20
+ }
21
+ }
22
+ } catch (error) {
23
+ console.error('Error deleting user from Clerk webhook:', error);
24
+ }
25
+ }
26
+
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3dlYmhvb2svaGFuZGxlcnMvdXNlckRlbGV0ZWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF5bG9hZCB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBDbGVya1BsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi90eXBlcydcbmltcG9ydCB7IGZpbmRVc2VyRnJvbUNsZXJrVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL3V0aWxzL3VzZXInXG5cbmludGVyZmFjZSBVc2VyRGVsZXRlZEhhbmRsZXJQYXJhbXMge1xuICBkYXRhOiBhbnlcbiAgcGF5bG9hZDogUGF5bG9hZFxuICB1c2VyU2x1Zzogc3RyaW5nXG4gIG9wdGlvbnM6IENsZXJrUGx1Z2luT3B0aW9uc1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGFuZGxlVXNlckRlbGV0ZWQoe1xuICBkYXRhLFxuICBwYXlsb2FkLFxuICB1c2VyU2x1ZyxcbiAgb3B0aW9uc1xufTogVXNlckRlbGV0ZWRIYW5kbGVyUGFyYW1zKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IGNsZXJrSWQgPSBkYXRhLmlkXG4gIFxuICB0cnkge1xuICAgIGNvbnN0IGV4aXN0aW5nVXNlcnMgPSBhd2FpdCBmaW5kVXNlckZyb21DbGVya1VzZXIoe1xuICAgICAgcGF5bG9hZCxcbiAgICAgIHVzZXJTbHVnLFxuICAgICAgY2xlcmtVc2VyOiB7IGlkOiBjbGVya0lkIH1cbiAgICB9KVxuICAgIFxuICAgIGlmIChleGlzdGluZ1VzZXJzLmRvY3MubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZXhpc3RpbmdVc2VyID0gZXhpc3RpbmdVc2Vycy5kb2NzWzBdXG4gICAgICBcbiAgICAgIGF3YWl0IHBheWxvYWQuZGVsZXRlKHtcbiAgICAgICAgY29sbGVjdGlvbjogdXNlclNsdWcsXG4gICAgICAgIGlkOiBleGlzdGluZ1VzZXIuaWQsXG4gICAgICB9KVxuICAgICAgXG4gICAgICBpZiAob3B0aW9ucy5lbmFibGVEZWJ1Z0xvZ3MpIHtcbiAgICAgICAgY29uc29sZS5sb2coYERlbGV0ZWQgdXNlciBmcm9tIENsZXJrOiAke2NsZXJrSWR9YClcbiAgICAgIH1cbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5lcnJvcignRXJyb3IgZGVsZXRpbmcgdXNlciBmcm9tIENsZXJrIHdlYmhvb2s6JywgZXJyb3IpXG4gIH1cbn0gIl0sIm5hbWVzIjpbImZpbmRVc2VyRnJvbUNsZXJrVXNlciIsImhhbmRsZVVzZXJEZWxldGVkIiwiZGF0YSIsInBheWxvYWQiLCJ1c2VyU2x1ZyIsIm9wdGlvbnMiLCJjbGVya0lkIiwiaWQiLCJleGlzdGluZ1VzZXJzIiwiY2xlcmtVc2VyIiwiZG9jcyIsImxlbmd0aCIsImV4aXN0aW5nVXNlciIsImRlbGV0ZSIsImNvbGxlY3Rpb24iLCJlbmFibGVEZWJ1Z0xvZ3MiLCJjb25zb2xlIiwibG9nIiwiZXJyb3IiXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLHFCQUFxQixRQUFRLCtCQUE4QjtBQVNwRSxPQUFPLGVBQWVDLGtCQUFrQixFQUN0Q0MsSUFBSSxFQUNKQyxPQUFPLEVBQ1BDLFFBQVEsRUFDUkMsT0FBTyxFQUNrQjtJQUN6QixNQUFNQyxVQUFVSixLQUFLSyxFQUFFO0lBRXZCLElBQUk7UUFDRixNQUFNQyxnQkFBZ0IsTUFBTVIsc0JBQXNCO1lBQ2hERztZQUNBQztZQUNBSyxXQUFXO2dCQUFFRixJQUFJRDtZQUFRO1FBQzNCO1FBRUEsSUFBSUUsY0FBY0UsSUFBSSxDQUFDQyxNQUFNLEdBQUcsR0FBRztZQUNqQyxNQUFNQyxlQUFlSixjQUFjRSxJQUFJLENBQUMsRUFBRTtZQUUxQyxNQUFNUCxRQUFRVSxNQUFNLENBQUM7Z0JBQ25CQyxZQUFZVjtnQkFDWkcsSUFBSUssYUFBYUwsRUFBRTtZQUNyQjtZQUVBLElBQUlGLFFBQVFVLGVBQWUsRUFBRTtnQkFDM0JDLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLHlCQUF5QixFQUFFWCxTQUFTO1lBQ25EO1FBQ0Y7SUFDRixFQUFFLE9BQU9ZLE9BQU87UUFDZEYsUUFBUUUsS0FBSyxDQUFDLDJDQUEyQ0E7SUFDM0Q7QUFDRiJ9
@@ -0,0 +1,13 @@
1
+ import { Payload, User } from 'payload';
2
+ import { ClerkPluginOptions } from '../../../../../../types';
3
+ import type { UserJSON } from '@clerk/types';
4
+ interface UserUpdatedHandlerParams {
5
+ data: any;
6
+ payload: Payload;
7
+ userSlug: string;
8
+ mappingFunction: (clerkUser: Partial<UserJSON>) => Omit<User, 'id'>;
9
+ options: ClerkPluginOptions;
10
+ }
11
+ export declare function handleUserUpdated({ data, payload, userSlug, mappingFunction, options }: UserUpdatedHandlerParams): Promise<void>;
12
+ export {};
13
+ //# sourceMappingURL=userUpdated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userUpdated.d.ts","sourceRoot":"","sources":["../../../../../../../../src/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE5C,UAAU,wBAAwB;IAChC,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACnE,OAAO,EAAE,kBAAkB,CAAA;CAC5B;AAED,wBAAsB,iBAAiB,CAAC,EACtC,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,OAAO,EACR,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqC1C"}
@@ -0,0 +1,35 @@
1
+ import { findUserFromClerkUser } from '../../../../../../utils/user';
2
+ export async function handleUserUpdated({ data, payload, userSlug, mappingFunction, options }) {
3
+ const clerkUser = data;
4
+ try {
5
+ const existingUsers = await findUserFromClerkUser({
6
+ payload,
7
+ userSlug,
8
+ clerkUser
9
+ });
10
+ if (existingUsers.docs.length > 0) {
11
+ const existingUser = existingUsers.docs[0];
12
+ let userData = {
13
+ ...mappingFunction(clerkUser)
14
+ };
15
+ if ('role' in userData) {
16
+ const { role, ...dataWithoutRole } = userData;
17
+ userData = dataWithoutRole;
18
+ }
19
+ await payload.update({
20
+ collection: userSlug,
21
+ id: existingUser.id,
22
+ data: userData
23
+ });
24
+ if (options.enableDebugLogs) {
25
+ console.log(`Updated user from Clerk: ${clerkUser.id}`);
26
+ }
27
+ } else if (options.enableDebugLogs) {
28
+ console.log(`Attempted to update non-existent user: ${clerkUser.id}`);
29
+ }
30
+ } catch (error) {
31
+ console.error('Error updating user from Clerk webhook:', error);
32
+ }
33
+ }
34
+
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3dlYmhvb2svaGFuZGxlcnMvdXNlclVwZGF0ZWQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGF5bG9hZCwgVXNlciB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBDbGVya1BsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi90eXBlcydcbmltcG9ydCB7IGZpbmRVc2VyRnJvbUNsZXJrVXNlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL3V0aWxzL3VzZXInXG5pbXBvcnQgdHlwZSB7IFVzZXJKU09OIH0gZnJvbSAnQGNsZXJrL3R5cGVzJ1xuXG5pbnRlcmZhY2UgVXNlclVwZGF0ZWRIYW5kbGVyUGFyYW1zIHtcbiAgZGF0YTogYW55XG4gIHBheWxvYWQ6IFBheWxvYWRcbiAgdXNlclNsdWc6IHN0cmluZ1xuICBtYXBwaW5nRnVuY3Rpb246IChjbGVya1VzZXI6IFBhcnRpYWw8VXNlckpTT04+KSA9PiBPbWl0PFVzZXIsICdpZCc+XG4gIG9wdGlvbnM6IENsZXJrUGx1Z2luT3B0aW9uc1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGFuZGxlVXNlclVwZGF0ZWQoe1xuICBkYXRhLFxuICBwYXlsb2FkLFxuICB1c2VyU2x1ZyxcbiAgbWFwcGluZ0Z1bmN0aW9uLFxuICBvcHRpb25zXG59OiBVc2VyVXBkYXRlZEhhbmRsZXJQYXJhbXMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgY2xlcmtVc2VyID0gZGF0YSBhcyBVc2VySlNPTlxuICBcbiAgdHJ5IHtcbiAgICBjb25zdCBleGlzdGluZ1VzZXJzID0gYXdhaXQgZmluZFVzZXJGcm9tQ2xlcmtVc2VyKHtcbiAgICAgIHBheWxvYWQsXG4gICAgICB1c2VyU2x1ZyxcbiAgICAgIGNsZXJrVXNlclxuICAgIH0pXG4gICAgXG4gICAgaWYgKGV4aXN0aW5nVXNlcnMuZG9jcy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCBleGlzdGluZ1VzZXIgPSBleGlzdGluZ1VzZXJzLmRvY3NbMF1cbiAgICAgIFxuICAgICAgbGV0IHVzZXJEYXRhID0ge1xuICAgICAgICAuLi5tYXBwaW5nRnVuY3Rpb24oY2xlcmtVc2VyKSxcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaWYgKCdyb2xlJyBpbiB1c2VyRGF0YSkge1xuICAgICAgICBjb25zdCB7IHJvbGUsIC4uLmRhdGFXaXRob3V0Um9sZSB9ID0gdXNlckRhdGFcbiAgICAgICAgdXNlckRhdGEgPSBkYXRhV2l0aG91dFJvbGVcbiAgICAgIH1cbiAgICAgIFxuICAgICAgYXdhaXQgcGF5bG9hZC51cGRhdGUoe1xuICAgICAgICBjb2xsZWN0aW9uOiB1c2VyU2x1ZyxcbiAgICAgICAgaWQ6IGV4aXN0aW5nVXNlci5pZCxcbiAgICAgICAgZGF0YTogdXNlckRhdGEsXG4gICAgICB9KVxuICAgICAgXG4gICAgICBpZiAob3B0aW9ucy5lbmFibGVEZWJ1Z0xvZ3MpIHtcbiAgICAgICAgY29uc29sZS5sb2coYFVwZGF0ZWQgdXNlciBmcm9tIENsZXJrOiAke2NsZXJrVXNlci5pZH1gKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAob3B0aW9ucy5lbmFibGVEZWJ1Z0xvZ3MpIHtcbiAgICAgIGNvbnNvbGUubG9nKGBBdHRlbXB0ZWQgdG8gdXBkYXRlIG5vbi1leGlzdGVudCB1c2VyOiAke2NsZXJrVXNlci5pZH1gKVxuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKCdFcnJvciB1cGRhdGluZyB1c2VyIGZyb20gQ2xlcmsgd2ViaG9vazonLCBlcnJvcilcbiAgfVxufSAiXSwibmFtZXMiOlsiZmluZFVzZXJGcm9tQ2xlcmtVc2VyIiwiaGFuZGxlVXNlclVwZGF0ZWQiLCJkYXRhIiwicGF5bG9hZCIsInVzZXJTbHVnIiwibWFwcGluZ0Z1bmN0aW9uIiwib3B0aW9ucyIsImNsZXJrVXNlciIsImV4aXN0aW5nVXNlcnMiLCJkb2NzIiwibGVuZ3RoIiwiZXhpc3RpbmdVc2VyIiwidXNlckRhdGEiLCJyb2xlIiwiZGF0YVdpdGhvdXRSb2xlIiwidXBkYXRlIiwiY29sbGVjdGlvbiIsImlkIiwiZW5hYmxlRGVidWdMb2dzIiwiY29uc29sZSIsImxvZyIsImVycm9yIl0sIm1hcHBpbmdzIjoiQUFFQSxTQUFTQSxxQkFBcUIsUUFBUSwrQkFBOEI7QUFXcEUsT0FBTyxlQUFlQyxrQkFBa0IsRUFDdENDLElBQUksRUFDSkMsT0FBTyxFQUNQQyxRQUFRLEVBQ1JDLGVBQWUsRUFDZkMsT0FBTyxFQUNrQjtJQUN6QixNQUFNQyxZQUFZTDtJQUVsQixJQUFJO1FBQ0YsTUFBTU0sZ0JBQWdCLE1BQU1SLHNCQUFzQjtZQUNoREc7WUFDQUM7WUFDQUc7UUFDRjtRQUVBLElBQUlDLGNBQWNDLElBQUksQ0FBQ0MsTUFBTSxHQUFHLEdBQUc7WUFDakMsTUFBTUMsZUFBZUgsY0FBY0MsSUFBSSxDQUFDLEVBQUU7WUFFMUMsSUFBSUcsV0FBVztnQkFDYixHQUFHUCxnQkFBZ0JFLFVBQVU7WUFDL0I7WUFFQSxJQUFJLFVBQVVLLFVBQVU7Z0JBQ3RCLE1BQU0sRUFBRUMsSUFBSSxFQUFFLEdBQUdDLGlCQUFpQixHQUFHRjtnQkFDckNBLFdBQVdFO1lBQ2I7WUFFQSxNQUFNWCxRQUFRWSxNQUFNLENBQUM7Z0JBQ25CQyxZQUFZWjtnQkFDWmEsSUFBSU4sYUFBYU0sRUFBRTtnQkFDbkJmLE1BQU1VO1lBQ1I7WUFFQSxJQUFJTixRQUFRWSxlQUFlLEVBQUU7Z0JBQzNCQyxRQUFRQyxHQUFHLENBQUMsQ0FBQyx5QkFBeUIsRUFBRWIsVUFBVVUsRUFBRSxFQUFFO1lBQ3hEO1FBQ0YsT0FBTyxJQUFJWCxRQUFRWSxlQUFlLEVBQUU7WUFDbENDLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLHVDQUF1QyxFQUFFYixVQUFVVSxFQUFFLEVBQUU7UUFDdEU7SUFDRixFQUFFLE9BQU9JLE9BQU87UUFDZEYsUUFBUUUsS0FBSyxDQUFDLDJDQUEyQ0E7SUFDM0Q7QUFDRiJ9
@@ -0,0 +1,12 @@
1
+ import { Endpoint } from 'payload';
2
+ import { ClerkPluginOptions } from '../../../../../types';
3
+ interface ClerkWebhookEndpointOptions {
4
+ userSlug: string;
5
+ options: ClerkPluginOptions;
6
+ }
7
+ /**
8
+ * Creates a webhook endpoint for handling Clerk events
9
+ */
10
+ export declare const clerkWebhookEndpoint: ({ userSlug, options }: ClerkWebhookEndpointOptions) => Endpoint;
11
+ export {};
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/clerk/plugin/collections/users/endpoints/webhook/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAIzD,UAAU,2BAA2B;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,kBAAkB,CAAA;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,uBAGlC,2BAA2B,KAAG,QAkFhC,CAAA"}
@@ -0,0 +1,86 @@
1
+ import { APIError } from 'payload';
2
+ import { validateWebhook } from '../../../../../utils/svix';
3
+ import { handleUserCreated, handleUserDeleted, handleUserUpdated } from './handlers';
4
+ /**
5
+ * Creates a webhook endpoint for handling Clerk events
6
+ */ export const clerkWebhookEndpoint = ({ userSlug, options })=>{
7
+ const mappingFunction = options.users?.clerkToPayloadMapping // This is forced to be set by the plugin.ts
8
+ ;
9
+ if (!mappingFunction) {
10
+ throw new Error('Clerk to Payload mapping function is not set');
11
+ }
12
+ return {
13
+ path: '/clerk-webhook',
14
+ method: 'post',
15
+ handler: async (req)=>{
16
+ try {
17
+ const { payload } = req;
18
+ if (!req.text) {
19
+ throw new APIError('Invalid request body', 400);
20
+ }
21
+ // Validate the webhook before reading the body
22
+ if (!await validateWebhook({
23
+ request: req,
24
+ secret: options.webhook?.svixSecret
25
+ })) {
26
+ throw new APIError('Invalid webhook signature', 401);
27
+ }
28
+ // Now we can read the body safely
29
+ const rawBody = await req.text();
30
+ const webhookData = parseWebhookData(rawBody);
31
+ const { type, data } = webhookData;
32
+ if (options.enableDebugLogs) {
33
+ console.log(`Processing Clerk webhook: ${type}`);
34
+ }
35
+ switch(type){
36
+ case 'user.created':
37
+ await handleUserCreated({
38
+ data,
39
+ payload,
40
+ userSlug,
41
+ mappingFunction,
42
+ options
43
+ });
44
+ break;
45
+ case 'user.updated':
46
+ await handleUserUpdated({
47
+ data,
48
+ payload,
49
+ userSlug,
50
+ mappingFunction: mappingFunction,
51
+ options
52
+ });
53
+ break;
54
+ case 'user.deleted':
55
+ await handleUserDeleted({
56
+ data,
57
+ payload,
58
+ userSlug,
59
+ options
60
+ });
61
+ break;
62
+ default:
63
+ if (options.enableDebugLogs) {
64
+ console.log(`Unhandled Clerk webhook type: ${type}`);
65
+ }
66
+ }
67
+ return new Response(JSON.stringify({
68
+ success: true
69
+ }), {
70
+ status: 200,
71
+ headers: {
72
+ 'Content-Type': 'application/json'
73
+ }
74
+ });
75
+ } catch (error) {
76
+ console.error('Error processing Clerk webhook:', error);
77
+ throw new APIError('Internal server error', 500);
78
+ }
79
+ }
80
+ };
81
+ };
82
+ function parseWebhookData(rawBody) {
83
+ return typeof rawBody === 'string' ? JSON.parse(rawBody) : rawBody;
84
+ }
85
+
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZW5kcG9pbnRzL3dlYmhvb2svaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBJRXJyb3IsIEVuZHBvaW50IH0gZnJvbSAncGF5bG9hZCdcbmltcG9ydCB7IENsZXJrUGx1Z2luT3B0aW9ucyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgdmFsaWRhdGVXZWJob29rIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMvc3ZpeCdcbmltcG9ydCB7IGhhbmRsZVVzZXJDcmVhdGVkLCBoYW5kbGVVc2VyRGVsZXRlZCwgaGFuZGxlVXNlclVwZGF0ZWQgfSBmcm9tICcuL2hhbmRsZXJzJ1xuXG5pbnRlcmZhY2UgQ2xlcmtXZWJob29rRW5kcG9pbnRPcHRpb25zIHtcbiAgdXNlclNsdWc6IHN0cmluZ1xuICBvcHRpb25zOiBDbGVya1BsdWdpbk9wdGlvbnNcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgd2ViaG9vayBlbmRwb2ludCBmb3IgaGFuZGxpbmcgQ2xlcmsgZXZlbnRzXG4gKi9cbmV4cG9ydCBjb25zdCBjbGVya1dlYmhvb2tFbmRwb2ludCA9ICh7IFxuICB1c2VyU2x1ZywgXG4gIG9wdGlvbnMgXG59OiBDbGVya1dlYmhvb2tFbmRwb2ludE9wdGlvbnMpOiBFbmRwb2ludCA9PiB7XG4gIGNvbnN0IG1hcHBpbmdGdW5jdGlvbiA9IG9wdGlvbnMudXNlcnM/LmNsZXJrVG9QYXlsb2FkTWFwcGluZyAvLyBUaGlzIGlzIGZvcmNlZCB0byBiZSBzZXQgYnkgdGhlIHBsdWdpbi50c1xuICBcbiAgaWYgKCFtYXBwaW5nRnVuY3Rpb24pIHsgLy8gVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLiBKdXN0IHRvIG1ha2UgVFMgaGFwcHkuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdDbGVyayB0byBQYXlsb2FkIG1hcHBpbmcgZnVuY3Rpb24gaXMgbm90IHNldCcpXG4gIH1cblxuICByZXR1cm4ge1xuICAgIHBhdGg6ICcvY2xlcmstd2ViaG9vaycsXG4gICAgbWV0aG9kOiAncG9zdCcsXG4gICAgaGFuZGxlcjogYXN5bmMgKHJlcSkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSByZXFcbiAgICAgICAgXG4gICAgICAgIGlmICghcmVxLnRleHQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgQVBJRXJyb3IoJ0ludmFsaWQgcmVxdWVzdCBib2R5JywgNDAwKVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBWYWxpZGF0ZSB0aGUgd2ViaG9vayBiZWZvcmUgcmVhZGluZyB0aGUgYm9keVxuICAgICAgICBpZiAoIWF3YWl0IHZhbGlkYXRlV2ViaG9vayh7XG4gICAgICAgICAgcmVxdWVzdDogcmVxLFxuICAgICAgICAgIHNlY3JldDogb3B0aW9ucy53ZWJob29rPy5zdml4U2VjcmV0XG4gICAgICAgIH0pKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEFQSUVycm9yKCdJbnZhbGlkIHdlYmhvb2sgc2lnbmF0dXJlJywgNDAxKVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAvLyBOb3cgd2UgY2FuIHJlYWQgdGhlIGJvZHkgc2FmZWx5XG4gICAgICAgIGNvbnN0IHJhd0JvZHkgPSBhd2FpdCByZXEudGV4dCgpXG4gICAgICAgIFxuICAgICAgICBjb25zdCB3ZWJob29rRGF0YSA9IHBhcnNlV2ViaG9va0RhdGEocmF3Qm9keSlcbiAgICAgICAgY29uc3QgeyB0eXBlLCBkYXRhIH0gPSB3ZWJob29rRGF0YVxuICAgICAgICBcbiAgICAgICAgaWYgKG9wdGlvbnMuZW5hYmxlRGVidWdMb2dzKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coYFByb2Nlc3NpbmcgQ2xlcmsgd2ViaG9vazogJHt0eXBlfWApXG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgIGNhc2UgJ3VzZXIuY3JlYXRlZCc6XG4gICAgICAgICAgICBhd2FpdCBoYW5kbGVVc2VyQ3JlYXRlZCh7XG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICAgIHVzZXJTbHVnLFxuICAgICAgICAgICAgICBtYXBwaW5nRnVuY3Rpb24sXG4gICAgICAgICAgICAgIG9wdGlvbnNcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgXG4gICAgICAgICAgY2FzZSAndXNlci51cGRhdGVkJzpcbiAgICAgICAgICAgIGF3YWl0IGhhbmRsZVVzZXJVcGRhdGVkKHtcbiAgICAgICAgICAgICAgZGF0YSxcbiAgICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgICAgdXNlclNsdWcsXG4gICAgICAgICAgICAgIG1hcHBpbmdGdW5jdGlvbjogbWFwcGluZ0Z1bmN0aW9uIGFzIGFueSwgLy8gQFRPRE86IFR5cGUgdGhpcyBwcm9wZXJseVxuICAgICAgICAgICAgICBvcHRpb25zXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIFxuICAgICAgICAgIGNhc2UgJ3VzZXIuZGVsZXRlZCc6XG4gICAgICAgICAgICBhd2FpdCBoYW5kbGVVc2VyRGVsZXRlZCh7XG4gICAgICAgICAgICAgIGRhdGEsXG4gICAgICAgICAgICAgIHBheWxvYWQsXG4gICAgICAgICAgICAgIHVzZXJTbHVnLFxuICAgICAgICAgICAgICBvcHRpb25zXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIFxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBpZiAob3B0aW9ucy5lbmFibGVEZWJ1Z0xvZ3MpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coYFVuaGFuZGxlZCBDbGVyayB3ZWJob29rIHR5cGU6ICR7dHlwZX1gKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICByZXR1cm4gbmV3IFJlc3BvbnNlKFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHsgc3VjY2VzczogdHJ1ZSB9KSwgXG4gICAgICAgICAgeyBzdGF0dXM6IDIwMCwgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nIH0gfVxuICAgICAgICApXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBwcm9jZXNzaW5nIENsZXJrIHdlYmhvb2s6JywgZXJyb3IpXG4gICAgICAgIHRocm93IG5ldyBBUElFcnJvcignSW50ZXJuYWwgc2VydmVyIGVycm9yJywgNTAwKVxuICAgICAgfVxuICAgIH0sXG4gIH1cbn1cblxuZnVuY3Rpb24gcGFyc2VXZWJob29rRGF0YShyYXdCb2R5OiBhbnkpOiB7IHR5cGU6IHN0cmluZzsgZGF0YTogYW55IH0ge1xuICByZXR1cm4gdHlwZW9mIHJhd0JvZHkgPT09ICdzdHJpbmcnID8gSlNPTi5wYXJzZShyYXdCb2R5KSA6IHJhd0JvZHlcbn0iXSwibmFtZXMiOlsiQVBJRXJyb3IiLCJ2YWxpZGF0ZVdlYmhvb2siLCJoYW5kbGVVc2VyQ3JlYXRlZCIsImhhbmRsZVVzZXJEZWxldGVkIiwiaGFuZGxlVXNlclVwZGF0ZWQiLCJjbGVya1dlYmhvb2tFbmRwb2ludCIsInVzZXJTbHVnIiwib3B0aW9ucyIsIm1hcHBpbmdGdW5jdGlvbiIsInVzZXJzIiwiY2xlcmtUb1BheWxvYWRNYXBwaW5nIiwiRXJyb3IiLCJwYXRoIiwibWV0aG9kIiwiaGFuZGxlciIsInJlcSIsInBheWxvYWQiLCJ0ZXh0IiwicmVxdWVzdCIsInNlY3JldCIsIndlYmhvb2siLCJzdml4U2VjcmV0IiwicmF3Qm9keSIsIndlYmhvb2tEYXRhIiwicGFyc2VXZWJob29rRGF0YSIsInR5cGUiLCJkYXRhIiwiZW5hYmxlRGVidWdMb2dzIiwiY29uc29sZSIsImxvZyIsIlJlc3BvbnNlIiwiSlNPTiIsInN0cmluZ2lmeSIsInN1Y2Nlc3MiLCJzdGF0dXMiLCJoZWFkZXJzIiwiZXJyb3IiLCJwYXJzZSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsUUFBUSxRQUFrQixVQUFTO0FBRTVDLFNBQVNDLGVBQWUsUUFBUSw0QkFBMkI7QUFDM0QsU0FBU0MsaUJBQWlCLEVBQUVDLGlCQUFpQixFQUFFQyxpQkFBaUIsUUFBUSxhQUFZO0FBT3BGOztDQUVDLEdBQ0QsT0FBTyxNQUFNQyx1QkFBdUIsQ0FBQyxFQUNuQ0MsUUFBUSxFQUNSQyxPQUFPLEVBQ3FCO0lBQzVCLE1BQU1DLGtCQUFrQkQsUUFBUUUsS0FBSyxFQUFFQyxzQkFBc0IsNENBQTRDOztJQUV6RyxJQUFJLENBQUNGLGlCQUFpQjtRQUNwQixNQUFNLElBQUlHLE1BQU07SUFDbEI7SUFFQSxPQUFPO1FBQ0xDLE1BQU07UUFDTkMsUUFBUTtRQUNSQyxTQUFTLE9BQU9DO1lBQ2QsSUFBSTtnQkFDRixNQUFNLEVBQUVDLE9BQU8sRUFBRSxHQUFHRDtnQkFFcEIsSUFBSSxDQUFDQSxJQUFJRSxJQUFJLEVBQUU7b0JBQ2IsTUFBTSxJQUFJakIsU0FBUyx3QkFBd0I7Z0JBQzdDO2dCQUVBLCtDQUErQztnQkFDL0MsSUFBSSxDQUFDLE1BQU1DLGdCQUFnQjtvQkFDekJpQixTQUFTSDtvQkFDVEksUUFBUVosUUFBUWEsT0FBTyxFQUFFQztnQkFDM0IsSUFBSTtvQkFDRixNQUFNLElBQUlyQixTQUFTLDZCQUE2QjtnQkFDbEQ7Z0JBRUEsa0NBQWtDO2dCQUNsQyxNQUFNc0IsVUFBVSxNQUFNUCxJQUFJRSxJQUFJO2dCQUU5QixNQUFNTSxjQUFjQyxpQkFBaUJGO2dCQUNyQyxNQUFNLEVBQUVHLElBQUksRUFBRUMsSUFBSSxFQUFFLEdBQUdIO2dCQUV2QixJQUFJaEIsUUFBUW9CLGVBQWUsRUFBRTtvQkFDM0JDLFFBQVFDLEdBQUcsQ0FBQyxDQUFDLDBCQUEwQixFQUFFSixNQUFNO2dCQUNqRDtnQkFFQSxPQUFRQTtvQkFDTixLQUFLO3dCQUNILE1BQU12QixrQkFBa0I7NEJBQ3RCd0I7NEJBQ0FWOzRCQUNBVjs0QkFDQUU7NEJBQ0FEO3dCQUNGO3dCQUNBO29CQUVGLEtBQUs7d0JBQ0gsTUFBTUgsa0JBQWtCOzRCQUN0QnNCOzRCQUNBVjs0QkFDQVY7NEJBQ0FFLGlCQUFpQkE7NEJBQ2pCRDt3QkFDRjt3QkFDQTtvQkFFRixLQUFLO3dCQUNILE1BQU1KLGtCQUFrQjs0QkFDdEJ1Qjs0QkFDQVY7NEJBQ0FWOzRCQUNBQzt3QkFDRjt3QkFDQTtvQkFFRjt3QkFDRSxJQUFJQSxRQUFRb0IsZUFBZSxFQUFFOzRCQUMzQkMsUUFBUUMsR0FBRyxDQUFDLENBQUMsOEJBQThCLEVBQUVKLE1BQU07d0JBQ3JEO2dCQUNKO2dCQUVBLE9BQU8sSUFBSUssU0FDVEMsS0FBS0MsU0FBUyxDQUFDO29CQUFFQyxTQUFTO2dCQUFLLElBQy9CO29CQUFFQyxRQUFRO29CQUFLQyxTQUFTO3dCQUFFLGdCQUFnQjtvQkFBbUI7Z0JBQUU7WUFFbkUsRUFBRSxPQUFPQyxPQUFPO2dCQUNkUixRQUFRUSxLQUFLLENBQUMsbUNBQW1DQTtnQkFDakQsTUFBTSxJQUFJcEMsU0FBUyx5QkFBeUI7WUFDOUM7UUFDRjtJQUNGO0FBQ0YsRUFBQztBQUVELFNBQVN3QixpQkFBaUJGLE9BQVk7SUFDcEMsT0FBTyxPQUFPQSxZQUFZLFdBQVdTLEtBQUtNLEtBQUssQ0FBQ2YsV0FBV0E7QUFDN0QifQ==
@@ -0,0 +1,6 @@
1
+ import type { Field } from 'payload';
2
+ /**
3
+ * Clerk user fields to be added to the user collection
4
+ */
5
+ export declare const clerkUserFields: Field[];
6
+ //# sourceMappingURL=fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../../src/clerk/plugin/collections/users/fields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,EA4ElC,CAAA"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Clerk user fields to be added to the user collection
3
+ */ export const clerkUserFields = [
4
+ {
5
+ name: 'clerkId',
6
+ type: 'text',
7
+ unique: true,
8
+ index: true,
9
+ admin: {
10
+ description: 'Clerk user ID',
11
+ readOnly: true
12
+ }
13
+ },
14
+ {
15
+ name: 'emailVerified',
16
+ type: 'checkbox',
17
+ defaultValue: false,
18
+ admin: {
19
+ description: 'Whether the email is verified',
20
+ readOnly: true
21
+ }
22
+ },
23
+ {
24
+ name: 'firstName',
25
+ type: 'text',
26
+ admin: {
27
+ description: 'User first name'
28
+ }
29
+ },
30
+ {
31
+ name: 'lastName',
32
+ type: 'text',
33
+ admin: {
34
+ description: 'User last name'
35
+ }
36
+ },
37
+ {
38
+ name: 'imageUrl',
39
+ type: 'text',
40
+ admin: {
41
+ description: 'User profile image URL'
42
+ }
43
+ },
44
+ {
45
+ name: 'role',
46
+ type: 'select',
47
+ required: true,
48
+ defaultValue: 'user',
49
+ options: [
50
+ {
51
+ label: 'Admin',
52
+ value: 'admin'
53
+ },
54
+ {
55
+ label: 'User',
56
+ value: 'user'
57
+ }
58
+ ],
59
+ admin: {
60
+ description: 'User role for access control'
61
+ }
62
+ },
63
+ {
64
+ name: 'lastSyncedAt',
65
+ type: 'date',
66
+ admin: {
67
+ description: 'When the user was last synced with Clerk',
68
+ readOnly: true
69
+ }
70
+ },
71
+ {
72
+ name: 'clerkPublicMetadata',
73
+ type: 'json',
74
+ admin: {
75
+ description: 'Additional metadata from Clerk',
76
+ readOnly: true
77
+ }
78
+ }
79
+ ];
80
+
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbGVyay9wbHVnaW4vY29sbGVjdGlvbnMvdXNlcnMvZmllbGRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmllbGQgfSBmcm9tICdwYXlsb2FkJ1xuXG4vKipcbiAqIENsZXJrIHVzZXIgZmllbGRzIHRvIGJlIGFkZGVkIHRvIHRoZSB1c2VyIGNvbGxlY3Rpb25cbiAqL1xuZXhwb3J0IGNvbnN0IGNsZXJrVXNlckZpZWxkczogRmllbGRbXSA9IFtcbiAge1xuICAgIG5hbWU6ICdjbGVya0lkJyxcbiAgICB0eXBlOiAndGV4dCcsXG4gICAgdW5pcXVlOiB0cnVlLFxuICAgIGluZGV4OiB0cnVlLFxuICAgIGFkbWluOiB7XG4gICAgICBkZXNjcmlwdGlvbjogJ0NsZXJrIHVzZXIgSUQnLFxuICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgfVxuICB9LFxuICB7XG4gICAgbmFtZTogJ2VtYWlsVmVyaWZpZWQnLFxuICAgIHR5cGU6ICdjaGVja2JveCcsXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcbiAgICBhZG1pbjoge1xuICAgICAgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRoZSBlbWFpbCBpcyB2ZXJpZmllZCcsXG4gICAgICByZWFkT25seTogdHJ1ZSxcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnZmlyc3ROYW1lJyxcbiAgICB0eXBlOiAndGV4dCcsXG4gICAgYWRtaW46IHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnVXNlciBmaXJzdCBuYW1lJyxcbiAgICB9XG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnbGFzdE5hbWUnLFxuICAgIHR5cGU6ICd0ZXh0JyxcbiAgICBhZG1pbjoge1xuICAgICAgZGVzY3JpcHRpb246ICdVc2VyIGxhc3QgbmFtZScsXG4gICAgfVxuICB9LFxuICB7XG4gICAgbmFtZTogJ2ltYWdlVXJsJyxcbiAgICB0eXBlOiAndGV4dCcsXG4gICAgYWRtaW46IHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnVXNlciBwcm9maWxlIGltYWdlIFVSTCcsXG4gICAgfVxuICB9LFxuICB7XG4gICAgbmFtZTogJ3JvbGUnLFxuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlZmF1bHRWYWx1ZTogJ3VzZXInLFxuICAgIG9wdGlvbnM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdBZG1pbicsXG4gICAgICAgIHZhbHVlOiAnYWRtaW4nLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdVc2VyJyxcbiAgICAgICAgdmFsdWU6ICd1c2VyJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICBhZG1pbjoge1xuICAgICAgZGVzY3JpcHRpb246ICdVc2VyIHJvbGUgZm9yIGFjY2VzcyBjb250cm9sJyxcbiAgICB9LFxuICB9LFxuICB7XG4gICAgbmFtZTogJ2xhc3RTeW5jZWRBdCcsXG4gICAgdHlwZTogJ2RhdGUnLFxuICAgIGFkbWluOiB7XG4gICAgICBkZXNjcmlwdGlvbjogJ1doZW4gdGhlIHVzZXIgd2FzIGxhc3Qgc3luY2VkIHdpdGggQ2xlcmsnLFxuICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgfVxuICB9LFxuICB7XG4gICAgbmFtZTogJ2NsZXJrUHVibGljTWV0YWRhdGEnLFxuICAgIHR5cGU6ICdqc29uJyxcbiAgICBhZG1pbjoge1xuICAgICAgZGVzY3JpcHRpb246ICdBZGRpdGlvbmFsIG1ldGFkYXRhIGZyb20gQ2xlcmsnLFxuICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgfVxuICB9LFxuXSAiXSwibmFtZXMiOlsiY2xlcmtVc2VyRmllbGRzIiwibmFtZSIsInR5cGUiLCJ1bmlxdWUiLCJpbmRleCIsImFkbWluIiwiZGVzY3JpcHRpb24iLCJyZWFkT25seSIsImRlZmF1bHRWYWx1ZSIsInJlcXVpcmVkIiwib3B0aW9ucyIsImxhYmVsIiwidmFsdWUiXSwibWFwcGluZ3MiOiJBQUVBOztDQUVDLEdBQ0QsT0FBTyxNQUFNQSxrQkFBMkI7SUFDdEM7UUFDRUMsTUFBTTtRQUNOQyxNQUFNO1FBQ05DLFFBQVE7UUFDUkMsT0FBTztRQUNQQyxPQUFPO1lBQ0xDLGFBQWE7WUFDYkMsVUFBVTtRQUNaO0lBQ0Y7SUFDQTtRQUNFTixNQUFNO1FBQ05DLE1BQU07UUFDTk0sY0FBYztRQUNkSCxPQUFPO1lBQ0xDLGFBQWE7WUFDYkMsVUFBVTtRQUNaO0lBQ0Y7SUFDQTtRQUNFTixNQUFNO1FBQ05DLE1BQU07UUFDTkcsT0FBTztZQUNMQyxhQUFhO1FBQ2Y7SUFDRjtJQUNBO1FBQ0VMLE1BQU07UUFDTkMsTUFBTTtRQUNORyxPQUFPO1lBQ0xDLGFBQWE7UUFDZjtJQUNGO0lBQ0E7UUFDRUwsTUFBTTtRQUNOQyxNQUFNO1FBQ05HLE9BQU87WUFDTEMsYUFBYTtRQUNmO0lBQ0Y7SUFDQTtRQUNFTCxNQUFNO1FBQ05DLE1BQU07UUFDTk8sVUFBVTtRQUNWRCxjQUFjO1FBQ2RFLFNBQVM7WUFDUDtnQkFDRUMsT0FBTztnQkFDUEMsT0FBTztZQUNUO1lBQ0E7Z0JBQ0VELE9BQU87Z0JBQ1BDLE9BQU87WUFDVDtTQUNEO1FBQ0RQLE9BQU87WUFDTEMsYUFBYTtRQUNmO0lBQ0Y7SUFDQTtRQUNFTCxNQUFNO1FBQ05DLE1BQU07UUFDTkcsT0FBTztZQUNMQyxhQUFhO1lBQ2JDLFVBQVU7UUFDWjtJQUNGO0lBQ0E7UUFDRU4sTUFBTTtRQUNOQyxNQUFNO1FBQ05HLE9BQU87WUFDTEMsYUFBYTtZQUNiQyxVQUFVO1FBQ1o7SUFDRjtDQUNELENBQUEifQ==
@@ -0,0 +1,10 @@
1
+ import { type CollectionConfig } from 'payload';
2
+ import type { ClerkPluginOptions } from '../../../types';
3
+ export interface WithClerkUsersCollectionOptions {
4
+ collection?: Partial<CollectionConfig>;
5
+ options: ClerkPluginOptions;
6
+ apiBasePath?: string;
7
+ adminBasePath?: string;
8
+ }
9
+ export declare function withClerkUsersCollection({ collection, options, apiBasePath, adminBasePath, }: WithClerkUsersCollectionOptions): CollectionConfig;
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/clerk/plugin/collections/users/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAQxD,MAAM,WAAW,+BAA+B;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACtC,OAAO,EAAE,kBAAkB,CAAA;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,wBAAwB,CAAC,EACvC,UAA8B,EAC9B,OAAO,EACP,WAAoB,EACpB,aAAwB,GACzB,EAAE,+BAA+B,GAAG,gBAAgB,CAoEpD"}