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
@@ -2,14 +2,15 @@ import { isAdminWithRoles } from "../utils/payload-access";
2
2
  import { generateAdminInviteUrl } from "../../../payload/utils/generate-admin-invite-url";
3
3
  import { getUrlBeforeChangeHook } from "./hooks/get-url-before-change";
4
4
  import { getAdminInviteUrlAfterReadHook } from "./hooks/get-url-after-read";
5
+ import { baseSlugs, defaults } from "../../../constants";
5
6
  export function buildAdminInvitationsCollection({ incomingCollections, pluginOptions }) {
6
7
  const generateAdminInviteUrlFn = pluginOptions.adminInvitations?.generateInviteUrl ?? generateAdminInviteUrl;
7
- const adminInvitationSlug = pluginOptions.adminInvitations?.slug ?? 'admin-invitations';
8
+ const adminInvitationSlug = pluginOptions.adminInvitations?.slug ?? baseSlugs.adminInvitations;
8
9
  const adminRoles = pluginOptions.users?.adminRoles ?? [
9
- 'admin'
10
+ defaults.adminRole
10
11
  ];
11
12
  const roles = pluginOptions.users?.roles ?? [
12
- 'user'
13
+ defaults.userRole
13
14
  ];
14
15
  const allRoleOptions = [
15
16
  ...new Set([
@@ -58,7 +59,7 @@ export function buildAdminInvitationsCollection({ incomingCollections, pluginOpt
58
59
  type: 'select',
59
60
  options: allRoleOptions,
60
61
  required: true,
61
- defaultValue: pluginOptions.users?.defaultAdminRole ?? 'admin'
62
+ defaultValue: pluginOptions.users?.defaultAdminRole ?? defaults.adminRole
62
63
  },
63
64
  {
64
65
  name: 'token',
@@ -113,4 +114,4 @@ export function buildAdminInvitationsCollection({ incomingCollections, pluginOpt
113
114
  return adminInvitationsCollection;
114
115
  }
115
116
 
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vbGliL2J1aWxkLWNvbGxlY3Rpb25zL2FkbWluLWludml0YXRpb25zL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi90eXBlcydcbmltcG9ydCB7IGlzQWRtaW5XaXRoUm9sZXMgfSBmcm9tICcuLi91dGlscy9wYXlsb2FkLWFjY2VzcydcbmltcG9ydCB7IGdlbmVyYXRlQWRtaW5JbnZpdGVVcmwgfSBmcm9tICcuLi8uLi8uLi9wYXlsb2FkL3V0aWxzL2dlbmVyYXRlLWFkbWluLWludml0ZS11cmwnXG5pbXBvcnQgeyBnZXRVcmxCZWZvcmVDaGFuZ2VIb29rIH0gZnJvbSAnLi9ob29rcy9nZXQtdXJsLWJlZm9yZS1jaGFuZ2UnXG5pbXBvcnQgeyBnZXRBZG1pbkludml0ZVVybEFmdGVyUmVhZEhvb2sgfSBmcm9tICcuL2hvb2tzL2dldC11cmwtYWZ0ZXItcmVhZCdcblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQWRtaW5JbnZpdGF0aW9uc0NvbGxlY3Rpb24oe1xuICBpbmNvbWluZ0NvbGxlY3Rpb25zLFxuICBwbHVnaW5PcHRpb25zXG59OiB7XG4gIGluY29taW5nQ29sbGVjdGlvbnM6IENvbGxlY3Rpb25Db25maWdbXVxuICBwbHVnaW5PcHRpb25zOiBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9uc1xufSkge1xuICBjb25zdCBnZW5lcmF0ZUFkbWluSW52aXRlVXJsRm4gPSBwbHVnaW5PcHRpb25zLmFkbWluSW52aXRhdGlvbnM/LmdlbmVyYXRlSW52aXRlVXJsID8/IGdlbmVyYXRlQWRtaW5JbnZpdGVVcmxcbiAgY29uc3QgYWRtaW5JbnZpdGF0aW9uU2x1ZyA9IHBsdWdpbk9wdGlvbnMuYWRtaW5JbnZpdGF0aW9ucz8uc2x1ZyA/PyAnYWRtaW4taW52aXRhdGlvbnMnXG4gIGNvbnN0IGFkbWluUm9sZXMgPSBwbHVnaW5PcHRpb25zLnVzZXJzPy5hZG1pblJvbGVzID8/IFsnYWRtaW4nXVxuICBjb25zdCByb2xlcyA9IHBsdWdpbk9wdGlvbnMudXNlcnM/LnJvbGVzID8/IFsndXNlciddXG4gIGNvbnN0IGFsbFJvbGVPcHRpb25zID0gWy4uLm5ldyBTZXQoWy4uLmFkbWluUm9sZXMsIC4uLnJvbGVzXSldLm1hcCgocm9sZSkgPT4gKHtcbiAgICBsYWJlbDogcm9sZVxuICAgICAgLnNwbGl0KC9bLV9cXHNdLylcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgLmpvaW4oJyAnKSxcbiAgICB2YWx1ZTogcm9sZVxuICB9KSlcbiAgY29uc3QgZXhpc3RpbmdBZG1pbkludml0YXRpb25Db2xsZWN0aW9uID0gaW5jb21pbmdDb2xsZWN0aW9ucy5maW5kKChjb2xsZWN0aW9uKSA9PiBjb2xsZWN0aW9uLnNsdWcgPT09IGFkbWluSW52aXRhdGlvblNsdWcpIGFzXG4gICAgfCBDb2xsZWN0aW9uQ29uZmlnXG4gICAgfCB1bmRlZmluZWRcblxuICBsZXQgYWRtaW5JbnZpdGF0aW9uc0NvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgPSB7XG4gICAgLi4uZXhpc3RpbmdBZG1pbkludml0YXRpb25Db2xsZWN0aW9uLFxuICAgIHNsdWc6IGFkbWluSW52aXRhdGlvblNsdWcsXG4gICAgYWRtaW46IHtcbiAgICAgIGRlZmF1bHRDb2x1bW5zOiBbJ3JvbGUnLCAndG9rZW4nLCAndXJsJ10sXG4gICAgICB1c2VBc1RpdGxlOiAndG9rZW4nLFxuICAgICAgZ3JvdXA6IHBsdWdpbk9wdGlvbnM/LmNvbGxlY3Rpb25BZG1pbkdyb3VwID8/ICdBdXRoJyxcbiAgICAgIGhpZGRlbjogcGx1Z2luT3B0aW9ucy5hZG1pbkludml0YXRpb25zPy5oaWRkZW4sXG4gICAgICAuLi5leGlzdGluZ0FkbWluSW52aXRhdGlvbkNvbGxlY3Rpb24/LmFkbWluXG4gICAgfSxcbiAgICBhY2Nlc3M6IHtcbiAgICAgIGNyZWF0ZTogaXNBZG1pbldpdGhSb2xlcyh7IGFkbWluUm9sZXMgfSksXG4gICAgICByZWFkOiBpc0FkbWluV2l0aFJvbGVzKHsgYWRtaW5Sb2xlcyB9KSxcbiAgICAgIGRlbGV0ZTogaXNBZG1pbldpdGhSb2xlcyh7IGFkbWluUm9sZXMgfSksXG4gICAgICB1cGRhdGU6IGlzQWRtaW5XaXRoUm9sZXMoeyBhZG1pblJvbGVzIH0pLFxuICAgICAgLi4uKGV4aXN0aW5nQWRtaW5JbnZpdGF0aW9uQ29sbGVjdGlvbj8uYWNjZXNzID8/IHt9KVxuICAgIH0sXG4gICAgdGltZXN0YW1wczogdHJ1ZSxcbiAgICBmaWVsZHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdSb2xlJyxcbiAgICAgICAgbmFtZTogJ3JvbGUnLFxuICAgICAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICAgICAgb3B0aW9uczogYWxsUm9sZU9wdGlvbnMsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IHBsdWdpbk9wdGlvbnMudXNlcnM/LmRlZmF1bHRBZG1pblJvbGUgPz8gJ2FkbWluJ1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3Rva2VuJyxcbiAgICAgICAgbGFiZWw6ICdUb2tlbicsXG4gICAgICAgIGluZGV4OiB0cnVlLFxuICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgYWZ0ZXJJbnB1dDogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcGF0aDogJ3BheWxvYWQtYXV0aC9zaGFyZWQvcGF5bG9hZC9maWVsZHMjR2VuZXJhdGVVdWlkQnV0dG9uJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3VybCcsXG4gICAgICAgIGxhYmVsOiAnVVJMJyxcbiAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICBob29rczoge1xuICAgICAgICAgIGJlZm9yZUNoYW5nZTogW2dldFVybEJlZm9yZUNoYW5nZUhvb2soKV0sXG4gICAgICAgICAgYWZ0ZXJSZWFkOiBbXG4gICAgICAgICAgICBnZXRBZG1pbkludml0ZVVybEFmdGVyUmVhZEhvb2soe1xuICAgICAgICAgICAgICBnZW5lcmF0ZUFkbWluSW52aXRlVXJsRm5cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9LFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgICAgIGFmdGVySW5wdXQ6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHBhdGg6ICdwYXlsb2FkLWF1dGgvc2hhcmVkL3BheWxvYWQvZmllbGRzI0ZpZWxkQ29weUJ1dHRvbidcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgdmlydHVhbDogdHJ1ZVxuICAgICAgfVxuICAgIF1cbiAgfVxuXG4gIGlmIChwbHVnaW5PcHRpb25zLmFkbWluSW52aXRhdGlvbnM/LmNvbGxlY3Rpb25PdmVycmlkZXMpIHtcbiAgICBhZG1pbkludml0YXRpb25zQ29sbGVjdGlvbiA9IHBsdWdpbk9wdGlvbnMuYWRtaW5JbnZpdGF0aW9ucy5jb2xsZWN0aW9uT3ZlcnJpZGVzKHtcbiAgICAgIGNvbGxlY3Rpb246IGFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBhZG1pbkludml0YXRpb25zQ29sbGVjdGlvblxufVxuIl0sIm5hbWVzIjpbImlzQWRtaW5XaXRoUm9sZXMiLCJnZW5lcmF0ZUFkbWluSW52aXRlVXJsIiwiZ2V0VXJsQmVmb3JlQ2hhbmdlSG9vayIsImdldEFkbWluSW52aXRlVXJsQWZ0ZXJSZWFkSG9vayIsImJ1aWxkQWRtaW5JbnZpdGF0aW9uc0NvbGxlY3Rpb24iLCJpbmNvbWluZ0NvbGxlY3Rpb25zIiwicGx1Z2luT3B0aW9ucyIsImdlbmVyYXRlQWRtaW5JbnZpdGVVcmxGbiIsImFkbWluSW52aXRhdGlvbnMiLCJnZW5lcmF0ZUludml0ZVVybCIsImFkbWluSW52aXRhdGlvblNsdWciLCJzbHVnIiwiYWRtaW5Sb2xlcyIsInVzZXJzIiwicm9sZXMiLCJhbGxSb2xlT3B0aW9ucyIsIlNldCIsIm1hcCIsInJvbGUiLCJsYWJlbCIsInNwbGl0Iiwid29yZCIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJqb2luIiwidmFsdWUiLCJleGlzdGluZ0FkbWluSW52aXRhdGlvbkNvbGxlY3Rpb24iLCJmaW5kIiwiY29sbGVjdGlvbiIsImFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uIiwiYWRtaW4iLCJkZWZhdWx0Q29sdW1ucyIsInVzZUFzVGl0bGUiLCJncm91cCIsImNvbGxlY3Rpb25BZG1pbkdyb3VwIiwiaGlkZGVuIiwiYWNjZXNzIiwiY3JlYXRlIiwicmVhZCIsImRlbGV0ZSIsInVwZGF0ZSIsInRpbWVzdGFtcHMiLCJmaWVsZHMiLCJuYW1lIiwidHlwZSIsIm9wdGlvbnMiLCJyZXF1aXJlZCIsImRlZmF1bHRWYWx1ZSIsImRlZmF1bHRBZG1pblJvbGUiLCJpbmRleCIsInJlYWRPbmx5IiwiY29tcG9uZW50cyIsImFmdGVySW5wdXQiLCJwYXRoIiwiaG9va3MiLCJiZWZvcmVDaGFuZ2UiLCJhZnRlclJlYWQiLCJ2aXJ0dWFsIiwiY29sbGVjdGlvbk92ZXJyaWRlcyJdLCJtYXBwaW5ncyI6IkFBRUEsU0FBU0EsZ0JBQWdCLFFBQVEsMEJBQXlC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
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vbGliL2J1aWxkLWNvbGxlY3Rpb25zL2FkbWluLWludml0YXRpb25zL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQWRtaW5XaXRoUm9sZXMgfSBmcm9tICcuLi91dGlscy9wYXlsb2FkLWFjY2VzcydcbmltcG9ydCB7IGdlbmVyYXRlQWRtaW5JbnZpdGVVcmwgfSBmcm9tICcuLi8uLi8uLi9wYXlsb2FkL3V0aWxzL2dlbmVyYXRlLWFkbWluLWludml0ZS11cmwnXG5pbXBvcnQgeyBnZXRVcmxCZWZvcmVDaGFuZ2VIb29rIH0gZnJvbSAnLi9ob29rcy9nZXQtdXJsLWJlZm9yZS1jaGFuZ2UnXG5pbXBvcnQgeyBnZXRBZG1pbkludml0ZVVybEFmdGVyUmVhZEhvb2sgfSBmcm9tICcuL2hvb2tzL2dldC11cmwtYWZ0ZXItcmVhZCdcbmltcG9ydCB7IGJhc2VTbHVncywgZGVmYXVsdHMgfSBmcm9tICdAL2JldHRlci1hdXRoL3BsdWdpbi9jb25zdGFudHMnXG5cbmltcG9ydCB0eXBlIHsgQ29sbGVjdGlvbkNvbmZpZyB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgdHlwZSB7IEJldHRlckF1dGhQbHVnaW5PcHRpb25zIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnXG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uKHtcbiAgaW5jb21pbmdDb2xsZWN0aW9ucyxcbiAgcGx1Z2luT3B0aW9uc1xufToge1xuICBpbmNvbWluZ0NvbGxlY3Rpb25zOiBDb2xsZWN0aW9uQ29uZmlnW11cbiAgcGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnNcbn0pOiBDb2xsZWN0aW9uQ29uZmlnIHtcbiAgY29uc3QgZ2VuZXJhdGVBZG1pbkludml0ZVVybEZuID0gcGx1Z2luT3B0aW9ucy5hZG1pbkludml0YXRpb25zPy5nZW5lcmF0ZUludml0ZVVybCA/PyBnZW5lcmF0ZUFkbWluSW52aXRlVXJsXG4gIGNvbnN0IGFkbWluSW52aXRhdGlvblNsdWcgPSBwbHVnaW5PcHRpb25zLmFkbWluSW52aXRhdGlvbnM/LnNsdWcgPz8gYmFzZVNsdWdzLmFkbWluSW52aXRhdGlvbnNcbiAgY29uc3QgYWRtaW5Sb2xlcyA9IHBsdWdpbk9wdGlvbnMudXNlcnM/LmFkbWluUm9sZXMgPz8gW2RlZmF1bHRzLmFkbWluUm9sZV1cbiAgY29uc3Qgcm9sZXMgPSBwbHVnaW5PcHRpb25zLnVzZXJzPy5yb2xlcyA/PyBbZGVmYXVsdHMudXNlclJvbGVdXG4gIGNvbnN0IGFsbFJvbGVPcHRpb25zID0gWy4uLm5ldyBTZXQoWy4uLmFkbWluUm9sZXMsIC4uLnJvbGVzXSldLm1hcCgocm9sZSkgPT4gKHtcbiAgICBsYWJlbDogcm9sZVxuICAgICAgLnNwbGl0KC9bLV9cXHNdLylcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgLmpvaW4oJyAnKSxcbiAgICB2YWx1ZTogcm9sZVxuICB9KSlcbiAgY29uc3QgZXhpc3RpbmdBZG1pbkludml0YXRpb25Db2xsZWN0aW9uID0gaW5jb21pbmdDb2xsZWN0aW9ucy5maW5kKChjb2xsZWN0aW9uKSA9PiBjb2xsZWN0aW9uLnNsdWcgPT09IGFkbWluSW52aXRhdGlvblNsdWcpIGFzXG4gICAgfCBDb2xsZWN0aW9uQ29uZmlnXG4gICAgfCB1bmRlZmluZWRcblxuICBsZXQgYWRtaW5JbnZpdGF0aW9uc0NvbGxlY3Rpb246IENvbGxlY3Rpb25Db25maWcgPSB7XG4gICAgLi4uZXhpc3RpbmdBZG1pbkludml0YXRpb25Db2xsZWN0aW9uLFxuICAgIHNsdWc6IGFkbWluSW52aXRhdGlvblNsdWcsXG4gICAgYWRtaW46IHtcbiAgICAgIGRlZmF1bHRDb2x1bW5zOiBbJ3JvbGUnLCAndG9rZW4nLCAndXJsJ10sXG4gICAgICB1c2VBc1RpdGxlOiAndG9rZW4nLFxuICAgICAgZ3JvdXA6IHBsdWdpbk9wdGlvbnM/LmNvbGxlY3Rpb25BZG1pbkdyb3VwID8/ICdBdXRoJyxcbiAgICAgIGhpZGRlbjogcGx1Z2luT3B0aW9ucy5hZG1pbkludml0YXRpb25zPy5oaWRkZW4sXG4gICAgICAuLi5leGlzdGluZ0FkbWluSW52aXRhdGlvbkNvbGxlY3Rpb24/LmFkbWluXG4gICAgfSxcbiAgICBhY2Nlc3M6IHtcbiAgICAgIGNyZWF0ZTogaXNBZG1pbldpdGhSb2xlcyh7IGFkbWluUm9sZXMgfSksXG4gICAgICByZWFkOiBpc0FkbWluV2l0aFJvbGVzKHsgYWRtaW5Sb2xlcyB9KSxcbiAgICAgIGRlbGV0ZTogaXNBZG1pbldpdGhSb2xlcyh7IGFkbWluUm9sZXMgfSksXG4gICAgICB1cGRhdGU6IGlzQWRtaW5XaXRoUm9sZXMoeyBhZG1pblJvbGVzIH0pLFxuICAgICAgLi4uKGV4aXN0aW5nQWRtaW5JbnZpdGF0aW9uQ29sbGVjdGlvbj8uYWNjZXNzID8/IHt9KVxuICAgIH0sXG4gICAgdGltZXN0YW1wczogdHJ1ZSxcbiAgICBmaWVsZHM6IFtcbiAgICAgIHtcbiAgICAgICAgbGFiZWw6ICdSb2xlJyxcbiAgICAgICAgbmFtZTogJ3JvbGUnLFxuICAgICAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICAgICAgb3B0aW9uczogYWxsUm9sZU9wdGlvbnMsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IHBsdWdpbk9wdGlvbnMudXNlcnM/LmRlZmF1bHRBZG1pblJvbGUgPz8gZGVmYXVsdHMuYWRtaW5Sb2xlXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndG9rZW4nLFxuICAgICAgICBsYWJlbDogJ1Rva2VuJyxcbiAgICAgICAgaW5kZXg6IHRydWUsXG4gICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBjb21wb25lbnRzOiB7XG4gICAgICAgICAgICBhZnRlcklucHV0OiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBwYXRoOiAncGF5bG9hZC1hdXRoL3NoYXJlZC9wYXlsb2FkL2ZpZWxkcyNHZW5lcmF0ZVV1aWRCdXR0b24nXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAndXJsJyxcbiAgICAgICAgbGFiZWw6ICdVUkwnLFxuICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgIGhvb2tzOiB7XG4gICAgICAgICAgYmVmb3JlQ2hhbmdlOiBbZ2V0VXJsQmVmb3JlQ2hhbmdlSG9vaygpXSxcbiAgICAgICAgICBhZnRlclJlYWQ6IFtcbiAgICAgICAgICAgIGdldEFkbWluSW52aXRlVXJsQWZ0ZXJSZWFkSG9vayh7XG4gICAgICAgICAgICAgIGdlbmVyYXRlQWRtaW5JbnZpdGVVcmxGblxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgYWZ0ZXJJbnB1dDogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgcGF0aDogJ3BheWxvYWQtYXV0aC9zaGFyZWQvcGF5bG9hZC9maWVsZHMjRmllbGRDb3B5QnV0dG9uJ1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB2aXJ0dWFsOiB0cnVlXG4gICAgICB9XG4gICAgXVxuICB9XG5cbiAgaWYgKHBsdWdpbk9wdGlvbnMuYWRtaW5JbnZpdGF0aW9ucz8uY29sbGVjdGlvbk92ZXJyaWRlcykge1xuICAgIGFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uID0gcGx1Z2luT3B0aW9ucy5hZG1pbkludml0YXRpb25zLmNvbGxlY3Rpb25PdmVycmlkZXMoe1xuICAgICAgY29sbGVjdGlvbjogYWRtaW5JbnZpdGF0aW9uc0NvbGxlY3Rpb25cbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIGFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uXG59XG4iXSwibmFtZXMiOlsiaXNBZG1pbldpdGhSb2xlcyIsImdlbmVyYXRlQWRtaW5JbnZpdGVVcmwiLCJnZXRVcmxCZWZvcmVDaGFuZ2VIb29rIiwiZ2V0QWRtaW5JbnZpdGVVcmxBZnRlclJlYWRIb29rIiwiYmFzZVNsdWdzIiwiZGVmYXVsdHMiLCJidWlsZEFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uIiwiaW5jb21pbmdDb2xsZWN0aW9ucyIsInBsdWdpbk9wdGlvbnMiLCJnZW5lcmF0ZUFkbWluSW52aXRlVXJsRm4iLCJhZG1pbkludml0YXRpb25zIiwiZ2VuZXJhdGVJbnZpdGVVcmwiLCJhZG1pbkludml0YXRpb25TbHVnIiwic2x1ZyIsImFkbWluUm9sZXMiLCJ1c2VycyIsImFkbWluUm9sZSIsInJvbGVzIiwidXNlclJvbGUiLCJhbGxSb2xlT3B0aW9ucyIsIlNldCIsIm1hcCIsInJvbGUiLCJsYWJlbCIsInNwbGl0Iiwid29yZCIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJqb2luIiwidmFsdWUiLCJleGlzdGluZ0FkbWluSW52aXRhdGlvbkNvbGxlY3Rpb24iLCJmaW5kIiwiY29sbGVjdGlvbiIsImFkbWluSW52aXRhdGlvbnNDb2xsZWN0aW9uIiwiYWRtaW4iLCJkZWZhdWx0Q29sdW1ucyIsInVzZUFzVGl0bGUiLCJncm91cCIsImNvbGxlY3Rpb25BZG1pbkdyb3VwIiwiaGlkZGVuIiwiYWNjZXNzIiwiY3JlYXRlIiwicmVhZCIsImRlbGV0ZSIsInVwZGF0ZSIsInRpbWVzdGFtcHMiLCJmaWVsZHMiLCJuYW1lIiwidHlwZSIsIm9wdGlvbnMiLCJyZXF1aXJlZCIsImRlZmF1bHRWYWx1ZSIsImRlZmF1bHRBZG1pblJvbGUiLCJpbmRleCIsInJlYWRPbmx5IiwiY29tcG9uZW50cyIsImFmdGVySW5wdXQiLCJwYXRoIiwiaG9va3MiLCJiZWZvcmVDaGFuZ2UiLCJhZnRlclJlYWQiLCJ2aXJ0dWFsIiwiY29sbGVjdGlvbk92ZXJyaWRlcyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsZ0JBQWdCLFFBQVEsMEJBQXlCO0FBQzFELFNBQVNDLHNCQUFzQixRQUFRLG1EQUFrRDtBQUN6RixTQUFTQyxzQkFBc0IsUUFBUSxnQ0FBK0I7QUFDdEUsU0FBU0MsOEJBQThCLFFBQVEsNkJBQTRCO0FBQzNFLFNBQVNDLFNBQVMsRUFBRUMsUUFBUSxRQUFRLHFCQUFnQztBQUtwRSxPQUFPLFNBQVNDLGdDQUFnQyxFQUM5Q0MsbUJBQW1CLEVBQ25CQyxhQUFhLEVBSWQ7SUFDQyxNQUFNQywyQkFBMkJELGNBQWNFLGdCQUFnQixFQUFFQyxxQkFBcUJWO0lBQ3RGLE1BQU1XLHNCQUFzQkosY0FBY0UsZ0JBQWdCLEVBQUVHLFFBQVFULFVBQVVNLGdCQUFnQjtJQUM5RixNQUFNSSxhQUFhTixjQUFjTyxLQUFLLEVBQUVELGNBQWM7UUFBQ1QsU0FBU1csU0FBUztLQUFDO0lBQzFFLE1BQU1DLFFBQVFULGNBQWNPLEtBQUssRUFBRUUsU0FBUztRQUFDWixTQUFTYSxRQUFRO0tBQUM7SUFDL0QsTUFBTUMsaUJBQWlCO1dBQUksSUFBSUMsSUFBSTtlQUFJTjtlQUFlRztTQUFNO0tBQUUsQ0FBQ0ksR0FBRyxDQUFDLENBQUNDLE9BQVUsQ0FBQTtZQUM1RUMsT0FBT0QsS0FDSkUsS0FBSyxDQUFDLFVBQ05ILEdBQUcsQ0FBQyxDQUFDSSxPQUFTQSxLQUFLQyxNQUFNLENBQUMsR0FBR0MsV0FBVyxLQUFLRixLQUFLRyxLQUFLLENBQUMsSUFDeERDLElBQUksQ0FBQztZQUNSQyxPQUFPUjtRQUNULENBQUE7SUFDQSxNQUFNUyxvQ0FBb0N4QixvQkFBb0J5QixJQUFJLENBQUMsQ0FBQ0MsYUFBZUEsV0FBV3BCLElBQUksS0FBS0Q7SUFJdkcsSUFBSXNCLDZCQUErQztRQUNqRCxHQUFHSCxpQ0FBaUM7UUFDcENsQixNQUFNRDtRQUNOdUIsT0FBTztZQUNMQyxnQkFBZ0I7Z0JBQUM7Z0JBQVE7Z0JBQVM7YUFBTTtZQUN4Q0MsWUFBWTtZQUNaQyxPQUFPOUIsZUFBZStCLHdCQUF3QjtZQUM5Q0MsUUFBUWhDLGNBQWNFLGdCQUFnQixFQUFFOEI7WUFDeEMsR0FBR1QsbUNBQW1DSSxLQUFLO1FBQzdDO1FBQ0FNLFFBQVE7WUFDTkMsUUFBUTFDLGlCQUFpQjtnQkFBRWM7WUFBVztZQUN0QzZCLE1BQU0zQyxpQkFBaUI7Z0JBQUVjO1lBQVc7WUFDcEM4QixRQUFRNUMsaUJBQWlCO2dCQUFFYztZQUFXO1lBQ3RDK0IsUUFBUTdDLGlCQUFpQjtnQkFBRWM7WUFBVztZQUN0QyxHQUFJaUIsbUNBQW1DVSxVQUFVLENBQUMsQ0FBQztRQUNyRDtRQUNBSyxZQUFZO1FBQ1pDLFFBQVE7WUFDTjtnQkFDRXhCLE9BQU87Z0JBQ1B5QixNQUFNO2dCQUNOQyxNQUFNO2dCQUNOQyxTQUFTL0I7Z0JBQ1RnQyxVQUFVO2dCQUNWQyxjQUFjNUMsY0FBY08sS0FBSyxFQUFFc0Msb0JBQW9CaEQsU0FBU1csU0FBUztZQUMzRTtZQUNBO2dCQUNFZ0MsTUFBTTtnQkFDTnpCLE9BQU87Z0JBQ1ArQixPQUFPO2dCQUNQTCxNQUFNO2dCQUNOZCxPQUFPO29CQUNMb0IsVUFBVTtvQkFDVkMsWUFBWTt3QkFDVkMsWUFBWTs0QkFDVjtnQ0FDRUMsTUFBTTs0QkFDUjt5QkFDRDtvQkFDSDtnQkFDRjtnQkFDQVAsVUFBVTtZQUNaO1lBQ0E7Z0JBQ0VILE1BQU07Z0JBQ056QixPQUFPO2dCQUNQMEIsTUFBTTtnQkFDTlUsT0FBTztvQkFDTEMsY0FBYzt3QkFBQzFEO3FCQUF5QjtvQkFDeEMyRCxXQUFXO3dCQUNUMUQsK0JBQStCOzRCQUM3Qk07d0JBQ0Y7cUJBQ0Q7Z0JBQ0g7Z0JBQ0EwQixPQUFPO29CQUNMb0IsVUFBVTtvQkFDVkMsWUFBWTt3QkFDVkMsWUFBWTs0QkFDVjtnQ0FDRUMsTUFBTTs0QkFDUjt5QkFDRDtvQkFDSDtnQkFDRjtnQkFDQUksU0FBUztZQUNYO1NBQ0Q7SUFDSDtJQUVBLElBQUl0RCxjQUFjRSxnQkFBZ0IsRUFBRXFELHFCQUFxQjtRQUN2RDdCLDZCQUE2QjFCLGNBQWNFLGdCQUFnQixDQUFDcUQsbUJBQW1CLENBQUM7WUFDOUU5QixZQUFZQztRQUNkO0lBQ0Y7SUFFQSxPQUFPQTtBQUNUIn0=
@@ -1,6 +1,4 @@
1
- import { CollectionConfig } from 'payload';
2
- import { BetterAuthPluginOptions } from '../../types';
3
- export declare function buildApiKeysCollection({ pluginOptions }: {
4
- pluginOptions: BetterAuthPluginOptions;
5
- }): CollectionConfig;
1
+ import { type CollectionConfig } from 'payload';
2
+ import type { BuildCollectionProps } from '@/better-auth/plugin/types';
3
+ export declare function buildApiKeysCollection({ incomingCollections, pluginOptions, schema }: BuildCollectionProps): CollectionConfig;
6
4
  //# sourceMappingURL=api-keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/lib/build-collections/api-keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAKrD,wBAAgB,sBAAsB,CAAC,EAAE,aAAa,EAAE,EAAE;IAAE,aAAa,EAAE,uBAAuB,CAAA;CAAE,oBA8LnG"}
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/lib/build-collections/api-keys.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG/C,OAAO,KAAK,EAAE,oBAAoB,EAAkB,MAAM,4BAA4B,CAAA;AAEtF,wBAAgB,sBAAsB,CAAC,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,oBAAoB,GAAG,gBAAgB,CAqH7H"}
@@ -1,193 +1,177 @@
1
- import { betterAuthPluginSlugs, baseCollectionSlugs } from "../../constants";
2
- import { getTimestampFields } from "./utils/get-timestamp-fields";
1
+ import { baModelKey } from "../../constants";
3
2
  import { getAdminAccess } from "../../helpers/get-admin-access";
4
- export function buildApiKeysCollection({ pluginOptions }) {
5
- const apiKeySlug = betterAuthPluginSlugs.apiKeys;
6
- const userSlug = pluginOptions.users?.slug ?? baseCollectionSlugs.users;
7
- const apiKeyCollection = {
8
- slug: apiKeySlug,
9
- admin: {
10
- hidden: pluginOptions.hidePluginCollections ?? false,
11
- useAsTitle: 'name',
12
- description: 'API keys are used to authenticate requests to the API.',
13
- group: pluginOptions?.collectionAdminGroup ?? 'Auth'
14
- },
15
- access: {
16
- ...getAdminAccess(pluginOptions)
17
- },
18
- fields: [
19
- {
20
- name: 'name',
21
- type: 'text',
22
- label: 'Name',
3
+ import { getDeafultCollectionSlug } from "../../helpers/get-collection-slug";
4
+ import { getCollectionFields } from "./utils/transform-schema-fields-to-payload";
5
+ import { assertAllSchemaFields } from "./utils/collection-schema";
6
+ export function buildApiKeysCollection({ incomingCollections, pluginOptions, schema }) {
7
+ const apiKeySlug = getDeafultCollectionSlug({
8
+ modelKey: baModelKey.apikey,
9
+ pluginOptions
10
+ });
11
+ const existingApiKeyCollection = incomingCollections.find((collection)=>collection.slug === apiKeySlug);
12
+ const fieldOverrides = {
13
+ name: ()=>({
23
14
  admin: {
24
15
  readOnly: true,
25
16
  description: 'The name of the API key.'
26
17
  }
27
- },
28
- {
29
- name: 'start',
30
- type: 'text',
31
- label: 'Starting Characters',
18
+ }),
19
+ start: ()=>({
32
20
  admin: {
33
21
  readOnly: true,
34
- description: 'The starting characters of the API key. Useful for showing the first few characters of the API key in the UI for the users to easily identify.'
22
+ description: 'The starting characters of the API key.'
35
23
  }
36
- },
37
- {
38
- name: 'prefix',
39
- type: 'text',
40
- label: 'Prefix',
24
+ }),
25
+ prefix: ()=>({
41
26
  admin: {
42
27
  readOnly: true,
43
28
  description: 'The API Key prefix. Stored as plain text.'
44
29
  }
45
- },
46
- {
47
- name: 'key',
48
- type: 'text',
49
- required: true,
50
- label: 'API Key',
30
+ }),
31
+ key: ()=>({
51
32
  admin: {
52
33
  readOnly: true,
53
34
  description: 'The hashed API key itself.'
54
35
  }
55
- },
56
- {
57
- name: 'user',
58
- type: 'relationship',
59
- relationTo: userSlug,
60
- required: true,
61
- label: 'User',
36
+ }),
37
+ userId: ()=>({
62
38
  admin: {
63
39
  readOnly: true,
64
40
  description: 'The user associated with the API key.'
65
41
  }
66
- },
67
- {
68
- name: 'refillInterval',
69
- type: 'number',
70
- label: 'Refill Interval',
42
+ }),
43
+ refillInterval: ()=>({
71
44
  admin: {
72
45
  readOnly: true,
73
46
  description: 'The interval to refill the key in milliseconds.'
74
47
  }
75
- },
76
- {
77
- name: 'refillAmount',
78
- type: 'number',
79
- label: 'Refill Amount',
48
+ }),
49
+ refillAmount: ()=>({
80
50
  admin: {
81
51
  readOnly: true,
82
52
  description: 'The amount to refill the remaining count of the key.'
83
53
  }
84
- },
85
- {
86
- name: 'lastRefillAt',
87
- type: 'date',
88
- label: 'Last Refill At',
54
+ }),
55
+ lastRefillAt: ()=>({
89
56
  admin: {
90
57
  readOnly: true,
91
58
  description: 'The date and time when the key was last refilled.'
92
59
  }
93
- },
94
- {
95
- name: 'enabled',
96
- type: 'checkbox',
60
+ }),
61
+ enabled: ()=>({
97
62
  defaultValue: true,
98
- label: 'Enabled',
99
63
  admin: {
100
64
  readOnly: true,
101
65
  description: 'Whether the API key is enabled.'
102
66
  }
103
- },
104
- {
105
- name: 'rateLimitEnabled',
106
- type: 'checkbox',
67
+ }),
68
+ rateLimitEnabled: ()=>({
107
69
  defaultValue: true,
108
- label: 'Rate Limit Enabled',
109
70
  admin: {
110
71
  readOnly: true,
111
72
  description: 'Whether the API key has rate limiting enabled.'
112
73
  }
113
- },
114
- {
115
- name: 'rateLimitTimeWindow',
116
- type: 'number',
117
- label: 'Rate Limit Time Window',
74
+ }),
75
+ rateLimitTimeWindow: ()=>({
118
76
  admin: {
119
77
  readOnly: true,
120
78
  description: 'The time window in milliseconds for the rate limit.'
121
79
  }
122
- },
123
- {
124
- name: 'rateLimitMax',
125
- type: 'number',
126
- label: 'The maximum number of requests allowed within the `rateLimitTimeWindow`.',
80
+ }),
81
+ rateLimitMax: ()=>({
127
82
  admin: {
128
83
  readOnly: true,
129
84
  description: 'The maximum number of requests allowed within the rate limit time window.'
130
85
  }
131
- },
132
- {
133
- name: 'requstCount',
134
- type: 'number',
135
- label: 'Request Count',
136
- required: true,
86
+ }),
87
+ requestCount: ()=>({
137
88
  admin: {
138
89
  readOnly: true,
139
90
  description: 'The number of requests made within the rate limit time window.'
140
91
  }
141
- },
142
- {
143
- name: 'remaining',
144
- type: 'number',
145
- label: 'Remaining Requests',
92
+ }),
93
+ remaining: ()=>({
146
94
  admin: {
147
95
  readOnly: true,
148
96
  description: 'The number of requests remaining.'
149
97
  }
150
- },
151
- {
152
- name: 'lastRequest',
153
- type: 'date',
154
- label: 'Last Request At',
98
+ }),
99
+ lastRequest: ()=>({
155
100
  admin: {
156
101
  readOnly: true,
157
102
  description: 'The date and time of the last request made to the key.'
158
103
  }
159
- },
160
- {
161
- name: 'expiresAt',
162
- type: 'date',
163
- label: 'Expires At',
104
+ }),
105
+ expiresAt: ()=>({
164
106
  admin: {
165
107
  readOnly: true,
166
108
  description: 'The date and time of when the API key will expire.'
167
109
  }
168
- },
169
- {
170
- name: 'permissions',
171
- type: 'text',
172
- label: 'Permissions',
110
+ }),
111
+ permissions: ()=>({
173
112
  admin: {
174
113
  readOnly: true,
175
114
  description: 'The permissions for the API key.'
176
115
  }
177
- },
178
- {
179
- name: 'metadata',
116
+ }),
117
+ metadata: ()=>({
180
118
  type: 'json',
181
- label: 'Metadata',
182
119
  admin: {
183
120
  readOnly: true,
184
121
  description: 'Any additional metadata you want to store with the key.'
185
122
  }
186
- },
187
- ...getTimestampFields()
123
+ })
124
+ };
125
+ const apiKeyFieldRules = [
126
+ {
127
+ condition: (field)=>field.type === 'date',
128
+ transform: (field)=>({
129
+ ...field,
130
+ saveToJWT: false,
131
+ admin: {
132
+ disableBulkEdit: true,
133
+ hidden: true
134
+ },
135
+ index: true,
136
+ label: ({ t })=>t('general:updatedAt')
137
+ })
138
+ }
139
+ ];
140
+ const collectionFields = getCollectionFields({
141
+ schema,
142
+ fieldRules: apiKeyFieldRules,
143
+ additionalProperties: fieldOverrides
144
+ });
145
+ let apiKeyCollection = {
146
+ ...existingApiKeyCollection,
147
+ slug: apiKeySlug,
148
+ admin: {
149
+ hidden: pluginOptions.hidePluginCollections ?? false,
150
+ useAsTitle: 'name',
151
+ description: 'API keys are used to authenticate requests to the API.',
152
+ group: pluginOptions?.collectionAdminGroup ?? 'Auth',
153
+ ...existingApiKeyCollection?.admin
154
+ },
155
+ access: {
156
+ ...getAdminAccess(pluginOptions),
157
+ ...existingApiKeyCollection?.access ?? {}
158
+ },
159
+ custom: {
160
+ ...existingApiKeyCollection?.custom ?? {},
161
+ betterAuthModelKey: baModelKey.apikey
162
+ },
163
+ fields: [
164
+ ...existingApiKeyCollection?.fields ?? [],
165
+ ...collectionFields ?? []
188
166
  ]
189
167
  };
168
+ if (typeof pluginOptions.pluginCollectionOverrides?.apiKeys === 'function') {
169
+ apiKeyCollection = pluginOptions.pluginCollectionOverrides.apiKeys({
170
+ collection: apiKeyCollection
171
+ });
172
+ }
173
+ assertAllSchemaFields(apiKeyCollection, schema);
190
174
  return apiKeyCollection;
191
175
  }
192
176
 
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vbGliL2J1aWxkLWNvbGxlY3Rpb25zL2FwaS1rZXlzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcydcbmltcG9ydCB7IGJldHRlckF1dGhQbHVnaW5TbHVncywgYmFzZUNvbGxlY3Rpb25TbHVncyB9IGZyb20gJy4uLy4uL2NvbnN0YW50cydcbmltcG9ydCB7IGdldFRpbWVzdGFtcEZpZWxkcyB9IGZyb20gJy4vdXRpbHMvZ2V0LXRpbWVzdGFtcC1maWVsZHMnXG5pbXBvcnQgeyBnZXRBZG1pbkFjY2VzcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvZ2V0LWFkbWluLWFjY2VzcydcblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkQXBpS2V5c0NvbGxlY3Rpb24oeyBwbHVnaW5PcHRpb25zIH06IHsgcGx1Z2luT3B0aW9uczogQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMgfSkge1xuICBjb25zdCBhcGlLZXlTbHVnID0gYmV0dGVyQXV0aFBsdWdpblNsdWdzLmFwaUtleXNcbiAgY29uc3QgdXNlclNsdWcgPSBwbHVnaW5PcHRpb25zLnVzZXJzPy5zbHVnID8/IGJhc2VDb2xsZWN0aW9uU2x1Z3MudXNlcnNcblxuICBjb25zdCBhcGlLZXlDb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnID0ge1xuICAgIHNsdWc6IGFwaUtleVNsdWcsXG4gICAgYWRtaW46IHtcbiAgICAgIGhpZGRlbjogcGx1Z2luT3B0aW9ucy5oaWRlUGx1Z2luQ29sbGVjdGlvbnMgPz8gZmFsc2UsXG4gICAgICB1c2VBc1RpdGxlOiAnbmFtZScsXG4gICAgICBkZXNjcmlwdGlvbjogJ0FQSSBrZXlzIGFyZSB1c2VkIHRvIGF1dGhlbnRpY2F0ZSByZXF1ZXN0cyB0byB0aGUgQVBJLicsXG4gICAgICBncm91cDogcGx1Z2luT3B0aW9ucz8uY29sbGVjdGlvbkFkbWluR3JvdXAgPz8gJ0F1dGgnXG4gICAgfSxcbiAgICBhY2Nlc3M6IHtcbiAgICAgIC4uLmdldEFkbWluQWNjZXNzKHBsdWdpbk9wdGlvbnMpXG4gICAgfSxcbiAgICBmaWVsZHM6IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgIGxhYmVsOiAnTmFtZScsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgbmFtZSBvZiB0aGUgQVBJIGtleS4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdzdGFydCcsXG4gICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgbGFiZWw6ICdTdGFydGluZyBDaGFyYWN0ZXJzJyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgICAgICdUaGUgc3RhcnRpbmcgY2hhcmFjdGVycyBvZiB0aGUgQVBJIGtleS4gVXNlZnVsIGZvciBzaG93aW5nIHRoZSBmaXJzdCBmZXcgY2hhcmFjdGVycyBvZiB0aGUgQVBJIGtleSBpbiB0aGUgVUkgZm9yIHRoZSB1c2VycyB0byBlYXNpbHkgaWRlbnRpZnkuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncHJlZml4JyxcbiAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICBsYWJlbDogJ1ByZWZpeCcsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgQVBJIEtleSBwcmVmaXguIFN0b3JlZCBhcyBwbGFpbiB0ZXh0LidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2tleScsXG4gICAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIGxhYmVsOiAnQVBJIEtleScsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgaGFzaGVkIEFQSSBrZXkgaXRzZWxmLidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3VzZXInLFxuICAgICAgICB0eXBlOiAncmVsYXRpb25zaGlwJyxcbiAgICAgICAgcmVsYXRpb25UbzogdXNlclNsdWcsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBsYWJlbDogJ1VzZXInLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIHVzZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBBUEkga2V5LidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlZmlsbEludGVydmFsJyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGxhYmVsOiAnUmVmaWxsIEludGVydmFsJyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBpbnRlcnZhbCB0byByZWZpbGwgdGhlIGtleSBpbiBtaWxsaXNlY29uZHMuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncmVmaWxsQW1vdW50JyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGxhYmVsOiAnUmVmaWxsIEFtb3VudCcsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgYW1vdW50IHRvIHJlZmlsbCB0aGUgcmVtYWluaW5nIGNvdW50IG9mIHRoZSBrZXkuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbGFzdFJlZmlsbEF0JyxcbiAgICAgICAgdHlwZTogJ2RhdGUnLFxuICAgICAgICBsYWJlbDogJ0xhc3QgUmVmaWxsIEF0JyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBkYXRlIGFuZCB0aW1lIHdoZW4gdGhlIGtleSB3YXMgbGFzdCByZWZpbGxlZC4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdlbmFibGVkJyxcbiAgICAgICAgdHlwZTogJ2NoZWNrYm94JyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiB0cnVlLFxuICAgICAgICBsYWJlbDogJ0VuYWJsZWQnLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnV2hldGhlciB0aGUgQVBJIGtleSBpcyBlbmFibGVkLidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JhdGVMaW1pdEVuYWJsZWQnLFxuICAgICAgICB0eXBlOiAnY2hlY2tib3gnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gICAgICAgIGxhYmVsOiAnUmF0ZSBMaW1pdCBFbmFibGVkJyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1doZXRoZXIgdGhlIEFQSSBrZXkgaGFzIHJhdGUgbGltaXRpbmcgZW5hYmxlZC4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyYXRlTGltaXRUaW1lV2luZG93JyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGxhYmVsOiAnUmF0ZSBMaW1pdCBUaW1lIFdpbmRvdycsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdUaGUgdGltZSB3aW5kb3cgaW4gbWlsbGlzZWNvbmRzIGZvciB0aGUgcmF0ZSBsaW1pdC4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyYXRlTGltaXRNYXgnLFxuICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgbGFiZWw6ICdUaGUgbWF4aW11bSBudW1iZXIgb2YgcmVxdWVzdHMgYWxsb3dlZCB3aXRoaW4gdGhlIGByYXRlTGltaXRUaW1lV2luZG93YC4nLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIG1heGltdW0gbnVtYmVyIG9mIHJlcXVlc3RzIGFsbG93ZWQgd2l0aGluIHRoZSByYXRlIGxpbWl0IHRpbWUgd2luZG93LidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3JlcXVzdENvdW50JyxcbiAgICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgICAgIGxhYmVsOiAnUmVxdWVzdCBDb3VudCcsXG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIG51bWJlciBvZiByZXF1ZXN0cyBtYWRlIHdpdGhpbiB0aGUgcmF0ZSBsaW1pdCB0aW1lIHdpbmRvdy4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdyZW1haW5pbmcnLFxuICAgICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICAgICAgbGFiZWw6ICdSZW1haW5pbmcgUmVxdWVzdHMnLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIG51bWJlciBvZiByZXF1ZXN0cyByZW1haW5pbmcuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbGFzdFJlcXVlc3QnLFxuICAgICAgICB0eXBlOiAnZGF0ZScsXG4gICAgICAgIGxhYmVsOiAnTGFzdCBSZXF1ZXN0IEF0JyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBkYXRlIGFuZCB0aW1lIG9mIHRoZSBsYXN0IHJlcXVlc3QgbWFkZSB0byB0aGUga2V5LidcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2V4cGlyZXNBdCcsXG4gICAgICAgIHR5cGU6ICdkYXRlJyxcbiAgICAgICAgbGFiZWw6ICdFeHBpcmVzIEF0JyxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICByZWFkT25seTogdHJ1ZSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RoZSBkYXRlIGFuZCB0aW1lIG9mIHdoZW4gdGhlIEFQSSBrZXkgd2lsbCBleHBpcmUuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncGVybWlzc2lvbnMnLFxuICAgICAgICB0eXBlOiAndGV4dCcsXG4gICAgICAgIGxhYmVsOiAnUGVybWlzc2lvbnMnLFxuICAgICAgICBhZG1pbjoge1xuICAgICAgICAgIHJlYWRPbmx5OiB0cnVlLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnVGhlIHBlcm1pc3Npb25zIGZvciB0aGUgQVBJIGtleS4nXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtZXRhZGF0YScsXG4gICAgICAgIHR5cGU6ICdqc29uJyxcbiAgICAgICAgbGFiZWw6ICdNZXRhZGF0YScsXG4gICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgcmVhZE9ubHk6IHRydWUsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICdBbnkgYWRkaXRpb25hbCBtZXRhZGF0YSB5b3Ugd2FudCB0byBzdG9yZSB3aXRoIHRoZSBrZXkuJ1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgLi4uZ2V0VGltZXN0YW1wRmllbGRzKClcbiAgICBdXG4gIH1cblxuICByZXR1cm4gYXBpS2V5Q29sbGVjdGlvblxufVxuIl0sIm5hbWVzIjpbImJldHRlckF1dGhQbHVnaW5TbHVncyIsImJhc2VDb2xsZWN0aW9uU2x1Z3MiLCJnZXRUaW1lc3RhbXBGaWVsZHMiLCJnZXRBZG1pbkFjY2VzcyIsImJ1aWxkQXBpS2V5c0NvbGxlY3Rpb24iLCJwbHVnaW5PcHRpb25zIiwiYXBpS2V5U2x1ZyIsImFwaUtleXMiLCJ1c2VyU2x1ZyIsInVzZXJzIiwic2x1ZyIsImFwaUtleUNvbGxlY3Rpb24iLCJhZG1pbiIsImhpZGRlbiIsImhpZGVQbHVnaW5Db2xsZWN0aW9ucyIsInVzZUFzVGl0bGUiLCJkZXNjcmlwdGlvbiIsImdyb3VwIiwiY29sbGVjdGlvbkFkbWluR3JvdXAiLCJhY2Nlc3MiLCJmaWVsZHMiLCJuYW1lIiwidHlwZSIsImxhYmVsIiwicmVhZE9ubHkiLCJyZXF1aXJlZCIsInJlbGF0aW9uVG8iLCJkZWZhdWx0VmFsdWUiXSwibWFwcGluZ3MiOiJBQUVBLFNBQVNBLHFCQUFxQixFQUFFQyxtQkFBbUIsUUFBUSxrQkFBaUI7QUFDNUUsU0FBU0Msa0JBQWtCLFFBQVEsK0JBQThCO0FBQ2pFLFNBQVNDLGNBQWMsUUFBUSxpQ0FBZ0M7QUFFL0QsT0FBTyxTQUFTQyx1QkFBdUIsRUFBRUMsYUFBYSxFQUE4QztJQUNsRyxNQUFNQyxhQUFhTixzQkFBc0JPLE9BQU87SUFDaEQsTUFBTUMsV0FBV0gsY0FBY0ksS0FBSyxFQUFFQyxRQUFRVCxvQkFBb0JRLEtBQUs7SUFFdkUsTUFBTUUsbUJBQXFD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
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vbGliL2J1aWxkLWNvbGxlY3Rpb25zL2FwaS1rZXlzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJhTW9kZWxLZXkgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnXG5pbXBvcnQgeyBnZXRBZG1pbkFjY2VzcyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvZ2V0LWFkbWluLWFjY2VzcydcbmltcG9ydCB7IGdldERlYWZ1bHRDb2xsZWN0aW9uU2x1ZyB9IGZyb20gJy4uLy4uL2hlbHBlcnMvZ2V0LWNvbGxlY3Rpb24tc2x1ZydcbmltcG9ydCB7IGdldENvbGxlY3Rpb25GaWVsZHMgfSBmcm9tICcuL3V0aWxzL3RyYW5zZm9ybS1zY2hlbWEtZmllbGRzLXRvLXBheWxvYWQnXG5pbXBvcnQgeyBhc3NlcnRBbGxTY2hlbWFGaWVsZHMgfSBmcm9tICcuL3V0aWxzL2NvbGxlY3Rpb24tc2NoZW1hJ1xuXG5pbXBvcnQgeyB0eXBlIENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBBcGlrZXkgfSBmcm9tICdAL2JldHRlci1hdXRoL2dlbmVyYXRlZC10eXBlcydcbmltcG9ydCB0eXBlIHsgRmllbGRSdWxlIH0gZnJvbSAnLi91dGlscy9tb2RlbC1maWVsZC10cmFuc2Zvcm1hdGlvbnMnXG5pbXBvcnQgdHlwZSB7IEJ1aWxkQ29sbGVjdGlvblByb3BzLCBGaWVsZE92ZXJyaWRlcyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL3R5cGVzJ1xuXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRBcGlLZXlzQ29sbGVjdGlvbih7IGluY29taW5nQ29sbGVjdGlvbnMsIHBsdWdpbk9wdGlvbnMsIHNjaGVtYSB9OiBCdWlsZENvbGxlY3Rpb25Qcm9wcyk6IENvbGxlY3Rpb25Db25maWcge1xuICBjb25zdCBhcGlLZXlTbHVnID0gZ2V0RGVhZnVsdENvbGxlY3Rpb25TbHVnKHsgbW9kZWxLZXk6IGJhTW9kZWxLZXkuYXBpa2V5LCBwbHVnaW5PcHRpb25zIH0pXG5cbiAgY29uc3QgZXhpc3RpbmdBcGlLZXlDb2xsZWN0aW9uID0gaW5jb21pbmdDb2xsZWN0aW9ucy5maW5kKChjb2xsZWN0aW9uKSA9PiBjb2xsZWN0aW9uLnNsdWcgPT09IGFwaUtleVNsdWcpIGFzIENvbGxlY3Rpb25Db25maWcgfCB1bmRlZmluZWRcblxuICBjb25zdCBmaWVsZE92ZXJyaWRlczogRmllbGRPdmVycmlkZXM8a2V5b2YgQXBpa2V5PiA9IHtcbiAgICBuYW1lOiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIG5hbWUgb2YgdGhlIEFQSSBrZXkuJyB9XG4gICAgfSksXG4gICAgc3RhcnQ6ICgpID0+ICh7XG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdUaGUgc3RhcnRpbmcgY2hhcmFjdGVycyBvZiB0aGUgQVBJIGtleS4nIH1cbiAgICB9KSxcbiAgICBwcmVmaXg6ICgpID0+ICh7XG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdUaGUgQVBJIEtleSBwcmVmaXguIFN0b3JlZCBhcyBwbGFpbiB0ZXh0LicgfVxuICAgIH0pLFxuICAgIGtleTogKCkgPT4gKHtcbiAgICAgIGFkbWluOiB7IHJlYWRPbmx5OiB0cnVlLCBkZXNjcmlwdGlvbjogJ1RoZSBoYXNoZWQgQVBJIGtleSBpdHNlbGYuJyB9XG4gICAgfSksXG4gICAgdXNlcklkOiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIHVzZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBBUEkga2V5LicgfVxuICAgIH0pLFxuICAgIHJlZmlsbEludGVydmFsOiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIGludGVydmFsIHRvIHJlZmlsbCB0aGUga2V5IGluIG1pbGxpc2Vjb25kcy4nIH1cbiAgICB9KSxcbiAgICByZWZpbGxBbW91bnQ6ICgpID0+ICh7XG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdUaGUgYW1vdW50IHRvIHJlZmlsbCB0aGUgcmVtYWluaW5nIGNvdW50IG9mIHRoZSBrZXkuJyB9XG4gICAgfSksXG4gICAgbGFzdFJlZmlsbEF0OiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIGRhdGUgYW5kIHRpbWUgd2hlbiB0aGUga2V5IHdhcyBsYXN0IHJlZmlsbGVkLicgfVxuICAgIH0pLFxuICAgIGVuYWJsZWQ6ICgpID0+ICh7XG4gICAgICBkZWZhdWx0VmFsdWU6IHRydWUsXG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdXaGV0aGVyIHRoZSBBUEkga2V5IGlzIGVuYWJsZWQuJyB9XG4gICAgfSksXG4gICAgcmF0ZUxpbWl0RW5hYmxlZDogKCkgPT4gKHtcbiAgICAgIGRlZmF1bHRWYWx1ZTogdHJ1ZSxcbiAgICAgIGFkbWluOiB7IHJlYWRPbmx5OiB0cnVlLCBkZXNjcmlwdGlvbjogJ1doZXRoZXIgdGhlIEFQSSBrZXkgaGFzIHJhdGUgbGltaXRpbmcgZW5hYmxlZC4nIH1cbiAgICB9KSxcbiAgICByYXRlTGltaXRUaW1lV2luZG93OiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIHRpbWUgd2luZG93IGluIG1pbGxpc2Vjb25kcyBmb3IgdGhlIHJhdGUgbGltaXQuJyB9XG4gICAgfSksXG4gICAgcmF0ZUxpbWl0TWF4OiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIG1heGltdW0gbnVtYmVyIG9mIHJlcXVlc3RzIGFsbG93ZWQgd2l0aGluIHRoZSByYXRlIGxpbWl0IHRpbWUgd2luZG93LicgfVxuICAgIH0pLFxuICAgIHJlcXVlc3RDb3VudDogKCkgPT4gKHtcbiAgICAgIGFkbWluOiB7IHJlYWRPbmx5OiB0cnVlLCBkZXNjcmlwdGlvbjogJ1RoZSBudW1iZXIgb2YgcmVxdWVzdHMgbWFkZSB3aXRoaW4gdGhlIHJhdGUgbGltaXQgdGltZSB3aW5kb3cuJyB9XG4gICAgfSksXG4gICAgcmVtYWluaW5nOiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIG51bWJlciBvZiByZXF1ZXN0cyByZW1haW5pbmcuJyB9XG4gICAgfSksXG4gICAgbGFzdFJlcXVlc3Q6ICgpID0+ICh7XG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdUaGUgZGF0ZSBhbmQgdGltZSBvZiB0aGUgbGFzdCByZXF1ZXN0IG1hZGUgdG8gdGhlIGtleS4nIH1cbiAgICB9KSxcbiAgICBleHBpcmVzQXQ6ICgpID0+ICh7XG4gICAgICBhZG1pbjogeyByZWFkT25seTogdHJ1ZSwgZGVzY3JpcHRpb246ICdUaGUgZGF0ZSBhbmQgdGltZSBvZiB3aGVuIHRoZSBBUEkga2V5IHdpbGwgZXhwaXJlLicgfVxuICAgIH0pLFxuICAgIHBlcm1pc3Npb25zOiAoKSA9PiAoe1xuICAgICAgYWRtaW46IHsgcmVhZE9ubHk6IHRydWUsIGRlc2NyaXB0aW9uOiAnVGhlIHBlcm1pc3Npb25zIGZvciB0aGUgQVBJIGtleS4nIH1cbiAgICB9KSxcbiAgICBtZXRhZGF0YTogKCkgPT4gKHtcbiAgICAgIHR5cGU6ICdqc29uJyxcbiAgICAgIGFkbWluOiB7IHJlYWRPbmx5OiB0cnVlLCBkZXNjcmlwdGlvbjogJ0FueSBhZGRpdGlvbmFsIG1ldGFkYXRhIHlvdSB3YW50IHRvIHN0b3JlIHdpdGggdGhlIGtleS4nIH1cbiAgICB9KVxuICB9XG5cbiAgY29uc3QgYXBpS2V5RmllbGRSdWxlczogRmllbGRSdWxlW10gPSBbXG4gICAge1xuICAgICAgY29uZGl0aW9uOiAoZmllbGQpID0+IGZpZWxkLnR5cGUgPT09ICdkYXRlJyxcbiAgICAgIHRyYW5zZm9ybTogKGZpZWxkKSA9PiAoe1xuICAgICAgICAuLi5maWVsZCxcbiAgICAgICAgc2F2ZVRvSldUOiBmYWxzZSxcbiAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICBkaXNhYmxlQnVsa0VkaXQ6IHRydWUsXG4gICAgICAgICAgaGlkZGVuOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIGluZGV4OiB0cnVlLFxuICAgICAgICBsYWJlbDogKHsgdCB9OiBhbnkpID0+IHQoJ2dlbmVyYWw6dXBkYXRlZEF0JylcbiAgICAgIH0pXG4gICAgfVxuICBdXG5cbiAgY29uc3QgY29sbGVjdGlvbkZpZWxkcyA9IGdldENvbGxlY3Rpb25GaWVsZHMoe1xuICAgIHNjaGVtYSxcbiAgICBmaWVsZFJ1bGVzOiBhcGlLZXlGaWVsZFJ1bGVzLFxuICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiBmaWVsZE92ZXJyaWRlc1xuICB9KVxuXG4gIGxldCBhcGlLZXlDb2xsZWN0aW9uOiBDb2xsZWN0aW9uQ29uZmlnID0ge1xuICAgIC4uLmV4aXN0aW5nQXBpS2V5Q29sbGVjdGlvbixcbiAgICBzbHVnOiBhcGlLZXlTbHVnLFxuICAgIGFkbWluOiB7XG4gICAgICBoaWRkZW46IHBsdWdpbk9wdGlvbnMuaGlkZVBsdWdpbkNvbGxlY3Rpb25zID8/IGZhbHNlLFxuICAgICAgdXNlQXNUaXRsZTogJ25hbWUnLFxuICAgICAgZGVzY3JpcHRpb246ICdBUEkga2V5cyBhcmUgdXNlZCB0byBhdXRoZW50aWNhdGUgcmVxdWVzdHMgdG8gdGhlIEFQSS4nLFxuICAgICAgZ3JvdXA6IHBsdWdpbk9wdGlvbnM/LmNvbGxlY3Rpb25BZG1pbkdyb3VwID8/ICdBdXRoJyxcbiAgICAgIC4uLmV4aXN0aW5nQXBpS2V5Q29sbGVjdGlvbj8uYWRtaW5cbiAgICB9LFxuICAgIGFjY2Vzczoge1xuICAgICAgLi4uZ2V0QWRtaW5BY2Nlc3MocGx1Z2luT3B0aW9ucyksXG4gICAgICAuLi4oZXhpc3RpbmdBcGlLZXlDb2xsZWN0aW9uPy5hY2Nlc3MgPz8ge30pXG4gICAgfSxcbiAgICBjdXN0b206IHtcbiAgICAgIC4uLihleGlzdGluZ0FwaUtleUNvbGxlY3Rpb24/LmN1c3RvbSA/PyB7fSksXG4gICAgICBiZXR0ZXJBdXRoTW9kZWxLZXk6IGJhTW9kZWxLZXkuYXBpa2V5XG4gICAgfSxcbiAgICBmaWVsZHM6IFsuLi4oZXhpc3RpbmdBcGlLZXlDb2xsZWN0aW9uPy5maWVsZHMgPz8gW10pLCAuLi4oY29sbGVjdGlvbkZpZWxkcyA/PyBbXSldXG4gIH1cblxuICBpZiAodHlwZW9mIHBsdWdpbk9wdGlvbnMucGx1Z2luQ29sbGVjdGlvbk92ZXJyaWRlcz8uYXBpS2V5cyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIGFwaUtleUNvbGxlY3Rpb24gPSBwbHVnaW5PcHRpb25zLnBsdWdpbkNvbGxlY3Rpb25PdmVycmlkZXMuYXBpS2V5cyh7XG4gICAgICBjb2xsZWN0aW9uOiBhcGlLZXlDb2xsZWN0aW9uXG4gICAgfSlcbiAgfVxuXG4gIGFzc2VydEFsbFNjaGVtYUZpZWxkcyhhcGlLZXlDb2xsZWN0aW9uLCBzY2hlbWEpXG5cbiAgcmV0dXJuIGFwaUtleUNvbGxlY3Rpb25cbn1cbiJdLCJuYW1lcyI6WyJiYU1vZGVsS2V5IiwiZ2V0QWRtaW5BY2Nlc3MiLCJnZXREZWFmdWx0Q29sbGVjdGlvblNsdWciLCJnZXRDb2xsZWN0aW9uRmllbGRzIiwiYXNzZXJ0QWxsU2NoZW1hRmllbGRzIiwiYnVpbGRBcGlLZXlzQ29sbGVjdGlvbiIsImluY29taW5nQ29sbGVjdGlvbnMiLCJwbHVnaW5PcHRpb25zIiwic2NoZW1hIiwiYXBpS2V5U2x1ZyIsIm1vZGVsS2V5IiwiYXBpa2V5IiwiZXhpc3RpbmdBcGlLZXlDb2xsZWN0aW9uIiwiZmluZCIsImNvbGxlY3Rpb24iLCJzbHVnIiwiZmllbGRPdmVycmlkZXMiLCJuYW1lIiwiYWRtaW4iLCJyZWFkT25seSIsImRlc2NyaXB0aW9uIiwic3RhcnQiLCJwcmVmaXgiLCJrZXkiLCJ1c2VySWQiLCJyZWZpbGxJbnRlcnZhbCIsInJlZmlsbEFtb3VudCIsImxhc3RSZWZpbGxBdCIsImVuYWJsZWQiLCJkZWZhdWx0VmFsdWUiLCJyYXRlTGltaXRFbmFibGVkIiwicmF0ZUxpbWl0VGltZVdpbmRvdyIsInJhdGVMaW1pdE1heCIsInJlcXVlc3RDb3VudCIsInJlbWFpbmluZyIsImxhc3RSZXF1ZXN0IiwiZXhwaXJlc0F0IiwicGVybWlzc2lvbnMiLCJtZXRhZGF0YSIsInR5cGUiLCJhcGlLZXlGaWVsZFJ1bGVzIiwiY29uZGl0aW9uIiwiZmllbGQiLCJ0cmFuc2Zvcm0iLCJzYXZlVG9KV1QiLCJkaXNhYmxlQnVsa0VkaXQiLCJoaWRkZW4iLCJpbmRleCIsImxhYmVsIiwidCIsImNvbGxlY3Rpb25GaWVsZHMiLCJmaWVsZFJ1bGVzIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJhcGlLZXlDb2xsZWN0aW9uIiwiaGlkZVBsdWdpbkNvbGxlY3Rpb25zIiwidXNlQXNUaXRsZSIsImdyb3VwIiwiY29sbGVjdGlvbkFkbWluR3JvdXAiLCJhY2Nlc3MiLCJjdXN0b20iLCJiZXR0ZXJBdXRoTW9kZWxLZXkiLCJmaWVsZHMiLCJwbHVnaW5Db2xsZWN0aW9uT3ZlcnJpZGVzIiwiYXBpS2V5cyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsVUFBVSxRQUFRLGtCQUFpQjtBQUM1QyxTQUFTQyxjQUFjLFFBQVEsaUNBQWdDO0FBQy9ELFNBQVNDLHdCQUF3QixRQUFRLG9DQUFtQztBQUM1RSxTQUFTQyxtQkFBbUIsUUFBUSw2Q0FBNEM7QUFDaEYsU0FBU0MscUJBQXFCLFFBQVEsNEJBQTJCO0FBT2pFLE9BQU8sU0FBU0MsdUJBQXVCLEVBQUVDLG1CQUFtQixFQUFFQyxhQUFhLEVBQUVDLE1BQU0sRUFBd0I7SUFDekcsTUFBTUMsYUFBYVAseUJBQXlCO1FBQUVRLFVBQVVWLFdBQVdXLE1BQU07UUFBRUo7SUFBYztJQUV6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
@@ -1,12 +1,12 @@
1
- import { CollectionConfig } from 'payload';
2
- import type { BetterAuthPluginOptions, SanitizedBetterAuthOptions } from '../../types';
1
+ import type { CollectionConfig } from 'payload';
2
+ import { CollectionSchemaMap } from '../../helpers/get-collection-schema-map';
3
+ import type { BetterAuthPluginOptions } from '../../types';
3
4
  /**
4
5
  * Builds the required collections based on the BetterAuth options and plugins
5
6
  */
6
- export declare function buildCollections({ incomingCollections, requiredCollectionSlugs, pluginOptions, betterAuthOptions }: {
7
+ export declare function buildCollectionMap({ collectionSchemaMap, incomingCollections, pluginOptions }: {
8
+ collectionSchemaMap: CollectionSchemaMap;
7
9
  incomingCollections: CollectionConfig[];
8
- requiredCollectionSlugs: Set<string>;
9
10
  pluginOptions: BetterAuthPluginOptions;
10
- betterAuthOptions: SanitizedBetterAuthOptions;
11
- }): CollectionConfig[];
11
+ }): Record<string, CollectionConfig>;
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/lib/build-collections/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAmBtF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,mBAAmB,EACnB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EAClB,EAAE;IACD,mBAAmB,EAAE,gBAAgB,EAAE,CAAA;IACvC,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACpC,aAAa,EAAE,uBAAuB,CAAA;IACtC,iBAAiB,EAAE,0BAA0B,CAAA;CAC9C,GAAG,gBAAgB,EAAE,CAgDrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/lib/build-collections/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAE7E,OAAO,KAAK,EAAE,uBAAuB,EAAqC,MAAM,aAAa,CAAA;AAoB7F;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACd,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,mBAAmB,EAAE,gBAAgB,EAAE,CAAA;IACvC,aAAa,EAAE,uBAAuB,CAAA;CACvC,GAAG,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CA4DnC"}