payload-auth 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/dist/better-auth/adapter/index.d.ts +2 -2
  2. package/dist/better-auth/adapter/index.d.ts.map +1 -1
  3. package/dist/better-auth/adapter/index.js +115 -69
  4. package/dist/better-auth/adapter/transform/index.d.ts +22 -10
  5. package/dist/better-auth/adapter/transform/index.d.ts.map +1 -1
  6. package/dist/better-auth/adapter/transform/index.js +387 -96
  7. package/dist/better-auth/adapter/types.d.ts +2 -1
  8. package/dist/better-auth/adapter/types.d.ts.map +1 -1
  9. package/dist/better-auth/adapter/types.js +1 -1
  10. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts +3 -0
  11. package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts.map +1 -0
  12. package/dist/better-auth/plugin/helpers/check-passkey-plugin.js +5 -0
  13. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts +3 -0
  14. package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts.map +1 -0
  15. package/dist/better-auth/plugin/helpers/check-username-plugin.js +5 -0
  16. package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts.map +1 -1
  17. package/dist/better-auth/plugin/helpers/generate-verify-email-url.js +8 -8
  18. package/dist/better-auth/plugin/helpers/get-admin-access.d.ts +8 -0
  19. package/dist/better-auth/plugin/helpers/get-admin-access.d.ts.map +1 -0
  20. package/dist/better-auth/plugin/helpers/get-admin-access.js +22 -0
  21. package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts +14 -0
  22. package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts.map +1 -0
  23. package/dist/better-auth/plugin/helpers/get-admin-routes.js +6 -0
  24. package/dist/better-auth/plugin/helpers/get-all-roles.d.ts +6 -0
  25. package/dist/better-auth/plugin/helpers/get-all-roles.d.ts.map +1 -0
  26. package/dist/better-auth/plugin/helpers/get-all-roles.js +20 -0
  27. package/dist/better-auth/plugin/helpers/get-ip.d.ts +1 -1
  28. package/dist/better-auth/plugin/helpers/get-ip.d.ts.map +1 -1
  29. package/dist/better-auth/plugin/helpers/get-ip.js +14 -14
  30. package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts +3 -0
  31. package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts.map +1 -0
  32. package/dist/better-auth/plugin/helpers/get-requst-collection.js +14 -0
  33. package/dist/better-auth/plugin/helpers/index.d.ts +1 -1
  34. package/dist/better-auth/plugin/helpers/index.js +2 -2
  35. package/dist/better-auth/plugin/{lib → helpers}/prepare-session-data.d.ts +3 -3
  36. package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts.map +1 -0
  37. package/dist/better-auth/plugin/helpers/prepare-session-data.js +42 -0
  38. package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts +4 -4
  39. package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts.map +1 -1
  40. package/dist/better-auth/plugin/helpers/serialize-cookie.js +34 -34
  41. package/dist/better-auth/plugin/index.d.ts +7 -7
  42. package/dist/better-auth/plugin/index.d.ts.map +1 -1
  43. package/dist/better-auth/plugin/index.js +145 -37
  44. package/dist/better-auth/plugin/{collections → lib/build-collections}/accounts/hooks/sync-password-to-user.d.ts +1 -1
  45. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts.map +1 -0
  46. package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +47 -0
  47. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +7 -0
  48. package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts.map +1 -0
  49. package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +159 -0
  50. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts +6 -0
  51. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts.map +1 -0
  52. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js +11 -0
  53. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts +3 -0
  54. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts.map +1 -0
  55. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js +8 -0
  56. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +7 -0
  57. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts.map +1 -0
  58. package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +107 -0
  59. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +6 -0
  60. package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts.map +1 -0
  61. package/dist/better-auth/plugin/lib/build-collections/api-keys.js +196 -0
  62. package/dist/better-auth/plugin/lib/build-collections/index.d.ts +12 -0
  63. package/dist/better-auth/plugin/lib/build-collections/index.d.ts.map +1 -0
  64. package/dist/better-auth/plugin/lib/build-collections/index.js +96 -0
  65. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +6 -0
  66. package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts.map +1 -0
  67. package/dist/better-auth/plugin/lib/build-collections/invitations.js +91 -0
  68. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +6 -0
  69. package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts.map +1 -0
  70. package/dist/better-auth/plugin/lib/build-collections/jwks.js +43 -0
  71. package/dist/better-auth/plugin/lib/build-collections/members.d.ts +6 -0
  72. package/dist/better-auth/plugin/lib/build-collections/members.d.ts.map +1 -0
  73. package/dist/better-auth/plugin/lib/build-collections/members.js +71 -0
  74. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +6 -0
  75. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts.map +1 -0
  76. package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +98 -0
  77. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +6 -0
  78. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts.map +1 -0
  79. package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +113 -0
  80. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +6 -0
  81. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts.map +1 -0
  82. package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +67 -0
  83. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +6 -0
  84. package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts.map +1 -0
  85. package/dist/better-auth/plugin/lib/build-collections/organizations.js +59 -0
  86. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +6 -0
  87. package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts.map +1 -0
  88. package/dist/better-auth/plugin/lib/build-collections/passkeys.js +108 -0
  89. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +8 -0
  90. package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts.map +1 -0
  91. package/dist/better-auth/plugin/lib/build-collections/sessions.js +123 -0
  92. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +6 -0
  93. package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts.map +1 -0
  94. package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +83 -0
  95. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +6 -0
  96. package/dist/better-auth/plugin/lib/build-collections/teams.d.ts.map +1 -0
  97. package/dist/better-auth/plugin/lib/build-collections/teams.js +45 -0
  98. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +6 -0
  99. package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts.map +1 -0
  100. package/dist/better-auth/plugin/lib/build-collections/two-factors.js +56 -0
  101. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts +8 -0
  102. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts.map +1 -0
  103. package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +52 -0
  104. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts +3 -0
  105. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts.map +1 -0
  106. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.js +96 -0
  107. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts +13 -0
  108. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts.map +1 -0
  109. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +67 -0
  110. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts +4 -0
  111. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts.map +1 -0
  112. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.js +115 -0
  113. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts +3 -0
  114. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts.map +1 -0
  115. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js +110 -0
  116. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts +3 -0
  117. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts.map +1 -0
  118. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.js +62 -0
  119. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts +3 -0
  120. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts.map +1 -0
  121. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js +42 -0
  122. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts +4 -0
  123. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts.map +1 -0
  124. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +79 -0
  125. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts +4 -0
  126. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts.map +1 -0
  127. package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.js +153 -0
  128. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/after-login.d.ts +1 -1
  129. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts.map +1 -0
  130. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +75 -0
  131. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/after-logout.d.ts +1 -1
  132. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts.map +1 -0
  133. package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +74 -0
  134. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +7 -0
  135. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts.map +1 -0
  136. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +45 -0
  137. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/before-login.d.ts +1 -1
  138. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts.map +1 -0
  139. package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +18 -0
  140. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +3 -0
  141. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts.map +1 -0
  142. package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +14 -0
  143. package/dist/better-auth/plugin/{collections → lib/build-collections}/users/hooks/sync-account.d.ts +1 -1
  144. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts.map +1 -0
  145. package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +82 -0
  146. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +8 -0
  147. package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts.map +1 -0
  148. package/dist/better-auth/plugin/lib/build-collections/users/index.js +345 -0
  149. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +8 -0
  150. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts.map +1 -0
  151. package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +31 -0
  152. package/dist/better-auth/plugin/lib/{payload-access.d.ts → build-collections/utils/payload-access.d.ts} +1 -1
  153. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts.map +1 -0
  154. package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js +64 -0
  155. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +7 -0
  156. package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts.map +1 -0
  157. package/dist/better-auth/plugin/lib/build-collections/verifications.js +63 -0
  158. package/dist/better-auth/plugin/lib/{config.d.ts → constants.d.ts} +13 -1
  159. package/dist/better-auth/plugin/lib/constants.d.ts.map +1 -0
  160. package/dist/better-auth/plugin/lib/constants.js +56 -0
  161. package/dist/better-auth/plugin/lib/get-payload-auth.d.ts +2 -2
  162. package/dist/better-auth/plugin/lib/get-payload-auth.d.ts.map +1 -1
  163. package/dist/better-auth/plugin/lib/get-payload-auth.js +2 -2
  164. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts +4 -4
  165. package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts.map +1 -1
  166. package/dist/better-auth/plugin/lib/get-required-collection-slugs.js +26 -43
  167. package/dist/better-auth/plugin/lib/init-better-auth.d.ts +4 -3
  168. package/dist/better-auth/plugin/lib/init-better-auth.d.ts.map +1 -1
  169. package/dist/better-auth/plugin/lib/init-better-auth.js +7 -7
  170. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts +3 -0
  171. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts.map +1 -0
  172. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +8 -0
  173. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts +2 -0
  174. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts.map +1 -0
  175. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +17 -0
  176. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +10 -0
  177. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts.map +1 -0
  178. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +118 -0
  179. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts +2 -0
  180. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts.map +1 -0
  181. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +58 -0
  182. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts +2 -0
  183. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts.map +1 -0
  184. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +86 -0
  185. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts +2 -0
  186. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts.map +1 -0
  187. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +17 -0
  188. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts +2 -0
  189. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts.map +1 -0
  190. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +17 -0
  191. package/dist/better-auth/plugin/lib/{ensure-password-set-before-create.d.ts → sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts} +1 -1
  192. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts.map +1 -0
  193. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js +23 -0
  194. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts.map +1 -0
  195. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js +62 -0
  196. package/dist/better-auth/plugin/lib/{respect-save-to-jwt-fields-middleware.d.ts → sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts} +6 -6
  197. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts.map +1 -0
  198. package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +30 -0
  199. package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts +8 -0
  200. package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts.map +1 -0
  201. package/dist/better-auth/plugin/payload/components/admin-buttons/index.js +115 -0
  202. package/dist/better-auth/plugin/payload/components/admin-buttons/index.scss +31 -0
  203. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts +11 -0
  204. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts.map +1 -0
  205. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js +196 -0
  206. package/dist/better-auth/plugin/payload/components/admin-invite-button/index.scss +131 -0
  207. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts +14 -0
  208. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts.map +1 -0
  209. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.js +111 -0
  210. package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.scss +51 -0
  211. package/dist/better-auth/plugin/payload/components/form-header/index.d.ts +9 -0
  212. package/dist/better-auth/plugin/payload/components/form-header/index.d.ts.map +1 -0
  213. package/dist/better-auth/plugin/payload/components/form-header/index.js +23 -0
  214. package/dist/better-auth/plugin/payload/components/form-header/index.scss +8 -0
  215. package/dist/better-auth/plugin/payload/components/icons.d.ts +9 -0
  216. package/dist/better-auth/plugin/payload/components/icons.d.ts.map +1 -0
  217. package/dist/better-auth/plugin/payload/components/icons.js +437 -0
  218. package/dist/better-auth/plugin/payload/components/logo.d.ts +3 -2
  219. package/dist/better-auth/plugin/payload/components/logo.d.ts.map +1 -1
  220. package/dist/better-auth/plugin/payload/components/logo.js +22 -34
  221. package/dist/better-auth/plugin/payload/components/logout-button.d.ts +6 -0
  222. package/dist/better-auth/plugin/payload/components/logout-button.d.ts.map +1 -0
  223. package/dist/better-auth/plugin/payload/components/logout-button.js +27 -0
  224. package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts +7 -0
  225. package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts.map +1 -0
  226. package/dist/better-auth/plugin/payload/components/rsc-redirect.js +8 -0
  227. package/dist/better-auth/plugin/payload/components/styles.css +2 -2
  228. package/dist/better-auth/plugin/payload/components/token-field.d.ts +5 -0
  229. package/dist/better-auth/plugin/payload/components/token-field.d.ts.map +1 -0
  230. package/dist/better-auth/plugin/payload/components/token-field.js +30 -0
  231. package/dist/better-auth/plugin/payload/exports/client.d.ts +6 -3
  232. package/dist/better-auth/plugin/payload/exports/client.d.ts.map +1 -1
  233. package/dist/better-auth/plugin/payload/exports/client.js +7 -4
  234. package/dist/better-auth/plugin/payload/exports/rsc.d.ts +9 -5
  235. package/dist/better-auth/plugin/payload/exports/rsc.d.ts.map +1 -1
  236. package/dist/better-auth/plugin/payload/exports/rsc.js +10 -6
  237. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts +3 -0
  238. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts.map +1 -0
  239. package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js +8 -0
  240. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts +15 -0
  241. package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts.map +1 -0
  242. package/dist/better-auth/plugin/payload/utils/generate-metadata.js +74 -0
  243. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts +2 -0
  244. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts.map +1 -0
  245. package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js +23 -0
  246. package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts +12 -0
  247. package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts.map +1 -0
  248. package/dist/better-auth/plugin/payload/views/admin-invite/client.js +92 -0
  249. package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts +11 -0
  250. package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts.map +1 -0
  251. package/dist/better-auth/plugin/payload/views/admin-invite/index.js +84 -0
  252. package/dist/better-auth/plugin/payload/views/admin-invite/index.scss +25 -0
  253. package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts +14 -0
  254. package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts.map +1 -0
  255. package/dist/better-auth/plugin/payload/views/create-first-admin/client.js +95 -0
  256. package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts +10 -4
  257. package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts.map +1 -1
  258. package/dist/better-auth/plugin/payload/views/create-first-admin/index.js +124 -92
  259. package/dist/better-auth/plugin/payload/views/create-first-admin/index.scss +29 -0
  260. package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts +8 -0
  261. package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts.map +1 -0
  262. package/dist/better-auth/plugin/payload/views/forgot-password/client.js +119 -0
  263. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +9 -0
  264. package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts.map +1 -0
  265. package/dist/better-auth/plugin/payload/views/forgot-password/index.js +69 -0
  266. package/dist/better-auth/plugin/payload/views/forgot-password/index.scss +0 -0
  267. package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts +5 -0
  268. package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts.map +1 -0
  269. package/dist/better-auth/plugin/payload/views/inactivity/index.js +12 -0
  270. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts +9 -0
  271. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts.map +1 -0
  272. package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.js +54 -0
  273. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts +1 -0
  274. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts.map +1 -0
  275. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.js +121 -0
  276. package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.scss +31 -0
  277. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts +56 -0
  278. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts.map +1 -0
  279. package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.js +3 -0
  280. package/dist/better-auth/plugin/payload/views/login/form/index.d.ts +17 -0
  281. package/dist/better-auth/plugin/payload/views/login/form/index.d.ts.map +1 -0
  282. package/dist/better-auth/plugin/payload/views/login/form/index.js +137 -0
  283. package/dist/better-auth/plugin/payload/views/login/form/index.scss +23 -0
  284. package/dist/better-auth/plugin/payload/views/login/index.d.ts +10 -5
  285. package/dist/better-auth/plugin/payload/views/login/index.d.ts.map +1 -1
  286. package/dist/better-auth/plugin/payload/views/login/index.js +81 -61
  287. package/dist/better-auth/plugin/payload/views/login/index.scss +10 -0
  288. package/dist/better-auth/plugin/payload/views/logout/client.d.ts +8 -0
  289. package/dist/better-auth/plugin/payload/views/logout/client.d.ts.map +1 -0
  290. package/dist/better-auth/plugin/payload/views/logout/client.js +76 -0
  291. package/dist/better-auth/plugin/payload/views/logout/index.d.ts +8 -0
  292. package/dist/better-auth/plugin/payload/views/logout/index.d.ts.map +1 -0
  293. package/dist/better-auth/plugin/payload/views/logout/index.js +14 -0
  294. package/dist/better-auth/plugin/payload/views/logout/index.scss +0 -0
  295. package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts +7 -0
  296. package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts.map +1 -0
  297. package/dist/better-auth/plugin/payload/views/reset-password/client.js +72 -0
  298. package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts +5 -0
  299. package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts.map +1 -0
  300. package/dist/better-auth/plugin/payload/views/reset-password/index.js +81 -0
  301. package/dist/better-auth/plugin/payload/views/reset-password/index.scss +9 -0
  302. package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts +3 -0
  303. package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts.map +1 -0
  304. package/dist/better-auth/plugin/payload/views/reset-password/metadata.js +11 -0
  305. package/dist/better-auth/plugin/types.d.ts +170 -33
  306. package/dist/better-auth/plugin/types.d.ts.map +1 -1
  307. package/dist/better-auth/plugin/types.js +1 -1
  308. package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts +1 -1
  309. package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts.map +1 -1
  310. package/dist/clerk/utils/clerk-user.d.ts +0 -3
  311. package/dist/clerk/utils/clerk-user.d.ts.map +1 -1
  312. package/dist/clerk/utils/clerk-user.js +1 -3
  313. package/dist/clerk/utils/load-clerk-instance.d.ts +1 -1
  314. package/dist/clerk/utils/load-clerk-instance.d.ts.map +1 -1
  315. package/package.json +13 -13
  316. package/LICENSE.md +0 -17
  317. package/dist/better-auth/adapter/dev/bin/run.d.ts +0 -2
  318. package/dist/better-auth/adapter/dev/bin/run.d.ts.map +0 -1
  319. package/dist/better-auth/adapter/dev/bin/run.js +0 -64
  320. package/dist/better-auth/adapter/dev/bin/schema.d.ts +0 -23
  321. package/dist/better-auth/adapter/dev/bin/schema.d.ts.map +0 -1
  322. package/dist/better-auth/adapter/dev/bin/schema.js +0 -160
  323. package/dist/better-auth/adapter/dev/collections.d.ts +0 -4
  324. package/dist/better-auth/adapter/dev/collections.d.ts.map +0 -1
  325. package/dist/better-auth/adapter/dev/collections.js +0 -212
  326. package/dist/better-auth/adapter/dev/index.d.ts +0 -4
  327. package/dist/better-auth/adapter/dev/index.d.ts.map +0 -1
  328. package/dist/better-auth/adapter/dev/index.js +0 -168
  329. package/dist/better-auth/adapter/test/adapter.test.d.ts +0 -2
  330. package/dist/better-auth/adapter/test/adapter.test.d.ts.map +0 -1
  331. package/dist/better-auth/adapter/test/adapter.test.js +0 -181
  332. package/dist/better-auth/adapter/test/better-auth-adapter-test.d.ts +0 -8
  333. package/dist/better-auth/adapter/test/better-auth-adapter-test.d.ts.map +0 -1
  334. package/dist/better-auth/adapter/test/better-auth-adapter-test.js +0 -425
  335. package/dist/better-auth/adapter/test/schema.test.d.ts +0 -2
  336. package/dist/better-auth/adapter/test/schema.test.d.ts.map +0 -1
  337. package/dist/better-auth/adapter/test/schema.test.js +0 -796
  338. package/dist/better-auth/adapter/test/test_payload1/schema.d.ts +0 -24
  339. package/dist/better-auth/adapter/test/test_payload1/schema.d.ts.map +0 -1
  340. package/dist/better-auth/adapter/test/test_payload1/schema.js +0 -177
  341. package/dist/better-auth/adapter/test/test_payload2/schema.d.ts +0 -24
  342. package/dist/better-auth/adapter/test/test_payload2/schema.d.ts.map +0 -1
  343. package/dist/better-auth/adapter/test/test_payload2/schema.js +0 -167
  344. package/dist/better-auth/adapter/test/test_payload3/schema.d.ts +0 -24
  345. package/dist/better-auth/adapter/test/test_payload3/schema.d.ts.map +0 -1
  346. package/dist/better-auth/adapter/test/test_payload3/schema.js +0 -198
  347. package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.d.ts.map +0 -1
  348. package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.js +0 -47
  349. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.d.ts +0 -7
  350. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.d.ts.map +0 -1
  351. package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.js +0 -106
  352. package/dist/better-auth/plugin/collections/users/hooks/after-login.d.ts.map +0 -1
  353. package/dist/better-auth/plugin/collections/users/hooks/after-login.js +0 -71
  354. package/dist/better-auth/plugin/collections/users/hooks/after-logout.d.ts.map +0 -1
  355. package/dist/better-auth/plugin/collections/users/hooks/after-logout.js +0 -49
  356. package/dist/better-auth/plugin/collections/users/hooks/before-login.d.ts.map +0 -1
  357. package/dist/better-auth/plugin/collections/users/hooks/before-login.js +0 -18
  358. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.d.ts +0 -6
  359. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.d.ts.map +0 -1
  360. package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.js +0 -33
  361. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.d.ts +0 -3
  362. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.d.ts.map +0 -1
  363. package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.js +0 -14
  364. package/dist/better-auth/plugin/collections/users/hooks/sync-account.d.ts.map +0 -1
  365. package/dist/better-auth/plugin/collections/users/hooks/sync-account.js +0 -82
  366. package/dist/better-auth/plugin/lib/auth-strategy.d.ts +0 -9
  367. package/dist/better-auth/plugin/lib/auth-strategy.d.ts.map +0 -1
  368. package/dist/better-auth/plugin/lib/auth-strategy.js +0 -48
  369. package/dist/better-auth/plugin/lib/build-collection-configs.d.ts +0 -12
  370. package/dist/better-auth/plugin/lib/build-collection-configs.d.ts.map +0 -1
  371. package/dist/better-auth/plugin/lib/build-collection-configs.js +0 -1558
  372. package/dist/better-auth/plugin/lib/config.d.ts.map +0 -1
  373. package/dist/better-auth/plugin/lib/config.js +0 -44
  374. package/dist/better-auth/plugin/lib/ensure-password-set-before-create.d.ts.map +0 -1
  375. package/dist/better-auth/plugin/lib/ensure-password-set-before-create.js +0 -24
  376. package/dist/better-auth/plugin/lib/password.d.ts.map +0 -1
  377. package/dist/better-auth/plugin/lib/password.js +0 -63
  378. package/dist/better-auth/plugin/lib/payload-access.d.ts.map +0 -1
  379. package/dist/better-auth/plugin/lib/payload-access.js +0 -64
  380. package/dist/better-auth/plugin/lib/prepare-session-data.d.ts.map +0 -1
  381. package/dist/better-auth/plugin/lib/prepare-session-data.js +0 -42
  382. package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.d.ts.map +0 -1
  383. package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.js +0 -30
  384. package/dist/better-auth/plugin/lib/sanitize-auth-options.d.ts +0 -6
  385. package/dist/better-auth/plugin/lib/sanitize-auth-options.d.ts.map +0 -1
  386. package/dist/better-auth/plugin/lib/sanitize-auth-options.js +0 -298
  387. package/dist/better-auth/plugin/payload/components/admin-buttons.d.ts +0 -7
  388. package/dist/better-auth/plugin/payload/components/admin-buttons.d.ts.map +0 -1
  389. package/dist/better-auth/plugin/payload/components/admin-buttons.js +0 -219
  390. package/dist/better-auth/plugin/payload/components/login-redirect.d.ts +0 -2
  391. package/dist/better-auth/plugin/payload/components/login-redirect.d.ts.map +0 -1
  392. package/dist/better-auth/plugin/payload/components/login-redirect.js +0 -6
  393. package/dist/better-auth/plugin/payload/components/logout.d.ts +0 -3
  394. package/dist/better-auth/plugin/payload/components/logout.d.ts.map +0 -1
  395. package/dist/better-auth/plugin/payload/components/logout.js +0 -61
  396. package/dist/better-auth/plugin/payload/components/sign-in.d.ts +0 -4
  397. package/dist/better-auth/plugin/payload/components/sign-in.d.ts.map +0 -1
  398. package/dist/better-auth/plugin/payload/components/sign-in.js +0 -384
  399. package/dist/better-auth/plugin/payload/components/sign-up.d.ts +0 -7
  400. package/dist/better-auth/plugin/payload/components/sign-up.d.ts.map +0 -1
  401. package/dist/better-auth/plugin/payload/components/sign-up.js +0 -503
  402. package/dist/better-auth/plugin/payload/components/ui/button.d.ts +0 -11
  403. package/dist/better-auth/plugin/payload/components/ui/button.d.ts.map +0 -1
  404. package/dist/better-auth/plugin/payload/components/ui/button.js +0 -42
  405. package/dist/better-auth/plugin/payload/components/ui/card.d.ts +0 -10
  406. package/dist/better-auth/plugin/payload/components/ui/card.d.ts.map +0 -1
  407. package/dist/better-auth/plugin/payload/components/ui/card.js +0 -55
  408. package/dist/better-auth/plugin/payload/components/ui/checkbox.d.ts +0 -5
  409. package/dist/better-auth/plugin/payload/components/ui/checkbox.d.ts.map +0 -1
  410. package/dist/better-auth/plugin/payload/components/ui/checkbox.js +0 -23
  411. package/dist/better-auth/plugin/payload/components/ui/cn.d.ts +0 -3
  412. package/dist/better-auth/plugin/payload/components/ui/cn.d.ts.map +0 -1
  413. package/dist/better-auth/plugin/payload/components/ui/cn.js +0 -7
  414. package/dist/better-auth/plugin/payload/components/ui/input.d.ts +0 -4
  415. package/dist/better-auth/plugin/payload/components/ui/input.d.ts.map +0 -1
  416. package/dist/better-auth/plugin/payload/components/ui/input.js +0 -14
  417. package/dist/better-auth/plugin/payload/components/ui/label.d.ts +0 -5
  418. package/dist/better-auth/plugin/payload/components/ui/label.d.ts.map +0 -1
  419. package/dist/better-auth/plugin/payload/components/ui/label.js +0 -15
  420. package/dist/better-auth/plugin/payload/components/ui/password-input.d.ts +0 -3
  421. package/dist/better-auth/plugin/payload/components/ui/password-input.d.ts.map +0 -1
  422. package/dist/better-auth/plugin/payload/components/ui/password-input.js +0 -55
  423. /package/dist/better-auth/plugin/lib/{password.d.ts → sanitize-better-auth-options/utils/password.d.ts} +0 -0
@@ -0,0 +1,137 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import { Form, FormSubmit, Link, PasswordField, useAuth, useConfig, useTranslation, toast } from "@payloadcms/ui";
4
+ import React, { useState } from "react";
5
+ import AdminSocialProviderButtons from "../../../components/admin-social-provider-buttons";
6
+ import { getSafeRedirect } from "../../../utils/get-safe-redirect";
7
+ import "./index.scss";
8
+ import { formatAdminURL, getLoginOptions } from "payload/shared";
9
+ import { LoginField } from "./fields/login-field";
10
+ import { getAdminRoutes } from "../../../../helpers/get-admin-routes";
11
+ import { useRouter } from "next/navigation";
12
+ const baseClass = "login__form";
13
+ export const LoginForm = ({ socialProviders, hasUsernamePlugin, hasPasskeySupport, prefillEmail, prefillPassword, prefillUsername, searchParams })=>{
14
+ const router = useRouter();
15
+ const { t } = useTranslation();
16
+ const { setUser } = useAuth();
17
+ const { config, getEntityConfig } = useConfig();
18
+ const [loading, setLoading] = useState(false);
19
+ const [requireEmailVerification, setRequireEmailVerification] = useState(false);
20
+ const { admin: { user: userSlug }, routes: { admin: adminRoute, api: apiRoute } } = config;
21
+ const adminRoutes = getAdminRoutes(config.admin.custom);
22
+ const collectionConfig = getEntityConfig({
23
+ collectionSlug: userSlug
24
+ });
25
+ const { auth: authOptions } = collectionConfig;
26
+ const loginWithUsername = authOptions?.loginWithUsername ?? false;
27
+ const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(loginWithUsername);
28
+ const [loginType] = React.useState(()=>{
29
+ if (canLoginWithEmail && canLoginWithUsername && hasUsernamePlugin) {
30
+ return "emailOrUsername";
31
+ }
32
+ if (canLoginWithUsername && hasUsernamePlugin) {
33
+ return "username";
34
+ }
35
+ return "email";
36
+ });
37
+ const initialState = {
38
+ password: {
39
+ initialValue: prefillPassword ?? undefined,
40
+ valid: true,
41
+ value: prefillPassword ?? undefined
42
+ }
43
+ };
44
+ if (loginType === "emailOrUsername" || loginType === "username") {
45
+ initialState.username = {
46
+ initialValue: prefillUsername ?? undefined,
47
+ valid: true,
48
+ value: prefillUsername ?? undefined
49
+ };
50
+ }
51
+ if (loginType === "emailOrUsername" || loginType === "email") {
52
+ initialState.email = {
53
+ initialValue: prefillEmail ?? undefined,
54
+ valid: true,
55
+ value: prefillEmail ?? undefined
56
+ };
57
+ }
58
+ const redirectUrl = getSafeRedirect(searchParams?.redirect, adminRoute);
59
+ const handleLogin = (data)=>{
60
+ setUser(data);
61
+ };
62
+ const handleResponse = (res)=>{
63
+ res.json().then((json)=>{
64
+ if (json.requireEmailVerification) {
65
+ setRequireEmailVerification(true);
66
+ toast.message(json.message);
67
+ } else {
68
+ toast.success(json.message);
69
+ router.push(redirectUrl);
70
+ }
71
+ });
72
+ };
73
+ return /*#__PURE__*/ _jsx("div", {
74
+ className: `${baseClass}__wrapper`,
75
+ children: requireEmailVerification ? /*#__PURE__*/ _jsx("h1", {
76
+ className: `${baseClass}__email-verification-required`,
77
+ children: "Please verify your email to login. Check your email for a verification link."
78
+ }) : /*#__PURE__*/ _jsxs(_Fragment, {
79
+ children: [
80
+ /*#__PURE__*/ _jsxs(Form, {
81
+ action: `${apiRoute}/${userSlug}/login`,
82
+ className: baseClass,
83
+ disableSuccessStatus: true,
84
+ initialState: initialState,
85
+ method: "POST",
86
+ onSuccess: handleLogin,
87
+ handleResponse: handleResponse,
88
+ redirect: redirectUrl,
89
+ waitForAutocomplete: true,
90
+ children: [
91
+ /*#__PURE__*/ _jsxs("div", {
92
+ className: `${baseClass}__input-wrap`,
93
+ children: [
94
+ /*#__PURE__*/ _jsx(LoginField, {
95
+ type: loginType
96
+ }),
97
+ /*#__PURE__*/ _jsx(PasswordField, {
98
+ field: {
99
+ name: "password",
100
+ label: t("general:password"),
101
+ required: true
102
+ },
103
+ path: "password"
104
+ })
105
+ ]
106
+ }),
107
+ /*#__PURE__*/ _jsx("div", {
108
+ className: `${baseClass}__forgot-password-wrap`,
109
+ children: /*#__PURE__*/ _jsx(Link, {
110
+ href: formatAdminURL({
111
+ adminRoute: adminRoute,
112
+ path: adminRoutes.forgotPassword
113
+ }),
114
+ prefetch: false,
115
+ children: t("authentication:forgotPasswordQuestion")
116
+ })
117
+ }),
118
+ /*#__PURE__*/ _jsx(FormSubmit, {
119
+ size: "large",
120
+ disabled: loading,
121
+ children: t("authentication:login")
122
+ })
123
+ ]
124
+ }),
125
+ /*#__PURE__*/ _jsx(AdminSocialProviderButtons, {
126
+ allowSignup: false,
127
+ socialProviders: socialProviders,
128
+ setLoading: setLoading,
129
+ hasPasskeySupport: hasPasskeySupport,
130
+ redirectUrl: redirectUrl
131
+ })
132
+ ]
133
+ })
134
+ });
135
+ };
136
+
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9sb2dpbi9mb3JtL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IHtcbiAgRm9ybSxcbiAgRm9ybVN1Ym1pdCxcbiAgTGluayxcbiAgUGFzc3dvcmRGaWVsZCxcbiAgdXNlQXV0aCxcbiAgdXNlQ29uZmlnLFxuICB1c2VUcmFuc2xhdGlvbixcbiAgdG9hc3QsXG59IGZyb20gXCJAcGF5bG9hZGNtcy91aVwiO1xuaW1wb3J0IHR5cGUgeyBGb3JtU3RhdGUgfSBmcm9tIFwicGF5bG9hZFwiO1xuaW1wb3J0IFJlYWN0LCB7IHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFNvY2lhbFByb3ZpZGVycyB9IGZyb20gXCIuLi8uLi8uLi8uLi90eXBlc1wiO1xuXG5pbXBvcnQgQWRtaW5Tb2NpYWxQcm92aWRlckJ1dHRvbnMgZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvYWRtaW4tc29jaWFsLXByb3ZpZGVyLWJ1dHRvbnNcIjtcbmltcG9ydCB7IGdldFNhZmVSZWRpcmVjdCB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9nZXQtc2FmZS1yZWRpcmVjdFwiO1xuXG5pbXBvcnQgXCIuL2luZGV4LnNjc3NcIjtcblxuaW1wb3J0IHsgZm9ybWF0QWRtaW5VUkwsIGdldExvZ2luT3B0aW9ucyB9IGZyb20gXCJwYXlsb2FkL3NoYXJlZFwiO1xuaW1wb3J0IHsgTG9naW5GaWVsZCwgTG9naW5GaWVsZFByb3BzIH0gZnJvbSBcIi4vZmllbGRzL2xvZ2luLWZpZWxkXCI7XG5pbXBvcnQgeyBnZXRBZG1pblJvdXRlcyB9IGZyb20gXCIuLi8uLi8uLi8uLi9oZWxwZXJzL2dldC1hZG1pbi1yb3V0ZXNcIjtcbmltcG9ydCB7IHVzZVJvdXRlciB9IGZyb20gXCJuZXh0L25hdmlnYXRpb25cIjtcbmNvbnN0IGJhc2VDbGFzcyA9IFwibG9naW5fX2Zvcm1cIjtcblxudHlwZSBMb2dpbkZvcm1Qcm9wcyA9IHtcbiAgc29jaWFsUHJvdmlkZXJzOiBTb2NpYWxQcm92aWRlcnM7XG4gIGhhc1VzZXJuYW1lUGx1Z2luOiBib29sZWFuO1xuICBoYXNQYXNza2V5U3VwcG9ydDogYm9vbGVhbjtcbiAgcHJlZmlsbEVtYWlsPzogc3RyaW5nO1xuICBwcmVmaWxsUGFzc3dvcmQ/OiBzdHJpbmc7XG4gIHByZWZpbGxVc2VybmFtZT86IHN0cmluZztcbiAgc2VhcmNoUGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIH07XG59O1xuXG5leHBvcnQgY29uc3QgTG9naW5Gb3JtOiBSZWFjdC5GQzxMb2dpbkZvcm1Qcm9wcz4gPSAoe1xuICBzb2NpYWxQcm92aWRlcnMsXG4gIGhhc1VzZXJuYW1lUGx1Z2luLFxuICBoYXNQYXNza2V5U3VwcG9ydCxcbiAgcHJlZmlsbEVtYWlsLFxuICBwcmVmaWxsUGFzc3dvcmQsXG4gIHByZWZpbGxVc2VybmFtZSxcbiAgc2VhcmNoUGFyYW1zLFxufSkgPT4ge1xuICBjb25zdCByb3V0ZXIgPSB1c2VSb3V0ZXIoKTtcbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbigpO1xuICBjb25zdCB7IHNldFVzZXIgfSA9IHVzZUF1dGgoKTtcbiAgY29uc3QgeyBjb25maWcsIGdldEVudGl0eUNvbmZpZyB9ID0gdXNlQ29uZmlnKCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3JlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbiwgc2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uXSA9XG4gICAgdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIGNvbnN0IHtcbiAgICBhZG1pbjogeyB1c2VyOiB1c2VyU2x1ZyB9LFxuICAgIHJvdXRlczogeyBhZG1pbjogYWRtaW5Sb3V0ZSwgYXBpOiBhcGlSb3V0ZSB9LFxuICB9ID0gY29uZmlnO1xuICBjb25zdCBhZG1pblJvdXRlcyA9IGdldEFkbWluUm91dGVzKGNvbmZpZy5hZG1pbi5jdXN0b20pO1xuXG4gIGNvbnN0IGNvbGxlY3Rpb25Db25maWcgPSBnZXRFbnRpdHlDb25maWcoeyBjb2xsZWN0aW9uU2x1ZzogdXNlclNsdWcgfSk7XG4gIGNvbnN0IHsgYXV0aDogYXV0aE9wdGlvbnMgfSA9IGNvbGxlY3Rpb25Db25maWc7XG4gIGNvbnN0IGxvZ2luV2l0aFVzZXJuYW1lID0gYXV0aE9wdGlvbnM/LmxvZ2luV2l0aFVzZXJuYW1lID8/IGZhbHNlO1xuICBjb25zdCB7IGNhbkxvZ2luV2l0aEVtYWlsLCBjYW5Mb2dpbldpdGhVc2VybmFtZSB9ID1cbiAgICBnZXRMb2dpbk9wdGlvbnMobG9naW5XaXRoVXNlcm5hbWUpO1xuXG4gIGNvbnN0IFtsb2dpblR5cGVdID0gUmVhY3QudXNlU3RhdGU8TG9naW5GaWVsZFByb3BzW1widHlwZVwiXT4oKCkgPT4ge1xuICAgIGlmIChjYW5Mb2dpbldpdGhFbWFpbCAmJiBjYW5Mb2dpbldpdGhVc2VybmFtZSAmJiBoYXNVc2VybmFtZVBsdWdpbikge1xuICAgICAgcmV0dXJuIFwiZW1haWxPclVzZXJuYW1lXCI7XG4gICAgfVxuICAgIGlmIChjYW5Mb2dpbldpdGhVc2VybmFtZSAmJiBoYXNVc2VybmFtZVBsdWdpbikge1xuICAgICAgcmV0dXJuIFwidXNlcm5hbWVcIjtcbiAgICB9XG4gICAgcmV0dXJuIFwiZW1haWxcIjtcbiAgfSk7XG5cbiAgY29uc3QgaW5pdGlhbFN0YXRlOiBGb3JtU3RhdGUgPSB7XG4gICAgcGFzc3dvcmQ6IHtcbiAgICAgIGluaXRpYWxWYWx1ZTogcHJlZmlsbFBhc3N3b3JkID8/IHVuZGVmaW5lZCxcbiAgICAgIHZhbGlkOiB0cnVlLFxuICAgICAgdmFsdWU6IHByZWZpbGxQYXNzd29yZCA/PyB1bmRlZmluZWQsXG4gICAgfSxcbiAgfTtcblxuICBpZiAobG9naW5UeXBlID09PSBcImVtYWlsT3JVc2VybmFtZVwiIHx8IGxvZ2luVHlwZSA9PT0gXCJ1c2VybmFtZVwiKSB7XG4gICAgaW5pdGlhbFN0YXRlLnVzZXJuYW1lID0ge1xuICAgICAgaW5pdGlhbFZhbHVlOiBwcmVmaWxsVXNlcm5hbWUgPz8gdW5kZWZpbmVkLFxuICAgICAgdmFsaWQ6IHRydWUsXG4gICAgICB2YWx1ZTogcHJlZmlsbFVzZXJuYW1lID8/IHVuZGVmaW5lZCxcbiAgICB9O1xuICB9XG4gIGlmIChsb2dpblR5cGUgPT09IFwiZW1haWxPclVzZXJuYW1lXCIgfHwgbG9naW5UeXBlID09PSBcImVtYWlsXCIpIHtcbiAgICBpbml0aWFsU3RhdGUuZW1haWwgPSB7XG4gICAgICBpbml0aWFsVmFsdWU6IHByZWZpbGxFbWFpbCA/PyB1bmRlZmluZWQsXG4gICAgICB2YWxpZDogdHJ1ZSxcbiAgICAgIHZhbHVlOiBwcmVmaWxsRW1haWwgPz8gdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cblxuICBjb25zdCByZWRpcmVjdFVybCA9IGdldFNhZmVSZWRpcmVjdChcbiAgICBzZWFyY2hQYXJhbXM/LnJlZGlyZWN0IGFzIHN0cmluZyxcbiAgICBhZG1pblJvdXRlXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlTG9naW4gPSAoZGF0YTogYW55KSA9PiB7XG4gICAgc2V0VXNlcihkYXRhKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVSZXNwb25zZSA9IChyZXM6IFJlc3BvbnNlKSA9PiB7XG4gICAgcmVzLmpzb24oKS50aGVuKChqc29uOiBhbnkpID0+IHtcbiAgICAgIGlmIChqc29uLnJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbikge1xuICAgICAgICBzZXRSZXF1aXJlRW1haWxWZXJpZmljYXRpb24odHJ1ZSk7XG4gICAgICAgIHRvYXN0Lm1lc3NhZ2UoanNvbi5tZXNzYWdlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRvYXN0LnN1Y2Nlc3MoanNvbi5tZXNzYWdlKTtcbiAgICAgICAgcm91dGVyLnB1c2gocmVkaXJlY3RVcmwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX3dyYXBwZXJgfT5cbiAgICAgIHtyZXF1aXJlRW1haWxWZXJpZmljYXRpb24gPyAoXG4gICAgICAgIDxoMSBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2VtYWlsLXZlcmlmaWNhdGlvbi1yZXF1aXJlZGB9PlxuICAgICAgICAgIFBsZWFzZSB2ZXJpZnkgeW91ciBlbWFpbCB0byBsb2dpbi4gQ2hlY2sgeW91ciBlbWFpbCBmb3IgYSB2ZXJpZmljYXRpb25cbiAgICAgICAgICBsaW5rLlxuICAgICAgICA8L2gxPlxuICAgICAgKSA6IChcbiAgICAgICAgPD5cbiAgICAgICAgICA8Rm9ybVxuICAgICAgICAgICAgYWN0aW9uPXtgJHthcGlSb3V0ZX0vJHt1c2VyU2x1Z30vbG9naW5gfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9XG4gICAgICAgICAgICBkaXNhYmxlU3VjY2Vzc1N0YXR1c1xuICAgICAgICAgICAgaW5pdGlhbFN0YXRlPXtpbml0aWFsU3RhdGV9XG4gICAgICAgICAgICBtZXRob2Q9XCJQT1NUXCJcbiAgICAgICAgICAgIG9uU3VjY2Vzcz17aGFuZGxlTG9naW59XG4gICAgICAgICAgICBoYW5kbGVSZXNwb25zZT17aGFuZGxlUmVzcG9uc2V9XG4gICAgICAgICAgICByZWRpcmVjdD17cmVkaXJlY3RVcmx9XG4gICAgICAgICAgICB3YWl0Rm9yQXV0b2NvbXBsZXRlXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX2lucHV0LXdyYXBgfT5cbiAgICAgICAgICAgICAgPExvZ2luRmllbGQgdHlwZT17bG9naW5UeXBlfSAvPlxuICAgICAgICAgICAgICA8UGFzc3dvcmRGaWVsZFxuICAgICAgICAgICAgICAgIGZpZWxkPXt7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgICBsYWJlbDogdChcImdlbmVyYWw6cGFzc3dvcmRcIiksXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIHBhdGg9XCJwYXNzd29yZFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtiYXNlQ2xhc3N9X19mb3Jnb3QtcGFzc3dvcmQtd3JhcGB9PlxuICAgICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICAgIGhyZWY9e2Zvcm1hdEFkbWluVVJMKHtcbiAgICAgICAgICAgICAgICAgIGFkbWluUm91dGU6IGFkbWluUm91dGUsXG4gICAgICAgICAgICAgICAgICBwYXRoOiBhZG1pblJvdXRlcy5mb3Jnb3RQYXNzd29yZCBhcyBgLyR7c3RyaW5nfWAsXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgcHJlZmV0Y2g9e2ZhbHNlfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3QoXCJhdXRoZW50aWNhdGlvbjpmb3Jnb3RQYXNzd29yZFF1ZXN0aW9uXCIpfVxuICAgICAgICAgICAgICA8L0xpbms+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxGb3JtU3VibWl0IHNpemU9XCJsYXJnZVwiIGRpc2FibGVkPXtsb2FkaW5nfT5cbiAgICAgICAgICAgICAge3QoXCJhdXRoZW50aWNhdGlvbjpsb2dpblwiKX1cbiAgICAgICAgICAgIDwvRm9ybVN1Ym1pdD5cbiAgICAgICAgICA8L0Zvcm0+XG4gICAgICAgICAgPEFkbWluU29jaWFsUHJvdmlkZXJCdXR0b25zXG4gICAgICAgICAgICBhbGxvd1NpZ251cD17ZmFsc2V9XG4gICAgICAgICAgICBzb2NpYWxQcm92aWRlcnM9e3NvY2lhbFByb3ZpZGVyc31cbiAgICAgICAgICAgIHNldExvYWRpbmc9e3NldExvYWRpbmd9XG4gICAgICAgICAgICBoYXNQYXNza2V5U3VwcG9ydD17aGFzUGFzc2tleVN1cHBvcnR9XG4gICAgICAgICAgICByZWRpcmVjdFVybD17cmVkaXJlY3RVcmx9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC8+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdLCJuYW1lcyI6WyJGb3JtIiwiRm9ybVN1Ym1pdCIsIkxpbmsiLCJQYXNzd29yZEZpZWxkIiwidXNlQXV0aCIsInVzZUNvbmZpZyIsInVzZVRyYW5zbGF0aW9uIiwidG9hc3QiLCJSZWFjdCIsInVzZVN0YXRlIiwiQWRtaW5Tb2NpYWxQcm92aWRlckJ1dHRvbnMiLCJnZXRTYWZlUmVkaXJlY3QiLCJmb3JtYXRBZG1pblVSTCIsImdldExvZ2luT3B0aW9ucyIsIkxvZ2luRmllbGQiLCJnZXRBZG1pblJvdXRlcyIsInVzZVJvdXRlciIsImJhc2VDbGFzcyIsIkxvZ2luRm9ybSIsInNvY2lhbFByb3ZpZGVycyIsImhhc1VzZXJuYW1lUGx1Z2luIiwiaGFzUGFzc2tleVN1cHBvcnQiLCJwcmVmaWxsRW1haWwiLCJwcmVmaWxsUGFzc3dvcmQiLCJwcmVmaWxsVXNlcm5hbWUiLCJzZWFyY2hQYXJhbXMiLCJyb3V0ZXIiLCJ0Iiwic2V0VXNlciIsImNvbmZpZyIsImdldEVudGl0eUNvbmZpZyIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwicmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uIiwic2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uIiwiYWRtaW4iLCJ1c2VyIiwidXNlclNsdWciLCJyb3V0ZXMiLCJhZG1pblJvdXRlIiwiYXBpIiwiYXBpUm91dGUiLCJhZG1pblJvdXRlcyIsImN1c3RvbSIsImNvbGxlY3Rpb25Db25maWciLCJjb2xsZWN0aW9uU2x1ZyIsImF1dGgiLCJhdXRoT3B0aW9ucyIsImxvZ2luV2l0aFVzZXJuYW1lIiwiY2FuTG9naW5XaXRoRW1haWwiLCJjYW5Mb2dpbldpdGhVc2VybmFtZSIsImxvZ2luVHlwZSIsImluaXRpYWxTdGF0ZSIsInBhc3N3b3JkIiwiaW5pdGlhbFZhbHVlIiwidW5kZWZpbmVkIiwidmFsaWQiLCJ2YWx1ZSIsInVzZXJuYW1lIiwiZW1haWwiLCJyZWRpcmVjdFVybCIsInJlZGlyZWN0IiwiaGFuZGxlTG9naW4iLCJkYXRhIiwiaGFuZGxlUmVzcG9uc2UiLCJyZXMiLCJqc29uIiwidGhlbiIsIm1lc3NhZ2UiLCJzdWNjZXNzIiwicHVzaCIsImRpdiIsImNsYXNzTmFtZSIsImgxIiwiYWN0aW9uIiwiZGlzYWJsZVN1Y2Nlc3NTdGF0dXMiLCJtZXRob2QiLCJvblN1Y2Nlc3MiLCJ3YWl0Rm9yQXV0b2NvbXBsZXRlIiwidHlwZSIsImZpZWxkIiwibmFtZSIsImxhYmVsIiwicmVxdWlyZWQiLCJwYXRoIiwiaHJlZiIsImZvcmdvdFBhc3N3b3JkIiwicHJlZmV0Y2giLCJzaXplIiwiZGlzYWJsZWQiLCJhbGxvd1NpZ251cCJdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUEsU0FDRUEsSUFBSSxFQUNKQyxVQUFVLEVBQ1ZDLElBQUksRUFDSkMsYUFBYSxFQUNiQyxPQUFPLEVBQ1BDLFNBQVMsRUFDVEMsY0FBYyxFQUNkQyxLQUFLLFFBQ0EsaUJBQWlCO0FBRXhCLE9BQU9DLFNBQVNDLFFBQVEsUUFBUSxRQUFRO0FBR3hDLE9BQU9DLGdDQUFnQyxvREFBb0Q7QUFDM0YsU0FBU0MsZUFBZSxRQUFRLG1DQUFtQztBQUVuRSxPQUFPLGVBQWU7QUFFdEIsU0FBU0MsY0FBYyxFQUFFQyxlQUFlLFFBQVEsaUJBQWlCO0FBQ2pFLFNBQVNDLFVBQVUsUUFBeUIsdUJBQXVCO0FBQ25FLFNBQVNDLGNBQWMsUUFBUSx1Q0FBdUM7QUFDdEUsU0FBU0MsU0FBUyxRQUFRLGtCQUFrQjtBQUM1QyxNQUFNQyxZQUFZO0FBWWxCLE9BQU8sTUFBTUMsWUFBc0MsQ0FBQyxFQUNsREMsZUFBZSxFQUNmQyxpQkFBaUIsRUFDakJDLGlCQUFpQixFQUNqQkMsWUFBWSxFQUNaQyxlQUFlLEVBQ2ZDLGVBQWUsRUFDZkMsWUFBWSxFQUNiO0lBQ0MsTUFBTUMsU0FBU1Y7SUFDZixNQUFNLEVBQUVXLENBQUMsRUFBRSxHQUFHckI7SUFDZCxNQUFNLEVBQUVzQixPQUFPLEVBQUUsR0FBR3hCO0lBQ3BCLE1BQU0sRUFBRXlCLE1BQU0sRUFBRUMsZUFBZSxFQUFFLEdBQUd6QjtJQUNwQyxNQUFNLENBQUMwQixTQUFTQyxXQUFXLEdBQUd2QixTQUFrQjtJQUNoRCxNQUFNLENBQUN3QiwwQkFBMEJDLDRCQUE0QixHQUMzRHpCLFNBQWtCO0lBRXBCLE1BQU0sRUFDSjBCLE9BQU8sRUFBRUMsTUFBTUMsUUFBUSxFQUFFLEVBQ3pCQyxRQUFRLEVBQUVILE9BQU9JLFVBQVUsRUFBRUMsS0FBS0MsUUFBUSxFQUFFLEVBQzdDLEdBQUdaO0lBQ0osTUFBTWEsY0FBYzNCLGVBQWVjLE9BQU9NLEtBQUssQ0FBQ1EsTUFBTTtJQUV0RCxNQUFNQyxtQkFBbUJkLGdCQUFnQjtRQUFFZSxnQkFBZ0JSO0lBQVM7SUFDcEUsTUFBTSxFQUFFUyxNQUFNQyxXQUFXLEVBQUUsR0FBR0g7SUFDOUIsTUFBTUksb0JBQW9CRCxhQUFhQyxxQkFBcUI7SUFDNUQsTUFBTSxFQUFFQyxpQkFBaUIsRUFBRUMsb0JBQW9CLEVBQUUsR0FDL0NyQyxnQkFBZ0JtQztJQUVsQixNQUFNLENBQUNHLFVBQVUsR0FBRzNDLE1BQU1DLFFBQVEsQ0FBMEI7UUFDMUQsSUFBSXdDLHFCQUFxQkMsd0JBQXdCOUIsbUJBQW1CO1lBQ2xFLE9BQU87UUFDVDtRQUNBLElBQUk4Qix3QkFBd0I5QixtQkFBbUI7WUFDN0MsT0FBTztRQUNUO1FBQ0EsT0FBTztJQUNUO0lBRUEsTUFBTWdDLGVBQTBCO1FBQzlCQyxVQUFVO1lBQ1JDLGNBQWMvQixtQkFBbUJnQztZQUNqQ0MsT0FBTztZQUNQQyxPQUFPbEMsbUJBQW1CZ0M7UUFDNUI7SUFDRjtJQUVBLElBQUlKLGNBQWMscUJBQXFCQSxjQUFjLFlBQVk7UUFDL0RDLGFBQWFNLFFBQVEsR0FBRztZQUN0QkosY0FBYzlCLG1CQUFtQitCO1lBQ2pDQyxPQUFPO1lBQ1BDLE9BQU9qQyxtQkFBbUIrQjtRQUM1QjtJQUNGO0lBQ0EsSUFBSUosY0FBYyxxQkFBcUJBLGNBQWMsU0FBUztRQUM1REMsYUFBYU8sS0FBSyxHQUFHO1lBQ25CTCxjQUFjaEMsZ0JBQWdCaUM7WUFDOUJDLE9BQU87WUFDUEMsT0FBT25DLGdCQUFnQmlDO1FBQ3pCO0lBQ0Y7SUFFQSxNQUFNSyxjQUFjakQsZ0JBQ2xCYyxjQUFjb0MsVUFDZHRCO0lBR0YsTUFBTXVCLGNBQWMsQ0FBQ0M7UUFDbkJuQyxRQUFRbUM7SUFDVjtJQUVBLE1BQU1DLGlCQUFpQixDQUFDQztRQUN0QkEsSUFBSUMsSUFBSSxHQUFHQyxJQUFJLENBQUMsQ0FBQ0Q7WUFDZixJQUFJQSxLQUFLakMsd0JBQXdCLEVBQUU7Z0JBQ2pDQyw0QkFBNEI7Z0JBQzVCM0IsTUFBTTZELE9BQU8sQ0FBQ0YsS0FBS0UsT0FBTztZQUM1QixPQUFPO2dCQUNMN0QsTUFBTThELE9BQU8sQ0FBQ0gsS0FBS0UsT0FBTztnQkFDMUIxQyxPQUFPNEMsSUFBSSxDQUFDVjtZQUNkO1FBQ0Y7SUFDRjtJQUVBLHFCQUNFLEtBQUNXO1FBQUlDLFdBQVcsR0FBR3ZELFVBQVUsU0FBUyxDQUFDO2tCQUNwQ2dCLHlDQUNDLEtBQUN3QztZQUFHRCxXQUFXLEdBQUd2RCxVQUFVLDZCQUE2QixDQUFDO3NCQUFFOzJCQUs1RDs7OEJBQ0UsTUFBQ2pCO29CQUNDMEUsUUFBUSxHQUFHakMsU0FBUyxDQUFDLEVBQUVKLFNBQVMsTUFBTSxDQUFDO29CQUN2Q21DLFdBQVd2RDtvQkFDWDBELG9CQUFvQjtvQkFDcEJ2QixjQUFjQTtvQkFDZHdCLFFBQU87b0JBQ1BDLFdBQVdmO29CQUNYRSxnQkFBZ0JBO29CQUNoQkgsVUFBVUQ7b0JBQ1ZrQixtQkFBbUI7O3NDQUVuQixNQUFDUDs0QkFBSUMsV0FBVyxHQUFHdkQsVUFBVSxZQUFZLENBQUM7OzhDQUN4QyxLQUFDSDtvQ0FBV2lFLE1BQU01Qjs7OENBQ2xCLEtBQUNoRDtvQ0FDQzZFLE9BQU87d0NBQ0xDLE1BQU07d0NBQ05DLE9BQU92RCxFQUFFO3dDQUNUd0QsVUFBVTtvQ0FDWjtvQ0FDQUMsTUFBSzs7OztzQ0FHVCxLQUFDYjs0QkFBSUMsV0FBVyxHQUFHdkQsVUFBVSxzQkFBc0IsQ0FBQztzQ0FDbEQsY0FBQSxLQUFDZjtnQ0FDQ21GLE1BQU16RSxlQUFlO29DQUNuQjJCLFlBQVlBO29DQUNaNkMsTUFBTTFDLFlBQVk0QyxjQUFjO2dDQUNsQztnQ0FDQUMsVUFBVTswQ0FFVDVELEVBQUU7OztzQ0FHUCxLQUFDMUI7NEJBQVd1RixNQUFLOzRCQUFRQyxVQUFVMUQ7c0NBQ2hDSixFQUFFOzs7OzhCQUdQLEtBQUNqQjtvQkFDQ2dGLGFBQWE7b0JBQ2J2RSxpQkFBaUJBO29CQUNqQmEsWUFBWUE7b0JBQ1pYLG1CQUFtQkE7b0JBQ25CdUMsYUFBYUE7Ozs7O0FBTXpCLEVBQUUifQ==
@@ -0,0 +1,23 @@
1
+ @layer payload-default {
2
+ .login__form {
3
+ &__wrapper {
4
+ display: flex;
5
+ flex-direction: column;
6
+ }
7
+
8
+ &__input-wrap {
9
+ display: flex;
10
+ flex-direction: column;
11
+ gap: var(--base);
12
+ margin-bottom: calc(var(--base) / 4);
13
+ }
14
+
15
+ button[type="submit"] {
16
+ margin-bottom: 0;
17
+ }
18
+
19
+ &__email-verification-required {
20
+ text-align: center;
21
+ }
22
+ }
23
+ }
@@ -1,6 +1,11 @@
1
- import React from 'react';
2
- import type { AdminViewServerProps } from 'payload';
3
- export default function LoginView({ initPageResult, params, searchParams, defaultAdminRole, }: AdminViewServerProps & {
4
- defaultAdminRole: string;
5
- }): Promise<React.JSX.Element>;
1
+ import { type AdminViewServerProps } from "payload";
2
+ import React from "react";
3
+ import type { BetterAuthPluginOptions, SanitizedBetterAuthOptions } from "../../../types";
4
+ export declare const loginBaseClass = "login";
5
+ type LoginViewProps = AdminViewServerProps & {
6
+ pluginOptions: BetterAuthPluginOptions;
7
+ betterAuthOptions: SanitizedBetterAuthOptions;
8
+ };
9
+ declare const LoginView: React.FC<LoginViewProps>;
10
+ export default LoginView;
6
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/login/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,oBAAoB,EAAe,MAAM,SAAS,CAAA;AAOhE,wBAA8B,SAAS,CAAC,EACtC,cAAc,EACd,MAAM,EACN,YAAY,EACZ,gBAAgB,GACjB,EAAE,oBAAoB,GAAG;IAAE,gBAAgB,EAAE,MAAM,CAAA;CAAE,8BA8ErD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/login/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,oBAAoB,EAAoB,MAAM,SAAS,CAAC;AACtE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,gBAAgB,CAAC;AAMxB,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,KAAK,cAAc,GAAG,oBAAoB,GAAG;IAC3C,aAAa,EAAE,uBAAuB,CAAC;IACvC,iBAAiB,EAAE,0BAA0B,CAAC;CAC/C,CAAC;AAEF,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA4HvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1,78 +1,98 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import React from 'react';
3
- import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
4
- import { redirect } from 'next/navigation';
5
- import { Gutter } from '@payloadcms/ui';
6
- import SignIn from '../../components/sign-in';
7
- import Logo from '../../components/logo';
8
- export default async function LoginView({ initPageResult, params, searchParams, defaultAdminRole }) {
2
+ import { RenderServerComponent } from "@payloadcms/ui/elements/RenderServerComponent";
3
+ import { redirect } from "next/navigation";
4
+ import React from "react";
5
+ import { checkUsernamePlugin } from "../../../helpers/check-username-plugin";
6
+ import { getSafeRedirect } from "../../utils/get-safe-redirect";
7
+ import { LoginForm } from "./form/index";
8
+ import { Logo } from "../../components/logo";
9
+ import { checkPasskeyPlugin } from "../../../helpers/check-passkey-plugin";
10
+ export const loginBaseClass = "login";
11
+ const LoginView = async ({ initPageResult, params, searchParams, pluginOptions, betterAuthOptions })=>{
9
12
  const { locale, permissions, req } = initPageResult;
10
13
  const { i18n, payload: { config }, payload, user } = req;
11
- const { admin: { components: { afterLogin, beforeLogin, graphics } = {}, user: userSlug }, routes: { admin } } = config;
14
+ const { admin: { components: { afterLogin, beforeLogin, graphics } = {}, user: userSlug }, routes: { admin: adminRoute } } = config;
15
+ const adminRole = pluginOptions.users?.defaultAdminRole ?? "admin";
16
+ const redirectUrl = getSafeRedirect(searchParams?.redirect ?? "", adminRoute);
17
+ if (user) {
18
+ redirect(redirectUrl);
19
+ }
12
20
  const adminCount = await req.payload.count({
13
21
  collection: userSlug,
14
22
  where: {
15
23
  role: {
16
- equals: defaultAdminRole ?? 'admin'
24
+ equals: adminRole
17
25
  }
18
26
  }
19
27
  });
20
28
  // Filter out the first component from afterLogin array or set to undefined if not more than 1
21
29
  const filteredAfterLogin = Array.isArray(afterLogin) && afterLogin.length > 1 ? afterLogin.slice(1) : undefined;
30
+ const prefillAutoLogin = typeof config.admin?.autoLogin === "object" && config.admin?.autoLogin.prefillOnly;
31
+ const prefillUsername = prefillAutoLogin && typeof config.admin?.autoLogin === "object" ? config.admin?.autoLogin.username : undefined;
32
+ const prefillEmail = prefillAutoLogin && typeof config.admin?.autoLogin === "object" ? config.admin?.autoLogin.email : undefined;
33
+ const prefillPassword = prefillAutoLogin && typeof config.admin?.autoLogin === "object" ? config.admin?.autoLogin.password : undefined;
22
34
  if (adminCount.totalDocs === 0) {
23
- redirect(`${admin}/create-first-admin`);
35
+ redirect(`${adminRoute}/create-first-admin`);
24
36
  }
25
- return /*#__PURE__*/ _jsxs(Gutter, {
26
- className: "mt-40",
27
- children: [
28
- RenderServerComponent({
29
- Component: graphics?.Logo,
30
- Fallback: ()=>/*#__PURE__*/ _jsx(Logo, {}),
31
- importMap: payload.importMap,
32
- serverProps: {
33
- i18n,
34
- locale,
35
- params,
36
- payload,
37
- permissions,
38
- searchParams,
39
- user: user ?? undefined
40
- }
41
- }),
42
- RenderServerComponent({
43
- Component: beforeLogin,
44
- importMap: payload.importMap,
45
- serverProps: {
46
- i18n,
47
- locale,
48
- params,
49
- payload,
50
- permissions,
51
- searchParams,
52
- user: user ?? undefined
53
- }
54
- }),
55
- /*#__PURE__*/ _jsx("div", {
56
- className: "flex flex-col items-center justify-center",
57
- children: /*#__PURE__*/ _jsx(SignIn, {
58
- admin: true
37
+ const canLoginWithUsername = checkUsernamePlugin(betterAuthOptions);
38
+ const hasPasskeyPlugin = checkPasskeyPlugin(betterAuthOptions);
39
+ const socialProviders = pluginOptions.adminComponents?.socialProviders ?? {};
40
+ return /*#__PURE__*/ _jsx("section", {
41
+ className: "login template-minimal template-minimal--width-normal",
42
+ children: /*#__PURE__*/ _jsxs("div", {
43
+ className: "template-minimal__wrap",
44
+ children: [
45
+ /*#__PURE__*/ _jsx("div", {
46
+ className: `${loginBaseClass}__brand`,
47
+ children: /*#__PURE__*/ _jsx(Logo, {
48
+ i18n: i18n,
49
+ locale: locale,
50
+ params: params,
51
+ payload: payload,
52
+ permissions: permissions,
53
+ searchParams: searchParams,
54
+ user: user ?? undefined
55
+ })
56
+ }),
57
+ RenderServerComponent({
58
+ Component: beforeLogin,
59
+ importMap: payload.importMap,
60
+ serverProps: {
61
+ i18n,
62
+ locale,
63
+ params,
64
+ payload,
65
+ permissions,
66
+ searchParams,
67
+ user: user ?? undefined
68
+ }
69
+ }),
70
+ /*#__PURE__*/ _jsx(LoginForm, {
71
+ hasPasskeySupport: hasPasskeyPlugin,
72
+ hasUsernamePlugin: canLoginWithUsername,
73
+ socialProviders: socialProviders,
74
+ prefillEmail: prefillEmail,
75
+ prefillPassword: prefillPassword,
76
+ prefillUsername: prefillUsername,
77
+ searchParams: searchParams ?? {}
78
+ }),
79
+ RenderServerComponent({
80
+ Component: filteredAfterLogin,
81
+ importMap: payload.importMap,
82
+ serverProps: {
83
+ i18n,
84
+ locale,
85
+ params,
86
+ payload,
87
+ permissions,
88
+ searchParams,
89
+ user: user ?? undefined
90
+ }
59
91
  })
60
- }),
61
- RenderServerComponent({
62
- Component: filteredAfterLogin,
63
- importMap: payload.importMap,
64
- serverProps: {
65
- i18n,
66
- locale,
67
- params,
68
- payload,
69
- permissions,
70
- searchParams,
71
- user: user ?? undefined
72
- }
73
- })
74
- ]
92
+ ]
93
+ })
75
94
  });
76
- }
95
+ };
96
+ export default LoginView;
77
97
 
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9sb2dpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHR5cGUgeyBBZG1pblZpZXdTZXJ2ZXJQcm9wcywgU2VydmVyUHJvcHMgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHsgUmVuZGVyU2VydmVyQ29tcG9uZW50IH0gZnJvbSAnQHBheWxvYWRjbXMvdWkvZWxlbWVudHMvUmVuZGVyU2VydmVyQ29tcG9uZW50J1xuaW1wb3J0IHsgcmVkaXJlY3QgfSBmcm9tICduZXh0L25hdmlnYXRpb24nXG5pbXBvcnQgeyBHdXR0ZXIgfSBmcm9tICdAcGF5bG9hZGNtcy91aSdcbmltcG9ydCBTaWduSW4gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9zaWduLWluJ1xuaW1wb3J0IExvZ28gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9sb2dvJ1xuXG5leHBvcnQgZGVmYXVsdCBhc3luYyBmdW5jdGlvbiBMb2dpblZpZXcoe1xuICBpbml0UGFnZVJlc3VsdCxcbiAgcGFyYW1zLFxuICBzZWFyY2hQYXJhbXMsXG4gIGRlZmF1bHRBZG1pblJvbGUsXG59OiBBZG1pblZpZXdTZXJ2ZXJQcm9wcyAmIHsgZGVmYXVsdEFkbWluUm9sZTogc3RyaW5nIH0pIHtcbiAgY29uc3QgeyBsb2NhbGUsIHBlcm1pc3Npb25zLCByZXEgfSA9IGluaXRQYWdlUmVzdWx0XG4gIGNvbnN0IHtcbiAgICBpMThuLFxuICAgIHBheWxvYWQ6IHsgY29uZmlnIH0sXG4gICAgcGF5bG9hZCxcbiAgICB1c2VyLFxuICB9ID0gcmVxXG5cbiAgY29uc3Qge1xuICAgIGFkbWluOiB7IGNvbXBvbmVudHM6IHsgYWZ0ZXJMb2dpbiwgYmVmb3JlTG9naW4sIGdyYXBoaWNzIH0gPSB7fSwgdXNlcjogdXNlclNsdWcgfSxcbiAgICByb3V0ZXM6IHsgYWRtaW4gfSxcbiAgfSA9IGNvbmZpZ1xuXG4gIGNvbnN0IGFkbWluQ291bnQgPSBhd2FpdCByZXEucGF5bG9hZC5jb3VudCh7XG4gICAgY29sbGVjdGlvbjogdXNlclNsdWcsXG4gICAgd2hlcmU6IHtcbiAgICAgIHJvbGU6IHtcbiAgICAgICAgZXF1YWxzOiBkZWZhdWx0QWRtaW5Sb2xlID8/ICdhZG1pbicsXG4gICAgICB9LFxuICAgIH0sXG4gIH0pXG5cbiAgLy8gRmlsdGVyIG91dCB0aGUgZmlyc3QgY29tcG9uZW50IGZyb20gYWZ0ZXJMb2dpbiBhcnJheSBvciBzZXQgdG8gdW5kZWZpbmVkIGlmIG5vdCBtb3JlIHRoYW4gMVxuICBjb25zdCBmaWx0ZXJlZEFmdGVyTG9naW4gPVxuICAgIEFycmF5LmlzQXJyYXkoYWZ0ZXJMb2dpbikgJiYgYWZ0ZXJMb2dpbi5sZW5ndGggPiAxID8gYWZ0ZXJMb2dpbi5zbGljZSgxKSA6IHVuZGVmaW5lZFxuXG4gIGlmIChhZG1pbkNvdW50LnRvdGFsRG9jcyA9PT0gMCkge1xuICAgIHJlZGlyZWN0KGAke2FkbWlufS9jcmVhdGUtZmlyc3QtYWRtaW5gKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8R3V0dGVyIGNsYXNzTmFtZT1cIm10LTQwXCI+XG4gICAgICB7UmVuZGVyU2VydmVyQ29tcG9uZW50KHtcbiAgICAgICAgQ29tcG9uZW50OiBncmFwaGljcz8uTG9nbyxcbiAgICAgICAgRmFsbGJhY2s6ICgpID0+IDxMb2dvIC8+LFxuICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICBzZXJ2ZXJQcm9wczoge1xuICAgICAgICAgIGkxOG4sXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHBhcmFtcyxcbiAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICAgICAgICB1c2VyOiB1c2VyID8/IHVuZGVmaW5lZCxcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHMsXG4gICAgICB9KX1cbiAgICAgIHtSZW5kZXJTZXJ2ZXJDb21wb25lbnQoe1xuICAgICAgICBDb21wb25lbnQ6IGJlZm9yZUxvZ2luLFxuICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICBzZXJ2ZXJQcm9wczoge1xuICAgICAgICAgIGkxOG4sXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHBhcmFtcyxcbiAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICAgICAgICB1c2VyOiB1c2VyID8/IHVuZGVmaW5lZCxcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHMsXG4gICAgICB9KX1cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgPFNpZ25JbiBhZG1pbj17dHJ1ZX0gLz5cbiAgICAgIDwvZGl2PlxuICAgICAge1JlbmRlclNlcnZlckNvbXBvbmVudCh7XG4gICAgICAgIENvbXBvbmVudDogZmlsdGVyZWRBZnRlckxvZ2luLFxuICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICBzZXJ2ZXJQcm9wczoge1xuICAgICAgICAgIGkxOG4sXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHBhcmFtcyxcbiAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICAgICAgICB1c2VyOiB1c2VyID8/IHVuZGVmaW5lZCxcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHMsXG4gICAgICB9KX1cbiAgICA8L0d1dHRlcj5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIlJlYWN0IiwiUmVuZGVyU2VydmVyQ29tcG9uZW50IiwicmVkaXJlY3QiLCJHdXR0ZXIiLCJTaWduSW4iLCJMb2dvIiwiTG9naW5WaWV3IiwiaW5pdFBhZ2VSZXN1bHQiLCJwYXJhbXMiLCJzZWFyY2hQYXJhbXMiLCJkZWZhdWx0QWRtaW5Sb2xlIiwibG9jYWxlIiwicGVybWlzc2lvbnMiLCJyZXEiLCJpMThuIiwicGF5bG9hZCIsImNvbmZpZyIsInVzZXIiLCJhZG1pbiIsImNvbXBvbmVudHMiLCJhZnRlckxvZ2luIiwiYmVmb3JlTG9naW4iLCJncmFwaGljcyIsInVzZXJTbHVnIiwicm91dGVzIiwiYWRtaW5Db3VudCIsImNvdW50IiwiY29sbGVjdGlvbiIsIndoZXJlIiwicm9sZSIsImVxdWFscyIsImZpbHRlcmVkQWZ0ZXJMb2dpbiIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsInNsaWNlIiwidW5kZWZpbmVkIiwidG90YWxEb2NzIiwiY2xhc3NOYW1lIiwiQ29tcG9uZW50IiwiRmFsbGJhY2siLCJpbXBvcnRNYXAiLCJzZXJ2ZXJQcm9wcyIsImRpdiJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU9BLFdBQVcsUUFBTztBQUV6QixTQUFTQyxxQkFBcUIsUUFBUSxnREFBK0M7QUFDckYsU0FBU0MsUUFBUSxRQUFRLGtCQUFpQjtBQUMxQyxTQUFTQyxNQUFNLFFBQVEsaUJBQWdCO0FBQ3ZDLE9BQU9DLFlBQVksMkJBQTBCO0FBQzdDLE9BQU9DLFVBQVUsd0JBQXVCO0FBRXhDLGVBQWUsZUFBZUMsVUFBVSxFQUN0Q0MsY0FBYyxFQUNkQyxNQUFNLEVBQ05DLFlBQVksRUFDWkMsZ0JBQWdCLEVBQ29DO0lBQ3BELE1BQU0sRUFBRUMsTUFBTSxFQUFFQyxXQUFXLEVBQUVDLEdBQUcsRUFBRSxHQUFHTjtJQUNyQyxNQUFNLEVBQ0pPLElBQUksRUFDSkMsU0FBUyxFQUFFQyxNQUFNLEVBQUUsRUFDbkJELE9BQU8sRUFDUEUsSUFBSSxFQUNMLEdBQUdKO0lBRUosTUFBTSxFQUNKSyxPQUFPLEVBQUVDLFlBQVksRUFBRUMsVUFBVSxFQUFFQyxXQUFXLEVBQUVDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFTCxNQUFNTSxRQUFRLEVBQUUsRUFDakZDLFFBQVEsRUFBRU4sS0FBSyxFQUFFLEVBQ2xCLEdBQUdGO0lBRUosTUFBTVMsYUFBYSxNQUFNWixJQUFJRSxPQUFPLENBQUNXLEtBQUssQ0FBQztRQUN6Q0MsWUFBWUo7UUFDWkssT0FBTztZQUNMQyxNQUFNO2dCQUNKQyxRQUFRcEIsb0JBQW9CO1lBQzlCO1FBQ0Y7SUFDRjtJQUVBLDhGQUE4RjtJQUM5RixNQUFNcUIscUJBQ0pDLE1BQU1DLE9BQU8sQ0FBQ2IsZUFBZUEsV0FBV2MsTUFBTSxHQUFHLElBQUlkLFdBQVdlLEtBQUssQ0FBQyxLQUFLQztJQUU3RSxJQUFJWCxXQUFXWSxTQUFTLEtBQUssR0FBRztRQUM5Qm5DLFNBQVMsR0FBR2dCLE1BQU0sbUJBQW1CLENBQUM7SUFDeEM7SUFFQSxxQkFDRSxNQUFDZjtRQUFPbUMsV0FBVTs7WUFDZnJDLHNCQUFzQjtnQkFDckJzQyxXQUFXakIsVUFBVWpCO2dCQUNyQm1DLFVBQVUsa0JBQU0sS0FBQ25DO2dCQUNqQm9DLFdBQVcxQixRQUFRMEIsU0FBUztnQkFDNUJDLGFBQWE7b0JBQ1g1QjtvQkFDQUg7b0JBQ0FIO29CQUNBTztvQkFDQUg7b0JBQ0FIO29CQUNBUSxNQUFNQSxRQUFRbUI7Z0JBQ2hCO1lBQ0Y7WUFDQ25DLHNCQUFzQjtnQkFDckJzQyxXQUFXbEI7Z0JBQ1hvQixXQUFXMUIsUUFBUTBCLFNBQVM7Z0JBQzVCQyxhQUFhO29CQUNYNUI7b0JBQ0FIO29CQUNBSDtvQkFDQU87b0JBQ0FIO29CQUNBSDtvQkFDQVEsTUFBTUEsUUFBUW1CO2dCQUNoQjtZQUNGOzBCQUNBLEtBQUNPO2dCQUFJTCxXQUFVOzBCQUNiLGNBQUEsS0FBQ2xDO29CQUFPYyxPQUFPOzs7WUFFaEJqQixzQkFBc0I7Z0JBQ3JCc0MsV0FBV1I7Z0JBQ1hVLFdBQVcxQixRQUFRMEIsU0FBUztnQkFDNUJDLGFBQWE7b0JBQ1g1QjtvQkFDQUg7b0JBQ0FIO29CQUNBTztvQkFDQUg7b0JBQ0FIO29CQUNBUSxNQUFNQSxRQUFRbUI7Z0JBQ2hCO1lBQ0Y7OztBQUdOIn0=
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9sb2dpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVyU2VydmVyQ29tcG9uZW50IH0gZnJvbSBcIkBwYXlsb2FkY21zL3VpL2VsZW1lbnRzL1JlbmRlclNlcnZlckNvbXBvbmVudFwiO1xuaW1wb3J0IHsgcmVkaXJlY3QgfSBmcm9tIFwibmV4dC9uYXZpZ2F0aW9uXCI7XG5pbXBvcnQgeyB0eXBlIEFkbWluVmlld1NlcnZlclByb3BzLCB0eXBlIFNlcnZlclByb3BzIH0gZnJvbSBcInBheWxvYWRcIjtcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IGNoZWNrVXNlcm5hbWVQbHVnaW4gfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9jaGVjay11c2VybmFtZS1wbHVnaW5cIjtcbmltcG9ydCB0eXBlIHtcbiAgQmV0dGVyQXV0aFBsdWdpbk9wdGlvbnMsXG4gIFNhbml0aXplZEJldHRlckF1dGhPcHRpb25zLFxufSBmcm9tIFwiLi4vLi4vLi4vdHlwZXNcIjtcbmltcG9ydCB7IGdldFNhZmVSZWRpcmVjdCB9IGZyb20gXCIuLi8uLi91dGlscy9nZXQtc2FmZS1yZWRpcmVjdFwiO1xuaW1wb3J0IHsgTG9naW5Gb3JtIH0gZnJvbSBcIi4vZm9ybS9pbmRleFwiO1xuaW1wb3J0IHsgTG9nbyB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzL2xvZ29cIjtcbmltcG9ydCB7IGNoZWNrUGFzc2tleVBsdWdpbiB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzL2NoZWNrLXBhc3NrZXktcGx1Z2luXCI7XG5cbmV4cG9ydCBjb25zdCBsb2dpbkJhc2VDbGFzcyA9IFwibG9naW5cIjtcblxudHlwZSBMb2dpblZpZXdQcm9wcyA9IEFkbWluVmlld1NlcnZlclByb3BzICYge1xuICBwbHVnaW5PcHRpb25zOiBCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucztcbiAgYmV0dGVyQXV0aE9wdGlvbnM6IFNhbml0aXplZEJldHRlckF1dGhPcHRpb25zO1xufTtcblxuY29uc3QgTG9naW5WaWV3OiBSZWFjdC5GQzxMb2dpblZpZXdQcm9wcz4gPSBhc3luYyAoe1xuICBpbml0UGFnZVJlc3VsdCxcbiAgcGFyYW1zLFxuICBzZWFyY2hQYXJhbXMsXG4gIHBsdWdpbk9wdGlvbnMsXG4gIGJldHRlckF1dGhPcHRpb25zLFxufTogTG9naW5WaWV3UHJvcHMpID0+IHtcbiAgY29uc3QgeyBsb2NhbGUsIHBlcm1pc3Npb25zLCByZXEgfSA9IGluaXRQYWdlUmVzdWx0O1xuICBjb25zdCB7XG4gICAgaTE4bixcbiAgICBwYXlsb2FkOiB7IGNvbmZpZyB9LFxuICAgIHBheWxvYWQsXG4gICAgdXNlcixcbiAgfSA9IHJlcTtcblxuICBjb25zdCB7XG4gICAgYWRtaW46IHtcbiAgICAgIGNvbXBvbmVudHM6IHsgYWZ0ZXJMb2dpbiwgYmVmb3JlTG9naW4sIGdyYXBoaWNzIH0gPSB7fSxcbiAgICAgIHVzZXI6IHVzZXJTbHVnLFxuICAgIH0sXG4gICAgcm91dGVzOiB7IGFkbWluOiBhZG1pblJvdXRlIH0sXG4gIH0gPSBjb25maWc7XG5cbiAgY29uc3QgYWRtaW5Sb2xlID0gcGx1Z2luT3B0aW9ucy51c2Vycz8uZGVmYXVsdEFkbWluUm9sZSA/PyBcImFkbWluXCI7XG4gIGNvbnN0IHJlZGlyZWN0VXJsID0gZ2V0U2FmZVJlZGlyZWN0KHNlYXJjaFBhcmFtcz8ucmVkaXJlY3QgPz8gXCJcIiwgYWRtaW5Sb3V0ZSk7XG5cbiAgaWYgKHVzZXIpIHtcbiAgICByZWRpcmVjdChyZWRpcmVjdFVybCk7XG4gIH1cblxuICBjb25zdCBhZG1pbkNvdW50ID0gYXdhaXQgcmVxLnBheWxvYWQuY291bnQoe1xuICAgIGNvbGxlY3Rpb246IHVzZXJTbHVnLFxuICAgIHdoZXJlOiB7XG4gICAgICByb2xlOiB7XG4gICAgICAgIGVxdWFsczogYWRtaW5Sb2xlLFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcblxuICAvLyBGaWx0ZXIgb3V0IHRoZSBmaXJzdCBjb21wb25lbnQgZnJvbSBhZnRlckxvZ2luIGFycmF5IG9yIHNldCB0byB1bmRlZmluZWQgaWYgbm90IG1vcmUgdGhhbiAxXG4gIGNvbnN0IGZpbHRlcmVkQWZ0ZXJMb2dpbiA9XG4gICAgQXJyYXkuaXNBcnJheShhZnRlckxvZ2luKSAmJiBhZnRlckxvZ2luLmxlbmd0aCA+IDFcbiAgICAgID8gYWZ0ZXJMb2dpbi5zbGljZSgxKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgcHJlZmlsbEF1dG9Mb2dpbiA9XG4gICAgdHlwZW9mIGNvbmZpZy5hZG1pbj8uYXV0b0xvZ2luID09PSBcIm9iamVjdFwiICYmXG4gICAgY29uZmlnLmFkbWluPy5hdXRvTG9naW4ucHJlZmlsbE9ubHk7XG5cbiAgY29uc3QgcHJlZmlsbFVzZXJuYW1lID1cbiAgICBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gXCJvYmplY3RcIlxuICAgICAgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi51c2VybmFtZVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgcHJlZmlsbEVtYWlsID1cbiAgICBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gXCJvYmplY3RcIlxuICAgICAgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi5lbWFpbFxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3QgcHJlZmlsbFBhc3N3b3JkID1cbiAgICBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gXCJvYmplY3RcIlxuICAgICAgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi5wYXNzd29yZFxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgaWYgKGFkbWluQ291bnQudG90YWxEb2NzID09PSAwKSB7XG4gICAgcmVkaXJlY3QoYCR7YWRtaW5Sb3V0ZX0vY3JlYXRlLWZpcnN0LWFkbWluYCk7XG4gIH1cblxuICBjb25zdCBjYW5Mb2dpbldpdGhVc2VybmFtZSA9IGNoZWNrVXNlcm5hbWVQbHVnaW4oYmV0dGVyQXV0aE9wdGlvbnMpO1xuICBjb25zdCBoYXNQYXNza2V5UGx1Z2luID0gY2hlY2tQYXNza2V5UGx1Z2luKGJldHRlckF1dGhPcHRpb25zKTtcbiAgY29uc3Qgc29jaWFsUHJvdmlkZXJzID0gcGx1Z2luT3B0aW9ucy5hZG1pbkNvbXBvbmVudHM/LnNvY2lhbFByb3ZpZGVycyA/PyB7fTtcblxuICByZXR1cm4gKFxuICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cImxvZ2luIHRlbXBsYXRlLW1pbmltYWwgdGVtcGxhdGUtbWluaW1hbC0td2lkdGgtbm9ybWFsXCI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cInRlbXBsYXRlLW1pbmltYWxfX3dyYXBcIj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2xvZ2luQmFzZUNsYXNzfV9fYnJhbmRgfT5cbiAgICAgICAgICA8TG9nb1xuICAgICAgICAgICAgaTE4bj17aTE4bn1cbiAgICAgICAgICAgIGxvY2FsZT17bG9jYWxlfVxuICAgICAgICAgICAgcGFyYW1zPXtwYXJhbXN9XG4gICAgICAgICAgICBwYXlsb2FkPXtwYXlsb2FkfVxuICAgICAgICAgICAgcGVybWlzc2lvbnM9e3Blcm1pc3Npb25zfVxuICAgICAgICAgICAgc2VhcmNoUGFyYW1zPXtzZWFyY2hQYXJhbXN9XG4gICAgICAgICAgICB1c2VyPXt1c2VyID8/IHVuZGVmaW5lZH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAge1JlbmRlclNlcnZlckNvbXBvbmVudCh7XG4gICAgICAgICAgQ29tcG9uZW50OiBiZWZvcmVMb2dpbixcbiAgICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICAgIHNlcnZlclByb3BzOiB7XG4gICAgICAgICAgICBpMThuLFxuICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgICAgc2VhcmNoUGFyYW1zLFxuICAgICAgICAgICAgdXNlcjogdXNlciA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHMsXG4gICAgICAgIH0pfVxuICAgICAgICA8TG9naW5Gb3JtXG4gICAgICAgICAgaGFzUGFzc2tleVN1cHBvcnQ9e2hhc1Bhc3NrZXlQbHVnaW59XG4gICAgICAgICAgaGFzVXNlcm5hbWVQbHVnaW49e2NhbkxvZ2luV2l0aFVzZXJuYW1lfVxuICAgICAgICAgIHNvY2lhbFByb3ZpZGVycz17c29jaWFsUHJvdmlkZXJzfVxuICAgICAgICAgIHByZWZpbGxFbWFpbD17cHJlZmlsbEVtYWlsfVxuICAgICAgICAgIHByZWZpbGxQYXNzd29yZD17cHJlZmlsbFBhc3N3b3JkfVxuICAgICAgICAgIHByZWZpbGxVc2VybmFtZT17cHJlZmlsbFVzZXJuYW1lfVxuICAgICAgICAgIHNlYXJjaFBhcmFtcz17c2VhcmNoUGFyYW1zID8/IHt9fVxuICAgICAgICAvPlxuICAgICAgICB7UmVuZGVyU2VydmVyQ29tcG9uZW50KHtcbiAgICAgICAgICBDb21wb25lbnQ6IGZpbHRlcmVkQWZ0ZXJMb2dpbixcbiAgICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICAgIHNlcnZlclByb3BzOiB7XG4gICAgICAgICAgICBpMThuLFxuICAgICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgICAgc2VhcmNoUGFyYW1zLFxuICAgICAgICAgICAgdXNlcjogdXNlciA/PyB1bmRlZmluZWQsXG4gICAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHMsXG4gICAgICAgIH0pfVxuICAgICAgPC9kaXY+XG4gICAgPC9zZWN0aW9uPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9naW5WaWV3O1xuIl0sIm5hbWVzIjpbIlJlbmRlclNlcnZlckNvbXBvbmVudCIsInJlZGlyZWN0IiwiUmVhY3QiLCJjaGVja1VzZXJuYW1lUGx1Z2luIiwiZ2V0U2FmZVJlZGlyZWN0IiwiTG9naW5Gb3JtIiwiTG9nbyIsImNoZWNrUGFzc2tleVBsdWdpbiIsImxvZ2luQmFzZUNsYXNzIiwiTG9naW5WaWV3IiwiaW5pdFBhZ2VSZXN1bHQiLCJwYXJhbXMiLCJzZWFyY2hQYXJhbXMiLCJwbHVnaW5PcHRpb25zIiwiYmV0dGVyQXV0aE9wdGlvbnMiLCJsb2NhbGUiLCJwZXJtaXNzaW9ucyIsInJlcSIsImkxOG4iLCJwYXlsb2FkIiwiY29uZmlnIiwidXNlciIsImFkbWluIiwiY29tcG9uZW50cyIsImFmdGVyTG9naW4iLCJiZWZvcmVMb2dpbiIsImdyYXBoaWNzIiwidXNlclNsdWciLCJyb3V0ZXMiLCJhZG1pblJvdXRlIiwiYWRtaW5Sb2xlIiwidXNlcnMiLCJkZWZhdWx0QWRtaW5Sb2xlIiwicmVkaXJlY3RVcmwiLCJhZG1pbkNvdW50IiwiY291bnQiLCJjb2xsZWN0aW9uIiwid2hlcmUiLCJyb2xlIiwiZXF1YWxzIiwiZmlsdGVyZWRBZnRlckxvZ2luIiwiQXJyYXkiLCJpc0FycmF5IiwibGVuZ3RoIiwic2xpY2UiLCJ1bmRlZmluZWQiLCJwcmVmaWxsQXV0b0xvZ2luIiwiYXV0b0xvZ2luIiwicHJlZmlsbE9ubHkiLCJwcmVmaWxsVXNlcm5hbWUiLCJ1c2VybmFtZSIsInByZWZpbGxFbWFpbCIsImVtYWlsIiwicHJlZmlsbFBhc3N3b3JkIiwicGFzc3dvcmQiLCJ0b3RhbERvY3MiLCJjYW5Mb2dpbldpdGhVc2VybmFtZSIsImhhc1Bhc3NrZXlQbHVnaW4iLCJzb2NpYWxQcm92aWRlcnMiLCJhZG1pbkNvbXBvbmVudHMiLCJzZWN0aW9uIiwiY2xhc3NOYW1lIiwiZGl2IiwiQ29tcG9uZW50IiwiaW1wb3J0TWFwIiwic2VydmVyUHJvcHMiLCJoYXNQYXNza2V5U3VwcG9ydCIsImhhc1VzZXJuYW1lUGx1Z2luIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBU0EscUJBQXFCLFFBQVEsZ0RBQWdEO0FBQ3RGLFNBQVNDLFFBQVEsUUFBUSxrQkFBa0I7QUFFM0MsT0FBT0MsV0FBVyxRQUFRO0FBQzFCLFNBQVNDLG1CQUFtQixRQUFRLHlDQUF5QztBQUs3RSxTQUFTQyxlQUFlLFFBQVEsZ0NBQWdDO0FBQ2hFLFNBQVNDLFNBQVMsUUFBUSxlQUFlO0FBQ3pDLFNBQVNDLElBQUksUUFBUSx3QkFBd0I7QUFDN0MsU0FBU0Msa0JBQWtCLFFBQVEsd0NBQXdDO0FBRTNFLE9BQU8sTUFBTUMsaUJBQWlCLFFBQVE7QUFPdEMsTUFBTUMsWUFBc0MsT0FBTyxFQUNqREMsY0FBYyxFQUNkQyxNQUFNLEVBQ05DLFlBQVksRUFDWkMsYUFBYSxFQUNiQyxpQkFBaUIsRUFDRjtJQUNmLE1BQU0sRUFBRUMsTUFBTSxFQUFFQyxXQUFXLEVBQUVDLEdBQUcsRUFBRSxHQUFHUDtJQUNyQyxNQUFNLEVBQ0pRLElBQUksRUFDSkMsU0FBUyxFQUFFQyxNQUFNLEVBQUUsRUFDbkJELE9BQU8sRUFDUEUsSUFBSSxFQUNMLEdBQUdKO0lBRUosTUFBTSxFQUNKSyxPQUFPLEVBQ0xDLFlBQVksRUFBRUMsVUFBVSxFQUFFQyxXQUFXLEVBQUVDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUN0REwsTUFBTU0sUUFBUSxFQUNmLEVBQ0RDLFFBQVEsRUFBRU4sT0FBT08sVUFBVSxFQUFFLEVBQzlCLEdBQUdUO0lBRUosTUFBTVUsWUFBWWpCLGNBQWNrQixLQUFLLEVBQUVDLG9CQUFvQjtJQUMzRCxNQUFNQyxjQUFjN0IsZ0JBQWdCUSxjQUFjWCxZQUFZLElBQUk0QjtJQUVsRSxJQUFJUixNQUFNO1FBQ1JwQixTQUFTZ0M7SUFDWDtJQUVBLE1BQU1DLGFBQWEsTUFBTWpCLElBQUlFLE9BQU8sQ0FBQ2dCLEtBQUssQ0FBQztRQUN6Q0MsWUFBWVQ7UUFDWlUsT0FBTztZQUNMQyxNQUFNO2dCQUNKQyxRQUFRVDtZQUNWO1FBQ0Y7SUFDRjtJQUVBLDhGQUE4RjtJQUM5RixNQUFNVSxxQkFDSkMsTUFBTUMsT0FBTyxDQUFDbEIsZUFBZUEsV0FBV21CLE1BQU0sR0FBRyxJQUM3Q25CLFdBQVdvQixLQUFLLENBQUMsS0FDakJDO0lBRU4sTUFBTUMsbUJBQ0osT0FBTzFCLE9BQU9FLEtBQUssRUFBRXlCLGNBQWMsWUFDbkMzQixPQUFPRSxLQUFLLEVBQUV5QixVQUFVQztJQUUxQixNQUFNQyxrQkFDSkgsb0JBQW9CLE9BQU8xQixPQUFPRSxLQUFLLEVBQUV5QixjQUFjLFdBQ25EM0IsT0FBT0UsS0FBSyxFQUFFeUIsVUFBVUcsV0FDeEJMO0lBRU4sTUFBTU0sZUFDSkwsb0JBQW9CLE9BQU8xQixPQUFPRSxLQUFLLEVBQUV5QixjQUFjLFdBQ25EM0IsT0FBT0UsS0FBSyxFQUFFeUIsVUFBVUssUUFDeEJQO0lBRU4sTUFBTVEsa0JBQ0pQLG9CQUFvQixPQUFPMUIsT0FBT0UsS0FBSyxFQUFFeUIsY0FBYyxXQUNuRDNCLE9BQU9FLEtBQUssRUFBRXlCLFVBQVVPLFdBQ3hCVDtJQUVOLElBQUlYLFdBQVdxQixTQUFTLEtBQUssR0FBRztRQUM5QnRELFNBQVMsR0FBRzRCLFdBQVcsbUJBQW1CLENBQUM7SUFDN0M7SUFFQSxNQUFNMkIsdUJBQXVCckQsb0JBQW9CVztJQUNqRCxNQUFNMkMsbUJBQW1CbEQsbUJBQW1CTztJQUM1QyxNQUFNNEMsa0JBQWtCN0MsY0FBYzhDLGVBQWUsRUFBRUQsbUJBQW1CLENBQUM7SUFFM0UscUJBQ0UsS0FBQ0U7UUFBUUMsV0FBVTtrQkFDakIsY0FBQSxNQUFDQztZQUFJRCxXQUFVOzs4QkFDYixLQUFDQztvQkFBSUQsV0FBVyxHQUFHckQsZUFBZSxPQUFPLENBQUM7OEJBQ3hDLGNBQUEsS0FBQ0Y7d0JBQ0NZLE1BQU1BO3dCQUNOSCxRQUFRQTt3QkFDUkosUUFBUUE7d0JBQ1JRLFNBQVNBO3dCQUNUSCxhQUFhQTt3QkFDYkosY0FBY0E7d0JBQ2RTLE1BQU1BLFFBQVF3Qjs7O2dCQUdqQjdDLHNCQUFzQjtvQkFDckIrRCxXQUFXdEM7b0JBQ1h1QyxXQUFXN0MsUUFBUTZDLFNBQVM7b0JBQzVCQyxhQUFhO3dCQUNYL0M7d0JBQ0FIO3dCQUNBSjt3QkFDQVE7d0JBQ0FIO3dCQUNBSjt3QkFDQVMsTUFBTUEsUUFBUXdCO29CQUNoQjtnQkFDRjs4QkFDQSxLQUFDeEM7b0JBQ0M2RCxtQkFBbUJUO29CQUNuQlUsbUJBQW1CWDtvQkFDbkJFLGlCQUFpQkE7b0JBQ2pCUCxjQUFjQTtvQkFDZEUsaUJBQWlCQTtvQkFDakJKLGlCQUFpQkE7b0JBQ2pCckMsY0FBY0EsZ0JBQWdCLENBQUM7O2dCQUVoQ1osc0JBQXNCO29CQUNyQitELFdBQVd2QjtvQkFDWHdCLFdBQVc3QyxRQUFRNkMsU0FBUztvQkFDNUJDLGFBQWE7d0JBQ1gvQzt3QkFDQUg7d0JBQ0FKO3dCQUNBUTt3QkFDQUg7d0JBQ0FKO3dCQUNBUyxNQUFNQSxRQUFRd0I7b0JBQ2hCO2dCQUNGOzs7O0FBSVI7QUFFQSxlQUFlcEMsVUFBVSJ9
@@ -0,0 +1,10 @@
1
+ @layer payload-default {
2
+ .login {
3
+ &__brand {
4
+ display: flex;
5
+ justify-content: center;
6
+ width: 100%;
7
+ margin-bottom: calc(var(--base) * 2);
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import "./index.scss";
3
+ export declare const LogoutClient: React.FC<{
4
+ adminRoute: string;
5
+ inactivity?: boolean;
6
+ redirect: string;
7
+ }>;
8
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/logout/client.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,cAAc,CAAC;AAKtB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB,CA+DA,CAAC"}
@@ -0,0 +1,76 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Button, LoadingOverlay, toast, useAuth, useRouteTransition, useTranslation } from "@payloadcms/ui";
4
+ import { useRouter } from "next/navigation.js";
5
+ import { formatAdminURL } from "payload/shared";
6
+ import React, { useEffect } from "react";
7
+ import "./index.scss";
8
+ import { createAuthClient } from "better-auth/react";
9
+ const baseClass = "logout";
10
+ export const LogoutClient = (props)=>{
11
+ const { adminRoute, inactivity, redirect } = props;
12
+ const { user } = useAuth();
13
+ const { startRouteTransition } = useRouteTransition();
14
+ const [isLoggedOut, setIsLoggedOut] = React.useState(!user);
15
+ const logOutSuccessRef = React.useRef(false);
16
+ const [loginRoute] = React.useState(()=>formatAdminURL({
17
+ adminRoute,
18
+ path: `/login${inactivity && redirect && redirect.length > 0 ? `?redirect=${encodeURIComponent(redirect)}` : ""}`
19
+ }));
20
+ const { t } = useTranslation();
21
+ const router = useRouter();
22
+ const authClient = createAuthClient({});
23
+ const handleLogOut = React.useCallback(async ()=>{
24
+ const loggedOut = await authClient.signOut();
25
+ setIsLoggedOut(loggedOut.data?.success ?? false);
26
+ if (!inactivity && loggedOut && !logOutSuccessRef.current) {
27
+ toast.success(t("authentication:loggedOutSuccessfully"));
28
+ logOutSuccessRef.current = true;
29
+ startRouteTransition(()=>router.push(loginRoute));
30
+ return;
31
+ }
32
+ }, [
33
+ inactivity,
34
+ authClient,
35
+ loginRoute,
36
+ router,
37
+ startRouteTransition,
38
+ t
39
+ ]);
40
+ useEffect(()=>{
41
+ if (!isLoggedOut) {
42
+ void handleLogOut();
43
+ } else {
44
+ startRouteTransition(()=>router.push(loginRoute));
45
+ }
46
+ }, [
47
+ handleLogOut,
48
+ isLoggedOut,
49
+ loginRoute,
50
+ router,
51
+ startRouteTransition
52
+ ]);
53
+ if (isLoggedOut && inactivity) {
54
+ return /*#__PURE__*/ _jsxs("div", {
55
+ className: `${baseClass}__wrap`,
56
+ children: [
57
+ /*#__PURE__*/ _jsx("h2", {
58
+ children: t("authentication:loggedOutInactivity")
59
+ }),
60
+ /*#__PURE__*/ _jsx(Button, {
61
+ buttonStyle: "secondary",
62
+ el: "link",
63
+ size: "large",
64
+ url: loginRoute,
65
+ children: t("authentication:logBackIn")
66
+ })
67
+ ]
68
+ });
69
+ }
70
+ return /*#__PURE__*/ _jsx(LoadingOverlay, {
71
+ animationDuration: "0ms",
72
+ loadingText: t("authentication:loggingOut")
73
+ });
74
+ };
75
+
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9sb2dvdXQvY2xpZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBjbGllbnRcIjtcblxuaW1wb3J0IHtcbiAgQnV0dG9uLFxuICBMb2FkaW5nT3ZlcmxheSxcbiAgdG9hc3QsXG4gIHVzZUF1dGgsXG4gIHVzZVJvdXRlVHJhbnNpdGlvbixcbiAgdXNlVHJhbnNsYXRpb24sXG59IGZyb20gXCJAcGF5bG9hZGNtcy91aVwiO1xuaW1wb3J0IHsgdXNlUm91dGVyIH0gZnJvbSBcIm5leHQvbmF2aWdhdGlvbi5qc1wiO1xuaW1wb3J0IHsgZm9ybWF0QWRtaW5VUkwgfSBmcm9tIFwicGF5bG9hZC9zaGFyZWRcIjtcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tIFwicmVhY3RcIjtcblxuaW1wb3J0IFwiLi9pbmRleC5zY3NzXCI7XG5pbXBvcnQgeyBjcmVhdGVBdXRoQ2xpZW50IH0gZnJvbSBcImJldHRlci1hdXRoL3JlYWN0XCI7XG5cbmNvbnN0IGJhc2VDbGFzcyA9IFwibG9nb3V0XCI7XG5cbmV4cG9ydCBjb25zdCBMb2dvdXRDbGllbnQ6IFJlYWN0LkZDPHtcbiAgYWRtaW5Sb3V0ZTogc3RyaW5nO1xuICBpbmFjdGl2aXR5PzogYm9vbGVhbjtcbiAgcmVkaXJlY3Q6IHN0cmluZztcbn0+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgYWRtaW5Sb3V0ZSwgaW5hY3Rpdml0eSwgcmVkaXJlY3QgfSA9IHByb3BzO1xuXG4gIGNvbnN0IHsgdXNlciB9ID0gdXNlQXV0aCgpO1xuXG4gIGNvbnN0IHsgc3RhcnRSb3V0ZVRyYW5zaXRpb24gfSA9IHVzZVJvdXRlVHJhbnNpdGlvbigpO1xuXG4gIGNvbnN0IFtpc0xvZ2dlZE91dCwgc2V0SXNMb2dnZWRPdXRdID0gUmVhY3QudXNlU3RhdGU8Ym9vbGVhbj4oIXVzZXIpO1xuXG4gIGNvbnN0IGxvZ091dFN1Y2Nlc3NSZWYgPSBSZWFjdC51c2VSZWYoZmFsc2UpO1xuXG4gIGNvbnN0IFtsb2dpblJvdXRlXSA9IFJlYWN0LnVzZVN0YXRlKCgpID0+XG4gICAgZm9ybWF0QWRtaW5VUkwoe1xuICAgICAgYWRtaW5Sb3V0ZSxcbiAgICAgIHBhdGg6IGAvbG9naW4ke1xuICAgICAgICBpbmFjdGl2aXR5ICYmIHJlZGlyZWN0ICYmIHJlZGlyZWN0Lmxlbmd0aCA+IDBcbiAgICAgICAgICA/IGA/cmVkaXJlY3Q9JHtlbmNvZGVVUklDb21wb25lbnQocmVkaXJlY3QpfWBcbiAgICAgICAgICA6IFwiXCJcbiAgICAgIH1gLFxuICAgIH0pXG4gICk7XG5cbiAgY29uc3QgeyB0IH0gPSB1c2VUcmFuc2xhdGlvbigpO1xuICBjb25zdCByb3V0ZXIgPSB1c2VSb3V0ZXIoKTtcbiAgY29uc3QgYXV0aENsaWVudCA9IGNyZWF0ZUF1dGhDbGllbnQoe30pO1xuXG4gIGNvbnN0IGhhbmRsZUxvZ091dCA9IFJlYWN0LnVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBsb2dnZWRPdXQgPSBhd2FpdCBhdXRoQ2xpZW50LnNpZ25PdXQoKTtcbiAgICBzZXRJc0xvZ2dlZE91dChsb2dnZWRPdXQuZGF0YT8uc3VjY2VzcyA/PyBmYWxzZSk7XG5cbiAgICBpZiAoIWluYWN0aXZpdHkgJiYgbG9nZ2VkT3V0ICYmICFsb2dPdXRTdWNjZXNzUmVmLmN1cnJlbnQpIHtcbiAgICAgIHRvYXN0LnN1Y2Nlc3ModChcImF1dGhlbnRpY2F0aW9uOmxvZ2dlZE91dFN1Y2Nlc3NmdWxseVwiKSk7XG4gICAgICBsb2dPdXRTdWNjZXNzUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgc3RhcnRSb3V0ZVRyYW5zaXRpb24oKCkgPT4gcm91dGVyLnB1c2gobG9naW5Sb3V0ZSkpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfSwgW2luYWN0aXZpdHksIGF1dGhDbGllbnQsIGxvZ2luUm91dGUsIHJvdXRlciwgc3RhcnRSb3V0ZVRyYW5zaXRpb24sIHRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNMb2dnZWRPdXQpIHtcbiAgICAgIHZvaWQgaGFuZGxlTG9nT3V0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0YXJ0Um91dGVUcmFuc2l0aW9uKCgpID0+IHJvdXRlci5wdXNoKGxvZ2luUm91dGUpKTtcbiAgICB9XG4gIH0sIFtoYW5kbGVMb2dPdXQsIGlzTG9nZ2VkT3V0LCBsb2dpblJvdXRlLCByb3V0ZXIsIHN0YXJ0Um91dGVUcmFuc2l0aW9uXSk7XG5cbiAgaWYgKGlzTG9nZ2VkT3V0ICYmIGluYWN0aXZpdHkpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31fX3dyYXBgfT5cbiAgICAgICAgPGgyPnt0KFwiYXV0aGVudGljYXRpb246bG9nZ2VkT3V0SW5hY3Rpdml0eVwiKX08L2gyPlxuICAgICAgICA8QnV0dG9uIGJ1dHRvblN0eWxlPVwic2Vjb25kYXJ5XCIgZWw9XCJsaW5rXCIgc2l6ZT1cImxhcmdlXCIgdXJsPXtsb2dpblJvdXRlfT5cbiAgICAgICAgICB7dChcImF1dGhlbnRpY2F0aW9uOmxvZ0JhY2tJblwiKX1cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8TG9hZGluZ092ZXJsYXlcbiAgICAgIGFuaW1hdGlvbkR1cmF0aW9uPXtcIjBtc1wifVxuICAgICAgbG9hZGluZ1RleHQ9e3QoXCJhdXRoZW50aWNhdGlvbjpsb2dnaW5nT3V0XCIpfVxuICAgIC8+XG4gICk7XG59O1xuIl0sIm5hbWVzIjpbIkJ1dHRvbiIsIkxvYWRpbmdPdmVybGF5IiwidG9hc3QiLCJ1c2VBdXRoIiwidXNlUm91dGVUcmFuc2l0aW9uIiwidXNlVHJhbnNsYXRpb24iLCJ1c2VSb3V0ZXIiLCJmb3JtYXRBZG1pblVSTCIsIlJlYWN0IiwidXNlRWZmZWN0IiwiY3JlYXRlQXV0aENsaWVudCIsImJhc2VDbGFzcyIsIkxvZ291dENsaWVudCIsInByb3BzIiwiYWRtaW5Sb3V0ZSIsImluYWN0aXZpdHkiLCJyZWRpcmVjdCIsInVzZXIiLCJzdGFydFJvdXRlVHJhbnNpdGlvbiIsImlzTG9nZ2VkT3V0Iiwic2V0SXNMb2dnZWRPdXQiLCJ1c2VTdGF0ZSIsImxvZ091dFN1Y2Nlc3NSZWYiLCJ1c2VSZWYiLCJsb2dpblJvdXRlIiwicGF0aCIsImxlbmd0aCIsImVuY29kZVVSSUNvbXBvbmVudCIsInQiLCJyb3V0ZXIiLCJhdXRoQ2xpZW50IiwiaGFuZGxlTG9nT3V0IiwidXNlQ2FsbGJhY2siLCJsb2dnZWRPdXQiLCJzaWduT3V0IiwiZGF0YSIsInN1Y2Nlc3MiLCJjdXJyZW50IiwicHVzaCIsImRpdiIsImNsYXNzTmFtZSIsImgyIiwiYnV0dG9uU3R5bGUiLCJlbCIsInNpemUiLCJ1cmwiLCJhbmltYXRpb25EdXJhdGlvbiIsImxvYWRpbmdUZXh0Il0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQSxTQUNFQSxNQUFNLEVBQ05DLGNBQWMsRUFDZEMsS0FBSyxFQUNMQyxPQUFPLEVBQ1BDLGtCQUFrQixFQUNsQkMsY0FBYyxRQUNULGlCQUFpQjtBQUN4QixTQUFTQyxTQUFTLFFBQVEscUJBQXFCO0FBQy9DLFNBQVNDLGNBQWMsUUFBUSxpQkFBaUI7QUFDaEQsT0FBT0MsU0FBU0MsU0FBUyxRQUFRLFFBQVE7QUFFekMsT0FBTyxlQUFlO0FBQ3RCLFNBQVNDLGdCQUFnQixRQUFRLG9CQUFvQjtBQUVyRCxNQUFNQyxZQUFZO0FBRWxCLE9BQU8sTUFBTUMsZUFJUixDQUFDQztJQUNKLE1BQU0sRUFBRUMsVUFBVSxFQUFFQyxVQUFVLEVBQUVDLFFBQVEsRUFBRSxHQUFHSDtJQUU3QyxNQUFNLEVBQUVJLElBQUksRUFBRSxHQUFHZDtJQUVqQixNQUFNLEVBQUVlLG9CQUFvQixFQUFFLEdBQUdkO0lBRWpDLE1BQU0sQ0FBQ2UsYUFBYUMsZUFBZSxHQUFHWixNQUFNYSxRQUFRLENBQVUsQ0FBQ0o7SUFFL0QsTUFBTUssbUJBQW1CZCxNQUFNZSxNQUFNLENBQUM7SUFFdEMsTUFBTSxDQUFDQyxXQUFXLEdBQUdoQixNQUFNYSxRQUFRLENBQUMsSUFDbENkLGVBQWU7WUFDYk87WUFDQVcsTUFBTSxDQUFDLE1BQU0sRUFDWFYsY0FBY0MsWUFBWUEsU0FBU1UsTUFBTSxHQUFHLElBQ3hDLENBQUMsVUFBVSxFQUFFQyxtQkFBbUJYLFdBQVcsR0FDM0MsSUFDSjtRQUNKO0lBR0YsTUFBTSxFQUFFWSxDQUFDLEVBQUUsR0FBR3ZCO0lBQ2QsTUFBTXdCLFNBQVN2QjtJQUNmLE1BQU13QixhQUFhcEIsaUJBQWlCLENBQUM7SUFFckMsTUFBTXFCLGVBQWV2QixNQUFNd0IsV0FBVyxDQUFDO1FBQ3JDLE1BQU1DLFlBQVksTUFBTUgsV0FBV0ksT0FBTztRQUMxQ2QsZUFBZWEsVUFBVUUsSUFBSSxFQUFFQyxXQUFXO1FBRTFDLElBQUksQ0FBQ3JCLGNBQWNrQixhQUFhLENBQUNYLGlCQUFpQmUsT0FBTyxFQUFFO1lBQ3pEbkMsTUFBTWtDLE9BQU8sQ0FBQ1IsRUFBRTtZQUNoQk4saUJBQWlCZSxPQUFPLEdBQUc7WUFDM0JuQixxQkFBcUIsSUFBTVcsT0FBT1MsSUFBSSxDQUFDZDtZQUN2QztRQUNGO0lBQ0YsR0FBRztRQUFDVDtRQUFZZTtRQUFZTjtRQUFZSztRQUFRWDtRQUFzQlU7S0FBRTtJQUV4RW5CLFVBQVU7UUFDUixJQUFJLENBQUNVLGFBQWE7WUFDaEIsS0FBS1k7UUFDUCxPQUFPO1lBQ0xiLHFCQUFxQixJQUFNVyxPQUFPUyxJQUFJLENBQUNkO1FBQ3pDO0lBQ0YsR0FBRztRQUFDTztRQUFjWjtRQUFhSztRQUFZSztRQUFRWDtLQUFxQjtJQUV4RSxJQUFJQyxlQUFlSixZQUFZO1FBQzdCLHFCQUNFLE1BQUN3QjtZQUFJQyxXQUFXLEdBQUc3QixVQUFVLE1BQU0sQ0FBQzs7OEJBQ2xDLEtBQUM4Qjs4QkFBSWIsRUFBRTs7OEJBQ1AsS0FBQzVCO29CQUFPMEMsYUFBWTtvQkFBWUMsSUFBRztvQkFBT0MsTUFBSztvQkFBUUMsS0FBS3JCOzhCQUN6REksRUFBRTs7OztJQUlYO0lBRUEscUJBQ0UsS0FBQzNCO1FBQ0M2QyxtQkFBbUI7UUFDbkJDLGFBQWFuQixFQUFFOztBQUdyQixFQUFFIn0=
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import type { AdminViewServerProps } from "payload";
3
+ import "./index.scss";
4
+ declare const LogoutView: React.FC<{
5
+ inactivity?: boolean;
6
+ } & AdminViewServerProps>;
7
+ export default LogoutView;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/logout/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,cAAc,CAAC;AAItB,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CACxB;IACE,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GAAG,oBAAoB,CAsBzB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import "./index.scss";
4
+ const baseClass = "logout";
5
+ const LogoutView = ({ inactivity, initPageResult, searchParams })=>{
6
+ const { req: { payload: { config: { routes: { admin: adminRoute } } } } } = initPageResult;
7
+ return /*#__PURE__*/ _jsx("div", {
8
+ className: `${baseClass}`,
9
+ children: "CUSTOM LOGOUT"
10
+ });
11
+ };
12
+ export default LogoutView;
13
+
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9sb2dvdXQvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgQWRtaW5WaWV3U2VydmVyUHJvcHMgfSBmcm9tIFwicGF5bG9hZFwiO1xuaW1wb3J0IHsgTG9nb3V0Q2xpZW50IH0gZnJvbSBcIi4vY2xpZW50XCI7XG5cbmltcG9ydCBcIi4vaW5kZXguc2Nzc1wiO1xuXG5jb25zdCBiYXNlQ2xhc3MgPSBcImxvZ291dFwiO1xuXG5jb25zdCBMb2dvdXRWaWV3OiBSZWFjdC5GQzxcbiAge1xuICAgIGluYWN0aXZpdHk/OiBib29sZWFuO1xuICB9ICYgQWRtaW5WaWV3U2VydmVyUHJvcHNcbj4gPSAoeyBpbmFjdGl2aXR5LCBpbml0UGFnZVJlc3VsdCwgc2VhcmNoUGFyYW1zIH0pID0+IHtcbiAgY29uc3Qge1xuICAgIHJlcToge1xuICAgICAgcGF5bG9hZDoge1xuICAgICAgICBjb25maWc6IHtcbiAgICAgICAgICByb3V0ZXM6IHsgYWRtaW46IGFkbWluUm91dGUgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSA9IGluaXRQYWdlUmVzdWx0O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2Ake2Jhc2VDbGFzc31gfT5cbiAgICAgIENVU1RPTSBMT0dPVVRcbiAgICAgIHsvKiA8TG9nb3V0Q2xpZW50XG4gICAgICAgIGFkbWluUm91dGU9e2FkbWluUm91dGV9XG4gICAgICAgIGluYWN0aXZpdHk9e2luYWN0aXZpdHl9XG4gICAgICAgIHJlZGlyZWN0PXtzZWFyY2hQYXJhbXM/LnJlZGlyZWN0IGFzIHN0cmluZ31cbiAgICAgIC8+ICovfVxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTG9nb3V0VmlldztcbiJdLCJuYW1lcyI6WyJSZWFjdCIsImJhc2VDbGFzcyIsIkxvZ291dFZpZXciLCJpbmFjdGl2aXR5IiwiaW5pdFBhZ2VSZXN1bHQiLCJzZWFyY2hQYXJhbXMiLCJyZXEiLCJwYXlsb2FkIiwiY29uZmlnIiwicm91dGVzIiwiYWRtaW4iLCJhZG1pblJvdXRlIiwiZGl2IiwiY2xhc3NOYW1lIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsV0FBVyxRQUFRO0FBSTFCLE9BQU8sZUFBZTtBQUV0QixNQUFNQyxZQUFZO0FBRWxCLE1BQU1DLGFBSUYsQ0FBQyxFQUFFQyxVQUFVLEVBQUVDLGNBQWMsRUFBRUMsWUFBWSxFQUFFO0lBQy9DLE1BQU0sRUFDSkMsS0FBSyxFQUNIQyxTQUFTLEVBQ1BDLFFBQVEsRUFDTkMsUUFBUSxFQUFFQyxPQUFPQyxVQUFVLEVBQUUsRUFDOUIsRUFDRixFQUNGLEVBQ0YsR0FBR1A7SUFFSixxQkFDRSxLQUFDUTtRQUFJQyxXQUFXLEdBQUdaLFdBQVc7a0JBQUU7O0FBU3BDO0FBRUEsZUFBZUMsV0FBVyJ9
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ type PasswordResetFormArgs = {
3
+ readonly token: string;
4
+ };
5
+ export declare const PasswordResetClient: React.FC<PasswordResetFormArgs>;
6
+ export {};
7
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/reset-password/client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAe3C,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAeF,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAqD/D,CAAC"}