payload-auth 1.4.1 → 1.5.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 (207) hide show
  1. package/dist/better-auth/adapter/transform/index.js +3 -3
  2. package/dist/better-auth/generated-types.d.ts +216 -0
  3. package/dist/better-auth/generated-types.d.ts.map +1 -0
  4. package/dist/better-auth/generated-types.js +4 -0
  5. package/dist/better-auth/plugin/constants.d.ts +145 -3
  6. package/dist/better-auth/plugin/constants.d.ts.map +1 -1
  7. package/dist/better-auth/plugin/constants.js +148 -6
  8. package/dist/better-auth/plugin/helpers/check-plugin-exists.d.ts +13 -0
  9. package/dist/better-auth/plugin/helpers/check-plugin-exists.d.ts.map +1 -0
  10. package/dist/better-auth/plugin/helpers/check-plugin-exists.js +14 -0
  11. package/dist/better-auth/plugin/helpers/get-better-auth-schema.d.ts +22 -0
  12. package/dist/better-auth/plugin/helpers/get-better-auth-schema.d.ts.map +1 -0
  13. package/dist/better-auth/plugin/helpers/get-better-auth-schema.js +50 -0
  14. package/dist/better-auth/plugin/helpers/get-collection-schema-map.d.ts +16 -0
  15. package/dist/better-auth/plugin/helpers/get-collection-schema-map.d.ts.map +1 -0
  16. package/dist/better-auth/plugin/helpers/get-collection-schema-map.js +108 -0
  17. package/dist/better-auth/plugin/helpers/get-collection-slug.d.ts +6 -0
  18. package/dist/better-auth/plugin/helpers/get-collection-slug.d.ts.map +1 -0
  19. package/dist/better-auth/plugin/helpers/get-collection-slug.js +20 -0
  20. package/dist/better-auth/plugin/helpers/get-collection.d.ts +41 -0
  21. package/dist/better-auth/plugin/helpers/get-collection.d.ts.map +1 -0
  22. package/dist/better-auth/plugin/helpers/get-collection.js +62 -0
  23. package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts +8 -16
  24. package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts.map +1 -1
  25. package/dist/better-auth/plugin/helpers/prepare-session-data.js +9 -20
  26. package/dist/better-auth/plugin/index.d.ts +3 -3
  27. package/dist/better-auth/plugin/index.d.ts.map +1 -1
  28. package/dist/better-auth/plugin/index.js +31 -40
  29. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts +2 -6
  30. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts.map +1 -1
  31. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +22 -7
  32. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +3 -6
  33. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts.map +1 -1
  34. package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +96 -102
  35. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +2 -2
  36. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts.map +1 -1
  37. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +6 -5
  38. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +3 -5
  39. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts.map +1 -1
  40. package/dist/better-auth/plugin/lib/build-collections/api-keys.js +97 -113
  41. package/dist/better-auth/plugin/lib/build-collections/index.d.ts +6 -6
  42. package/dist/better-auth/plugin/lib/build-collections/index.d.ts.map +1 -1
  43. package/dist/better-auth/plugin/lib/build-collections/index.js +68 -84
  44. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +2 -4
  45. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts.map +1 -1
  46. package/dist/better-auth/plugin/lib/build-collections/invitations.js +75 -70
  47. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +3 -5
  48. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts.map +1 -1
  49. package/dist/better-auth/plugin/lib/build-collections/jwks.js +46 -28
  50. package/dist/better-auth/plugin/lib/build-collections/members.d.ts +3 -5
  51. package/dist/better-auth/plugin/lib/build-collections/members.d.ts.map +1 -1
  52. package/dist/better-auth/plugin/lib/build-collections/members.js +52 -48
  53. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +3 -5
  54. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts.map +1 -1
  55. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +74 -64
  56. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +3 -5
  57. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts.map +1 -1
  58. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +78 -71
  59. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +3 -5
  60. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts.map +1 -1
  61. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +68 -45
  62. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +3 -5
  63. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts.map +1 -1
  64. package/dist/better-auth/plugin/lib/build-collections/organizations.js +52 -39
  65. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +3 -5
  66. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts.map +1 -1
  67. package/dist/better-auth/plugin/lib/build-collections/passkeys.js +60 -64
  68. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +3 -7
  69. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts.map +1 -1
  70. package/dist/better-auth/plugin/lib/build-collections/sessions.js +100 -98
  71. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +3 -5
  72. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts.map +1 -1
  73. package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +56 -56
  74. package/dist/better-auth/plugin/lib/build-collections/subscriptions.d.ts +4 -0
  75. package/dist/better-auth/plugin/lib/build-collections/subscriptions.d.ts.map +1 -0
  76. package/dist/better-auth/plugin/lib/build-collections/subscriptions.js +113 -0
  77. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +3 -5
  78. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts.map +1 -1
  79. package/dist/better-auth/plugin/lib/build-collections/teams.js +62 -30
  80. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +3 -5
  81. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts.map +1 -1
  82. package/dist/better-auth/plugin/lib/build-collections/two-factors.js +50 -37
  83. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +4 -4
  84. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +3 -3
  85. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.d.ts +6 -0
  86. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.d.ts.map +1 -0
  87. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/index.js +7 -0
  88. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +4 -4
  89. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts +2 -2
  90. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts.map +1 -1
  91. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.js +93 -96
  92. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts +1 -6
  93. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts.map +1 -1
  94. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +22 -13
  95. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts +1 -5
  96. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts.map +1 -1
  97. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +16 -8
  98. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +2 -6
  99. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts.map +1 -1
  100. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +25 -6
  101. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts +2 -1
  102. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts.map +1 -1
  103. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +5 -8
  104. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.d.ts +7 -0
  105. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.d.ts.map +1 -0
  106. package/dist/better-auth/plugin/lib/build-collections/users/hooks/index.js +8 -0
  107. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +1 -1
  108. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts.map +1 -1
  109. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +15 -12
  110. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts +1 -6
  111. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts.map +1 -1
  112. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +21 -10
  113. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +3 -7
  114. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts.map +1 -1
  115. package/dist/better-auth/plugin/lib/build-collections/users/index.js +153 -210
  116. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.d.ts +16 -0
  117. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.d.ts.map +1 -0
  118. package/dist/better-auth/plugin/lib/build-collections/utils/collection-schema.js +32 -0
  119. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +1 -1
  120. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts.map +1 -1
  121. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +1 -1
  122. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.d.ts +17 -0
  123. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.d.ts.map +1 -0
  124. package/dist/better-auth/plugin/lib/build-collections/utils/model-field-transformations.js +21 -0
  125. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.d.ts +22 -0
  126. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.d.ts.map +1 -0
  127. package/dist/better-auth/plugin/lib/build-collections/utils/transform-schema-fields-to-payload.js +95 -0
  128. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +3 -6
  129. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts.map +1 -1
  130. package/dist/better-auth/plugin/lib/build-collections/verifications.js +62 -40
  131. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts.map +1 -1
  132. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +4 -3
  133. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts +2 -1
  134. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts.map +1 -1
  135. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +8 -15
  136. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +5 -3
  137. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts.map +1 -1
  138. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +56 -69
  139. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts +2 -1
  140. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts.map +1 -1
  141. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +16 -55
  142. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts +2 -1
  143. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts.map +1 -1
  144. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +21 -83
  145. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts +2 -1
  146. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts.map +1 -1
  147. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +8 -15
  148. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts +2 -1
  149. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts.map +1 -1
  150. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +8 -15
  151. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.d.ts +3 -0
  152. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.d.ts.map +1 -0
  153. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/two-factor-plugin.js +10 -0
  154. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.d.ts +3 -3
  155. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.d.ts.map +1 -1
  156. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.js +3 -3
  157. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts +5 -4
  158. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts.map +1 -1
  159. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +10 -10
  160. package/dist/better-auth/plugin/lib/set-login-methods.d.ts +1 -1
  161. package/dist/better-auth/plugin/lib/set-login-methods.d.ts.map +1 -1
  162. package/dist/better-auth/plugin/lib/set-login-methods.js +5 -6
  163. package/dist/better-auth/plugin/payload/views/admin-login/client.d.ts.map +1 -1
  164. package/dist/better-auth/plugin/payload/views/admin-login/client.js +2 -2
  165. package/dist/better-auth/plugin/payload/views/admin-login/index.d.ts +4 -4
  166. package/dist/better-auth/plugin/payload/views/admin-login/index.d.ts.map +1 -1
  167. package/dist/better-auth/plugin/payload/views/admin-login/index.js +7 -8
  168. package/dist/better-auth/plugin/payload/views/admin-signup/client.d.ts +1 -1
  169. package/dist/better-auth/plugin/payload/views/admin-signup/client.d.ts.map +1 -1
  170. package/dist/better-auth/plugin/payload/views/admin-signup/client.js +27 -7
  171. package/dist/better-auth/plugin/payload/views/admin-signup/index.d.ts +4 -5
  172. package/dist/better-auth/plugin/payload/views/admin-signup/index.d.ts.map +1 -1
  173. package/dist/better-auth/plugin/payload/views/admin-signup/index.js +6 -6
  174. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +1 -5
  175. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts.map +1 -1
  176. package/dist/better-auth/plugin/payload/views/forgot-password/index.js +1 -1
  177. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.d.ts +3 -3
  178. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.d.ts.map +1 -1
  179. package/dist/better-auth/plugin/payload/views/two-factor-verify/index.js +10 -7
  180. package/dist/better-auth/plugin/types.d.ts +41 -13
  181. package/dist/better-auth/plugin/types.d.ts.map +1 -1
  182. package/dist/better-auth/plugin/types.js +1 -1
  183. package/dist/better-auth/plugin/utils/set.d.ts +40 -0
  184. package/dist/better-auth/plugin/utils/set.d.ts.map +1 -0
  185. package/dist/better-auth/plugin/utils/set.js +84 -0
  186. package/dist/better-auth/scripts/generate-types.d.ts +2 -0
  187. package/dist/better-auth/scripts/generate-types.d.ts.map +1 -0
  188. package/dist/better-auth/scripts/generate-types.js +219 -0
  189. package/dist/shared/form/validation.d.ts +31 -7
  190. package/dist/shared/form/validation.d.ts.map +1 -1
  191. package/dist/shared/form/validation.js +13 -5
  192. package/package.json +14 -9
  193. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts +0 -3
  194. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts.map +0 -1
  195. package/dist/better-auth/plugin/helpers/check-passkey-plugin.js +0 -6
  196. package/dist/better-auth/plugin/helpers/check-two-factor-plugin.d.ts +0 -3
  197. package/dist/better-auth/plugin/helpers/check-two-factor-plugin.d.ts.map +0 -1
  198. package/dist/better-auth/plugin/helpers/check-two-factor-plugin.js +0 -6
  199. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts +0 -3
  200. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts.map +0 -1
  201. package/dist/better-auth/plugin/helpers/check-username-plugin.js +0 -6
  202. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts +0 -10
  203. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts.map +0 -1
  204. package/dist/better-auth/plugin/lib/get-required-collection-slugs.js +0 -35
  205. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts +0 -15
  206. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts.map +0 -1
  207. package/dist/better-auth/plugin/payload/utils/generate-metadata.js +0 -74
@@ -0,0 +1,108 @@
1
+ import { baModelFieldKeysToFieldNames, baModelKey } from "../constants";
2
+ import { getAuthTables } from "better-auth/db";
3
+ import { flattenAllFields } from "payload/shared";
4
+ import { getDeafultCollectionSlug } from "./get-collection-slug";
5
+ export function getDefaultCollectionSchemaMap(pluginOptions) {
6
+ const tables = getAuthTables(pluginOptions.betterAuthOptions ?? {});
7
+ const map = {};
8
+ Object.entries(tables).forEach(([key, table])=>{
9
+ const fieldNames = Object.entries(table.fields).map(([k, v])=>k);
10
+ const typedKey = key;
11
+ const value = {
12
+ collectionSlug: getDeafultCollectionSlug({
13
+ modelKey: typedKey,
14
+ pluginOptions
15
+ }),
16
+ fields: fieldNames.reduce((acc, field)=>{
17
+ if (typedKey in baModelFieldKeysToFieldNames && field in baModelFieldKeysToFieldNames[typedKey]) {
18
+ const fieldMapping = baModelFieldKeysToFieldNames[typedKey];
19
+ const typedField = field;
20
+ acc[field] = fieldMapping[typedField] || field;
21
+ } else {
22
+ acc[field] = field;
23
+ }
24
+ return acc;
25
+ }, {})
26
+ };
27
+ map[typedKey] = value;
28
+ });
29
+ // always add the role field to the user collection if not already present
30
+ if (!map[baModelKey.user].fields.role) {
31
+ map[baModelKey.user].fields.role = baModelFieldKeysToFieldNames.user.role;
32
+ }
33
+ return map;
34
+ }
35
+ /**
36
+ * Builds a collection schema map by analyzing collection overrides and extracting
37
+ * BetterAuth model keys and field mappings
38
+ *
39
+ * @param collectionOverrides - Collection override functions provided in plugin options
40
+ * @returns A collection schema map with default values merged with any overrides
41
+ */ export function buildCollectionSchemaMap(pluginOptions) {
42
+ const collectionOverrides = {
43
+ users: pluginOptions.users?.collectionOverrides,
44
+ accounts: pluginOptions.accounts?.collectionOverrides,
45
+ sessions: pluginOptions.sessions?.collectionOverrides,
46
+ verifications: pluginOptions.verifications?.collectionOverrides,
47
+ ...pluginOptions.pluginCollectionOverrides
48
+ };
49
+ const defaultCollectionSchemaMap = getDefaultCollectionSchemaMap(pluginOptions);
50
+ if (!collectionOverrides || Object.keys(collectionOverrides).length === 0) {
51
+ return {
52
+ ...defaultCollectionSchemaMap
53
+ };
54
+ }
55
+ const schemaMap = {
56
+ ...defaultCollectionSchemaMap
57
+ };
58
+ Object.entries(collectionOverrides).forEach(([collectionSlug, overrideFunction])=>{
59
+ if (!overrideFunction) return;
60
+ const modifiedCollection = overrideFunction({
61
+ collection: {
62
+ slug: collectionSlug,
63
+ fields: []
64
+ }
65
+ });
66
+ const modelKey = assertModelKey(modifiedCollection);
67
+ schemaMap[modelKey].collectionSlug = modifiedCollection.slug;
68
+ const flattenedFields = flattenAllFields(modifiedCollection);
69
+ if (flattenedFields && Array.isArray(flattenedFields)) {
70
+ flattenedFields.forEach((field)=>{
71
+ // we only want to process fields that have a betterAuthFieldKey
72
+ // because its possible the user has added additional fields
73
+ if (field.custom?.betterAuthFieldKey) {
74
+ const fieldKey = assertFieldKey(field, modelKey, modifiedCollection.slug);
75
+ schemaMap[modelKey].fields[fieldKey] = field.name;
76
+ }
77
+ });
78
+ }
79
+ });
80
+ return schemaMap;
81
+ }
82
+ function assertFieldKey(field, modelKey, collectionSlug) {
83
+ const fieldKey = field.custom?.betterAuthFieldKey;
84
+ // Assert that fieldKey is a valid key in the baModelFieldKeysToFieldNames mapping
85
+ if (!Object.values(baModelFieldKeysToFieldNames).some((fieldMap)=>Object.keys(fieldMap).includes(fieldKey))) {
86
+ throw new Error(`Invalid custom.betterAuthFieldKey: ${fieldKey} for field ${field.name} in collection ${collectionSlug},
87
+ must be one of ${Object.keys(baModelFieldKeysToFieldNames[modelKey]).join(', ')}`);
88
+ }
89
+ return fieldKey;
90
+ }
91
+ /**
92
+ * Asserts that a collection has a valid BetterAuth model key and returns it
93
+ *
94
+ * @param collection - The collection to check for a BetterAuth model key
95
+ * @returns The BetterAuth model key
96
+ * @throws Error if the collection does not have a valid BetterAuth model key
97
+ */ function assertModelKey(collection) {
98
+ if (!collection.custom?.betterAuthModelKey) {
99
+ throw new Error(`Collection ${collection.slug} is missing a betterAuthModelKey in its custom field`);
100
+ }
101
+ const modelKey = collection.custom.betterAuthModelKey;
102
+ if (!Object.values(baModelKey).includes(modelKey)) {
103
+ throw new Error(`Collection ${collection.slug} has an invalid betterAuthModelKey: ${modelKey}`);
104
+ }
105
+ return modelKey;
106
+ }
107
+
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9nZXQtY29sbGVjdGlvbi1zY2hlbWEtbWFwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJhTW9kZWxGaWVsZEtleXNUb0ZpZWxkTmFtZXMsIGJhTW9kZWxLZXkgfSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgeyBnZXRBdXRoVGFibGVzIH0gZnJvbSAnYmV0dGVyLWF1dGgvZGInXG5pbXBvcnQgeyBCZXR0ZXJBdXRoT3B0aW9ucyB9IGZyb20gJ2JldHRlci1hdXRoL3R5cGVzJ1xuaW1wb3J0IHsgYmFNb2RlbEtleVRvU2x1ZyB9IGZyb20gJy4uL2NvbnN0YW50cydcbmltcG9ydCB7IEZsYXR0ZW5lZEZpZWxkIH0gZnJvbSAncGF5bG9hZCdcbmltcG9ydCB7IGZsYXR0ZW5BbGxGaWVsZHMgfSBmcm9tICdwYXlsb2FkL3NoYXJlZCdcbmltcG9ydCB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgZ2V0RGVhZnVsdENvbGxlY3Rpb25TbHVnIH0gZnJvbSAnLi9nZXQtY29sbGVjdGlvbi1zbHVnJ1xuaW1wb3J0IHsgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi90eXBlcydcblxuZXhwb3J0IHR5cGUgQ29sbGVjdGlvblNjaGVtYU1hcCA9IFJlY29yZDxcbiAga2V5b2YgdHlwZW9mIGJhTW9kZWxLZXksXG4gIHtcbiAgICBjb2xsZWN0aW9uU2x1Zzogc3RyaW5nXG4gICAgZmllbGRzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gIH1cbj5cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlZmF1bHRDb2xsZWN0aW9uU2NoZW1hTWFwKHBsdWdpbk9wdGlvbnM6IEJldHRlckF1dGhQbHVnaW5PcHRpb25zKTogQ29sbGVjdGlvblNjaGVtYU1hcCB7XG4gIGNvbnN0IHRhYmxlcyA9IGdldEF1dGhUYWJsZXMocGx1Z2luT3B0aW9ucy5iZXR0ZXJBdXRoT3B0aW9ucyA/PyB7fSlcbiAgY29uc3QgbWFwID0ge30gYXMgQ29sbGVjdGlvblNjaGVtYU1hcFxuICBPYmplY3QuZW50cmllcyh0YWJsZXMpLmZvckVhY2goKFtrZXksIHRhYmxlXSkgPT4ge1xuICAgIGNvbnN0IGZpZWxkTmFtZXMgPSBPYmplY3QuZW50cmllcyh0YWJsZS5maWVsZHMpLm1hcCgoW2ssIHZdKSA9PiBrKVxuICAgIGNvbnN0IHR5cGVkS2V5ID0ga2V5IGFzIGtleW9mIHR5cGVvZiBiYU1vZGVsS2V5VG9TbHVnXG4gICAgY29uc3QgdmFsdWUgPSB7XG4gICAgICBjb2xsZWN0aW9uU2x1ZzogZ2V0RGVhZnVsdENvbGxlY3Rpb25TbHVnKHsgbW9kZWxLZXk6IHR5cGVkS2V5LCBwbHVnaW5PcHRpb25zIH0pLFxuICAgICAgZmllbGRzOiBmaWVsZE5hbWVzLnJlZHVjZShcbiAgICAgICAgKGFjYywgZmllbGQpID0+IHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0eXBlZEtleSBpbiBiYU1vZGVsRmllbGRLZXlzVG9GaWVsZE5hbWVzICYmXG4gICAgICAgICAgICBmaWVsZCBpbiBiYU1vZGVsRmllbGRLZXlzVG9GaWVsZE5hbWVzW3R5cGVkS2V5IGFzIGtleW9mIHR5cGVvZiBiYU1vZGVsRmllbGRLZXlzVG9GaWVsZE5hbWVzXVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgZmllbGRNYXBwaW5nID0gYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lc1t0eXBlZEtleSBhcyBrZXlvZiB0eXBlb2YgYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lc11cbiAgICAgICAgICAgIGNvbnN0IHR5cGVkRmllbGQgPSBmaWVsZCBhcyBrZXlvZiB0eXBlb2YgZmllbGRNYXBwaW5nXG4gICAgICAgICAgICBhY2NbZmllbGRdID0gZmllbGRNYXBwaW5nW3R5cGVkRmllbGRdIHx8IGZpZWxkXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGFjY1tmaWVsZF0gPSBmaWVsZFxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYWNjXG4gICAgICAgIH0sXG4gICAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgICAgIClcbiAgICB9XG5cbiAgICBtYXBbdHlwZWRLZXldID0gdmFsdWVcbiAgfSlcblxuICAvLyBhbHdheXMgYWRkIHRoZSByb2xlIGZpZWxkIHRvIHRoZSB1c2VyIGNvbGxlY3Rpb24gaWYgbm90IGFscmVhZHkgcHJlc2VudFxuICBpZiAoIW1hcFtiYU1vZGVsS2V5LnVzZXJdLmZpZWxkcy5yb2xlKSB7XG4gICAgbWFwW2JhTW9kZWxLZXkudXNlcl0uZmllbGRzLnJvbGUgPSBiYU1vZGVsRmllbGRLZXlzVG9GaWVsZE5hbWVzLnVzZXIucm9sZVxuICB9XG5cbiAgcmV0dXJuIG1hcFxufVxuXG50eXBlIENvbGxlY3Rpb25PdmVycmlkZSA9ICgob3B0aW9uczogeyBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnIH0pID0+IENvbGxlY3Rpb25Db25maWcpIHwgdW5kZWZpbmVkXG5cbnR5cGUgQ29sbGVjdGlvbk92ZXJyaWRlcyA9IFJlY29yZDxzdHJpbmcsIENvbGxlY3Rpb25PdmVycmlkZT5cblxuLyoqXG4gKiBCdWlsZHMgYSBjb2xsZWN0aW9uIHNjaGVtYSBtYXAgYnkgYW5hbHl6aW5nIGNvbGxlY3Rpb24gb3ZlcnJpZGVzIGFuZCBleHRyYWN0aW5nXG4gKiBCZXR0ZXJBdXRoIG1vZGVsIGtleXMgYW5kIGZpZWxkIG1hcHBpbmdzXG4gKlxuICogQHBhcmFtIGNvbGxlY3Rpb25PdmVycmlkZXMgLSBDb2xsZWN0aW9uIG92ZXJyaWRlIGZ1bmN0aW9ucyBwcm92aWRlZCBpbiBwbHVnaW4gb3B0aW9uc1xuICogQHJldHVybnMgQSBjb2xsZWN0aW9uIHNjaGVtYSBtYXAgd2l0aCBkZWZhdWx0IHZhbHVlcyBtZXJnZWQgd2l0aCBhbnkgb3ZlcnJpZGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZENvbGxlY3Rpb25TY2hlbWFNYXAocGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMpOiBDb2xsZWN0aW9uU2NoZW1hTWFwIHtcbiAgY29uc3QgY29sbGVjdGlvbk92ZXJyaWRlcyA9IHtcbiAgICB1c2VyczogcGx1Z2luT3B0aW9ucy51c2Vycz8uY29sbGVjdGlvbk92ZXJyaWRlcyxcbiAgICBhY2NvdW50czogcGx1Z2luT3B0aW9ucy5hY2NvdW50cz8uY29sbGVjdGlvbk92ZXJyaWRlcyxcbiAgICBzZXNzaW9uczogcGx1Z2luT3B0aW9ucy5zZXNzaW9ucz8uY29sbGVjdGlvbk92ZXJyaWRlcyxcbiAgICB2ZXJpZmljYXRpb25zOiBwbHVnaW5PcHRpb25zLnZlcmlmaWNhdGlvbnM/LmNvbGxlY3Rpb25PdmVycmlkZXMsXG4gICAgLi4ucGx1Z2luT3B0aW9ucy5wbHVnaW5Db2xsZWN0aW9uT3ZlcnJpZGVzXG4gIH1cblxuICBjb25zdCBkZWZhdWx0Q29sbGVjdGlvblNjaGVtYU1hcCA9IGdldERlZmF1bHRDb2xsZWN0aW9uU2NoZW1hTWFwKHBsdWdpbk9wdGlvbnMpXG5cbiAgaWYgKCFjb2xsZWN0aW9uT3ZlcnJpZGVzIHx8IE9iamVjdC5rZXlzKGNvbGxlY3Rpb25PdmVycmlkZXMpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB7IC4uLmRlZmF1bHRDb2xsZWN0aW9uU2NoZW1hTWFwIH1cbiAgfVxuXG4gIGNvbnN0IHNjaGVtYU1hcCA9IHsgLi4uZGVmYXVsdENvbGxlY3Rpb25TY2hlbWFNYXAgfVxuXG4gIE9iamVjdC5lbnRyaWVzKGNvbGxlY3Rpb25PdmVycmlkZXMpLmZvckVhY2goKFtjb2xsZWN0aW9uU2x1Zywgb3ZlcnJpZGVGdW5jdGlvbl0pID0+IHtcbiAgICBpZiAoIW92ZXJyaWRlRnVuY3Rpb24pIHJldHVyblxuXG4gICAgY29uc3QgbW9kaWZpZWRDb2xsZWN0aW9uID0gb3ZlcnJpZGVGdW5jdGlvbih7XG4gICAgICBjb2xsZWN0aW9uOiB7XG4gICAgICAgIHNsdWc6IGNvbGxlY3Rpb25TbHVnLFxuICAgICAgICBmaWVsZHM6IFtdXG4gICAgICB9XG4gICAgfSlcbiAgICBjb25zdCBtb2RlbEtleSA9IGFzc2VydE1vZGVsS2V5KG1vZGlmaWVkQ29sbGVjdGlvbilcbiAgICBzY2hlbWFNYXBbbW9kZWxLZXldLmNvbGxlY3Rpb25TbHVnID0gbW9kaWZpZWRDb2xsZWN0aW9uLnNsdWdcbiAgICBjb25zdCBmbGF0dGVuZWRGaWVsZHMgPSBmbGF0dGVuQWxsRmllbGRzKG1vZGlmaWVkQ29sbGVjdGlvbilcbiAgICBpZiAoZmxhdHRlbmVkRmllbGRzICYmIEFycmF5LmlzQXJyYXkoZmxhdHRlbmVkRmllbGRzKSkge1xuICAgICAgZmxhdHRlbmVkRmllbGRzLmZvckVhY2goKGZpZWxkOiBGbGF0dGVuZWRGaWVsZCkgPT4ge1xuICAgICAgICAvLyB3ZSBvbmx5IHdhbnQgdG8gcHJvY2VzcyBmaWVsZHMgdGhhdCBoYXZlIGEgYmV0dGVyQXV0aEZpZWxkS2V5XG4gICAgICAgIC8vIGJlY2F1c2UgaXRzIHBvc3NpYmxlIHRoZSB1c2VyIGhhcyBhZGRlZCBhZGRpdGlvbmFsIGZpZWxkc1xuICAgICAgICBpZiAoZmllbGQuY3VzdG9tPy5iZXR0ZXJBdXRoRmllbGRLZXkpIHtcbiAgICAgICAgICBjb25zdCBmaWVsZEtleSA9IGFzc2VydEZpZWxkS2V5KGZpZWxkLCBtb2RlbEtleSwgbW9kaWZpZWRDb2xsZWN0aW9uLnNsdWcpXG4gICAgICAgICAgc2NoZW1hTWFwW21vZGVsS2V5XS5maWVsZHNbZmllbGRLZXldID0gZmllbGQubmFtZVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH1cbiAgfSlcblxuICByZXR1cm4gc2NoZW1hTWFwXG59XG5cbmZ1bmN0aW9uIGFzc2VydEZpZWxkS2V5KGZpZWxkOiBGbGF0dGVuZWRGaWVsZCwgbW9kZWxLZXk6IGtleW9mIHR5cGVvZiBiYU1vZGVsS2V5LCBjb2xsZWN0aW9uU2x1Zzogc3RyaW5nKSB7XG4gIGNvbnN0IGZpZWxkS2V5ID0gZmllbGQuY3VzdG9tPy5iZXR0ZXJBdXRoRmllbGRLZXkgYXMgc3RyaW5nXG5cbiAgLy8gQXNzZXJ0IHRoYXQgZmllbGRLZXkgaXMgYSB2YWxpZCBrZXkgaW4gdGhlIGJhTW9kZWxGaWVsZEtleXNUb0ZpZWxkTmFtZXMgbWFwcGluZ1xuICBpZiAoIU9iamVjdC52YWx1ZXMoYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lcykuc29tZSgoZmllbGRNYXApID0+IE9iamVjdC5rZXlzKGZpZWxkTWFwKS5pbmNsdWRlcyhmaWVsZEtleSkpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYEludmFsaWQgY3VzdG9tLmJldHRlckF1dGhGaWVsZEtleTogJHtmaWVsZEtleX0gZm9yIGZpZWxkICR7ZmllbGQubmFtZX0gaW4gY29sbGVjdGlvbiAke2NvbGxlY3Rpb25TbHVnfSwgXG4gICAgICAgIG11c3QgYmUgb25lIG9mICR7T2JqZWN0LmtleXMoYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lc1ttb2RlbEtleSBhcyBrZXlvZiB0eXBlb2YgYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lc10pLmpvaW4oJywgJyl9YFxuICAgIClcbiAgfVxuXG4gIHJldHVybiBmaWVsZEtleVxufVxuXG4vKipcbiAqIEFzc2VydHMgdGhhdCBhIGNvbGxlY3Rpb24gaGFzIGEgdmFsaWQgQmV0dGVyQXV0aCBtb2RlbCBrZXkgYW5kIHJldHVybnMgaXRcbiAqXG4gKiBAcGFyYW0gY29sbGVjdGlvbiAtIFRoZSBjb2xsZWN0aW9uIHRvIGNoZWNrIGZvciBhIEJldHRlckF1dGggbW9kZWwga2V5XG4gKiBAcmV0dXJucyBUaGUgQmV0dGVyQXV0aCBtb2RlbCBrZXlcbiAqIEB0aHJvd3MgRXJyb3IgaWYgdGhlIGNvbGxlY3Rpb24gZG9lcyBub3QgaGF2ZSBhIHZhbGlkIEJldHRlckF1dGggbW9kZWwga2V5XG4gKi9cbmZ1bmN0aW9uIGFzc2VydE1vZGVsS2V5KGNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcpOiBrZXlvZiB0eXBlb2YgYmFNb2RlbEtleSB7XG4gIGlmICghY29sbGVjdGlvbi5jdXN0b20/LmJldHRlckF1dGhNb2RlbEtleSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgQ29sbGVjdGlvbiAke2NvbGxlY3Rpb24uc2x1Z30gaXMgbWlzc2luZyBhIGJldHRlckF1dGhNb2RlbEtleSBpbiBpdHMgY3VzdG9tIGZpZWxkYClcbiAgfVxuXG4gIGNvbnN0IG1vZGVsS2V5ID0gY29sbGVjdGlvbi5jdXN0b20uYmV0dGVyQXV0aE1vZGVsS2V5IGFzIGtleW9mIHR5cGVvZiBiYU1vZGVsS2V5XG5cbiAgaWYgKCFPYmplY3QudmFsdWVzKGJhTW9kZWxLZXkpLmluY2x1ZGVzKG1vZGVsS2V5IGFzIGFueSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYENvbGxlY3Rpb24gJHtjb2xsZWN0aW9uLnNsdWd9IGhhcyBhbiBpbnZhbGlkIGJldHRlckF1dGhNb2RlbEtleTogJHttb2RlbEtleX1gKVxuICB9XG5cbiAgcmV0dXJuIG1vZGVsS2V5XG59XG4iXSwibmFtZXMiOlsiYmFNb2RlbEZpZWxkS2V5c1RvRmllbGROYW1lcyIsImJhTW9kZWxLZXkiLCJnZXRBdXRoVGFibGVzIiwiZmxhdHRlbkFsbEZpZWxkcyIsImdldERlYWZ1bHRDb2xsZWN0aW9uU2x1ZyIsImdldERlZmF1bHRDb2xsZWN0aW9uU2NoZW1hTWFwIiwicGx1Z2luT3B0aW9ucyIsInRhYmxlcyIsImJldHRlckF1dGhPcHRpb25zIiwibWFwIiwiT2JqZWN0IiwiZW50cmllcyIsImZvckVhY2giLCJrZXkiLCJ0YWJsZSIsImZpZWxkTmFtZXMiLCJmaWVsZHMiLCJrIiwidiIsInR5cGVkS2V5IiwidmFsdWUiLCJjb2xsZWN0aW9uU2x1ZyIsIm1vZGVsS2V5IiwicmVkdWNlIiwiYWNjIiwiZmllbGQiLCJmaWVsZE1hcHBpbmciLCJ0eXBlZEZpZWxkIiwidXNlciIsInJvbGUiLCJidWlsZENvbGxlY3Rpb25TY2hlbWFNYXAiLCJjb2xsZWN0aW9uT3ZlcnJpZGVzIiwidXNlcnMiLCJhY2NvdW50cyIsInNlc3Npb25zIiwidmVyaWZpY2F0aW9ucyIsInBsdWdpbkNvbGxlY3Rpb25PdmVycmlkZXMiLCJkZWZhdWx0Q29sbGVjdGlvblNjaGVtYU1hcCIsImtleXMiLCJsZW5ndGgiLCJzY2hlbWFNYXAiLCJvdmVycmlkZUZ1bmN0aW9uIiwibW9kaWZpZWRDb2xsZWN0aW9uIiwiY29sbGVjdGlvbiIsInNsdWciLCJhc3NlcnRNb2RlbEtleSIsImZsYXR0ZW5lZEZpZWxkcyIsIkFycmF5IiwiaXNBcnJheSIsImN1c3RvbSIsImJldHRlckF1dGhGaWVsZEtleSIsImZpZWxkS2V5IiwiYXNzZXJ0RmllbGRLZXkiLCJuYW1lIiwidmFsdWVzIiwic29tZSIsImZpZWxkTWFwIiwiaW5jbHVkZXMiLCJFcnJvciIsImpvaW4iLCJiZXR0ZXJBdXRoTW9kZWxLZXkiXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLDRCQUE0QixFQUFFQyxVQUFVLFFBQVEsZUFBYztBQUN2RSxTQUFTQyxhQUFhLFFBQVEsaUJBQWdCO0FBSTlDLFNBQVNDLGdCQUFnQixRQUFRLGlCQUFnQjtBQUVqRCxTQUFTQyx3QkFBd0IsUUFBUSx3QkFBdUI7QUFXaEUsT0FBTyxTQUFTQyw4QkFBOEJDLGFBQXNDO0lBQ2xGLE1BQU1DLFNBQVNMLGNBQWNJLGNBQWNFLGlCQUFpQixJQUFJLENBQUM7SUFDakUsTUFBTUMsTUFBTSxDQUFDO0lBQ2JDLE9BQU9DLE9BQU8sQ0FBQ0osUUFBUUssT0FBTyxDQUFDLENBQUMsQ0FBQ0MsS0FBS0MsTUFBTTtRQUMxQyxNQUFNQyxhQUFhTCxPQUFPQyxPQUFPLENBQUNHLE1BQU1FLE1BQU0sRUFBRVAsR0FBRyxDQUFDLENBQUMsQ0FBQ1EsR0FBR0MsRUFBRSxHQUFLRDtRQUNoRSxNQUFNRSxXQUFXTjtRQUNqQixNQUFNTyxRQUFRO1lBQ1pDLGdCQUFnQmpCLHlCQUF5QjtnQkFBRWtCLFVBQVVIO2dCQUFVYjtZQUFjO1lBQzdFVSxRQUFRRCxXQUFXUSxNQUFNLENBQ3ZCLENBQUNDLEtBQUtDO2dCQUNKLElBQ0VO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
@@ -0,0 +1,6 @@
1
+ import type { BetterAuthPluginOptions } from '../types';
2
+ export declare function getDeafultCollectionSlug({ pluginOptions, modelKey }: {
3
+ pluginOptions: BetterAuthPluginOptions;
4
+ modelKey: string;
5
+ }): string;
6
+ //# sourceMappingURL=get-collection-slug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-collection-slug.d.ts","sourceRoot":"","sources":["../../../../src/better-auth/plugin/helpers/get-collection-slug.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAGvD,wBAAgB,wBAAwB,CAAC,EACvC,aAAa,EACb,QAAQ,EACT,EAAE;IACD,aAAa,EAAE,uBAAuB,CAAA;IACtC,QAAQ,EAAE,MAAM,CAAA;CACjB,GAAG,MAAM,CAiBT"}
@@ -0,0 +1,20 @@
1
+ import { baseSlugs, baModelKeyToSlug } from "../constants";
2
+ export function getDeafultCollectionSlug({ pluginOptions, modelKey }) {
3
+ const baseSlug = baModelKeyToSlug[modelKey] ?? modelKey;
4
+ switch(modelKey){
5
+ case 'user':
6
+ return pluginOptions.users?.slug ?? baseSlugs.users;
7
+ case 'account':
8
+ return pluginOptions.accounts?.slug ?? baseSlugs.accounts;
9
+ case 'session':
10
+ return pluginOptions.sessions?.slug ?? baseSlugs.sessions;
11
+ case 'verification':
12
+ return pluginOptions.verifications?.slug ?? baseSlugs.verifications;
13
+ case 'adminInvitation':
14
+ return pluginOptions.adminInvitations?.slug ?? baseSlugs.adminInvitations;
15
+ default:
16
+ return baseSlug;
17
+ }
18
+ }
19
+
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9nZXQtY29sbGVjdGlvbi1zbHVnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi90eXBlcydcbmltcG9ydCB7IGJhc2VTbHVncywgYmFNb2RlbEtleVRvU2x1ZyB9IGZyb20gJy4uL2NvbnN0YW50cydcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlYWZ1bHRDb2xsZWN0aW9uU2x1Zyh7XG4gIHBsdWdpbk9wdGlvbnMsXG4gIG1vZGVsS2V5XG59OiB7XG4gIHBsdWdpbk9wdGlvbnM6IEJldHRlckF1dGhQbHVnaW5PcHRpb25zXG4gIG1vZGVsS2V5OiBzdHJpbmdcbn0pOiBzdHJpbmcge1xuICBjb25zdCBiYXNlU2x1ZyA9IGJhTW9kZWxLZXlUb1NsdWdbbW9kZWxLZXkgYXMga2V5b2YgdHlwZW9mIGJhTW9kZWxLZXlUb1NsdWddID8/IG1vZGVsS2V5XG4gIFxuICBzd2l0Y2ggKG1vZGVsS2V5KSB7XG4gICAgY2FzZSAndXNlcic6XG4gICAgICByZXR1cm4gcGx1Z2luT3B0aW9ucy51c2Vycz8uc2x1ZyA/PyBiYXNlU2x1Z3MudXNlcnNcbiAgICBjYXNlICdhY2NvdW50JzpcbiAgICAgIHJldHVybiBwbHVnaW5PcHRpb25zLmFjY291bnRzPy5zbHVnID8/IGJhc2VTbHVncy5hY2NvdW50c1xuICAgIGNhc2UgJ3Nlc3Npb24nOlxuICAgICAgcmV0dXJuIHBsdWdpbk9wdGlvbnMuc2Vzc2lvbnM/LnNsdWcgPz8gYmFzZVNsdWdzLnNlc3Npb25zXG4gICAgY2FzZSAndmVyaWZpY2F0aW9uJzpcbiAgICAgIHJldHVybiBwbHVnaW5PcHRpb25zLnZlcmlmaWNhdGlvbnM/LnNsdWcgPz8gYmFzZVNsdWdzLnZlcmlmaWNhdGlvbnNcbiAgICBjYXNlICdhZG1pbkludml0YXRpb24nOlxuICAgICAgcmV0dXJuIHBsdWdpbk9wdGlvbnMuYWRtaW5JbnZpdGF0aW9ucz8uc2x1ZyA/PyBiYXNlU2x1Z3MuYWRtaW5JbnZpdGF0aW9uc1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gYmFzZVNsdWdcbiAgfVxufSAiXSwibmFtZXMiOlsiYmFzZVNsdWdzIiwiYmFNb2RlbEtleVRvU2x1ZyIsImdldERlYWZ1bHRDb2xsZWN0aW9uU2x1ZyIsInBsdWdpbk9wdGlvbnMiLCJtb2RlbEtleSIsImJhc2VTbHVnIiwidXNlcnMiLCJzbHVnIiwiYWNjb3VudHMiLCJzZXNzaW9ucyIsInZlcmlmaWNhdGlvbnMiLCJhZG1pbkludml0YXRpb25zIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSxTQUFTLEVBQUVDLGdCQUFnQixRQUFRLGVBQWM7QUFFMUQsT0FBTyxTQUFTQyx5QkFBeUIsRUFDdkNDLGFBQWEsRUFDYkMsUUFBUSxFQUlUO0lBQ0MsTUFBTUMsV0FBV0osZ0JBQWdCLENBQUNHLFNBQTBDLElBQUlBO0lBRWhGLE9BQVFBO1FBQ04sS0FBSztZQUNILE9BQU9ELGNBQWNHLEtBQUssRUFBRUMsUUFBUVAsVUFBVU0sS0FBSztRQUNyRCxLQUFLO1lBQ0gsT0FBT0gsY0FBY0ssUUFBUSxFQUFFRCxRQUFRUCxVQUFVUSxRQUFRO1FBQzNELEtBQUs7WUFDSCxPQUFPTCxjQUFjTSxRQUFRLEVBQUVGLFFBQVFQLFVBQVVTLFFBQVE7UUFDM0QsS0FBSztZQUNILE9BQU9OLGNBQWNPLGFBQWEsRUFBRUgsUUFBUVAsVUFBVVUsYUFBYTtRQUNyRSxLQUFLO1lBQ0gsT0FBT1AsY0FBY1EsZ0JBQWdCLEVBQUVKLFFBQVFQLFVBQVVXLGdCQUFnQjtRQUMzRTtZQUNFLE9BQU9OO0lBQ1g7QUFDRiJ9
@@ -0,0 +1,41 @@
1
+ import type { Collection, CollectionConfig, Field } from 'payload';
2
+ /**
3
+ * Retrieves a collection from the collection map based on its Better Auth model key
4
+ *
5
+ * This function searches through the provided collection map to find a collection
6
+ * that has been marked with a specific Better Auth model key in its custom properties.
7
+ * It's used to map between Better Auth's internal model keys and Payload CMS collections.
8
+ *
9
+ * @param collectionMap - Map of all available collections
10
+ * @param betterAuthModelKey - The Better Auth model key to search for
11
+ * @returns The matched collection configuration
12
+ * @throws {Error} If no collection with the specified Better Auth model key is found
13
+ */
14
+ export declare function getMappedCollection({ collectionMap, betterAuthModelKey }: {
15
+ collectionMap: Record<string, CollectionConfig>;
16
+ betterAuthModelKey: string;
17
+ }): CollectionConfig;
18
+ interface MappedField extends Omit<Field, 'type'> {
19
+ name: string;
20
+ type: Exclude<Field['type'], 'tabs' | 'row' | 'collapsible'>;
21
+ }
22
+ /**
23
+ * Retrieves a field from a collection based on its Better Auth field key
24
+ *
25
+ * This function searches through the fields of a provided collection to find a field
26
+ * that has been marked with a specific Better Auth field key in its custom properties.
27
+ * It's used to map between Better Auth's internal field keys and Payload CMS field configurations.
28
+ *
29
+ * @param collection - The collection configuration to search within
30
+ * @param betterAuthFieldKey - The Better Auth field key to search for
31
+ * @returns The matched field configuration with a guaranteed name and non-UI type
32
+ * @throws {Error} If no field with the specified Better Auth field key is found
33
+ * @throws {Error} If the found field is a UI-only field type (tabs, row, collapsible)
34
+ */
35
+ export declare function getMappedField({ collection, betterAuthFieldKey }: {
36
+ collection: CollectionConfig;
37
+ betterAuthFieldKey: string;
38
+ }): MappedField;
39
+ export declare function transformCollectionsToCollectionConfigs(collections: Record<string, Collection>): Record<string, CollectionConfig>;
40
+ export {};
41
+ //# sourceMappingURL=get-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-collection.d.ts","sourceRoot":"","sources":["../../../../src/better-auth/plugin/helpers/get-collection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAElE;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,aAAa,EACb,kBAAkB,EACnB,EAAE;IACD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IAC/C,kBAAkB,EAAE,MAAM,CAAA;CAC3B,GAAG,gBAAgB,CAcnB;AAED,UAAU,WAAY,SAAQ,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC;IAC/C,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,aAAa,CAAC,CAAA;CAC7D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,EAC7B,UAAU,EACV,kBAAkB,EACnB,EAAE;IACD,UAAU,EAAE,gBAAgB,CAAA;IAC5B,kBAAkB,EAAE,MAAM,CAAA;CAC3B,GAAG,WAAW,CAmBd;AAED,wBAAgB,uCAAuC,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAIjI"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Retrieves a collection from the collection map based on its Better Auth model key
3
+ *
4
+ * This function searches through the provided collection map to find a collection
5
+ * that has been marked with a specific Better Auth model key in its custom properties.
6
+ * It's used to map between Better Auth's internal model keys and Payload CMS collections.
7
+ *
8
+ * @param collectionMap - Map of all available collections
9
+ * @param betterAuthModelKey - The Better Auth model key to search for
10
+ * @returns The matched collection configuration
11
+ * @throws {Error} If no collection with the specified Better Auth model key is found
12
+ */ export function getMappedCollection({ collectionMap, betterAuthModelKey }) {
13
+ // Find the collection that has the matching betterAuthModelKey in its custom properties
14
+ const collection = Object.values(collectionMap).find((c)=>{
15
+ return c.custom?.betterAuthModelKey === betterAuthModelKey;
16
+ });
17
+ // Throw an error if no matching collection is found
18
+ if (!collection) {
19
+ const error = new Error(`Collection with key ${betterAuthModelKey} not found`);
20
+ Error.captureStackTrace(error, getMappedCollection);
21
+ throw error;
22
+ }
23
+ return collection;
24
+ }
25
+ /**
26
+ * Retrieves a field from a collection based on its Better Auth field key
27
+ *
28
+ * This function searches through the fields of a provided collection to find a field
29
+ * that has been marked with a specific Better Auth field key in its custom properties.
30
+ * It's used to map between Better Auth's internal field keys and Payload CMS field configurations.
31
+ *
32
+ * @param collection - The collection configuration to search within
33
+ * @param betterAuthFieldKey - The Better Auth field key to search for
34
+ * @returns The matched field configuration with a guaranteed name and non-UI type
35
+ * @throws {Error} If no field with the specified Better Auth field key is found
36
+ * @throws {Error} If the found field is a UI-only field type (tabs, row, collapsible)
37
+ */ export function getMappedField({ collection, betterAuthFieldKey }) {
38
+ // Find the field that has the matching betterAuthFieldKey in its custom properties
39
+ const field = collection.fields.find((f)=>f.custom?.betterAuthFieldKey === betterAuthFieldKey);
40
+ // Throw an error if no matching field is found
41
+ if (!field) {
42
+ throw new Error(`Field with key ${betterAuthFieldKey} not found`);
43
+ }
44
+ // Filter out UI-based fields that don't have a name or aren't data fields
45
+ // These field types are used for layout purposes only and cannot store data
46
+ switch(field.type){
47
+ case 'tabs':
48
+ case 'row':
49
+ case 'collapsible':
50
+ throw new Error(`Field with key ${betterAuthFieldKey} is a UI-only field and cannot be used for data`);
51
+ default:
52
+ return field;
53
+ }
54
+ }
55
+ export function transformCollectionsToCollectionConfigs(collections) {
56
+ return Object.fromEntries(Object.entries(collections).map(([slug, collection])=>[
57
+ slug,
58
+ collection.config
59
+ ]));
60
+ }
61
+
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9nZXQtY29sbGVjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24sIENvbGxlY3Rpb25Db25maWcsIEZpZWxkIH0gZnJvbSAncGF5bG9hZCdcblxuLyoqXG4gKiBSZXRyaWV2ZXMgYSBjb2xsZWN0aW9uIGZyb20gdGhlIGNvbGxlY3Rpb24gbWFwIGJhc2VkIG9uIGl0cyBCZXR0ZXIgQXV0aCBtb2RlbCBrZXlcbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHNlYXJjaGVzIHRocm91Z2ggdGhlIHByb3ZpZGVkIGNvbGxlY3Rpb24gbWFwIHRvIGZpbmQgYSBjb2xsZWN0aW9uXG4gKiB0aGF0IGhhcyBiZWVuIG1hcmtlZCB3aXRoIGEgc3BlY2lmaWMgQmV0dGVyIEF1dGggbW9kZWwga2V5IGluIGl0cyBjdXN0b20gcHJvcGVydGllcy5cbiAqIEl0J3MgdXNlZCB0byBtYXAgYmV0d2VlbiBCZXR0ZXIgQXV0aCdzIGludGVybmFsIG1vZGVsIGtleXMgYW5kIFBheWxvYWQgQ01TIGNvbGxlY3Rpb25zLlxuICpcbiAqIEBwYXJhbSBjb2xsZWN0aW9uTWFwIC0gTWFwIG9mIGFsbCBhdmFpbGFibGUgY29sbGVjdGlvbnNcbiAqIEBwYXJhbSBiZXR0ZXJBdXRoTW9kZWxLZXkgLSBUaGUgQmV0dGVyIEF1dGggbW9kZWwga2V5IHRvIHNlYXJjaCBmb3JcbiAqIEByZXR1cm5zIFRoZSBtYXRjaGVkIGNvbGxlY3Rpb24gY29uZmlndXJhdGlvblxuICogQHRocm93cyB7RXJyb3J9IElmIG5vIGNvbGxlY3Rpb24gd2l0aCB0aGUgc3BlY2lmaWVkIEJldHRlciBBdXRoIG1vZGVsIGtleSBpcyBmb3VuZFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWFwcGVkQ29sbGVjdGlvbih7XG4gIGNvbGxlY3Rpb25NYXAsXG4gIGJldHRlckF1dGhNb2RlbEtleVxufToge1xuICBjb2xsZWN0aW9uTWFwOiBSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uQ29uZmlnPlxuICBiZXR0ZXJBdXRoTW9kZWxLZXk6IHN0cmluZ1xufSk6IENvbGxlY3Rpb25Db25maWcge1xuICAvLyBGaW5kIHRoZSBjb2xsZWN0aW9uIHRoYXQgaGFzIHRoZSBtYXRjaGluZyBiZXR0ZXJBdXRoTW9kZWxLZXkgaW4gaXRzIGN1c3RvbSBwcm9wZXJ0aWVzXG4gIGNvbnN0IGNvbGxlY3Rpb24gPSBPYmplY3QudmFsdWVzKGNvbGxlY3Rpb25NYXApLmZpbmQoKGMpID0+IHtcbiAgICByZXR1cm4gYy5jdXN0b20/LmJldHRlckF1dGhNb2RlbEtleSA9PT0gYmV0dGVyQXV0aE1vZGVsS2V5XG4gIH0pXG5cbiAgLy8gVGhyb3cgYW4gZXJyb3IgaWYgbm8gbWF0Y2hpbmcgY29sbGVjdGlvbiBpcyBmb3VuZFxuICBpZiAoIWNvbGxlY3Rpb24pIHtcbiAgICBjb25zdCBlcnJvciA9IG5ldyBFcnJvcihgQ29sbGVjdGlvbiB3aXRoIGtleSAke2JldHRlckF1dGhNb2RlbEtleX0gbm90IGZvdW5kYClcbiAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZShlcnJvciwgZ2V0TWFwcGVkQ29sbGVjdGlvbilcbiAgICB0aHJvdyBlcnJvclxuICB9XG5cbiAgcmV0dXJuIGNvbGxlY3Rpb25cbn1cblxuaW50ZXJmYWNlIE1hcHBlZEZpZWxkIGV4dGVuZHMgT21pdDxGaWVsZCwgJ3R5cGUnPiB7XG4gIG5hbWU6IHN0cmluZ1xuICB0eXBlOiBFeGNsdWRlPEZpZWxkWyd0eXBlJ10sICd0YWJzJyB8ICdyb3cnIHwgJ2NvbGxhcHNpYmxlJz5cbn1cblxuLyoqXG4gKiBSZXRyaWV2ZXMgYSBmaWVsZCBmcm9tIGEgY29sbGVjdGlvbiBiYXNlZCBvbiBpdHMgQmV0dGVyIEF1dGggZmllbGQga2V5XG4gKlxuICogVGhpcyBmdW5jdGlvbiBzZWFyY2hlcyB0aHJvdWdoIHRoZSBmaWVsZHMgb2YgYSBwcm92aWRlZCBjb2xsZWN0aW9uIHRvIGZpbmQgYSBmaWVsZFxuICogdGhhdCBoYXMgYmVlbiBtYXJrZWQgd2l0aCBhIHNwZWNpZmljIEJldHRlciBBdXRoIGZpZWxkIGtleSBpbiBpdHMgY3VzdG9tIHByb3BlcnRpZXMuXG4gKiBJdCdzIHVzZWQgdG8gbWFwIGJldHdlZW4gQmV0dGVyIEF1dGgncyBpbnRlcm5hbCBmaWVsZCBrZXlzIGFuZCBQYXlsb2FkIENNUyBmaWVsZCBjb25maWd1cmF0aW9ucy5cbiAqXG4gKiBAcGFyYW0gY29sbGVjdGlvbiAtIFRoZSBjb2xsZWN0aW9uIGNvbmZpZ3VyYXRpb24gdG8gc2VhcmNoIHdpdGhpblxuICogQHBhcmFtIGJldHRlckF1dGhGaWVsZEtleSAtIFRoZSBCZXR0ZXIgQXV0aCBmaWVsZCBrZXkgdG8gc2VhcmNoIGZvclxuICogQHJldHVybnMgVGhlIG1hdGNoZWQgZmllbGQgY29uZmlndXJhdGlvbiB3aXRoIGEgZ3VhcmFudGVlZCBuYW1lIGFuZCBub24tVUkgdHlwZVxuICogQHRocm93cyB7RXJyb3J9IElmIG5vIGZpZWxkIHdpdGggdGhlIHNwZWNpZmllZCBCZXR0ZXIgQXV0aCBmaWVsZCBrZXkgaXMgZm91bmRcbiAqIEB0aHJvd3Mge0Vycm9yfSBJZiB0aGUgZm91bmQgZmllbGQgaXMgYSBVSS1vbmx5IGZpZWxkIHR5cGUgKHRhYnMsIHJvdywgY29sbGFwc2libGUpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXBwZWRGaWVsZCh7XG4gIGNvbGxlY3Rpb24sXG4gIGJldHRlckF1dGhGaWVsZEtleVxufToge1xuICBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnXG4gIGJldHRlckF1dGhGaWVsZEtleTogc3RyaW5nXG59KTogTWFwcGVkRmllbGQge1xuICAvLyBGaW5kIHRoZSBmaWVsZCB0aGF0IGhhcyB0aGUgbWF0Y2hpbmcgYmV0dGVyQXV0aEZpZWxkS2V5IGluIGl0cyBjdXN0b20gcHJvcGVydGllc1xuICBjb25zdCBmaWVsZCA9IGNvbGxlY3Rpb24uZmllbGRzLmZpbmQoKGYpID0+IGYuY3VzdG9tPy5iZXR0ZXJBdXRoRmllbGRLZXkgPT09IGJldHRlckF1dGhGaWVsZEtleSlcblxuICAvLyBUaHJvdyBhbiBlcnJvciBpZiBubyBtYXRjaGluZyBmaWVsZCBpcyBmb3VuZFxuICBpZiAoIWZpZWxkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBGaWVsZCB3aXRoIGtleSAke2JldHRlckF1dGhGaWVsZEtleX0gbm90IGZvdW5kYClcbiAgfVxuXG4gIC8vIEZpbHRlciBvdXQgVUktYmFzZWQgZmllbGRzIHRoYXQgZG9uJ3QgaGF2ZSBhIG5hbWUgb3IgYXJlbid0IGRhdGEgZmllbGRzXG4gIC8vIFRoZXNlIGZpZWxkIHR5cGVzIGFyZSB1c2VkIGZvciBsYXlvdXQgcHVycG9zZXMgb25seSBhbmQgY2Fubm90IHN0b3JlIGRhdGFcbiAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgY2FzZSAndGFicyc6XG4gICAgY2FzZSAncm93JzpcbiAgICBjYXNlICdjb2xsYXBzaWJsZSc6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZpZWxkIHdpdGgga2V5ICR7YmV0dGVyQXV0aEZpZWxkS2V5fSBpcyBhIFVJLW9ubHkgZmllbGQgYW5kIGNhbm5vdCBiZSB1c2VkIGZvciBkYXRhYClcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGZpZWxkIGFzIE1hcHBlZEZpZWxkXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNvbGxlY3Rpb25zVG9Db2xsZWN0aW9uQ29uZmlncyhjb2xsZWN0aW9uczogUmVjb3JkPHN0cmluZywgQ29sbGVjdGlvbj4pOiBSZWNvcmQ8c3RyaW5nLCBDb2xsZWN0aW9uQ29uZmlnPiB7XG4gIHJldHVybiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoY29sbGVjdGlvbnMpLm1hcCgoW3NsdWcsIGNvbGxlY3Rpb25dKSA9PiBbc2x1ZywgY29sbGVjdGlvbi5jb25maWddKVxuICApXG59XG4iXSwibmFtZXMiOlsiZ2V0TWFwcGVkQ29sbGVjdGlvbiIsImNvbGxlY3Rpb25NYXAiLCJiZXR0ZXJBdXRoTW9kZWxLZXkiLCJjb2xsZWN0aW9uIiwiT2JqZWN0IiwidmFsdWVzIiwiZmluZCIsImMiLCJjdXN0b20iLCJlcnJvciIsIkVycm9yIiwiY2FwdHVyZVN0YWNrVHJhY2UiLCJnZXRNYXBwZWRGaWVsZCIsImJldHRlckF1dGhGaWVsZEtleSIsImZpZWxkIiwiZmllbGRzIiwiZiIsInR5cGUiLCJ0cmFuc2Zvcm1Db2xsZWN0aW9uc1RvQ29sbGVjdGlvbkNvbmZpZ3MiLCJjb2xsZWN0aW9ucyIsImZyb21FbnRyaWVzIiwiZW50cmllcyIsIm1hcCIsInNsdWciLCJjb25maWciXSwibWFwcGluZ3MiOiJBQUVBOzs7Ozs7Ozs7OztDQVdDLEdBQ0QsT0FBTyxTQUFTQSxvQkFBb0IsRUFDbENDLGFBQWEsRUFDYkMsa0JBQWtCLEVBSW5CO0lBQ0Msd0ZBQXdGO0lBQ3hGLE1BQU1DLGFBQWFDLE9BQU9DLE1BQU0sQ0FBQ0osZUFBZUssSUFBSSxDQUFDLENBQUNDO1FBQ3BELE9BQU9BLEVBQUVDLE1BQU0sRUFBRU4sdUJBQXVCQTtJQUMxQztJQUVBLG9EQUFvRDtJQUNwRCxJQUFJLENBQUNDLFlBQVk7UUFDZixNQUFNTSxRQUFRLElBQUlDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRVIsbUJBQW1CLFVBQVUsQ0FBQztRQUM3RVEsTUFBTUMsaUJBQWlCLENBQUNGLE9BQU9UO1FBQy9CLE1BQU1TO0lBQ1I7SUFFQSxPQUFPTjtBQUNUO0FBT0E7Ozs7Ozs7Ozs7OztDQVlDLEdBQ0QsT0FBTyxTQUFTUyxlQUFlLEVBQzdCVCxVQUFVLEVBQ1ZVLGtCQUFrQixFQUluQjtJQUNDLG1GQUFtRjtJQUNuRixNQUFNQyxRQUFRWCxXQUFXWSxNQUFNLENBQUNULElBQUksQ0FBQyxDQUFDVSxJQUFNQSxFQUFFUixNQUFNLEVBQUVLLHVCQUF1QkE7SUFFN0UsK0NBQStDO0lBQy9DLElBQUksQ0FBQ0MsT0FBTztRQUNWLE1BQU0sSUFBSUosTUFBTSxDQUFDLGVBQWUsRUFBRUcsbUJBQW1CLFVBQVUsQ0FBQztJQUNsRTtJQUVBLDBFQUEwRTtJQUMxRSw0RUFBNEU7SUFDNUUsT0FBUUMsTUFBTUcsSUFBSTtRQUNoQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7WUFDSCxNQUFNLElBQUlQLE1BQU0sQ0FBQyxlQUFlLEVBQUVHLG1CQUFtQiwrQ0FBK0MsQ0FBQztRQUN2RztZQUNFLE9BQU9DO0lBQ1g7QUFDRjtBQUVBLE9BQU8sU0FBU0ksd0NBQXdDQyxXQUF1QztJQUM3RixPQUFPZixPQUFPZ0IsV0FBVyxDQUN2QmhCLE9BQU9pQixPQUFPLENBQUNGLGFBQWFHLEdBQUcsQ0FBQyxDQUFDLENBQUNDLE1BQU1wQixXQUFXLEdBQUs7WUFBQ29CO1lBQU1wQixXQUFXcUIsTUFBTTtTQUFDO0FBRXJGIn0=
@@ -1,13 +1,8 @@
1
1
  import { Session, User } from 'better-auth';
2
- import type { Config, Payload } from 'payload';
3
- type CollectionSlugs = {
4
- userCollectionSlug: string;
5
- sessionCollectionSlug: string;
6
- };
7
- export declare function prepareUser({ user, payloadConfig, collectionSlugs }: {
2
+ import type { CollectionConfig } from 'payload';
3
+ export declare function prepareUser({ user, userCollection }: {
8
4
  user: User & Record<string, any>;
9
- payloadConfig: Payload['config'] | Config | Promise<Payload['config'] | Config>;
10
- collectionSlugs: CollectionSlugs;
5
+ userCollection: CollectionConfig;
11
6
  }): Promise<{
12
7
  id: string;
13
8
  name: string;
@@ -17,11 +12,9 @@ export declare function prepareUser({ user, payloadConfig, collectionSlugs }: {
17
12
  updatedAt: Date;
18
13
  image?: string | null | undefined;
19
14
  } & Record<string, any>>;
20
- export declare function prepareSession({ user, session, payloadConfig, collectionSlugs }: {
21
- user: User & Record<string, any>;
15
+ export declare function prepareSession({ session, sessionCollection }: {
22
16
  session: Session & Record<string, any>;
23
- payloadConfig: Payload['config'] | Config | Promise<Payload['config'] | Config>;
24
- collectionSlugs: CollectionSlugs;
17
+ sessionCollection: CollectionConfig;
25
18
  }): Promise<{
26
19
  id: string;
27
20
  createdAt: Date;
@@ -36,13 +29,13 @@ export declare function prepareSession({ user, session, payloadConfig, collectio
36
29
  * Prepares session data for cookie cache by filtering user and session objects
37
30
  * based on the payload configuration's 'saveToJwt' property
38
31
  */
39
- export declare function prepareSessionData({ sessionData, payloadConfig, collectionSlugs }: {
32
+ export declare function prepareSessionData({ sessionData, usersCollection, sessionsCollection }: {
40
33
  sessionData: {
41
34
  session: Session & Record<string, any>;
42
35
  user: User & Record<string, any>;
43
36
  };
44
- payloadConfig: Payload['config'] | Config | Promise<Payload['config'] | Config>;
45
- collectionSlugs: CollectionSlugs;
37
+ usersCollection: CollectionConfig;
38
+ sessionsCollection: CollectionConfig;
46
39
  }): Promise<{
47
40
  session: {
48
41
  id: string;
@@ -64,5 +57,4 @@ export declare function prepareSessionData({ sessionData, payloadConfig, collect
64
57
  image?: string | null | undefined;
65
58
  } & Record<string, any>;
66
59
  } | null>;
67
- export {};
68
60
  //# sourceMappingURL=prepare-session-data.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-session-data.d.ts","sourceRoot":"","sources":["../../../../src/better-auth/plugin/helpers/prepare-session-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAE9C,KAAK,eAAe,GAAG;IACrB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qBAAqB,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,wBAAsB,WAAW,CAAC,EAChC,IAAI,EACJ,aAAa,EACb,eAAe,EAChB,EAAE;IACD,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAChC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;IAC/E,eAAe,EAAE,eAAe,CAAA;CACjC;;;;;;;;yBAiBA;AAED,wBAAsB,cAAc,CAAC,EACnC,IAAI,EACJ,OAAO,EACP,aAAa,EACb,eAAe,EAChB,EAAE;IACD,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAChC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACtC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;IAC/E,eAAe,EAAE,eAAe,CAAA;CACjC;;;;;;;;;yBAuBA;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,WAAW,EACX,aAAa,EACb,eAAe,EAChB,EAAE;IACD,WAAW,EAAE;QACX,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACtC,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KACjC,CAAA;IACD,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAA;IAC/E,eAAe,EAAE,eAAe,CAAA;CACjC;;;;;;;;;;;;;;;;;;;;UAYA"}
1
+ {"version":3,"file":"prepare-session-data.d.ts","sourceRoot":"","sources":["../../../../src/better-auth/plugin/helpers/prepare-session-data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAc,gBAAgB,EAAmB,MAAM,SAAS,CAAA;AAK5E,wBAAsB,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE;IAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,cAAc,EAAE,gBAAgB,CAAA;CAAE;;;;;;;;yBAWjI;AAED,wBAAsB,cAAc,CAAC,EACnC,OAAO,EACP,iBAAiB,EAClB,EAAE;IACD,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACtC,iBAAiB,EAAE,gBAAgB,CAAA;CACpC;;;;;;;;;yBAiBA;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,EACvC,WAAW,EACX,eAAe,EACf,kBAAkB,EACnB,EAAE;IACD,WAAW,EAAE;QACX,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACtC,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KACjC,CAAA;IACD,eAAe,EAAE,gBAAgB,CAAA;IACjC,kBAAkB,EAAE,gBAAgB,CAAA;CACrC;;;;;;;;;;;;;;;;;;;;UAYA"}
@@ -1,30 +1,22 @@
1
1
  import { getFieldsToSign } from "payload";
2
- export async function prepareUser({ user, payloadConfig, collectionSlugs }) {
3
- const awaitedPayloadConfig = await payloadConfig;
4
- const { userCollectionSlug } = collectionSlugs;
5
- const userCollection = awaitedPayloadConfig?.collections?.find((c)=>c.slug === userCollectionSlug);
6
- if (!userCollection) throw new Error(`User collection with slug '${userCollectionSlug}' not found`);
2
+ export async function prepareUser({ user, userCollection }) {
7
3
  const newUser = getFieldsToSign({
8
4
  collectionConfig: userCollection,
9
5
  email: user.email,
10
6
  user: {
11
7
  ...user,
12
- collection: userCollectionSlug
8
+ collection: userCollection.slug
13
9
  }
14
10
  });
15
11
  return newUser;
16
12
  }
17
- export async function prepareSession({ user, session, payloadConfig, collectionSlugs }) {
18
- const awaitedPayloadConfig = await payloadConfig;
19
- const { sessionCollectionSlug, userCollectionSlug } = collectionSlugs;
20
- const sessionCollection = awaitedPayloadConfig?.collections?.find((c)=>c.slug === sessionCollectionSlug);
21
- if (!sessionCollection) return session;
13
+ export async function prepareSession({ session, sessionCollection }) {
22
14
  const filteredSession = getFieldsToSign({
23
15
  collectionConfig: sessionCollection,
24
- email: user.email,
16
+ email: '',
25
17
  user: {
26
18
  ...session,
27
- collection: sessionCollectionSlug
19
+ collection: sessionCollection.slug
28
20
  }
29
21
  });
30
22
  delete filteredSession.email;
@@ -37,18 +29,15 @@ export async function prepareSession({ user, session, payloadConfig, collectionS
37
29
  /**
38
30
  * Prepares session data for cookie cache by filtering user and session objects
39
31
  * based on the payload configuration's 'saveToJwt' property
40
- */ export async function prepareSessionData({ sessionData, payloadConfig, collectionSlugs }) {
32
+ */ export async function prepareSessionData({ sessionData, usersCollection, sessionsCollection }) {
41
33
  if (!sessionData || !sessionData.user) return null;
42
34
  const newUser = await prepareUser({
43
35
  user: sessionData.user,
44
- payloadConfig,
45
- collectionSlugs
36
+ userCollection: usersCollection
46
37
  });
47
38
  const newSession = await prepareSession({
48
- user: sessionData.user,
49
39
  session: sessionData.session,
50
- payloadConfig,
51
- collectionSlugs
40
+ sessionCollection: sessionsCollection
52
41
  });
53
42
  const newSessionData = {
54
43
  session: newSession,
@@ -57,4 +46,4 @@ export async function prepareSession({ user, session, payloadConfig, collectionS
57
46
  return newSessionData;
58
47
  }
59
48
 
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9wcmVwYXJlLXNlc3Npb24tZGF0YS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXNzaW9uLCBVc2VyIH0gZnJvbSAnYmV0dGVyLWF1dGgnXG5pbXBvcnQgeyBnZXRGaWVsZHNUb1NpZ24gfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBDb25maWcsIFBheWxvYWQgfSBmcm9tICdwYXlsb2FkJ1xuXG50eXBlIENvbGxlY3Rpb25TbHVncyA9IHtcbiAgdXNlckNvbGxlY3Rpb25TbHVnOiBzdHJpbmdcbiAgc2Vzc2lvbkNvbGxlY3Rpb25TbHVnOiBzdHJpbmdcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXBhcmVVc2VyKHtcbiAgdXNlcixcbiAgcGF5bG9hZENvbmZpZyxcbiAgY29sbGVjdGlvblNsdWdzXG59OiB7XG4gIHVzZXI6IFVzZXIgJiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIHBheWxvYWRDb25maWc6IFBheWxvYWRbJ2NvbmZpZyddIHwgQ29uZmlnIHwgUHJvbWlzZTxQYXlsb2FkWydjb25maWcnXSB8IENvbmZpZz5cbiAgY29sbGVjdGlvblNsdWdzOiBDb2xsZWN0aW9uU2x1Z3Ncbn0pIHtcbiAgY29uc3QgYXdhaXRlZFBheWxvYWRDb25maWcgPSBhd2FpdCBwYXlsb2FkQ29uZmlnXG4gIGNvbnN0IHsgdXNlckNvbGxlY3Rpb25TbHVnIH0gPSBjb2xsZWN0aW9uU2x1Z3NcbiAgY29uc3QgdXNlckNvbGxlY3Rpb24gPSBhd2FpdGVkUGF5bG9hZENvbmZpZz8uY29sbGVjdGlvbnM/LmZpbmQoKGMpID0+IGMuc2x1ZyA9PT0gdXNlckNvbGxlY3Rpb25TbHVnKVxuXG4gIGlmICghdXNlckNvbGxlY3Rpb24pIHRocm93IG5ldyBFcnJvcihgVXNlciBjb2xsZWN0aW9uIHdpdGggc2x1ZyAnJHt1c2VyQ29sbGVjdGlvblNsdWd9JyBub3QgZm91bmRgKVxuXG4gIGNvbnN0IG5ld1VzZXIgPSBnZXRGaWVsZHNUb1NpZ24oe1xuICAgIGNvbGxlY3Rpb25Db25maWc6IHVzZXJDb2xsZWN0aW9uLFxuICAgIGVtYWlsOiB1c2VyLmVtYWlsLFxuICAgIHVzZXI6IHtcbiAgICAgIC4uLnVzZXIsXG4gICAgICBjb2xsZWN0aW9uOiB1c2VyQ29sbGVjdGlvblNsdWdcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIG5ld1VzZXIgYXMgVXNlciAmIFJlY29yZDxzdHJpbmcsIGFueT5cbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXBhcmVTZXNzaW9uKHtcbiAgdXNlcixcbiAgc2Vzc2lvbixcbiAgcGF5bG9hZENvbmZpZyxcbiAgY29sbGVjdGlvblNsdWdzXG59OiB7XG4gIHVzZXI6IFVzZXIgJiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIHNlc3Npb246IFNlc3Npb24gJiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gIHBheWxvYWRDb25maWc6IFBheWxvYWRbJ2NvbmZpZyddIHwgQ29uZmlnIHwgUHJvbWlzZTxQYXlsb2FkWydjb25maWcnXSB8IENvbmZpZz5cbiAgY29sbGVjdGlvblNsdWdzOiBDb2xsZWN0aW9uU2x1Z3Ncbn0pIHtcbiAgY29uc3QgYXdhaXRlZFBheWxvYWRDb25maWcgPSBhd2FpdCBwYXlsb2FkQ29uZmlnXG4gIGNvbnN0IHsgc2Vzc2lvbkNvbGxlY3Rpb25TbHVnLCB1c2VyQ29sbGVjdGlvblNsdWcgfSA9IGNvbGxlY3Rpb25TbHVnc1xuICBjb25zdCBzZXNzaW9uQ29sbGVjdGlvbiA9IGF3YWl0ZWRQYXlsb2FkQ29uZmlnPy5jb2xsZWN0aW9ucz8uZmluZCgoYykgPT4gYy5zbHVnID09PSBzZXNzaW9uQ29sbGVjdGlvblNsdWcpXG5cbiAgaWYgKCFzZXNzaW9uQ29sbGVjdGlvbikgcmV0dXJuIHNlc3Npb25cblxuICBjb25zdCBmaWx0ZXJlZFNlc3Npb24gPSBnZXRGaWVsZHNUb1NpZ24oe1xuICAgIGNvbGxlY3Rpb25Db25maWc6IHNlc3Npb25Db2xsZWN0aW9uLFxuICAgIGVtYWlsOiB1c2VyLmVtYWlsLFxuICAgIHVzZXI6IHtcbiAgICAgIC4uLnNlc3Npb24sXG4gICAgICBjb2xsZWN0aW9uOiBzZXNzaW9uQ29sbGVjdGlvblNsdWdcbiAgICB9XG4gIH0pXG5cbiAgZGVsZXRlIGZpbHRlcmVkU2Vzc2lvbi5lbWFpbFxuICBkZWxldGUgZmlsdGVyZWRTZXNzaW9uLmNvbGxlY3Rpb25cbiAgT2JqZWN0LmFzc2lnbihmaWx0ZXJlZFNlc3Npb24sIHtcbiAgICB1c2VySWQ6IHNlc3Npb24udXNlcklkXG4gIH0pXG5cbiAgcmV0dXJuIGZpbHRlcmVkU2Vzc2lvbiBhcyBTZXNzaW9uICYgUmVjb3JkPHN0cmluZywgYW55PlxufVxuXG4vKipcbiAqIFByZXBhcmVzIHNlc3Npb24gZGF0YSBmb3IgY29va2llIGNhY2hlIGJ5IGZpbHRlcmluZyB1c2VyIGFuZCBzZXNzaW9uIG9iamVjdHNcbiAqIGJhc2VkIG9uIHRoZSBwYXlsb2FkIGNvbmZpZ3VyYXRpb24ncyAnc2F2ZVRvSnd0JyBwcm9wZXJ0eVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZVNlc3Npb25EYXRhKHtcbiAgc2Vzc2lvbkRhdGEsXG4gIHBheWxvYWRDb25maWcsXG4gIGNvbGxlY3Rpb25TbHVnc1xufToge1xuICBzZXNzaW9uRGF0YToge1xuICAgIHNlc3Npb246IFNlc3Npb24gJiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4gICAgdXNlcjogVXNlciAmIFJlY29yZDxzdHJpbmcsIGFueT5cbiAgfVxuICBwYXlsb2FkQ29uZmlnOiBQYXlsb2FkWydjb25maWcnXSB8IENvbmZpZyB8IFByb21pc2U8UGF5bG9hZFsnY29uZmlnJ10gfCBDb25maWc+XG4gIGNvbGxlY3Rpb25TbHVnczogQ29sbGVjdGlvblNsdWdzXG59KSB7XG4gIGlmICghc2Vzc2lvbkRhdGEgfHwgIXNlc3Npb25EYXRhLnVzZXIpIHJldHVybiBudWxsXG5cbiAgY29uc3QgbmV3VXNlciA9IGF3YWl0IHByZXBhcmVVc2VyKHsgdXNlcjogc2Vzc2lvbkRhdGEudXNlciwgcGF5bG9hZENvbmZpZywgY29sbGVjdGlvblNsdWdzIH0pXG4gIGNvbnN0IG5ld1Nlc3Npb24gPSBhd2FpdCBwcmVwYXJlU2Vzc2lvbih7IHVzZXI6IHNlc3Npb25EYXRhLnVzZXIsIHNlc3Npb246IHNlc3Npb25EYXRhLnNlc3Npb24sIHBheWxvYWRDb25maWcsIGNvbGxlY3Rpb25TbHVncyB9KVxuXG4gIGNvbnN0IG5ld1Nlc3Npb25EYXRhID0ge1xuICAgIHNlc3Npb246IG5ld1Nlc3Npb24sXG4gICAgdXNlcjogbmV3VXNlclxuICB9XG5cbiAgcmV0dXJuIG5ld1Nlc3Npb25EYXRhXG59XG4iXSwibmFtZXMiOlsiZ2V0RmllbGRzVG9TaWduIiwicHJlcGFyZVVzZXIiLCJ1c2VyIiwicGF5bG9hZENvbmZpZyIsImNvbGxlY3Rpb25TbHVncyIsImF3YWl0ZWRQYXlsb2FkQ29uZmlnIiwidXNlckNvbGxlY3Rpb25TbHVnIiwidXNlckNvbGxlY3Rpb24iLCJjb2xsZWN0aW9ucyIsImZpbmQiLCJjIiwic2x1ZyIsIkVycm9yIiwibmV3VXNlciIsImNvbGxlY3Rpb25Db25maWciLCJlbWFpbCIsImNvbGxlY3Rpb24iLCJwcmVwYXJlU2Vzc2lvbiIsInNlc3Npb24iLCJzZXNzaW9uQ29sbGVjdGlvblNsdWciLCJzZXNzaW9uQ29sbGVjdGlvbiIsImZpbHRlcmVkU2Vzc2lvbiIsIk9iamVjdCIsImFzc2lnbiIsInVzZXJJZCIsInByZXBhcmVTZXNzaW9uRGF0YSIsInNlc3Npb25EYXRhIiwibmV3U2Vzc2lvbiIsIm5ld1Nlc3Npb25EYXRhIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSxlQUFlLFFBQVEsVUFBUztBQVF6QyxPQUFPLGVBQWVDLFlBQVksRUFDaENDLElBQUksRUFDSkMsYUFBYSxFQUNiQyxlQUFlLEVBS2hCO0lBQ0MsTUFBTUMsdUJBQXVCLE1BQU1GO0lBQ25DLE1BQU0sRUFBRUcsa0JBQWtCLEVBQUUsR0FBR0Y7SUFDL0IsTUFBTUcsaUJBQWlCRixzQkFBc0JHLGFBQWFDLEtBQUssQ0FBQ0MsSUFBTUEsRUFBRUMsSUFBSSxLQUFLTDtJQUVqRixJQUFJLENBQUNDLGdCQUFnQixNQUFNLElBQUlLLE1BQU0sQ0FBQywyQkFBMkIsRUFBRU4sbUJBQW1CLFdBQVcsQ0FBQztJQUVsRyxNQUFNTyxVQUFVYixnQkFBZ0I7UUFDOUJjLGtCQUFrQlA7UUFDbEJRLE9BQU9iLEtBQUthLEtBQUs7UUFDakJiLE1BQU07WUFDSixHQUFHQSxJQUFJO1lBQ1BjLFlBQVlWO1FBQ2Q7SUFDRjtJQUVBLE9BQU9PO0FBQ1Q7QUFFQSxPQUFPLGVBQWVJLGVBQWUsRUFDbkNmLElBQUksRUFDSmdCLE9BQU8sRUFDUGYsYUFBYSxFQUNiQyxlQUFlLEVBTWhCO0lBQ0MsTUFBTUMsdUJBQXVCLE1BQU1GO0lBQ25DLE1BQU0sRUFBRWdCLHFCQUFxQixFQUFFYixrQkFBa0IsRUFBRSxHQUFHRjtJQUN0RCxNQUFNZ0Isb0JBQW9CZixzQkFBc0JHLGFBQWFDLEtBQUssQ0FBQ0MsSUFBTUEsRUFBRUMsSUFBSSxLQUFLUTtJQUVwRixJQUFJLENBQUNDLG1CQUFtQixPQUFPRjtJQUUvQixNQUFNRyxrQkFBa0JyQixnQkFBZ0I7UUFDdENjLGtCQUFrQk07UUFDbEJMLE9BQU9iLEtBQUthLEtBQUs7UUFDakJiLE1BQU07WUFDSixHQUFHZ0IsT0FBTztZQUNWRixZQUFZRztRQUNkO0lBQ0Y7SUFFQSxPQUFPRSxnQkFBZ0JOLEtBQUs7SUFDNUIsT0FBT00sZ0JBQWdCTCxVQUFVO0lBQ2pDTSxPQUFPQyxNQUFNLENBQUNGLGlCQUFpQjtRQUM3QkcsUUFBUU4sUUFBUU0sTUFBTTtJQUN4QjtJQUVBLE9BQU9IO0FBQ1Q7QUFFQTs7O0NBR0MsR0FDRCxPQUFPLGVBQWVJLG1CQUFtQixFQUN2Q0MsV0FBVyxFQUNYdkIsYUFBYSxFQUNiQyxlQUFlLEVBUWhCO0lBQ0MsSUFBSSxDQUFDc0IsZUFBZSxDQUFDQSxZQUFZeEIsSUFBSSxFQUFFLE9BQU87SUFFOUMsTUFBTVcsVUFBVSxNQUFNWixZQUFZO1FBQUVDLE1BQU13QixZQUFZeEIsSUFBSTtRQUFFQztRQUFlQztJQUFnQjtJQUMzRixNQUFNdUIsYUFBYSxNQUFNVixlQUFlO1FBQUVmLE1BQU13QixZQUFZeEIsSUFBSTtRQUFFZ0IsU0FBU1EsWUFBWVIsT0FBTztRQUFFZjtRQUFlQztJQUFnQjtJQUUvSCxNQUFNd0IsaUJBQWlCO1FBQ3JCVixTQUFTUztRQUNUekIsTUFBTVc7SUFDUjtJQUVBLE9BQU9lO0FBQ1QifQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9wcmVwYXJlLXNlc3Npb24tZGF0YS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXNzaW9uLCBVc2VyIH0gZnJvbSAnYmV0dGVyLWF1dGgnXG5pbXBvcnQgdHlwZSB7IENvbGxlY3Rpb24sIENvbGxlY3Rpb25Db25maWcsIENvbmZpZywgUGF5bG9hZCB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBnZXRGaWVsZHNUb1NpZ24gfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgYmFNb2RlbEtleSB9IGZyb20gJy4uL2NvbnN0YW50cydcbmltcG9ydCB7IENvbGxlY3Rpb25TY2hlbWFNYXAgfSBmcm9tICcuL2dldC1jb2xsZWN0aW9uLXNjaGVtYS1tYXAnXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBwcmVwYXJlVXNlcih7IHVzZXIsIHVzZXJDb2xsZWN0aW9uIH06IHsgdXNlcjogVXNlciAmIFJlY29yZDxzdHJpbmcsIGFueT47IHVzZXJDb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnIH0pIHtcbiAgY29uc3QgbmV3VXNlciA9IGdldEZpZWxkc1RvU2lnbih7XG4gICAgY29sbGVjdGlvbkNvbmZpZzogdXNlckNvbGxlY3Rpb24sXG4gICAgZW1haWw6IHVzZXIuZW1haWwsXG4gICAgdXNlcjoge1xuICAgICAgLi4udXNlcixcbiAgICAgIGNvbGxlY3Rpb246IHVzZXJDb2xsZWN0aW9uLnNsdWdcbiAgICB9XG4gIH0pXG5cbiAgcmV0dXJuIG5ld1VzZXIgYXMgVXNlciAmIFJlY29yZDxzdHJpbmcsIGFueT5cbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByZXBhcmVTZXNzaW9uKHtcbiAgc2Vzc2lvbixcbiAgc2Vzc2lvbkNvbGxlY3Rpb25cbn06IHtcbiAgc2Vzc2lvbjogU2Vzc2lvbiAmIFJlY29yZDxzdHJpbmcsIGFueT5cbiAgc2Vzc2lvbkNvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWdcbn0pIHtcbiAgY29uc3QgZmlsdGVyZWRTZXNzaW9uID0gZ2V0RmllbGRzVG9TaWduKHtcbiAgICBjb2xsZWN0aW9uQ29uZmlnOiBzZXNzaW9uQ29sbGVjdGlvbixcbiAgICBlbWFpbDogJycsXG4gICAgdXNlcjoge1xuICAgICAgLi4uc2Vzc2lvbixcbiAgICAgIGNvbGxlY3Rpb246IHNlc3Npb25Db2xsZWN0aW9uLnNsdWdcbiAgICB9XG4gIH0pXG5cbiAgZGVsZXRlIGZpbHRlcmVkU2Vzc2lvbi5lbWFpbFxuICBkZWxldGUgZmlsdGVyZWRTZXNzaW9uLmNvbGxlY3Rpb25cbiAgT2JqZWN0LmFzc2lnbihmaWx0ZXJlZFNlc3Npb24sIHtcbiAgICB1c2VySWQ6IHNlc3Npb24udXNlcklkXG4gIH0pXG5cbiAgcmV0dXJuIGZpbHRlcmVkU2Vzc2lvbiBhcyBTZXNzaW9uICYgUmVjb3JkPHN0cmluZywgYW55PlxufVxuXG4vKipcbiAqIFByZXBhcmVzIHNlc3Npb24gZGF0YSBmb3IgY29va2llIGNhY2hlIGJ5IGZpbHRlcmluZyB1c2VyIGFuZCBzZXNzaW9uIG9iamVjdHNcbiAqIGJhc2VkIG9uIHRoZSBwYXlsb2FkIGNvbmZpZ3VyYXRpb24ncyAnc2F2ZVRvSnd0JyBwcm9wZXJ0eVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJlcGFyZVNlc3Npb25EYXRhKHtcbiAgc2Vzc2lvbkRhdGEsXG4gIHVzZXJzQ29sbGVjdGlvbixcbiAgc2Vzc2lvbnNDb2xsZWN0aW9uXG59OiB7XG4gIHNlc3Npb25EYXRhOiB7XG4gICAgc2Vzc2lvbjogU2Vzc2lvbiAmIFJlY29yZDxzdHJpbmcsIGFueT5cbiAgICB1c2VyOiBVc2VyICYgUmVjb3JkPHN0cmluZywgYW55PlxuICB9XG4gIHVzZXJzQ29sbGVjdGlvbjogQ29sbGVjdGlvbkNvbmZpZ1xuICBzZXNzaW9uc0NvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWdcbn0pIHtcbiAgaWYgKCFzZXNzaW9uRGF0YSB8fCAhc2Vzc2lvbkRhdGEudXNlcikgcmV0dXJuIG51bGxcblxuICBjb25zdCBuZXdVc2VyID0gYXdhaXQgcHJlcGFyZVVzZXIoeyB1c2VyOiBzZXNzaW9uRGF0YS51c2VyLCB1c2VyQ29sbGVjdGlvbjogdXNlcnNDb2xsZWN0aW9uIH0pXG4gIGNvbnN0IG5ld1Nlc3Npb24gPSBhd2FpdCBwcmVwYXJlU2Vzc2lvbih7IHNlc3Npb246IHNlc3Npb25EYXRhLnNlc3Npb24sIHNlc3Npb25Db2xsZWN0aW9uOiBzZXNzaW9uc0NvbGxlY3Rpb24gfSlcblxuICBjb25zdCBuZXdTZXNzaW9uRGF0YSA9IHtcbiAgICBzZXNzaW9uOiBuZXdTZXNzaW9uLFxuICAgIHVzZXI6IG5ld1VzZXJcbiAgfVxuXG4gIHJldHVybiBuZXdTZXNzaW9uRGF0YVxufVxuIl0sIm5hbWVzIjpbImdldEZpZWxkc1RvU2lnbiIsInByZXBhcmVVc2VyIiwidXNlciIsInVzZXJDb2xsZWN0aW9uIiwibmV3VXNlciIsImNvbGxlY3Rpb25Db25maWciLCJlbWFpbCIsImNvbGxlY3Rpb24iLCJzbHVnIiwicHJlcGFyZVNlc3Npb24iLCJzZXNzaW9uIiwic2Vzc2lvbkNvbGxlY3Rpb24iLCJmaWx0ZXJlZFNlc3Npb24iLCJPYmplY3QiLCJhc3NpZ24iLCJ1c2VySWQiLCJwcmVwYXJlU2Vzc2lvbkRhdGEiLCJzZXNzaW9uRGF0YSIsInVzZXJzQ29sbGVjdGlvbiIsInNlc3Npb25zQ29sbGVjdGlvbiIsIm5ld1Nlc3Npb24iLCJuZXdTZXNzaW9uRGF0YSJdLCJtYXBwaW5ncyI6IkFBRUEsU0FBU0EsZUFBZSxRQUFRLFVBQVM7QUFJekMsT0FBTyxlQUFlQyxZQUFZLEVBQUVDLElBQUksRUFBRUMsY0FBYyxFQUEwRTtJQUNoSSxNQUFNQyxVQUFVSixnQkFBZ0I7UUFDOUJLLGtCQUFrQkY7UUFDbEJHLE9BQU9KLEtBQUtJLEtBQUs7UUFDakJKLE1BQU07WUFDSixHQUFHQSxJQUFJO1lBQ1BLLFlBQVlKLGVBQWVLLElBQUk7UUFDakM7SUFDRjtJQUVBLE9BQU9KO0FBQ1Q7QUFFQSxPQUFPLGVBQWVLLGVBQWUsRUFDbkNDLE9BQU8sRUFDUEMsaUJBQWlCLEVBSWxCO0lBQ0MsTUFBTUMsa0JBQWtCWixnQkFBZ0I7UUFDdENLLGtCQUFrQk07UUFDbEJMLE9BQU87UUFDUEosTUFBTTtZQUNKLEdBQUdRLE9BQU87WUFDVkgsWUFBWUksa0JBQWtCSCxJQUFJO1FBQ3BDO0lBQ0Y7SUFFQSxPQUFPSSxnQkFBZ0JOLEtBQUs7SUFDNUIsT0FBT00sZ0JBQWdCTCxVQUFVO0lBQ2pDTSxPQUFPQyxNQUFNLENBQUNGLGlCQUFpQjtRQUM3QkcsUUFBUUwsUUFBUUssTUFBTTtJQUN4QjtJQUVBLE9BQU9IO0FBQ1Q7QUFFQTs7O0NBR0MsR0FDRCxPQUFPLGVBQWVJLG1CQUFtQixFQUN2Q0MsV0FBVyxFQUNYQyxlQUFlLEVBQ2ZDLGtCQUFrQixFQVFuQjtJQUNDLElBQUksQ0FBQ0YsZUFBZSxDQUFDQSxZQUFZZixJQUFJLEVBQUUsT0FBTztJQUU5QyxNQUFNRSxVQUFVLE1BQU1ILFlBQVk7UUFBRUMsTUFBTWUsWUFBWWYsSUFBSTtRQUFFQyxnQkFBZ0JlO0lBQWdCO0lBQzVGLE1BQU1FLGFBQWEsTUFBTVgsZUFBZTtRQUFFQyxTQUFTTyxZQUFZUCxPQUFPO1FBQUVDLG1CQUFtQlE7SUFBbUI7SUFFOUcsTUFBTUUsaUJBQWlCO1FBQ3JCWCxTQUFTVTtRQUNUbEIsTUFBTUU7SUFDUjtJQUVBLE9BQU9pQjtBQUNUIn0=
@@ -1,8 +1,8 @@
1
- import type { Config } from 'payload';
1
+ import { type Config } from 'payload';
2
2
  import type { BetterAuthPluginOptions } from './types';
3
- export { sanitizeBetterAuthOptions } from './lib/sanitize-better-auth-options/index';
3
+ export * from './helpers/index';
4
4
  export { getPayloadAuth } from './lib/get-payload-auth';
5
+ export { sanitizeBetterAuthOptions } from './lib/sanitize-better-auth-options/index';
5
6
  export * from './types';
6
- export * from './helpers/index';
7
7
  export declare function betterAuthPlugin(pluginOptions: BetterAuthPluginOptions): (config: Config) => Config;
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/better-auth/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAStD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAA;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA;AAE/B,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,uBAAuB,IAC7D,QAAQ,MAAM,KAAG,MAAM,CAqJhC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/better-auth/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2D,KAAK,MAAM,EAAc,MAAM,SAAS,CAAA;AAQ1G,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAItD,cAAc,iBAAiB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAA;AACpF,cAAc,SAAS,CAAA;AAEvB,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,uBAAuB,IAC7D,QAAQ,MAAM,KAAG,MAAM,CA2IhC"}