payload-auth 1.1.2 → 1.3.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.
- package/dist/authjs/index.d.ts.map +1 -1
- package/dist/authjs/index.js +2 -2
- package/dist/better-auth/adapter/generate-schema/generate-schema-builder.d.ts +1 -1
- package/dist/better-auth/adapter/generate-schema/generate-schema-builder.d.ts.map +1 -1
- package/dist/better-auth/adapter/generate-schema/generate-schema-builder.js +3 -3
- package/dist/better-auth/adapter/generate-schema/get-payload-schema.d.ts.map +1 -1
- package/dist/better-auth/adapter/generate-schema/get-payload-schema.js +4 -4
- package/dist/better-auth/adapter/generate-schema/index.js +5 -5
- package/dist/better-auth/adapter/generate-schema/utils.js +1 -1
- package/dist/better-auth/adapter/index.d.ts +2 -2
- package/dist/better-auth/adapter/index.d.ts.map +1 -1
- package/dist/better-auth/adapter/index.js +53 -53
- package/dist/better-auth/adapter/transform/index.d.ts +5 -5
- package/dist/better-auth/adapter/transform/index.d.ts.map +1 -1
- package/dist/better-auth/adapter/transform/index.js +69 -69
- package/dist/better-auth/adapter/types.d.ts +3 -3
- package/dist/better-auth/adapter/types.d.ts.map +1 -1
- package/dist/better-auth/adapter/types.js +1 -1
- package/dist/better-auth/index.js +4 -4
- package/dist/better-auth/plugin/{lib/constants.d.ts → constants.d.ts} +14 -6
- package/dist/better-auth/plugin/constants.d.ts.map +1 -0
- package/dist/better-auth/plugin/constants.js +91 -0
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.js +2 -2
- package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/check-username-plugin.js +2 -2
- package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/generate-verify-email-url.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/generate-verify-email-url.js +7 -7
- package/dist/better-auth/plugin/helpers/get-admin-access.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/get-admin-access.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/get-admin-access.js +2 -2
- package/dist/better-auth/plugin/helpers/get-all-roles.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/get-all-roles.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/get-all-roles.js +4 -4
- package/dist/better-auth/plugin/helpers/get-ip.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/get-ip.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/get-ip.js +14 -14
- package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/get-requst-collection.js +2 -2
- package/dist/better-auth/plugin/helpers/index.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/index.js +1 -1
- package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts +3 -3
- package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/prepare-session-data.js +1 -1
- package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts +2 -2
- package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/serialize-cookie.js +33 -33
- package/dist/better-auth/plugin/index.d.ts +6 -6
- package/dist/better-auth/plugin/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/index.js +27 -57
- package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +6 -6
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +47 -47
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js +1 -1
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js +2 -2
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +33 -24
- package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/api-keys.js +77 -80
- package/dist/better-auth/plugin/lib/build-collections/index.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/index.js +2 -2
- package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/invitations.js +30 -30
- package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/jwks.js +13 -13
- package/dist/better-auth/plugin/lib/build-collections/members.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/members.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/members.js +22 -22
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +33 -33
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +40 -40
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +20 -20
- package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/organizations.js +21 -21
- package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/passkeys.js +37 -37
- package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/sessions.js +33 -33
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +29 -29
- package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/teams.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/teams.js +13 -13
- package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/two-factors.js +17 -17
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +8 -8
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts +3 -4
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +12 -11
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js +19 -18
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts +3 -2
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js +28 -6
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts +2 -2
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +9 -8
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts +2 -2
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.js +34 -30
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +7 -6
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +11 -11
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +2 -2
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +2 -2
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +3 -3
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +9 -9
- package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/users/index.js +84 -94
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +7 -7
- package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts +1 -1
- package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js +9 -9
- package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +3 -3
- package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/build-collections/verifications.js +17 -17
- package/dist/better-auth/plugin/lib/get-payload-auth.d.ts +2 -2
- package/dist/better-auth/plugin/lib/get-payload-auth.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/get-payload-auth.js +1 -1
- package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts +2 -2
- package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/get-required-collection-slugs.js +7 -7
- package/dist/better-auth/plugin/lib/init-better-auth.d.ts +4 -4
- package/dist/better-auth/plugin/lib/init-better-auth.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/init-better-auth.js +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +3 -3
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +3 -3
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +4 -4
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +28 -12
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +10 -11
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +15 -16
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +3 -3
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +3 -3
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js +7 -6
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js +7 -6
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.d.ts +10 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/require-admin-invite-for-sign-up-middleware.js +43 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts +4 -4
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +9 -4
- package/dist/better-auth/plugin/lib/set-login-methods.d.ts +5 -0
- package/dist/better-auth/plugin/lib/set-login-methods.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/set-login-methods.js +16 -0
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts +4 -4
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.js +19 -20
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts +4 -4
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js +59 -42
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.scss +7 -6
- package/dist/better-auth/plugin/payload/components/logout-button.d.ts +2 -3
- package/dist/better-auth/plugin/payload/components/logout-button.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/logout-button.js +8 -11
- package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts +1 -1
- package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/rsc-redirect.js +1 -1
- package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.d.ts +14 -0
- package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/social-provider-buttons/index.js +142 -0
- package/dist/better-auth/plugin/payload/components/{admin-social-provider-buttons → social-provider-buttons}/index.scss +4 -1
- package/dist/better-auth/plugin/payload/components/token-field.d.ts +2 -2
- package/dist/better-auth/plugin/payload/components/token-field.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/token-field.js +3 -3
- package/dist/better-auth/plugin/payload/exports/client.d.ts +5 -6
- package/dist/better-auth/plugin/payload/exports/client.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/exports/client.js +6 -7
- package/dist/better-auth/plugin/payload/exports/rsc.d.ts +6 -9
- package/dist/better-auth/plugin/payload/exports/rsc.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/exports/rsc.js +5 -8
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts +1 -1
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js +6 -5
- package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts +3 -3
- package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/utils/generate-metadata.js +18 -18
- package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js +1 -1
- package/dist/better-auth/plugin/payload/views/admin-login/client.d.ts +17 -0
- package/dist/better-auth/plugin/payload/views/admin-login/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-login/client.js +175 -0
- package/dist/better-auth/plugin/payload/views/admin-login/index.d.ts +11 -0
- package/dist/better-auth/plugin/payload/views/admin-login/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-login/index.js +125 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/client.d.ts +15 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/client.js +156 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/index.d.ts +11 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-signup/index.js +71 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts +4 -7
- package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/forgot-password/client.js +70 -100
- package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +6 -6
- package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/forgot-password/index.js +23 -34
- package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts +4 -2
- package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/reset-password/client.js +88 -53
- package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts +2 -2
- package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/reset-password/index.js +51 -56
- package/dist/better-auth/plugin/types.d.ts +58 -31
- package/dist/better-auth/plugin/types.d.ts.map +1 -1
- package/dist/better-auth/plugin/types.js +1 -1
- package/dist/better-auth/types.js +2 -2
- package/dist/clerk/admin-ui.js +4 -4
- package/dist/clerk/index.js +5 -5
- package/dist/clerk/plugin/auth-strategy.js +4 -4
- package/dist/clerk/plugin/collections/users/access.js +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.d.ts +2 -2
- package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/sync-from-clerk.js +9 -9
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/index.js +4 -4
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userCreated.js +2 -2
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userDeleted.js +2 -2
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/webhook/handlers/userUpdated.js +2 -2
- package/dist/clerk/plugin/collections/users/endpoints/webhook/index.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/endpoints/webhook/index.js +5 -4
- package/dist/clerk/plugin/collections/users/fields.js +1 -1
- package/dist/clerk/plugin/collections/users/index.d.ts +1 -1
- package/dist/clerk/plugin/collections/users/index.d.ts.map +1 -1
- package/dist/clerk/plugin/collections/users/index.js +7 -7
- package/dist/clerk/plugin/components/after-login-form.js +4 -4
- package/dist/clerk/plugin/components/logout-button.d.ts.map +1 -1
- package/dist/clerk/plugin/components/logout-button.js +17 -17
- package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts +1 -1
- package/dist/clerk/plugin/components/sync-clerk-users-button.d.ts.map +1 -1
- package/dist/clerk/plugin/components/sync-clerk-users-button.js +8 -8
- package/dist/clerk/plugin.d.ts +4 -4
- package/dist/clerk/plugin.d.ts.map +1 -1
- package/dist/clerk/plugin.js +4 -4
- package/dist/clerk/types.js +1 -1
- package/dist/clerk/utils/clerk-user.d.ts.map +1 -1
- package/dist/clerk/utils/clerk-user.js +1 -1
- package/dist/clerk/utils/index.js +4 -4
- package/dist/clerk/utils/load-clerk-instance.d.ts.map +1 -1
- package/dist/clerk/utils/load-clerk-instance.js +2 -2
- package/dist/clerk/utils/svix.d.ts +1 -1
- package/dist/clerk/utils/svix.d.ts.map +1 -1
- package/dist/clerk/utils/svix.js +2 -2
- package/dist/clerk/utils/user.d.ts.map +1 -1
- package/dist/clerk/utils/user.js +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/kinde/index.d.ts.map +1 -1
- package/dist/kinde/index.js +2 -2
- package/dist/{better-auth/plugin/payload → shared}/components/icons.d.ts +3 -3
- package/dist/shared/components/icons.d.ts.map +1 -0
- package/dist/shared/components/icons.js +437 -0
- package/dist/shared/components/logo.d.ts +4 -0
- package/dist/shared/components/logo.d.ts.map +1 -0
- package/dist/shared/components/logo.js +24 -0
- package/dist/shared/form/components/submit.d.ts +8 -0
- package/dist/shared/form/components/submit.d.ts.map +1 -0
- package/dist/shared/form/components/submit.js +21 -0
- package/dist/shared/form/fields/text-field.d.ts +8 -0
- package/dist/shared/form/fields/text-field.d.ts.map +1 -0
- package/dist/shared/form/fields/text-field.js +41 -0
- package/dist/shared/form/index.d.ts +34 -0
- package/dist/shared/form/index.d.ts.map +1 -0
- package/dist/shared/form/index.js +17 -0
- package/dist/shared/form/ui/header/index.d.ts +9 -0
- package/dist/shared/form/ui/header/index.d.ts.map +1 -0
- package/dist/shared/form/ui/header/index.js +24 -0
- package/dist/shared/form/ui/index.d.ts +31 -0
- package/dist/shared/form/ui/index.d.ts.map +1 -0
- package/dist/shared/form/ui/index.js +57 -0
- package/dist/shared/form/ui/index.scss +27 -0
- package/dist/shared/form/validation.d.ts +103 -0
- package/dist/shared/form/validation.d.ts.map +1 -0
- package/dist/shared/form/validation.js +108 -0
- package/dist/shared/index.d.ts +3 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +4 -0
- package/dist/shared/payload/fields/field-copy-button/index.css +47 -0
- package/dist/shared/payload/fields/field-copy-button/index.d.ts +4 -0
- package/dist/shared/payload/fields/field-copy-button/index.d.ts.map +1 -0
- package/dist/shared/payload/fields/field-copy-button/index.js +38 -0
- package/dist/shared/payload/fields/generate-uuid-button/index.css +14 -0
- package/dist/shared/payload/fields/generate-uuid-button/index.d.ts +4 -0
- package/dist/shared/payload/fields/generate-uuid-button/index.d.ts.map +1 -0
- package/dist/shared/payload/fields/generate-uuid-button/index.js +26 -0
- package/dist/shared/payload/fields/index.d.ts +3 -0
- package/dist/shared/payload/fields/index.d.ts.map +1 -0
- package/dist/shared/payload/fields/index.js +4 -0
- package/dist/shared/utils/regex.d.ts +3 -0
- package/dist/shared/utils/regex.d.ts.map +1 -0
- package/dist/shared/utils/regex.js +4 -0
- package/dist/shared/utils/try-catch.d.ts +12 -0
- package/dist/shared/utils/try-catch.d.ts.map +1 -0
- package/dist/shared/utils/try-catch.js +17 -0
- package/package.json +7 -5
- package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts +0 -14
- package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts.map +0 -1
- package/dist/better-auth/plugin/helpers/get-admin-routes.js +0 -6
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts +0 -3
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.js +0 -96
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts +0 -4
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.js +0 -115
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts +0 -3
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.js +0 -62
- package/dist/better-auth/plugin/lib/constants.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/constants.js +0 -56
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts +0 -14
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.js +0 -111
- package/dist/better-auth/plugin/payload/components/form-header/index.d.ts +0 -9
- package/dist/better-auth/plugin/payload/components/form-header/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/form-header/index.js +0 -23
- package/dist/better-auth/plugin/payload/components/icons.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/icons.js +0 -437
- package/dist/better-auth/plugin/payload/components/logo.d.ts +0 -4
- package/dist/better-auth/plugin/payload/components/logo.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/logo.js +0 -24
- package/dist/better-auth/plugin/payload/components/styles.css +0 -73
- package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts +0 -12
- package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/admin-invite/client.js +0 -92
- package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts +0 -11
- package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/admin-invite/index.js +0 -84
- package/dist/better-auth/plugin/payload/views/admin-invite/index.scss +0 -25
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts +0 -14
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.js +0 -95
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts +0 -12
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.js +0 -144
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.scss +0 -29
- package/dist/better-auth/plugin/payload/views/forgot-password/index.scss +0 -0
- package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts +0 -5
- package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/inactivity/index.js +0 -12
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts +0 -9
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.js +0 -54
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts +0 -1
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.js +0 -121
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.scss +0 -31
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts +0 -56
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.js +0 -3
- package/dist/better-auth/plugin/payload/views/login/form/index.d.ts +0 -17
- package/dist/better-auth/plugin/payload/views/login/form/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/login/form/index.js +0 -137
- package/dist/better-auth/plugin/payload/views/login/form/index.scss +0 -23
- package/dist/better-auth/plugin/payload/views/login/index.d.ts +0 -11
- package/dist/better-auth/plugin/payload/views/login/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/login/index.js +0 -98
- package/dist/better-auth/plugin/payload/views/login/index.scss +0 -10
- package/dist/better-auth/plugin/payload/views/logout/client.d.ts +0 -8
- package/dist/better-auth/plugin/payload/views/logout/client.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/logout/client.js +0 -76
- package/dist/better-auth/plugin/payload/views/logout/index.d.ts +0 -8
- package/dist/better-auth/plugin/payload/views/logout/index.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/logout/index.js +0 -14
- package/dist/better-auth/plugin/payload/views/logout/index.scss +0 -0
- package/dist/better-auth/plugin/payload/views/reset-password/index.scss +0 -9
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts +0 -3
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.js +0 -11
- /package/dist/{better-auth/plugin/payload/components/form-header → shared/form/ui/header}/index.scss +0 -0
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { AdminSocialProviderButtons } from "../../components/social-provider-buttons";
|
|
4
|
+
import { getSafeRedirect } from "../../utils/get-safe-redirect";
|
|
5
|
+
import { useConfig, Link, toast, useTranslation } from "@payloadcms/ui";
|
|
6
|
+
import React, { useMemo, useState } from "react";
|
|
7
|
+
import { adminRoutes } from "../../../constants";
|
|
8
|
+
import { useAppForm } from "../../../../../shared/form";
|
|
9
|
+
import { Form, FormError, FormInputWrap } from "../../../../../shared/form/ui";
|
|
10
|
+
import { FormHeader } from "../../../../../shared/form/ui/header";
|
|
11
|
+
import { createLoginSchema, isValidEmail } from "../../../../../shared/form/validation";
|
|
12
|
+
import { createAuthClient } from "better-auth/client";
|
|
13
|
+
import { usernameClient } from "better-auth/client/plugins";
|
|
14
|
+
import { formatAdminURL, getLoginOptions } from "payload/shared";
|
|
15
|
+
const baseClass = 'login__form';
|
|
16
|
+
const LoginForm = ({ hasUsernamePlugin, prefillEmail, prefillPassword, prefillUsername, searchParams, loginWithUsername })=>{
|
|
17
|
+
const { config } = useConfig();
|
|
18
|
+
const { t } = useTranslation();
|
|
19
|
+
const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(loginWithUsername);
|
|
20
|
+
const searchParamError = searchParams?.error;
|
|
21
|
+
const redirectUrl = getSafeRedirect(searchParams?.redirect, config.routes.admin);
|
|
22
|
+
const forgotPasswordUrl = formatAdminURL({
|
|
23
|
+
adminRoute: config.routes.admin,
|
|
24
|
+
path: adminRoutes?.forgotPassword
|
|
25
|
+
});
|
|
26
|
+
const authClient = useMemo(()=>createAuthClient({
|
|
27
|
+
plugins: [
|
|
28
|
+
usernameClient()
|
|
29
|
+
]
|
|
30
|
+
}), []);
|
|
31
|
+
const loginType = useMemo(()=>{
|
|
32
|
+
if (canLoginWithEmail && canLoginWithUsername && hasUsernamePlugin) return 'emailOrUsername';
|
|
33
|
+
if (canLoginWithUsername && hasUsernamePlugin) return 'username';
|
|
34
|
+
return 'email';
|
|
35
|
+
}, [
|
|
36
|
+
canLoginWithEmail,
|
|
37
|
+
canLoginWithUsername,
|
|
38
|
+
hasUsernamePlugin
|
|
39
|
+
]);
|
|
40
|
+
const [requireEmailVerification, setRequireEmailVerification] = useState(false);
|
|
41
|
+
if (requireEmailVerification) {
|
|
42
|
+
return /*#__PURE__*/ _jsx(FormHeader, {
|
|
43
|
+
heading: "Please verify your email",
|
|
44
|
+
description: t('authentication:emailSent'),
|
|
45
|
+
style: {
|
|
46
|
+
textAlign: 'center'
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
const loginSchema = createLoginSchema({
|
|
51
|
+
t,
|
|
52
|
+
loginType,
|
|
53
|
+
canLoginWithUsername
|
|
54
|
+
});
|
|
55
|
+
const form = useAppForm({
|
|
56
|
+
defaultValues: {
|
|
57
|
+
login: prefillEmail ?? prefillUsername ?? '',
|
|
58
|
+
password: prefillPassword ?? ''
|
|
59
|
+
},
|
|
60
|
+
onSubmit: async ({ value })=>{
|
|
61
|
+
const { login, password } = value;
|
|
62
|
+
const isEmail = isValidEmail(login);
|
|
63
|
+
try {
|
|
64
|
+
const { data, error } = await (loginType === 'email' || loginType === 'emailOrUsername' && isEmail ? authClient.signIn.email({
|
|
65
|
+
email: login,
|
|
66
|
+
password,
|
|
67
|
+
callbackURL: redirectUrl
|
|
68
|
+
}) : authClient.signIn.username({
|
|
69
|
+
username: login,
|
|
70
|
+
password
|
|
71
|
+
}));
|
|
72
|
+
if (error) {
|
|
73
|
+
if (error.code === 'EMAIL_NOT_VERIFIED') {
|
|
74
|
+
setRequireEmailVerification(true);
|
|
75
|
+
}
|
|
76
|
+
if (error.message) {
|
|
77
|
+
toast.error(error.message.charAt(0).toUpperCase() + error.message.slice(1));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (data?.token) {
|
|
81
|
+
toast.success(t('general:success'));
|
|
82
|
+
window.location.href = redirectUrl;
|
|
83
|
+
}
|
|
84
|
+
} catch (err) {
|
|
85
|
+
toast.error(t('error:unknown') || 'An unexpected error occurred');
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
validators: {
|
|
89
|
+
onSubmit: loginSchema
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
const getLoginTypeLabel = ()=>{
|
|
93
|
+
const labels = {
|
|
94
|
+
email: t('general:email') || 'Email',
|
|
95
|
+
username: t('authentication:username') || 'Username',
|
|
96
|
+
emailOrUsername: t('authentication:emailOrUsername') || 'Email or Username'
|
|
97
|
+
};
|
|
98
|
+
return labels[loginType];
|
|
99
|
+
};
|
|
100
|
+
return /*#__PURE__*/ _jsxs("div", {
|
|
101
|
+
className: `${baseClass}__wrapper`,
|
|
102
|
+
children: [
|
|
103
|
+
searchParamError && searchParamError === 'signup_disabled' && /*#__PURE__*/ _jsx(FormError, {
|
|
104
|
+
errors: [
|
|
105
|
+
'Sign up is disabled.'
|
|
106
|
+
]
|
|
107
|
+
}),
|
|
108
|
+
/*#__PURE__*/ _jsxs(Form, {
|
|
109
|
+
className: baseClass,
|
|
110
|
+
onSubmit: (e)=>{
|
|
111
|
+
e.preventDefault();
|
|
112
|
+
void form.handleSubmit();
|
|
113
|
+
},
|
|
114
|
+
children: [
|
|
115
|
+
/*#__PURE__*/ _jsxs(FormInputWrap, {
|
|
116
|
+
className: baseClass,
|
|
117
|
+
children: [
|
|
118
|
+
/*#__PURE__*/ _jsx(form.AppField, {
|
|
119
|
+
name: "login",
|
|
120
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
121
|
+
type: "text",
|
|
122
|
+
className: "email",
|
|
123
|
+
autoComplete: "email",
|
|
124
|
+
label: getLoginTypeLabel()
|
|
125
|
+
})
|
|
126
|
+
}),
|
|
127
|
+
/*#__PURE__*/ _jsx(form.AppField, {
|
|
128
|
+
name: "password",
|
|
129
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
130
|
+
type: "password",
|
|
131
|
+
className: "password",
|
|
132
|
+
autoComplete: "password",
|
|
133
|
+
label: t('general:password')
|
|
134
|
+
})
|
|
135
|
+
})
|
|
136
|
+
]
|
|
137
|
+
}),
|
|
138
|
+
/*#__PURE__*/ _jsx(Link, {
|
|
139
|
+
href: forgotPasswordUrl,
|
|
140
|
+
prefetch: false,
|
|
141
|
+
children: t('authentication:forgotPasswordQuestion')
|
|
142
|
+
}),
|
|
143
|
+
/*#__PURE__*/ _jsx(form.AppForm, {
|
|
144
|
+
children: /*#__PURE__*/ _jsx(form.Submit, {
|
|
145
|
+
label: t('authentication:login'),
|
|
146
|
+
loadingLabel: t('general:loading')
|
|
147
|
+
})
|
|
148
|
+
})
|
|
149
|
+
]
|
|
150
|
+
})
|
|
151
|
+
]
|
|
152
|
+
});
|
|
153
|
+
};
|
|
154
|
+
export const AdminLoginClient = ({ loginMethods, hasUsernamePlugin, prefillEmail, prefillPassword, prefillUsername, searchParams, loginWithUsername })=>{
|
|
155
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
156
|
+
children: [
|
|
157
|
+
loginMethods.includes('emailPassword') && /*#__PURE__*/ _jsx(LoginForm, {
|
|
158
|
+
hasUsernamePlugin: hasUsernamePlugin,
|
|
159
|
+
prefillEmail: prefillEmail,
|
|
160
|
+
prefillPassword: prefillPassword,
|
|
161
|
+
prefillUsername: prefillUsername,
|
|
162
|
+
searchParams: searchParams,
|
|
163
|
+
loginWithUsername: loginWithUsername
|
|
164
|
+
}),
|
|
165
|
+
/*#__PURE__*/ _jsx(AdminSocialProviderButtons, {
|
|
166
|
+
isSignup: false,
|
|
167
|
+
loginMethods: loginMethods,
|
|
168
|
+
setLoading: ()=>{},
|
|
169
|
+
redirectUrl: getSafeRedirect(searchParams?.redirect, useConfig().config.routes.admin)
|
|
170
|
+
})
|
|
171
|
+
]
|
|
172
|
+
});
|
|
173
|
+
};
|
|
174
|
+
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9hZG1pbi1sb2dpbi9jbGllbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgeyBBZG1pblNvY2lhbFByb3ZpZGVyQnV0dG9ucyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL3BheWxvYWQvY29tcG9uZW50cy9zb2NpYWwtcHJvdmlkZXItYnV0dG9ucydcbmltcG9ydCB7IGdldFNhZmVSZWRpcmVjdCB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL3BheWxvYWQvdXRpbHMvZ2V0LXNhZmUtcmVkaXJlY3QnXG5pbXBvcnQgeyB1c2VDb25maWcsIExpbmssIHRvYXN0LCB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ0BwYXlsb2FkY21zL3VpJ1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdHlwZSB7IExvZ2luTWV0aG9kIH0gZnJvbSAnQC9iZXR0ZXItYXV0aC9wbHVnaW4vdHlwZXMnXG5pbXBvcnQgdHlwZSB7IExvZ2luV2l0aFVzZXJuYW1lT3B0aW9ucyB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgeyBhZG1pblJvdXRlcyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUFwcEZvcm0gfSBmcm9tICdAL3NoYXJlZC9mb3JtJ1xuaW1wb3J0IHsgRm9ybSwgRm9ybUVycm9yLCBGb3JtSW5wdXRXcmFwIH0gZnJvbSAnQC9zaGFyZWQvZm9ybS91aSdcbmltcG9ydCB7IEZvcm1IZWFkZXIgfSBmcm9tICdAL3NoYXJlZC9mb3JtL3VpL2hlYWRlcidcbmltcG9ydCB7IGNyZWF0ZUxvZ2luU2NoZW1hLCBpc1ZhbGlkRW1haWwgfSBmcm9tICdAL3NoYXJlZC9mb3JtL3ZhbGlkYXRpb24nXG5pbXBvcnQgeyBjcmVhdGVBdXRoQ2xpZW50IH0gZnJvbSAnYmV0dGVyLWF1dGgvY2xpZW50J1xuaW1wb3J0IHsgdXNlcm5hbWVDbGllbnQgfSBmcm9tICdiZXR0ZXItYXV0aC9jbGllbnQvcGx1Z2lucydcbmltcG9ydCB7IGZvcm1hdEFkbWluVVJMLCBnZXRMb2dpbk9wdGlvbnMgfSBmcm9tICdwYXlsb2FkL3NoYXJlZCdcblxudHlwZSBBZG1pbkxvZ2luQ2xpZW50UHJvcHMgPSB7XG4gIGxvZ2luTWV0aG9kczogTG9naW5NZXRob2RbXVxuICBoYXNVc2VybmFtZVBsdWdpbjogYm9vbGVhblxuICBwcmVmaWxsRW1haWw/OiBzdHJpbmdcbiAgcHJlZmlsbFBhc3N3b3JkPzogc3RyaW5nXG4gIHByZWZpbGxVc2VybmFtZT86IHN0cmluZ1xuICBzZWFyY2hQYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQgfVxuICBsb2dpbldpdGhVc2VybmFtZTogZmFsc2UgfCBMb2dpbldpdGhVc2VybmFtZU9wdGlvbnNcbn1cblxuY29uc3QgYmFzZUNsYXNzID0gJ2xvZ2luX19mb3JtJ1xuXG5jb25zdCBMb2dpbkZvcm06IFJlYWN0LkZDPHtcbiAgaGFzVXNlcm5hbWVQbHVnaW46IGJvb2xlYW5cbiAgcHJlZmlsbEVtYWlsPzogc3RyaW5nXG4gIHByZWZpbGxQYXNzd29yZD86IHN0cmluZ1xuICBwcmVmaWxsVXNlcm5hbWU/OiBzdHJpbmdcbiAgc2VhcmNoUGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIH1cbiAgbG9naW5XaXRoVXNlcm5hbWU6IGZhbHNlIHwgTG9naW5XaXRoVXNlcm5hbWVPcHRpb25zXG59PiA9ICh7XG4gIGhhc1VzZXJuYW1lUGx1Z2luLFxuICBwcmVmaWxsRW1haWwsXG4gIHByZWZpbGxQYXNzd29yZCxcbiAgcHJlZmlsbFVzZXJuYW1lLFxuICBzZWFyY2hQYXJhbXMsXG4gIGxvZ2luV2l0aFVzZXJuYW1lXG59KSA9PiB7XG4gIGNvbnN0IHsgY29uZmlnIH0gPSB1c2VDb25maWcoKVxuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKClcbiAgY29uc3QgeyBjYW5Mb2dpbldpdGhFbWFpbCwgY2FuTG9naW5XaXRoVXNlcm5hbWUgfSA9IGdldExvZ2luT3B0aW9ucyhsb2dpbldpdGhVc2VybmFtZSlcbiAgY29uc3Qgc2VhcmNoUGFyYW1FcnJvciA9IHNlYXJjaFBhcmFtcz8uZXJyb3JcbiAgY29uc3QgcmVkaXJlY3RVcmwgPSBnZXRTYWZlUmVkaXJlY3Qoc2VhcmNoUGFyYW1zPy5yZWRpcmVjdCBhcyBzdHJpbmcsIGNvbmZpZy5yb3V0ZXMuYWRtaW4pXG4gIGNvbnN0IGZvcmdvdFBhc3N3b3JkVXJsID0gZm9ybWF0QWRtaW5VUkwoe1xuICAgIGFkbWluUm91dGU6IGNvbmZpZy5yb3V0ZXMuYWRtaW4sXG4gICAgcGF0aDogYWRtaW5Sb3V0ZXM/LmZvcmdvdFBhc3N3b3JkIGFzIGAvJHtzdHJpbmd9YFxuICB9KVxuICBjb25zdCBhdXRoQ2xpZW50ID0gdXNlTWVtbygoKSA9PiBjcmVhdGVBdXRoQ2xpZW50KHsgcGx1Z2luczogW3VzZXJuYW1lQ2xpZW50KCldIH0pLCBbXSlcbiAgY29uc3QgbG9naW5UeXBlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGNhbkxvZ2luV2l0aEVtYWlsICYmIGNhbkxvZ2luV2l0aFVzZXJuYW1lICYmIGhhc1VzZXJuYW1lUGx1Z2luKSByZXR1cm4gJ2VtYWlsT3JVc2VybmFtZSdcbiAgICBpZiAoY2FuTG9naW5XaXRoVXNlcm5hbWUgJiYgaGFzVXNlcm5hbWVQbHVnaW4pIHJldHVybiAndXNlcm5hbWUnXG4gICAgcmV0dXJuICdlbWFpbCdcbiAgfSwgW2NhbkxvZ2luV2l0aEVtYWlsLCBjYW5Mb2dpbldpdGhVc2VybmFtZSwgaGFzVXNlcm5hbWVQbHVnaW5dKVxuICBjb25zdCBbcmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uLCBzZXRSZXF1aXJlRW1haWxWZXJpZmljYXRpb25dID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpXG5cbiAgaWYgKHJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbikge1xuICAgIHJldHVybiA8Rm9ybUhlYWRlciBoZWFkaW5nPVwiUGxlYXNlIHZlcmlmeSB5b3VyIGVtYWlsXCIgZGVzY3JpcHRpb249e3QoJ2F1dGhlbnRpY2F0aW9uOmVtYWlsU2VudCcpfSBzdHlsZT17eyB0ZXh0QWxpZ246ICdjZW50ZXInIH19IC8+XG4gIH1cblxuICBjb25zdCBsb2dpblNjaGVtYSA9IGNyZWF0ZUxvZ2luU2NoZW1hKHsgdCwgbG9naW5UeXBlLCBjYW5Mb2dpbldpdGhVc2VybmFtZSB9KVxuXG4gIGNvbnN0IGZvcm0gPSB1c2VBcHBGb3JtKHtcbiAgICBkZWZhdWx0VmFsdWVzOiB7XG4gICAgICBsb2dpbjogcHJlZmlsbEVtYWlsID8/IHByZWZpbGxVc2VybmFtZSA/PyAnJyxcbiAgICAgIHBhc3N3b3JkOiBwcmVmaWxsUGFzc3dvcmQgPz8gJydcbiAgICB9LFxuICAgIG9uU3VibWl0OiBhc3luYyAoeyB2YWx1ZSB9KSA9PiB7XG4gICAgICBjb25zdCB7IGxvZ2luLCBwYXNzd29yZCB9ID0gdmFsdWVcbiAgICAgIGNvbnN0IGlzRW1haWwgPSBpc1ZhbGlkRW1haWwobG9naW4pXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB7IGRhdGEsIGVycm9yIH0gPSBhd2FpdCAobG9naW5UeXBlID09PSAnZW1haWwnIHx8IChsb2dpblR5cGUgPT09ICdlbWFpbE9yVXNlcm5hbWUnICYmIGlzRW1haWwpXG4gICAgICAgICAgPyBhdXRoQ2xpZW50LnNpZ25Jbi5lbWFpbCh7IGVtYWlsOiBsb2dpbiwgcGFzc3dvcmQsIGNhbGxiYWNrVVJMOiByZWRpcmVjdFVybCB9KVxuICAgICAgICAgIDogYXV0aENsaWVudC5zaWduSW4udXNlcm5hbWUoeyB1c2VybmFtZTogbG9naW4sIHBhc3N3b3JkIH0pKVxuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICBpZiAoZXJyb3IuY29kZSA9PT0gJ0VNQUlMX05PVF9WRVJJRklFRCcpIHtcbiAgICAgICAgICAgIHNldFJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbih0cnVlKVxuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZXJyb3IubWVzc2FnZSkge1xuICAgICAgICAgICAgdG9hc3QuZXJyb3IoZXJyb3IubWVzc2FnZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGVycm9yLm1lc3NhZ2Uuc2xpY2UoMSkpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChkYXRhPy50b2tlbikge1xuICAgICAgICAgIHRvYXN0LnN1Y2Nlc3ModCgnZ2VuZXJhbDpzdWNjZXNzJykpXG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSByZWRpcmVjdFVybFxuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdG9hc3QuZXJyb3IodCgnZXJyb3I6dW5rbm93bicpIHx8ICdBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkJylcbiAgICAgIH1cbiAgICB9LFxuICAgIHZhbGlkYXRvcnM6IHtcbiAgICAgIG9uU3VibWl0OiBsb2dpblNjaGVtYVxuICAgIH1cbiAgfSlcblxuICBjb25zdCBnZXRMb2dpblR5cGVMYWJlbCA9ICgpID0+IHtcbiAgICBjb25zdCBsYWJlbHMgPSB7XG4gICAgICBlbWFpbDogdCgnZ2VuZXJhbDplbWFpbCcpIHx8ICdFbWFpbCcsXG4gICAgICB1c2VybmFtZTogdCgnYXV0aGVudGljYXRpb246dXNlcm5hbWUnKSB8fCAnVXNlcm5hbWUnLFxuICAgICAgZW1haWxPclVzZXJuYW1lOiB0KCdhdXRoZW50aWNhdGlvbjplbWFpbE9yVXNlcm5hbWUnKSB8fCAnRW1haWwgb3IgVXNlcm5hbWUnXG4gICAgfVxuICAgIHJldHVybiBsYWJlbHNbbG9naW5UeXBlXVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7YmFzZUNsYXNzfV9fd3JhcHBlcmB9PlxuICAgICAge3NlYXJjaFBhcmFtRXJyb3IgJiYgc2VhcmNoUGFyYW1FcnJvciA9PT0gJ3NpZ251cF9kaXNhYmxlZCcgJiYgPEZvcm1FcnJvciBlcnJvcnM9e1snU2lnbiB1cCBpcyBkaXNhYmxlZC4nXX0gLz59XG4gICAgICA8Rm9ybVxuICAgICAgICBjbGFzc05hbWU9e2Jhc2VDbGFzc31cbiAgICAgICAgb25TdWJtaXQ9e2UgPT4ge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgICAgICAgIHZvaWQgZm9ybS5oYW5kbGVTdWJtaXQoKVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8Rm9ybUlucHV0V3JhcCBjbGFzc05hbWU9e2Jhc2VDbGFzc30+XG4gICAgICAgICAgPGZvcm0uQXBwRmllbGRcbiAgICAgICAgICAgIG5hbWU9XCJsb2dpblwiXG4gICAgICAgICAgICBjaGlsZHJlbj17ZmllbGQgPT4gPGZpZWxkLlRleHRGaWVsZCB0eXBlPVwidGV4dFwiIGNsYXNzTmFtZT1cImVtYWlsXCIgYXV0b0NvbXBsZXRlPVwiZW1haWxcIiBsYWJlbD17Z2V0TG9naW5UeXBlTGFiZWwoKX0gLz59XG4gICAgICAgICAgLz5cbiAgICAgICAgICA8Zm9ybS5BcHBGaWVsZFxuICAgICAgICAgICAgbmFtZT1cInBhc3N3b3JkXCJcbiAgICAgICAgICAgIGNoaWxkcmVuPXtmaWVsZCA9PiAoXG4gICAgICAgICAgICAgIDxmaWVsZC5UZXh0RmllbGQgdHlwZT1cInBhc3N3b3JkXCIgY2xhc3NOYW1lPVwicGFzc3dvcmRcIiBhdXRvQ29tcGxldGU9XCJwYXNzd29yZFwiIGxhYmVsPXt0KCdnZW5lcmFsOnBhc3N3b3JkJyl9IC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvRm9ybUlucHV0V3JhcD5cbiAgICAgICAgPExpbmsgaHJlZj17Zm9yZ290UGFzc3dvcmRVcmx9IHByZWZldGNoPXtmYWxzZX0+XG4gICAgICAgICAge3QoJ2F1dGhlbnRpY2F0aW9uOmZvcmdvdFBhc3N3b3JkUXVlc3Rpb24nKX1cbiAgICAgICAgPC9MaW5rPlxuICAgICAgICA8Zm9ybS5BcHBGb3JtIGNoaWxkcmVuPXs8Zm9ybS5TdWJtaXQgbGFiZWw9e3QoJ2F1dGhlbnRpY2F0aW9uOmxvZ2luJyl9IGxvYWRpbmdMYWJlbD17dCgnZ2VuZXJhbDpsb2FkaW5nJyl9IC8+fSAvPlxuICAgICAgPC9Gb3JtPlxuICAgIDwvZGl2PlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBBZG1pbkxvZ2luQ2xpZW50OiBSZWFjdC5GQzxBZG1pbkxvZ2luQ2xpZW50UHJvcHM+ID0gKHtcbiAgbG9naW5NZXRob2RzLFxuICBoYXNVc2VybmFtZVBsdWdpbixcbiAgcHJlZmlsbEVtYWlsLFxuICBwcmVmaWxsUGFzc3dvcmQsXG4gIHByZWZpbGxVc2VybmFtZSxcbiAgc2VhcmNoUGFyYW1zLFxuICBsb2dpbldpdGhVc2VybmFtZVxufSkgPT4ge1xuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7bG9naW5NZXRob2RzLmluY2x1ZGVzKCdlbWFpbFBhc3N3b3JkJykgJiYgKFxuICAgICAgICA8TG9naW5Gb3JtXG4gICAgICAgICAgaGFzVXNlcm5hbWVQbHVnaW49e2hhc1VzZXJuYW1lUGx1Z2lufVxuICAgICAgICAgIHByZWZpbGxFbWFpbD17cHJlZmlsbEVtYWlsfVxuICAgICAgICAgIHByZWZpbGxQYXNzd29yZD17cHJlZmlsbFBhc3N3b3JkfVxuICAgICAgICAgIHByZWZpbGxVc2VybmFtZT17cHJlZmlsbFVzZXJuYW1lfVxuICAgICAgICAgIHNlYXJjaFBhcmFtcz17c2VhcmNoUGFyYW1zfVxuICAgICAgICAgIGxvZ2luV2l0aFVzZXJuYW1lPXtsb2dpbldpdGhVc2VybmFtZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICA8QWRtaW5Tb2NpYWxQcm92aWRlckJ1dHRvbnNcbiAgICAgICAgaXNTaWdudXA9e2ZhbHNlfVxuICAgICAgICBsb2dpbk1ldGhvZHM9e2xvZ2luTWV0aG9kc31cbiAgICAgICAgc2V0TG9hZGluZz17KCkgPT4ge319XG4gICAgICAgIHJlZGlyZWN0VXJsPXtnZXRTYWZlUmVkaXJlY3Qoc2VhcmNoUGFyYW1zPy5yZWRpcmVjdCBhcyBzdHJpbmcsIHVzZUNvbmZpZygpLmNvbmZpZy5yb3V0ZXMuYWRtaW4pfVxuICAgICAgLz5cbiAgICA8Lz5cbiAgKVxufVxuIl0sIm5hbWVzIjpbIkFkbWluU29jaWFsUHJvdmlkZXJCdXR0b25zIiwiZ2V0U2FmZVJlZGlyZWN0IiwidXNlQ29uZmlnIiwiTGluayIsInRvYXN0IiwidXNlVHJhbnNsYXRpb24iLCJSZWFjdCIsInVzZU1lbW8iLCJ1c2VTdGF0ZSIsImFkbWluUm91dGVzIiwidXNlQXBwRm9ybSIsIkZvcm0iLCJGb3JtRXJyb3IiLCJGb3JtSW5wdXRXcmFwIiwiRm9ybUhlYWRlciIsImNyZWF0ZUxvZ2luU2NoZW1hIiwiaXNWYWxpZEVtYWlsIiwiY3JlYXRlQXV0aENsaWVudCIsInVzZXJuYW1lQ2xpZW50IiwiZm9ybWF0QWRtaW5VUkwiLCJnZXRMb2dpbk9wdGlvbnMiLCJiYXNlQ2xhc3MiLCJMb2dpbkZvcm0iLCJoYXNVc2VybmFtZVBsdWdpbiIsInByZWZpbGxFbWFpbCIsInByZWZpbGxQYXNzd29yZCIsInByZWZpbGxVc2VybmFtZSIsInNlYXJjaFBhcmFtcyIsImxvZ2luV2l0aFVzZXJuYW1lIiwiY29uZmlnIiwidCIsImNhbkxvZ2luV2l0aEVtYWlsIiwiY2FuTG9naW5XaXRoVXNlcm5hbWUiLCJzZWFyY2hQYXJhbUVycm9yIiwiZXJyb3IiLCJyZWRpcmVjdFVybCIsInJlZGlyZWN0Iiwicm91dGVzIiwiYWRtaW4iLCJmb3Jnb3RQYXNzd29yZFVybCIsImFkbWluUm91dGUiLCJwYXRoIiwiZm9yZ290UGFzc3dvcmQiLCJhdXRoQ2xpZW50IiwicGx1Z2lucyIsImxvZ2luVHlwZSIsInJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbiIsInNldFJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbiIsImhlYWRpbmciLCJkZXNjcmlwdGlvbiIsInN0eWxlIiwidGV4dEFsaWduIiwibG9naW5TY2hlbWEiLCJmb3JtIiwiZGVmYXVsdFZhbHVlcyIsImxvZ2luIiwicGFzc3dvcmQiLCJvblN1Ym1pdCIsInZhbHVlIiwiaXNFbWFpbCIsImRhdGEiLCJzaWduSW4iLCJlbWFpbCIsImNhbGxiYWNrVVJMIiwidXNlcm5hbWUiLCJjb2RlIiwibWVzc2FnZSIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwic2xpY2UiLCJ0b2tlbiIsInN1Y2Nlc3MiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhyZWYiLCJlcnIiLCJ2YWxpZGF0b3JzIiwiZ2V0TG9naW5UeXBlTGFiZWwiLCJsYWJlbHMiLCJlbWFpbE9yVXNlcm5hbWUiLCJkaXYiLCJjbGFzc05hbWUiLCJlcnJvcnMiLCJlIiwicHJldmVudERlZmF1bHQiLCJoYW5kbGVTdWJtaXQiLCJBcHBGaWVsZCIsIm5hbWUiLCJjaGlsZHJlbiIsImZpZWxkIiwiVGV4dEZpZWxkIiwidHlwZSIsImF1dG9Db21wbGV0ZSIsImxhYmVsIiwicHJlZmV0Y2giLCJBcHBGb3JtIiwiU3VibWl0IiwibG9hZGluZ0xhYmVsIiwiQWRtaW5Mb2dpbkNsaWVudCIsImxvZ2luTWV0aG9kcyIsImluY2x1ZGVzIiwiaXNTaWdudXAiLCJzZXRMb2FkaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQSxTQUFTQSwwQkFBMEIsUUFBUSwyQ0FBaUU7QUFDNUcsU0FBU0MsZUFBZSxRQUFRLGdDQUFzRDtBQUN0RixTQUFTQyxTQUFTLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxjQUFjLFFBQVEsaUJBQWdCO0FBQ3ZFLE9BQU9DLFNBQVNDLE9BQU8sRUFBRUMsUUFBUSxRQUFRLFFBQU87QUFHaEQsU0FBU0MsV0FBVyxRQUFRLHFCQUFnQztBQUM1RCxTQUFTQyxVQUFVLFFBQVEsNkJBQWU7QUFDMUMsU0FBU0MsSUFBSSxFQUFFQyxTQUFTLEVBQUVDLGFBQWEsUUFBUSxnQ0FBa0I7QUFDakUsU0FBU0MsVUFBVSxRQUFRLHVDQUF5QjtBQUNwRCxTQUFTQyxpQkFBaUIsRUFBRUMsWUFB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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type AdminViewServerProps } from 'payload';
|
|
3
|
+
import type { BetterAuthPluginOptions, SanitizedBetterAuthOptions } from '@/better-auth/plugin/types';
|
|
4
|
+
export declare const loginBaseClass = "login";
|
|
5
|
+
type AdminLoginProps = AdminViewServerProps & {
|
|
6
|
+
pluginOptions: BetterAuthPluginOptions;
|
|
7
|
+
betterAuthOptions: SanitizedBetterAuthOptions;
|
|
8
|
+
};
|
|
9
|
+
declare const AdminLogin: React.FC<AdminLoginProps>;
|
|
10
|
+
export default AdminLogin;
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/admin-login/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,OAAO,EAAE,KAAK,oBAAoB,EAAoB,MAAM,SAAS,CAAA;AACrE,OAAO,KAAK,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AAErG,eAAO,MAAM,cAAc,UAAU,CAAA;AAErC,KAAK,eAAe,GAAG,oBAAoB,GAAG;IAC5C,aAAa,EAAE,uBAAuB,CAAA;IACtC,iBAAiB,EAAE,0BAA0B,CAAA;CAC9C,CAAA;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmIzC,CAAA;AAED,eAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { AdminLoginClient } from "./client";
|
|
4
|
+
import { redirect } from "next/navigation";
|
|
5
|
+
import { Logo } from "../../../../../shared/components/logo";
|
|
6
|
+
import { getSafeRedirect } from "../../utils/get-safe-redirect";
|
|
7
|
+
import { MinimalTemplate } from "@payloadcms/next/templates";
|
|
8
|
+
import { checkPasskeyPlugin } from "../../../helpers/check-passkey-plugin";
|
|
9
|
+
import { checkUsernamePlugin } from "../../../helpers/check-username-plugin";
|
|
10
|
+
import { RenderServerComponent } from "@payloadcms/ui/elements/RenderServerComponent";
|
|
11
|
+
import { adminRoutes, baseCollectionSlugs, defaults } from "../../../constants";
|
|
12
|
+
export const loginBaseClass = 'login';
|
|
13
|
+
const AdminLogin = async ({ initPageResult, params, searchParams, pluginOptions, betterAuthOptions })=>{
|
|
14
|
+
const { locale, permissions, req } = initPageResult;
|
|
15
|
+
const { i18n, payload: { config, collections }, payload, user } = req;
|
|
16
|
+
const { admin: { components: { afterLogin, beforeLogin } = {}, user: userSlug }, routes: { admin: adminRoute } } = config;
|
|
17
|
+
const invitationsCollection = pluginOptions.adminInvitations?.slug ?? baseCollectionSlugs.adminInvitations;
|
|
18
|
+
const adminRole = pluginOptions.users?.defaultAdminRole ?? defaults.adminRole;
|
|
19
|
+
const redirectUrl = getSafeRedirect(searchParams?.redirect ?? '', adminRoute);
|
|
20
|
+
if (user) {
|
|
21
|
+
redirect(redirectUrl);
|
|
22
|
+
}
|
|
23
|
+
const adminCount = await req.payload.count({
|
|
24
|
+
collection: userSlug,
|
|
25
|
+
where: {
|
|
26
|
+
role: {
|
|
27
|
+
equals: adminRole
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
if (adminCount.totalDocs === 0) {
|
|
32
|
+
// Check if we already have an admin invitation
|
|
33
|
+
const existingInvitations = await req.payload.find({
|
|
34
|
+
collection: invitationsCollection,
|
|
35
|
+
where: {
|
|
36
|
+
role: {
|
|
37
|
+
equals: adminRole
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
let token;
|
|
42
|
+
if (existingInvitations.totalDocs > 0) {
|
|
43
|
+
// Use existing token
|
|
44
|
+
token = existingInvitations.docs[0].token;
|
|
45
|
+
} else {
|
|
46
|
+
// Generate a new secure invite token
|
|
47
|
+
token = crypto.randomUUID();
|
|
48
|
+
await req.payload.create({
|
|
49
|
+
collection: invitationsCollection,
|
|
50
|
+
data: {
|
|
51
|
+
role: adminRole,
|
|
52
|
+
token
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
redirect(`${adminRoute}${adminRoutes.adminSignup}?token=${token}`);
|
|
57
|
+
}
|
|
58
|
+
// Filter out the first component from afterLogin array or set to undefined if not more than 1
|
|
59
|
+
// This is because of the custom login redirect component, we don't want an infinite loop
|
|
60
|
+
const filteredAfterLogin = Array.isArray(afterLogin) && afterLogin.length > 1 ? afterLogin.slice(1) : undefined;
|
|
61
|
+
const prefillAutoLogin = typeof config.admin?.autoLogin === 'object' && config.admin?.autoLogin.prefillOnly;
|
|
62
|
+
const prefillUsername = prefillAutoLogin && typeof config.admin?.autoLogin === 'object' ? config.admin?.autoLogin.username : undefined;
|
|
63
|
+
const prefillEmail = prefillAutoLogin && typeof config.admin?.autoLogin === 'object' ? config.admin?.autoLogin.email : undefined;
|
|
64
|
+
const prefillPassword = prefillAutoLogin && typeof config.admin?.autoLogin === 'object' ? config.admin?.autoLogin.password : undefined;
|
|
65
|
+
const hasUsernamePlugin = checkUsernamePlugin(betterAuthOptions);
|
|
66
|
+
const hasPasskeyPlugin = checkPasskeyPlugin(betterAuthOptions);
|
|
67
|
+
const loginMethods = pluginOptions.admin?.loginMethods ?? [];
|
|
68
|
+
const loginWithUsername = collections?.[userSlug]?.config.auth.loginWithUsername;
|
|
69
|
+
const canLoginWithUsername = (hasUsernamePlugin && loginWithUsername) ?? false;
|
|
70
|
+
return /*#__PURE__*/ _jsxs(MinimalTemplate, {
|
|
71
|
+
className: loginBaseClass,
|
|
72
|
+
children: [
|
|
73
|
+
/*#__PURE__*/ _jsx("div", {
|
|
74
|
+
className: `${loginBaseClass}__brand`,
|
|
75
|
+
children: /*#__PURE__*/ _jsx(Logo, {
|
|
76
|
+
i18n: i18n,
|
|
77
|
+
locale: locale,
|
|
78
|
+
params: params,
|
|
79
|
+
payload: payload,
|
|
80
|
+
permissions: permissions,
|
|
81
|
+
searchParams: searchParams,
|
|
82
|
+
user: user ?? undefined
|
|
83
|
+
})
|
|
84
|
+
}),
|
|
85
|
+
RenderServerComponent({
|
|
86
|
+
Component: beforeLogin,
|
|
87
|
+
importMap: payload.importMap,
|
|
88
|
+
serverProps: {
|
|
89
|
+
i18n,
|
|
90
|
+
locale,
|
|
91
|
+
params,
|
|
92
|
+
payload,
|
|
93
|
+
permissions,
|
|
94
|
+
searchParams,
|
|
95
|
+
user: user ?? undefined
|
|
96
|
+
}
|
|
97
|
+
}),
|
|
98
|
+
/*#__PURE__*/ _jsx(AdminLoginClient, {
|
|
99
|
+
loginWithUsername: canLoginWithUsername,
|
|
100
|
+
hasUsernamePlugin: hasUsernamePlugin,
|
|
101
|
+
loginMethods: loginMethods,
|
|
102
|
+
prefillEmail: prefillEmail,
|
|
103
|
+
prefillPassword: prefillPassword,
|
|
104
|
+
prefillUsername: prefillUsername,
|
|
105
|
+
searchParams: searchParams ?? {}
|
|
106
|
+
}),
|
|
107
|
+
RenderServerComponent({
|
|
108
|
+
Component: filteredAfterLogin,
|
|
109
|
+
importMap: payload.importMap,
|
|
110
|
+
serverProps: {
|
|
111
|
+
i18n,
|
|
112
|
+
locale,
|
|
113
|
+
params,
|
|
114
|
+
payload,
|
|
115
|
+
permissions,
|
|
116
|
+
searchParams,
|
|
117
|
+
user: user ?? undefined
|
|
118
|
+
}
|
|
119
|
+
})
|
|
120
|
+
]
|
|
121
|
+
});
|
|
122
|
+
};
|
|
123
|
+
export default AdminLogin;
|
|
124
|
+
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9hZG1pbi1sb2dpbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQWRtaW5Mb2dpbkNsaWVudCB9IGZyb20gJy4vY2xpZW50J1xuaW1wb3J0IHsgcmVkaXJlY3QgfSBmcm9tICduZXh0L25hdmlnYXRpb24nXG5pbXBvcnQgeyBMb2dvIH0gZnJvbSAnQC9zaGFyZWQvY29tcG9uZW50cy9sb2dvJ1xuaW1wb3J0IHsgZ2V0U2FmZVJlZGlyZWN0IH0gZnJvbSAnQC9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC91dGlscy9nZXQtc2FmZS1yZWRpcmVjdCdcbmltcG9ydCB7IE1pbmltYWxUZW1wbGF0ZSB9IGZyb20gJ0BwYXlsb2FkY21zL25leHQvdGVtcGxhdGVzJ1xuaW1wb3J0IHsgY2hlY2tQYXNza2V5UGx1Z2luIH0gZnJvbSAnQC9iZXR0ZXItYXV0aC9wbHVnaW4vaGVscGVycy9jaGVjay1wYXNza2V5LXBsdWdpbidcbmltcG9ydCB7IGNoZWNrVXNlcm5hbWVQbHVnaW4gfSBmcm9tICdAL2JldHRlci1hdXRoL3BsdWdpbi9oZWxwZXJzL2NoZWNrLXVzZXJuYW1lLXBsdWdpbidcbmltcG9ydCB7IFJlbmRlclNlcnZlckNvbXBvbmVudCB9IGZyb20gJ0BwYXlsb2FkY21zL3VpL2VsZW1lbnRzL1JlbmRlclNlcnZlckNvbXBvbmVudCdcbmltcG9ydCB7IGFkbWluUm91dGVzLCBiYXNlQ29sbGVjdGlvblNsdWdzLCBkZWZhdWx0cyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL2NvbnN0YW50cydcblxuaW1wb3J0IHsgdHlwZSBBZG1pblZpZXdTZXJ2ZXJQcm9wcywgdHlwZSBTZXJ2ZXJQcm9wcyB9IGZyb20gJ3BheWxvYWQnXG5pbXBvcnQgdHlwZSB7IEJldHRlckF1dGhQbHVnaW5PcHRpb25zLCBTYW5pdGl6ZWRCZXR0ZXJBdXRoT3B0aW9ucyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL3R5cGVzJ1xuXG5leHBvcnQgY29uc3QgbG9naW5CYXNlQ2xhc3MgPSAnbG9naW4nXG5cbnR5cGUgQWRtaW5Mb2dpblByb3BzID0gQWRtaW5WaWV3U2VydmVyUHJvcHMgJiB7XG4gIHBsdWdpbk9wdGlvbnM6IEJldHRlckF1dGhQbHVnaW5PcHRpb25zXG4gIGJldHRlckF1dGhPcHRpb25zOiBTYW5pdGl6ZWRCZXR0ZXJBdXRoT3B0aW9uc1xufVxuXG5jb25zdCBBZG1pbkxvZ2luOiBSZWFjdC5GQzxBZG1pbkxvZ2luUHJvcHM+ID0gYXN5bmMgKHtcbiAgaW5pdFBhZ2VSZXN1bHQsXG4gIHBhcmFtcyxcbiAgc2VhcmNoUGFyYW1zLFxuICBwbHVnaW5PcHRpb25zLFxuICBiZXR0ZXJBdXRoT3B0aW9uc1xufTogQWRtaW5Mb2dpblByb3BzKSA9PiB7XG4gIGNvbnN0IHsgbG9jYWxlLCBwZXJtaXNzaW9ucywgcmVxIH0gPSBpbml0UGFnZVJlc3VsdFxuICBjb25zdCB7XG4gICAgaTE4bixcbiAgICBwYXlsb2FkOiB7IGNvbmZpZywgY29sbGVjdGlvbnMgfSxcbiAgICBwYXlsb2FkLFxuICAgIHVzZXJcbiAgfSA9IHJlcVxuXG4gIGNvbnN0IHtcbiAgICBhZG1pbjogeyBjb21wb25lbnRzOiB7IGFmdGVyTG9naW4sIGJlZm9yZUxvZ2luIH0gPSB7fSwgdXNlcjogdXNlclNsdWcgfSxcbiAgICByb3V0ZXM6IHsgYWRtaW46IGFkbWluUm91dGUgfVxuICB9ID0gY29uZmlnXG5cbiAgY29uc3QgaW52aXRhdGlvbnNDb2xsZWN0aW9uID0gcGx1Z2luT3B0aW9ucy5hZG1pbkludml0YXRpb25zPy5zbHVnID8/IGJhc2VDb2xsZWN0aW9uU2x1Z3MuYWRtaW5JbnZpdGF0aW9uc1xuICBjb25zdCBhZG1pblJvbGUgPSBwbHVnaW5PcHRpb25zLnVzZXJzPy5kZWZhdWx0QWRtaW5Sb2xlID8/IGRlZmF1bHRzLmFkbWluUm9sZVxuICBjb25zdCByZWRpcmVjdFVybCA9IGdldFNhZmVSZWRpcmVjdChzZWFyY2hQYXJhbXM/LnJlZGlyZWN0ID8/ICcnLCBhZG1pblJvdXRlKVxuXG4gIGlmICh1c2VyKSB7XG4gICAgcmVkaXJlY3QocmVkaXJlY3RVcmwpXG4gIH1cblxuICBjb25zdCBhZG1pbkNvdW50ID0gYXdhaXQgcmVxLnBheWxvYWQuY291bnQoe1xuICAgIGNvbGxlY3Rpb246IHVzZXJTbHVnLFxuICAgIHdoZXJlOiB7XG4gICAgICByb2xlOiB7XG4gICAgICAgIGVxdWFsczogYWRtaW5Sb2xlXG4gICAgICB9XG4gICAgfVxuICB9KVxuXG4gIGlmIChhZG1pbkNvdW50LnRvdGFsRG9jcyA9PT0gMCkge1xuICAgIC8vIENoZWNrIGlmIHdlIGFscmVhZHkgaGF2ZSBhbiBhZG1pbiBpbnZpdGF0aW9uXG4gICAgY29uc3QgZXhpc3RpbmdJbnZpdGF0aW9ucyA9IGF3YWl0IHJlcS5wYXlsb2FkLmZpbmQoe1xuICAgICAgY29sbGVjdGlvbjogaW52aXRhdGlvbnNDb2xsZWN0aW9uLFxuICAgICAgd2hlcmU6IHtcbiAgICAgICAgcm9sZToge1xuICAgICAgICAgIGVxdWFsczogYWRtaW5Sb2xlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KVxuXG4gICAgbGV0IHRva2VuXG5cbiAgICBpZiAoZXhpc3RpbmdJbnZpdGF0aW9ucy50b3RhbERvY3MgPiAwKSB7XG4gICAgICAvLyBVc2UgZXhpc3RpbmcgdG9rZW5cbiAgICAgIHRva2VuID0gZXhpc3RpbmdJbnZpdGF0aW9ucy5kb2NzWzBdLnRva2VuXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEdlbmVyYXRlIGEgbmV3IHNlY3VyZSBpbnZpdGUgdG9rZW5cbiAgICAgIHRva2VuID0gY3J5cHRvLnJhbmRvbVVVSUQoKVxuICAgICAgYXdhaXQgcmVxLnBheWxvYWQuY3JlYXRlKHtcbiAgICAgICAgY29sbGVjdGlvbjogaW52aXRhdGlvbnNDb2xsZWN0aW9uLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcm9sZTogYWRtaW5Sb2xlLFxuICAgICAgICAgIHRva2VuXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuXG4gICAgcmVkaXJlY3QoYCR7YWRtaW5Sb3V0ZX0ke2FkbWluUm91dGVzLmFkbWluU2lnbnVwfT90b2tlbj0ke3Rva2VufWApXG4gIH1cblxuICAvLyBGaWx0ZXIgb3V0IHRoZSBmaXJzdCBjb21wb25lbnQgZnJvbSBhZnRlckxvZ2luIGFycmF5IG9yIHNldCB0byB1bmRlZmluZWQgaWYgbm90IG1vcmUgdGhhbiAxXG4gIC8vIFRoaXMgaXMgYmVjYXVzZSBvZiB0aGUgY3VzdG9tIGxvZ2luIHJlZGlyZWN0IGNvbXBvbmVudCwgd2UgZG9uJ3Qgd2FudCBhbiBpbmZpbml0ZSBsb29wXG4gIGNvbnN0IGZpbHRlcmVkQWZ0ZXJMb2dpbiA9IEFycmF5LmlzQXJyYXkoYWZ0ZXJMb2dpbikgJiYgYWZ0ZXJMb2dpbi5sZW5ndGggPiAxID8gYWZ0ZXJMb2dpbi5zbGljZSgxKSA6IHVuZGVmaW5lZFxuICBjb25zdCBwcmVmaWxsQXV0b0xvZ2luID0gdHlwZW9mIGNvbmZpZy5hZG1pbj8uYXV0b0xvZ2luID09PSAnb2JqZWN0JyAmJiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi5wcmVmaWxsT25seVxuICBjb25zdCBwcmVmaWxsVXNlcm5hbWUgPSBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gJ29iamVjdCcgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi51c2VybmFtZSA6IHVuZGVmaW5lZFxuICBjb25zdCBwcmVmaWxsRW1haWwgPSBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gJ29iamVjdCcgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi5lbWFpbCA6IHVuZGVmaW5lZFxuICBjb25zdCBwcmVmaWxsUGFzc3dvcmQgPSBwcmVmaWxsQXV0b0xvZ2luICYmIHR5cGVvZiBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbiA9PT0gJ29iamVjdCcgPyBjb25maWcuYWRtaW4/LmF1dG9Mb2dpbi5wYXNzd29yZCA6IHVuZGVmaW5lZFxuICBjb25zdCBoYXNVc2VybmFtZVBsdWdpbiA9IGNoZWNrVXNlcm5hbWVQbHVnaW4oYmV0dGVyQXV0aE9wdGlvbnMpXG4gIGNvbnN0IGhhc1Bhc3NrZXlQbHVnaW4gPSBjaGVja1Bhc3NrZXlQbHVnaW4oYmV0dGVyQXV0aE9wdGlvbnMpXG4gIGNvbnN0IGxvZ2luTWV0aG9kcyA9IHBsdWdpbk9wdGlvbnMuYWRtaW4/LmxvZ2luTWV0aG9kcyA/PyBbXVxuICBjb25zdCBsb2dpbldpdGhVc2VybmFtZSA9IGNvbGxlY3Rpb25zPy5bdXNlclNsdWddPy5jb25maWcuYXV0aC5sb2dpbldpdGhVc2VybmFtZVxuICBjb25zdCBjYW5Mb2dpbldpdGhVc2VybmFtZSA9IChoYXNVc2VybmFtZVBsdWdpbiAmJiBsb2dpbldpdGhVc2VybmFtZSkgPz8gZmFsc2VcblxuICByZXR1cm4gKFxuICAgIDxNaW5pbWFsVGVtcGxhdGUgY2xhc3NOYW1lPXtsb2dpbkJhc2VDbGFzc30+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17YCR7bG9naW5CYXNlQ2xhc3N9X19icmFuZGB9PlxuICAgICAgICA8TG9nb1xuICAgICAgICAgIGkxOG49e2kxOG59XG4gICAgICAgICAgbG9jYWxlPXtsb2NhbGV9XG4gICAgICAgICAgcGFyYW1zPXtwYXJhbXN9XG4gICAgICAgICAgcGF5bG9hZD17cGF5bG9hZH1cbiAgICAgICAgICBwZXJtaXNzaW9ucz17cGVybWlzc2lvbnN9XG4gICAgICAgICAgc2VhcmNoUGFyYW1zPXtzZWFyY2hQYXJhbXN9XG4gICAgICAgICAgdXNlcj17dXNlciA/PyB1bmRlZmluZWR9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIHtSZW5kZXJTZXJ2ZXJDb21wb25lbnQoe1xuICAgICAgICBDb21wb25lbnQ6IGJlZm9yZUxvZ2luLFxuICAgICAgICBpbXBvcnRNYXA6IHBheWxvYWQuaW1wb3J0TWFwLFxuICAgICAgICBzZXJ2ZXJQcm9wczoge1xuICAgICAgICAgIGkxOG4sXG4gICAgICAgICAgbG9jYWxlLFxuICAgICAgICAgIHBhcmFtcyxcbiAgICAgICAgICBwYXlsb2FkLFxuICAgICAgICAgIHBlcm1pc3Npb25zLFxuICAgICAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICAgICAgICB1c2VyOiB1c2VyID8/IHVuZGVmaW5lZFxuICAgICAgICB9IHNhdGlzZmllcyBTZXJ2ZXJQcm9wc1xuICAgICAgfSl9XG4gICAgICA8QWRtaW5Mb2dpbkNsaWVudFxuICAgICAgICBsb2dpbldpdGhVc2VybmFtZT17Y2FuTG9naW5XaXRoVXNlcm5hbWV9XG4gICAgICAgIGhhc1VzZXJuYW1lUGx1Z2luPXtoYXNVc2VybmFtZVBsdWdpbn1cbiAgICAgICAgbG9naW5NZXRob2RzPXtsb2dpbk1ldGhvZHN9XG4gICAgICAgIHByZWZpbGxFbWFpbD17cHJlZmlsbEVtYWlsfVxuICAgICAgICBwcmVmaWxsUGFzc3dvcmQ9e3ByZWZpbGxQYXNzd29yZH1cbiAgICAgICAgcHJlZmlsbFVzZXJuYW1lPXtwcmVmaWxsVXNlcm5hbWV9XG4gICAgICAgIHNlYXJjaFBhcmFtcz17c2VhcmNoUGFyYW1zID8/IHt9fVxuICAgICAgLz5cbiAgICAgIHtSZW5kZXJTZXJ2ZXJDb21wb25lbnQoe1xuICAgICAgICBDb21wb25lbnQ6IGZpbHRlcmVkQWZ0ZXJMb2dpbixcbiAgICAgICAgaW1wb3J0TWFwOiBwYXlsb2FkLmltcG9ydE1hcCxcbiAgICAgICAgc2VydmVyUHJvcHM6IHtcbiAgICAgICAgICBpMThuLFxuICAgICAgICAgIGxvY2FsZSxcbiAgICAgICAgICBwYXJhbXMsXG4gICAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgICBwZXJtaXNzaW9ucyxcbiAgICAgICAgICBzZWFyY2hQYXJhbXMsXG4gICAgICAgICAgdXNlcjogdXNlciA/PyB1bmRlZmluZWRcbiAgICAgICAgfSBzYXRpc2ZpZXMgU2VydmVyUHJvcHNcbiAgICAgIH0pfVxuICAgIDwvTWluaW1hbFRlbXBsYXRlPlxuICApXG59XG5cbmV4cG9ydCBkZWZhdWx0IEFkbWluTG9naW5cbiJdLCJuYW1lcyI6WyJSZWFjdCIsIkFkbWluTG9naW5DbGllbnQiLCJyZWRpcmVjdCIsIkxvZ28iLCJnZXRTYWZlUmVkaXJlY3QiLCJNaW5pbWFsVGVtcGxhdGUiLCJjaGVja1Bhc3NrZXlQbHVnaW4iLCJjaGVja1VzZXJuYW1lUGx1Z2luIiwiUmVuZGVyU2VydmVyQ29tcG9uZW50IiwiYWRtaW5Sb3V0ZXMiLCJiYXNlQ29sbGVjdGlvblNsdWdzIiwiZGVmYXVsdHMiLCJsb2dpbkJhc2VDbGFzcyIsIkFkbWluTG9naW4iLCJpbml0UGFnZVJlc3VsdCIsInBhcmFtcyIsInNlYXJjaFBhcmFtcyIsInBsdWdpbk9wdGlvbnMiLCJiZXR0ZXJBdXRoT3B0aW9ucyIsImxvY2FsZSIsInBlcm1pc3Npb25zIiwicmVxIiwiaTE4biIsInBheWxvYWQiLCJjb25maWciLCJjb2xsZWN0aW9ucyIsInVzZXIiLCJhZG1pbiIsImNvbXBvbmVudHMiLCJhZnRlckxvZ2luIiwiYmVmb3JlTG9naW4iLCJ1c2VyU2x1ZyIsInJvdXRlcyIsImFkbWluUm91dGUiLCJpbnZpdGF0aW9uc0NvbGxlY3Rpb24iLCJhZG1pbkludml0YXRpb25zIiwic2x1ZyIsImFkbWluUm9sZSIsInVzZXJzIiwiZGVmYXVsdEFkbWluUm9sZSIsInJlZGlyZWN0VXJsIiwiYWRtaW5Db3VudCIsImNvdW50IiwiY29sbGVjdGlvbiIsIndoZXJlIiwicm9sZSIsImVxdWFscyIsInRvdGFsRG9jcyIsImV4aXN0aW5nSW52aXRhdGlvbnMiLCJmaW5kIiwidG9rZW4iLCJkb2NzIiwiY3J5cHRvIiwicmFuZG9tVVVJRCIsImNyZWF0ZSIsImRhdGEiLCJhZG1pblNpZ251cCIsImZpbHRlcmVkQWZ0ZXJMb2dpbiIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsInNsaWNlIiwidW5kZWZpbmVkIiwicHJlZmlsbEF1dG9Mb2dpbiIsImF1dG9Mb2dpbiIsInByZWZpbGxPbmx5IiwicHJlZmlsbFVzZXJuYW1lIiwidXNlcm5hbWUiLCJwcmVmaWxsRW1haWwiLCJlbWFpbCIsInByZWZpbGxQYXNzd29yZCIsInBhc3N3b3JkIiwiaGFzVXNlcm5hbWVQbHVnaW4iLCJoYXNQYXNza2V5UGx1Z2luIiwibG9naW5NZXRob2RzIiwibG9naW5XaXRoVXNlcm5hbWUiLCJhdXRoIiwiY2FuTG9naW5XaXRoVXNlcm5hbWUiLCJjbGFzc05hbWUiLCJkaXYiLCJDb21wb25lbnQiLCJpbXBvcnRNYXAiLCJzZXJ2ZXJQcm9wcyJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU9BLFdBQVcsUUFBTztBQUN6QixTQUFTQyxnQkFBZ0IsUUFBUSxXQUFVO0FBQzNDLFNBQVNDLFFBQVEsUUFBUSxrQkFBaUI7QUFDMUMsU0FBU0MsSUFBSSxRQUFRLHdDQUEwQjtBQUMvQyxTQUFTQyxlQUFlLFFBQVEsZ0NBQXNEO0FBQ3RGLFNBQVNDLGVBQWUsUUFBUSw2QkFBNEI7QUFDNUQsU0FBU0Msa0JBQWtCLFFBQVEsd0NBQW1EO0FBQ3RGLFNBQVNDLG1CQUFtQixRQUFRLHlDQUFvRDtBQUN4RixTQUFTQyxxQkFBcUIsUUFBUSxnREFBK0M7QUFDckYsU0FBU0MsV0FBVyxFQUFFQyxtQkFBbUIsRUFBRUMsUUFBUSxRQUFRLHFCQUFnQztBQUszRixPQUFPLE1BQU1DLGlCQUFpQixRQUFPO0FBT3JDLE1BQU1DLGFBQXdDLE9BQU8sRUFDbkRDLGNBQWMsRUFDZEMsTUFBTSxFQUNOQyxZQUFZLEVBQ1pDLGFBQWEsRUFDYkMsaUJBQWlCLEVBQ0Q7SUFDaEIsTUFBTSxFQUFFQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsR0FBRyxFQUFFLEdBQUdQO0lBQ3JDLE1BQU0sRUFDSlEsSUFBSSxFQUNKQyxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsV0FBVyxFQUFFLEVBQ2hDRixPQUFPLEVBQ1BHLElBQUksRUFDTCxHQUFHTDtJQUVKLE1BQU0sRUFDSk0sT0FBTyxF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
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { LoginMethod } from '../../../types';
|
|
3
|
+
import type { LoginWithUsernameOptions } from 'payload';
|
|
4
|
+
type AdminSignupClientProps = {
|
|
5
|
+
adminInviteToken: string;
|
|
6
|
+
userSlug: string;
|
|
7
|
+
loginMethods: LoginMethod[];
|
|
8
|
+
searchParams: {
|
|
9
|
+
[key: string]: string | string[] | undefined;
|
|
10
|
+
};
|
|
11
|
+
loginWithUsername: false | LoginWithUsernameOptions;
|
|
12
|
+
};
|
|
13
|
+
export declare const AdminSignupClient: React.FC<AdminSignupClientProps>;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/admin-signup/client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAIjD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AASvD,KAAK,sBAAsB,GAAG;IAC5B,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;IAC9D,iBAAiB,EAAE,KAAK,GAAG,wBAAwB,CAAA;CACpD,CAAA;AAwHD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAwC9D,CAAA"}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useConfig, toast, useTranslation } from "@payloadcms/ui";
|
|
4
|
+
import React, { useState } from "react";
|
|
5
|
+
import { AdminSocialProviderButtons } from "../../components/social-provider-buttons";
|
|
6
|
+
import { getSafeRedirect } from "../../utils/get-safe-redirect";
|
|
7
|
+
import { adminEndpoints } from "../../../constants";
|
|
8
|
+
import { useAppForm } from "../../../../../shared/form";
|
|
9
|
+
import { Form, FormInputWrap } from "../../../../../shared/form/ui";
|
|
10
|
+
import { FormHeader } from "../../../../../shared/form/ui/header";
|
|
11
|
+
import { createSignupSchema } from "../../../../../shared/form/validation";
|
|
12
|
+
import { tryCatch } from "../../../../../shared/utils/try-catch";
|
|
13
|
+
const baseClass = 'admin-signup';
|
|
14
|
+
const SignupForm = ({ searchParams, loginWithUsername, requireEmailVerification, setRequireEmailVerification, adminInviteToken })=>{
|
|
15
|
+
const { config: { admin: { user: userSlug }, routes: { admin: adminRoute, api: apiRoute }, serverURL } } = useConfig();
|
|
16
|
+
const { t } = useTranslation();
|
|
17
|
+
const redirectUrl = getSafeRedirect(searchParams?.redirect, adminRoute);
|
|
18
|
+
const requireUsername = Boolean(loginWithUsername && typeof loginWithUsername === 'object' && loginWithUsername.requireUsername);
|
|
19
|
+
const signupSchema = createSignupSchema({
|
|
20
|
+
t,
|
|
21
|
+
requireUsername
|
|
22
|
+
});
|
|
23
|
+
const form = useAppForm({
|
|
24
|
+
defaultValues: {
|
|
25
|
+
email: '',
|
|
26
|
+
password: '',
|
|
27
|
+
confirmPassword: '',
|
|
28
|
+
...loginWithUsername ? {
|
|
29
|
+
username: ''
|
|
30
|
+
} : {}
|
|
31
|
+
},
|
|
32
|
+
onSubmit: async ({ value })=>{
|
|
33
|
+
const { email, username, password } = value;
|
|
34
|
+
const { data, error } = await tryCatch(fetch(`${serverURL}${apiRoute}/${userSlug}${adminEndpoints.signup}?token=${adminInviteToken}&redirect=${redirectUrl}`, {
|
|
35
|
+
method: 'POST',
|
|
36
|
+
headers: {
|
|
37
|
+
'Content-Type': 'application/json'
|
|
38
|
+
},
|
|
39
|
+
body: JSON.stringify({
|
|
40
|
+
email,
|
|
41
|
+
username,
|
|
42
|
+
password,
|
|
43
|
+
adminInviteToken
|
|
44
|
+
})
|
|
45
|
+
}).then((res)=>res.json()));
|
|
46
|
+
if (error) {
|
|
47
|
+
toast.error(error.message);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (data.requireEmailVerification) {
|
|
51
|
+
setRequireEmailVerification(true);
|
|
52
|
+
toast.success(data.message);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
toast.success(data.message);
|
|
56
|
+
window.location.href = redirectUrl;
|
|
57
|
+
},
|
|
58
|
+
validators: {
|
|
59
|
+
onSubmit: signupSchema
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
if (requireEmailVerification) {
|
|
63
|
+
return /*#__PURE__*/ _jsx(FormHeader, {
|
|
64
|
+
heading: "Please verify your email",
|
|
65
|
+
description: 'Check your email for a verification link.',
|
|
66
|
+
style: {
|
|
67
|
+
textAlign: 'center'
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
return /*#__PURE__*/ _jsxs(Form, {
|
|
72
|
+
className: baseClass,
|
|
73
|
+
onSubmit: (e)=>{
|
|
74
|
+
e.preventDefault();
|
|
75
|
+
void form.handleSubmit();
|
|
76
|
+
},
|
|
77
|
+
children: [
|
|
78
|
+
/*#__PURE__*/ _jsxs(FormInputWrap, {
|
|
79
|
+
className: "login__form",
|
|
80
|
+
children: [
|
|
81
|
+
/*#__PURE__*/ _jsx(form.AppField, {
|
|
82
|
+
name: "email",
|
|
83
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
84
|
+
type: "email",
|
|
85
|
+
className: "email",
|
|
86
|
+
autoComplete: "email",
|
|
87
|
+
label: t('general:email'),
|
|
88
|
+
required: true
|
|
89
|
+
})
|
|
90
|
+
}),
|
|
91
|
+
loginWithUsername && /*#__PURE__*/ _jsx(form.AppField, {
|
|
92
|
+
name: "username",
|
|
93
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
94
|
+
type: "name",
|
|
95
|
+
className: "text",
|
|
96
|
+
autoComplete: "username",
|
|
97
|
+
label: t('authentication:username'),
|
|
98
|
+
required: requireUsername
|
|
99
|
+
})
|
|
100
|
+
}),
|
|
101
|
+
/*#__PURE__*/ _jsx(form.AppField, {
|
|
102
|
+
name: "password",
|
|
103
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
104
|
+
type: "password",
|
|
105
|
+
className: "password",
|
|
106
|
+
label: t('authentication:newPassword'),
|
|
107
|
+
required: true
|
|
108
|
+
})
|
|
109
|
+
}),
|
|
110
|
+
/*#__PURE__*/ _jsx(form.AppField, {
|
|
111
|
+
name: "confirmPassword",
|
|
112
|
+
children: (field)=>/*#__PURE__*/ _jsx(field.TextField, {
|
|
113
|
+
type: "password",
|
|
114
|
+
className: "password",
|
|
115
|
+
label: t('authentication:confirmPassword'),
|
|
116
|
+
required: true
|
|
117
|
+
})
|
|
118
|
+
})
|
|
119
|
+
]
|
|
120
|
+
}),
|
|
121
|
+
/*#__PURE__*/ _jsx(form.AppForm, {
|
|
122
|
+
children: /*#__PURE__*/ _jsx(form.Submit, {
|
|
123
|
+
label: t('general:create'),
|
|
124
|
+
loadingLabel: t('general:loading')
|
|
125
|
+
})
|
|
126
|
+
})
|
|
127
|
+
]
|
|
128
|
+
});
|
|
129
|
+
};
|
|
130
|
+
export const AdminSignupClient = ({ adminInviteToken, userSlug, searchParams, loginMethods, loginWithUsername })=>{
|
|
131
|
+
const { config: { routes: { admin: adminRoute, api: apiRoute }, serverURL } } = useConfig();
|
|
132
|
+
const [requireEmailVerification, setRequireEmailVerification] = useState(false);
|
|
133
|
+
const redirectUrl = getSafeRedirect(searchParams?.redirect, adminRoute);
|
|
134
|
+
const setAdminRoleCallbackURL = `${serverURL}${apiRoute}/${userSlug}${adminEndpoints.setAdminRole}?token=${adminInviteToken}&redirect=${redirectUrl}`;
|
|
135
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
136
|
+
children: [
|
|
137
|
+
loginMethods.includes('emailPassword') && /*#__PURE__*/ _jsx(SignupForm, {
|
|
138
|
+
adminInviteToken: adminInviteToken,
|
|
139
|
+
searchParams: searchParams,
|
|
140
|
+
loginWithUsername: loginWithUsername,
|
|
141
|
+
requireEmailVerification: requireEmailVerification,
|
|
142
|
+
setRequireEmailVerification: setRequireEmailVerification
|
|
143
|
+
}),
|
|
144
|
+
!requireEmailVerification && /*#__PURE__*/ _jsx(AdminSocialProviderButtons, {
|
|
145
|
+
isSignup: true,
|
|
146
|
+
loginMethods: loginMethods,
|
|
147
|
+
adminInviteToken: adminInviteToken,
|
|
148
|
+
setLoading: ()=>{},
|
|
149
|
+
redirectUrl: redirectUrl,
|
|
150
|
+
newUserCallbackURL: setAdminRoleCallbackURL
|
|
151
|
+
})
|
|
152
|
+
]
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC92aWV3cy9hZG1pbi1zaWdudXAvY2xpZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHsgdXNlQ29uZmlnLCB0b2FzdCwgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdAcGF5bG9hZGNtcy91aSdcbmltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHR5cGUgeyBMb2dpbk1ldGhvZCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgQWRtaW5Tb2NpYWxQcm92aWRlckJ1dHRvbnMgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3NvY2lhbC1wcm92aWRlci1idXR0b25zJ1xuaW1wb3J0IHsgZ2V0U2FmZVJlZGlyZWN0IH0gZnJvbSAnLi4vLi4vdXRpbHMvZ2V0LXNhZmUtcmVkaXJlY3QnXG5pbXBvcnQgeyBhZG1pbkVuZHBvaW50cyB9IGZyb20gJ0AvYmV0dGVyLWF1dGgvcGx1Z2luL2NvbnN0YW50cydcbmltcG9ydCB0eXBlIHsgTG9naW5XaXRoVXNlcm5hbWVPcHRpb25zIH0gZnJvbSAncGF5bG9hZCdcbmltcG9ydCB7IHVzZUFwcEZvcm0gfSBmcm9tICdAL3NoYXJlZC9mb3JtJ1xuaW1wb3J0IHsgRm9ybSwgRm9ybUlucHV0V3JhcCB9IGZyb20gJ0Avc2hhcmVkL2Zvcm0vdWknXG5pbXBvcnQgeyBGb3JtSGVhZGVyIH0gZnJvbSAnQC9zaGFyZWQvZm9ybS91aS9oZWFkZXInXG5pbXBvcnQgeyBjcmVhdGVTaWdudXBTY2hlbWEgfSBmcm9tICdAL3NoYXJlZC9mb3JtL3ZhbGlkYXRpb24nXG5pbXBvcnQgeyB1c2VybmFtZUNsaWVudCB9IGZyb20gJ2JldHRlci1hdXRoL2NsaWVudC9wbHVnaW5zJ1xuaW1wb3J0IHsgY3JlYXRlQXV0aENsaWVudCB9IGZyb20gJ2JldHRlci1hdXRoL3JlYWN0J1xuaW1wb3J0IHsgdHJ5Q2F0Y2ggfSBmcm9tICdAL3NoYXJlZC91dGlscy90cnktY2F0Y2gnXG5cbnR5cGUgQWRtaW5TaWdudXBDbGllbnRQcm9wcyA9IHtcbiAgYWRtaW5JbnZpdGVUb2tlbjogc3RyaW5nXG4gIHVzZXJTbHVnOiBzdHJpbmdcbiAgbG9naW5NZXRob2RzOiBMb2dpbk1ldGhvZFtdXG4gIHNlYXJjaFBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCB9XG4gIGxvZ2luV2l0aFVzZXJuYW1lOiBmYWxzZSB8IExvZ2luV2l0aFVzZXJuYW1lT3B0aW9uc1xufVxuXG5jb25zdCBiYXNlQ2xhc3MgPSAnYWRtaW4tc2lnbnVwJ1xuXG50eXBlIFNpZ251cEZvcm1Qcm9wcyA9IHtcbiAgYWRtaW5JbnZpdGVUb2tlbjogc3RyaW5nXG4gIHNlYXJjaFBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCB9XG4gIGxvZ2luV2l0aFVzZXJuYW1lOiBmYWxzZSB8IExvZ2luV2l0aFVzZXJuYW1lT3B0aW9uc1xuICByZXF1aXJlRW1haWxWZXJpZmljYXRpb246IGJvb2xlYW5cbiAgc2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uOiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxib29sZWFuPj5cbn1cblxuY29uc3QgU2lnbnVwRm9ybTogUmVhY3QuRkM8U2lnbnVwRm9ybVByb3BzPiA9ICh7XG4gIHNlYXJjaFBhcmFtcyxcbiAgbG9naW5XaXRoVXNlcm5hbWUsXG4gIHJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbixcbiAgc2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uLFxuICBhZG1pbkludml0ZVRva2VuXG59KSA9PiB7XG4gIGNvbnN0IHtcbiAgICBjb25maWc6IHtcbiAgICAgIGFkbWluOiB7IHVzZXI6IHVzZXJTbHVnIH0sXG4gICAgICByb3V0ZXM6IHsgYWRtaW46IGFkbWluUm91dGUsIGFwaTogYXBpUm91dGUgfSxcbiAgICAgIHNlcnZlclVSTFxuICAgIH1cbiAgfSA9IHVzZUNvbmZpZygpXG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oKVxuICBjb25zdCByZWRpcmVjdFVybCA9IGdldFNhZmVSZWRpcmVjdChzZWFyY2hQYXJhbXM/LnJlZGlyZWN0IGFzIHN0cmluZywgYWRtaW5Sb3V0ZSlcblxuICBjb25zdCByZXF1aXJlVXNlcm5hbWUgPSBCb29sZWFuKGxvZ2luV2l0aFVzZXJuYW1lICYmIHR5cGVvZiBsb2dpbldpdGhVc2VybmFtZSA9PT0gJ29iamVjdCcgJiYgbG9naW5XaXRoVXNlcm5hbWUucmVxdWlyZVVzZXJuYW1lKVxuXG4gIGNvbnN0IHNpZ251cFNjaGVtYSA9IGNyZWF0ZVNpZ251cFNjaGVtYSh7IHQsIHJlcXVpcmVVc2VybmFtZSB9KVxuXG4gIGNvbnN0IGZvcm0gPSB1c2VBcHBGb3JtKHtcbiAgICBkZWZhdWx0VmFsdWVzOiB7XG4gICAgICBlbWFpbDogJycsXG4gICAgICBwYXNzd29yZDogJycsXG4gICAgICBjb25maXJtUGFzc3dvcmQ6ICcnLFxuICAgICAgLi4uKGxvZ2luV2l0aFVzZXJuYW1lID8geyB1c2VybmFtZTogJycgfSA6IHt9KVxuICAgIH0sXG4gICAgb25TdWJtaXQ6IGFzeW5jICh7IHZhbHVlIH0pID0+IHtcbiAgICAgIGNvbnN0IHsgZW1haWwsIHVzZXJuYW1lLCBwYXNzd29yZCB9ID0gdmFsdWVcbiAgICAgIGNvbnN0IHsgZGF0YSwgZXJyb3IgfSA9IGF3YWl0IHRyeUNhdGNoKFxuICAgICAgICBmZXRjaChgJHtzZXJ2ZXJVUkx9JHthcGlSb3V0ZX0vJHt1c2VyU2x1Z30ke2FkbWluRW5kcG9pbnRzLnNpZ251cH0/dG9rZW49JHthZG1pbkludml0ZVRva2VufSZyZWRpcmVjdD0ke3JlZGlyZWN0VXJsfWAsIHtcbiAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgICAgICBoZWFkZXJzOiB7ICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicgfSxcbiAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7IGVtYWlsLCB1c2VybmFtZSwgcGFzc3dvcmQsIGFkbWluSW52aXRlVG9rZW4gfSlcbiAgICAgICAgfSkudGhlbigocmVzKSA9PiByZXMuanNvbigpKVxuICAgICAgKVxuXG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgdG9hc3QuZXJyb3IoZXJyb3IubWVzc2FnZSlcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoZGF0YS5yZXF1aXJlRW1haWxWZXJpZmljYXRpb24pIHtcbiAgICAgICAgc2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uKHRydWUpXG4gICAgICAgIHRvYXN0LnN1Y2Nlc3MoZGF0YS5tZXNzYWdlKVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0b2FzdC5zdWNjZXNzKGRhdGEubWVzc2FnZSlcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gcmVkaXJlY3RVcmxcbiAgICB9LFxuICAgIHZhbGlkYXRvcnM6IHtcbiAgICAgIG9uU3VibWl0OiBzaWdudXBTY2hlbWFcbiAgICB9XG4gIH0pXG5cbiAgaWYgKHJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbikge1xuICAgIHJldHVybiAoXG4gICAgICA8Rm9ybUhlYWRlclxuICAgICAgICBoZWFkaW5nPVwiUGxlYXNlIHZlcmlmeSB5b3VyIGVtYWlsXCJcbiAgICAgICAgZGVzY3JpcHRpb249eydDaGVjayB5b3VyIGVtYWlsIGZvciBhIHZlcmlmaWNhdGlvbiBsaW5rLid9XG4gICAgICAgIHN0eWxlPXt7IHRleHRBbGlnbjogJ2NlbnRlcicgfX1cbiAgICAgIC8+XG4gICAgKVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Rm9ybVxuICAgICAgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9XG4gICAgICBvblN1Ym1pdD17KGUpID0+IHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICAgIHZvaWQgZm9ybS5oYW5kbGVTdWJtaXQoKVxuICAgICAgfX0+XG4gICAgICA8Rm9ybUlucHV0V3JhcCBjbGFzc05hbWU9XCJsb2dpbl9fZm9ybVwiPlxuICAgICAgICA8Zm9ybS5BcHBGaWVsZFxuICAgICAgICAgIG5hbWU9XCJlbWFpbFwiXG4gICAgICAgICAgY2hpbGRyZW49eyhmaWVsZCkgPT4gPGZpZWxkLlRleHRGaWVsZCB0eXBlPVwiZW1haWxcIiBjbGFzc05hbWU9XCJlbWFpbFwiIGF1dG9Db21wbGV0ZT1cImVtYWlsXCIgbGFiZWw9e3QoJ2dlbmVyYWw6ZW1haWwnKX0gcmVxdWlyZWQgLz59XG4gICAgICAgIC8+XG4gICAgICAgIHtsb2dpbldpdGhVc2VybmFtZSAmJiAoXG4gICAgICAgICAgPGZvcm0uQXBwRmllbGRcbiAgICAgICAgICAgIG5hbWU9XCJ1c2VybmFtZVwiXG4gICAgICAgICAgICBjaGlsZHJlbj17KGZpZWxkKSA9PiAoXG4gICAgICAgICAgICAgIDxmaWVsZC5UZXh0RmllbGRcbiAgICAgICAgICAgICAgICB0eXBlPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgYXV0b0NvbXBsZXRlPVwidXNlcm5hbWVcIlxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KCdhdXRoZW50aWNhdGlvbjp1c2VybmFtZScpfVxuICAgICAgICAgICAgICAgIHJlcXVpcmVkPXtyZXF1aXJlVXNlcm5hbWV9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICAgIDxmb3JtLkFwcEZpZWxkXG4gICAgICAgICAgbmFtZT1cInBhc3N3b3JkXCJcbiAgICAgICAgICBjaGlsZHJlbj17KGZpZWxkKSA9PiA8ZmllbGQuVGV4dEZpZWxkIHR5cGU9XCJwYXNzd29yZFwiIGNsYXNzTmFtZT1cInBhc3N3b3JkXCIgbGFiZWw9e3QoJ2F1dGhlbnRpY2F0aW9uOm5ld1Bhc3N3b3JkJyl9IHJlcXVpcmVkIC8+fVxuICAgICAgICAvPlxuICAgICAgICA8Zm9ybS5BcHBGaWVsZFxuICAgICAgICAgIG5hbWU9XCJjb25maXJtUGFzc3dvcmRcIlxuICAgICAgICAgIGNoaWxkcmVuPXsoZmllbGQpID0+IChcbiAgICAgICAgICAgIDxmaWVsZC5UZXh0RmllbGQgdHlwZT1cInBhc3N3b3JkXCIgY2xhc3NOYW1lPVwicGFzc3dvcmRcIiBsYWJlbD17dCgnYXV0aGVudGljYXRpb246Y29uZmlybVBhc3N3b3JkJyl9IHJlcXVpcmVkIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgLz5cbiAgICAgIDwvRm9ybUlucHV0V3JhcD5cbiAgICAgIDxmb3JtLkFwcEZvcm0gY2hpbGRyZW49ezxmb3JtLlN1Ym1pdCBsYWJlbD17dCgnZ2VuZXJhbDpjcmVhdGUnKX0gbG9hZGluZ0xhYmVsPXt0KCdnZW5lcmFsOmxvYWRpbmcnKX0gLz59IC8+XG4gICAgPC9Gb3JtPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBBZG1pblNpZ251cENsaWVudDogUmVhY3QuRkM8QWRtaW5TaWdudXBDbGllbnRQcm9wcz4gPSAoe1xuICBhZG1pbkludml0ZVRva2VuLFxuICB1c2VyU2x1ZyxcbiAgc2VhcmNoUGFyYW1zLFxuICBsb2dpbk1ldGhvZHMsXG4gIGxvZ2luV2l0aFVzZXJuYW1lXG59KSA9PiB7XG4gIGNvbnN0IHtcbiAgICBjb25maWc6IHtcbiAgICAgIHJvdXRlczogeyBhZG1pbjogYWRtaW5Sb3V0ZSwgYXBpOiBhcGlSb3V0ZSB9LFxuICAgICAgc2VydmVyVVJMXG4gICAgfVxuICB9ID0gdXNlQ29uZmlnKClcbiAgY29uc3QgW3JlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbiwgc2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKVxuICBjb25zdCByZWRpcmVjdFVybCA9IGdldFNhZmVSZWRpcmVjdChzZWFyY2hQYXJhbXM/LnJlZGlyZWN0IGFzIHN0cmluZywgYWRtaW5Sb3V0ZSlcbiAgY29uc3Qgc2V0QWRtaW5Sb2xlQ2FsbGJhY2tVUkwgPSBgJHtzZXJ2ZXJVUkx9JHthcGlSb3V0ZX0vJHt1c2VyU2x1Z30ke2FkbWluRW5kcG9pbnRzLnNldEFkbWluUm9sZX0/dG9rZW49JHthZG1pbkludml0ZVRva2VufSZyZWRpcmVjdD0ke3JlZGlyZWN0VXJsfWBcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICB7bG9naW5NZXRob2RzLmluY2x1ZGVzKCdlbWFpbFBhc3N3b3JkJykgJiYgKFxuICAgICAgICA8U2lnbnVwRm9ybVxuICAgICAgICAgIGFkbWluSW52aXRlVG9rZW49e2FkbWluSW52aXRlVG9rZW59XG4gICAgICAgICAgc2VhcmNoUGFyYW1zPXtzZWFyY2hQYXJhbXN9XG4gICAgICAgICAgbG9naW5XaXRoVXNlcm5hbWU9e2xvZ2luV2l0aFVzZXJuYW1lfVxuICAgICAgICAgIHJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbj17cmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9ufVxuICAgICAgICAgIHNldFJlcXVpcmVFbWFpbFZlcmlmaWNhdGlvbj17c2V0UmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9ufVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICAgIHshcmVxdWlyZUVtYWlsVmVyaWZpY2F0aW9uICYmIChcbiAgICAgICAgPEFkbWluU29jaWFsUHJvdmlkZXJCdXR0b25zXG4gICAgICAgICAgaXNTaWdudXA9e3RydWV9XG4gICAgICAgICAgbG9naW5NZXRob2RzPXtsb2dpbk1ldGhvZHN9XG4gICAgICAgICAgYWRtaW5JbnZpdGVUb2tlbj17YWRtaW5JbnZpdGVUb2tlbn1cbiAgICAgICAgICBzZXRMb2FkaW5nPXsoKSA9PiB7fX1cbiAgICAgICAgICByZWRpcmVjdFVybD17cmVkaXJlY3RVcmx9XG4gICAgICAgICAgbmV3VXNlckNhbGxiYWNrVVJMPXtzZXRBZG1pblJvbGVDYWxsYmFja1VSTH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC8+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJ1c2VDb25maWciLCJ0b2FzdCIsInVzZVRyYW5zbGF0aW9uIiwiUmVhY3QiLCJ1c2VTdGF0ZSIsIkFkbWluU29jaWFsUHJvdmlkZXJCdXR0b25zIiwiZ2V0U2FmZVJlZGlyZWN0IiwiYWRtaW5FbmRwb2ludHMiLCJ1c2VBcHBGb3JtIiwiRm9ybSIsIkZvcm1JbnB1dFdyYXAiLCJGb3JtSGVhZGVyIiwiY3JlYXRlU2lnbnVwU2NoZW1hIiwidHJ5Q2F0Y2giLCJiYXNlQ2xhc3MiLCJTaWdudXBGb3JtIiwic2VhcmNoUGFyYW1zIiwibG9naW5XaXRoVXNlcm5hbWUiLCJyZXF1aXJlRW1haWxWZXJpZmljYXRpb24iLCJzZXRSZXF1aXJlRW1haWxWZXJpZmljYXRpb24iLCJhZG1pbkludml0ZVRva2VuIiwiY29uZmlnIiwiYWRtaW4iLCJ1c2VyIiwidXNlclNsdWciLCJyb3V0ZXMiLCJhZG1pblJvdXRlIiwiYXBpIiwiYXBpUm91dGUiLCJzZXJ2ZXJVUkwiLCJ0IiwicmVkaXJlY3RVcmwiLCJyZWRpcmVjdCIsInJlcXVpcmVVc2VybmFtZSIsIkJvb2xlYW4iLCJzaWdudXBTY2hlbWEiLCJmb3JtIiwiZGVmYXVsdFZhbHVlcyIsImVtYWlsIiwicGFzc3dvcmQiLCJjb25maXJtUGFzc3dvcmQiLCJ1c2VybmFtZSIsIm9uU3VibWl0IiwidmFsdWUiLCJkYXRhIiwiZXJyb3IiLCJmZXRjaCIsInNpZ251cCIsIm1ldGhvZCIsImhlYWRlcnMiLCJib2R5IiwiSlNPTiIsInN0cmluZ2lmeSIsInRoZW4iLCJyZXMiLCJqc29uIiwibWVzc2FnZSIsInN1Y2Nlc3MiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhyZWYiLCJ2YWxpZGF0b3JzIiwiaGVhZGluZyIsImRlc2NyaXB0aW9uIiwic3R5bGUiLCJ0ZXh0QWxpZ24iLCJjbGFzc05hbWUiLCJlIiwicHJldmVudERlZmF1bHQiLCJoYW5kbGVTdWJtaXQiLCJBcHBGaWVsZCIsIm5hbWUiLCJjaGlsZHJlbiIsImZpZWxkIiwiVGV4dEZpZWxkIiwidHlwZSIsImF1dG9Db21wbGV0ZSIsImxhYmVsIiwicmVxdWlyZWQiLCJBcHBGb3JtIiwiU3VibWl0IiwibG9hZGluZ0xhYmVsIiwiQWRtaW5TaWdudXBDbGllbnQiLCJsb2dpbk1ldGhvZHMiLCJzZXRBZG1pblJvbGVDYWxsYmFja1VSTCIsInNldEFkbWluUm9sZSIsImluY2x1ZGVzIiwiaXNTaWdudXAiLCJzZXRMb2FkaW5nIiwibmV3VXNlckNhbGxiYWNrVVJMIl0sIm1hcHBpbmdzIjoiQUFBQTs7QUFFQSxTQUFTQSxTQUFTLEVBQUVDLEtBQUssRUFBRUMsY0FBYyxRQUFRLGlCQUFnQjtBQUNqRSxPQUFPQyxTQUFTQyxRQUFRLFFBQVEsUUFBTztBQUV2QyxTQUFTQywwQkFBMEIsUUFBUSwyQ0FBMEM7QUFDckYsU0FBU0MsZUFBZSxRQUFRLGdDQUErQjtBQUMvRCxTQUFTQyxjQUFjLFFBQVEscUJBQWdDO0FBRS9ELFNBQVNDLFVBQVUsUUFBUSw2QkFBZTtBQUMxQyxTQUFTQyxJQUFJLEVBQUVDLGFBQWEsUUFBUSxnQ0FBa0I7QUFDdEQsU0FBU0MsVUFBVSxRQUFRLHVDQUF5QjtBQUNwRCxTQUFTQyxrQkFBa0IsUUFBUSx3Q0FBMEI7QUFHN0QsU0FBU0MsUUFBUSxRQUFRLHdDQUEwQjtBQVVuRCxNQUFNQyxZQUFZO0FBVWxCLE1BQU1DLGFBQXdDLENBQUMsRUFDN0NDLFlBQVksRUFDWkMsaUJBQWlCLEVBQ2pCQyx3QkFBd0IsRUFDeEJDLDJCQUEyQixFQUMzQkMsZ0JBQWdCLEVBQ2pCO0lBQ0MsTUFBTSxFQUNKQyxRQUFRLEVBQ05DLE9BQU8sRUFBRUMsTUFBTUMsUUFBUSxFQUFFLEVBQ3pCQyxRQUFRLEVBQUVILE9BQU9JLFVBQVUsRUFBRUMsS0FBS0MsUUFBUSxFQUFFLEVBQzVDQyxTQUFTLEVBQ1YsRUFDRixHQUFHN0I7SUFDSixNQUFNLEVBQUU4QixDQUFDLEVBQUUsR0FBRzVCO0lBQ2QsTUFBTTZCLGNBQWN6QixnQkFBZ0JVLGNBQWNnQixVQUFvQk47SUFFdEUsTUFBTU8sa0JBQWtCQyxRQUFRakIscUJBQXFCLE9B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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { AdminViewServerProps } from 'payload';
|
|
3
|
+
import type { BetterAuthPluginOptions, SanitizedBetterAuthOptions } from '../../../types';
|
|
4
|
+
type AdminSignupProps = AdminViewServerProps & {
|
|
5
|
+
defaultAdminRole: string;
|
|
6
|
+
pluginOptions: BetterAuthPluginOptions;
|
|
7
|
+
betterAuthOptions: SanitizedBetterAuthOptions;
|
|
8
|
+
};
|
|
9
|
+
declare const AdminSignup: React.FC<AdminSignupProps>;
|
|
10
|
+
export default AdminSignup;
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/better-auth/plugin/payload/views/admin-signup/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AACnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAA;AASzF,KAAK,gBAAgB,GAAG,oBAAoB,GAAG;IAC7C,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,uBAAuB,CAAA;IACtC,iBAAiB,EAAE,0BAA0B,CAAA;CAC9C,CAAA;AAED,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2E3C,CAAA;AAED,eAAe,WAAW,CAAA"}
|