payload-auth 1.0.2 → 1.1.1
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/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 +115 -69
- package/dist/better-auth/adapter/transform/index.d.ts +22 -10
- package/dist/better-auth/adapter/transform/index.d.ts.map +1 -1
- package/dist/better-auth/adapter/transform/index.js +387 -96
- package/dist/better-auth/adapter/types.d.ts +2 -1
- package/dist/better-auth/adapter/types.d.ts.map +1 -1
- package/dist/better-auth/adapter/types.js +1 -1
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts +3 -0
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/check-passkey-plugin.js +5 -0
- package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts +3 -0
- package/dist/better-auth/plugin/helpers/check-username-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/check-username-plugin.js +5 -0
- 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 +8 -8
- package/dist/better-auth/plugin/helpers/get-admin-access.d.ts +8 -0
- package/dist/better-auth/plugin/helpers/get-admin-access.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/get-admin-access.js +22 -0
- package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts +14 -0
- package/dist/better-auth/plugin/helpers/get-admin-routes.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/get-admin-routes.js +6 -0
- package/dist/better-auth/plugin/helpers/get-all-roles.d.ts +6 -0
- package/dist/better-auth/plugin/helpers/get-all-roles.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/get-all-roles.js +20 -0
- 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 +3 -0
- package/dist/better-auth/plugin/helpers/get-requst-collection.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/get-requst-collection.js +14 -0
- package/dist/better-auth/plugin/helpers/index.d.ts +1 -1
- package/dist/better-auth/plugin/helpers/index.js +2 -2
- package/dist/better-auth/plugin/{lib → helpers}/prepare-session-data.d.ts +3 -3
- package/dist/better-auth/plugin/helpers/prepare-session-data.d.ts.map +1 -0
- package/dist/better-auth/plugin/helpers/prepare-session-data.js +42 -0
- package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts +4 -4
- package/dist/better-auth/plugin/helpers/serialize-cookie.d.ts.map +1 -1
- package/dist/better-auth/plugin/helpers/serialize-cookie.js +34 -34
- package/dist/better-auth/plugin/index.d.ts +7 -7
- package/dist/better-auth/plugin/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/index.js +145 -37
- package/dist/better-auth/plugin/{collections → 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 -0
- package/dist/better-auth/plugin/lib/build-collections/accounts/hooks/sync-password-to-user.js +47 -0
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts +7 -0
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/accounts/index.js +159 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-after-read.js +11 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/hooks/get-url-before-change.js +8 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts +7 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/admin-invitations/index.js +107 -0
- package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/api-keys.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/api-keys.js +196 -0
- package/dist/better-auth/plugin/lib/build-collections/index.d.ts +12 -0
- package/dist/better-auth/plugin/lib/build-collections/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/index.js +96 -0
- package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/invitations.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/invitations.js +91 -0
- package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/jwks.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/jwks.js +43 -0
- package/dist/better-auth/plugin/lib/build-collections/members.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/members.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/members.js +71 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-access-tokens.js +98 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-applications.js +113 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/oauth-consents.js +67 -0
- package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/organizations.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/organizations.js +59 -0
- package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/passkeys.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/passkeys.js +108 -0
- package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts +8 -0
- package/dist/better-auth/plugin/lib/build-collections/sessions.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/sessions.js +123 -0
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/sso-providers.js +83 -0
- package/dist/better-auth/plugin/lib/build-collections/teams.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/teams.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/teams.js +45 -0
- package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts +6 -0
- package/dist/better-auth/plugin/lib/build-collections/two-factors.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/two-factors.js +56 -0
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts +8 -0
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/better-auth-strategy.js +52 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/forgot-password.js +96 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts +13 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/generate-invite-url.js +67 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts +4 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/login.js +115 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/refresh-token.js +110 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/reset-password.js +62 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/send-invite-url.js +42 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts +4 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/set-admin-role.js +79 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts +4 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/endpoints/signup.js +153 -0
- package/dist/better-auth/plugin/{collections → 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 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-login.js +75 -0
- package/dist/better-auth/plugin/{collections → 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 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/after-logout.js +74 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts +7 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-delete.js +45 -0
- package/dist/better-auth/plugin/{collections → 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 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/before-login.js +18 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts +3 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/on-verified-change.js +14 -0
- package/dist/better-auth/plugin/{collections → 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 -0
- package/dist/better-auth/plugin/lib/build-collections/users/hooks/sync-account.js +82 -0
- package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts +8 -0
- package/dist/better-auth/plugin/lib/build-collections/users/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/users/index.js +345 -0
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts +8 -0
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/utils/get-timestamp-fields.js +31 -0
- package/dist/better-auth/plugin/lib/{payload-access.d.ts → build-collections/utils/payload-access.d.ts} +1 -1
- package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/utils/payload-access.js +64 -0
- package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts +7 -0
- package/dist/better-auth/plugin/lib/build-collections/verifications.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/build-collections/verifications.js +63 -0
- package/dist/better-auth/plugin/lib/{config.d.ts → constants.d.ts} +13 -1
- package/dist/better-auth/plugin/lib/constants.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/constants.js +56 -0
- 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 +2 -2
- package/dist/better-auth/plugin/lib/get-required-collection-slugs.d.ts +4 -4
- 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 +26 -43
- package/dist/better-auth/plugin/lib/init-better-auth.d.ts +4 -3
- package/dist/better-auth/plugin/lib/init-better-auth.d.ts.map +1 -1
- package/dist/better-auth/plugin/lib/init-better-auth.js +7 -7
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts +3 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/admin-plugin.js +8 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts +2 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/api-key-plugin.js +17 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts +10 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/index.js +118 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts +2 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/oidc-plugin.js +58 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts +2 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/organizations-plugin.js +86 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts +2 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/passkey-plugin.js +17 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts +2 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/sso-plugin.js +17 -0
- 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
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/ensure-password-set-before-create.js +23 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/password.js +62 -0
- 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
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.d.ts.map +1 -0
- package/dist/better-auth/plugin/lib/sanitize-better-auth-options/utils/save-to-jwt-middleware.js +30 -0
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts +8 -0
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.js +115 -0
- package/dist/better-auth/plugin/payload/components/admin-buttons/index.scss +31 -0
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts +11 -0
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.js +196 -0
- package/dist/better-auth/plugin/payload/components/admin-invite-button/index.scss +131 -0
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts +14 -0
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.js +111 -0
- package/dist/better-auth/plugin/payload/components/admin-social-provider-buttons/index.scss +51 -0
- package/dist/better-auth/plugin/payload/components/form-header/index.d.ts +9 -0
- package/dist/better-auth/plugin/payload/components/form-header/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/form-header/index.js +23 -0
- package/dist/better-auth/plugin/payload/components/form-header/index.scss +8 -0
- package/dist/better-auth/plugin/payload/components/icons.d.ts +9 -0
- package/dist/better-auth/plugin/payload/components/icons.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/icons.js +437 -0
- package/dist/better-auth/plugin/payload/components/logo.d.ts +3 -2
- package/dist/better-auth/plugin/payload/components/logo.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/components/logo.js +22 -34
- package/dist/better-auth/plugin/payload/components/logout-button.d.ts +6 -0
- package/dist/better-auth/plugin/payload/components/logout-button.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/logout-button.js +27 -0
- package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts +7 -0
- package/dist/better-auth/plugin/payload/components/rsc-redirect.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/rsc-redirect.js +8 -0
- package/dist/better-auth/plugin/payload/components/styles.css +2 -2
- package/dist/better-auth/plugin/payload/components/token-field.d.ts +5 -0
- package/dist/better-auth/plugin/payload/components/token-field.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/components/token-field.js +30 -0
- package/dist/better-auth/plugin/payload/exports/client.d.ts +6 -3
- package/dist/better-auth/plugin/payload/exports/client.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/exports/client.js +7 -4
- package/dist/better-auth/plugin/payload/exports/rsc.d.ts +9 -5
- package/dist/better-auth/plugin/payload/exports/rsc.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/exports/rsc.js +10 -6
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts +3 -0
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/utils/generate-admin-invite-url.js +8 -0
- package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts +15 -0
- package/dist/better-auth/plugin/payload/utils/generate-metadata.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/utils/generate-metadata.js +74 -0
- package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts +2 -0
- package/dist/better-auth/plugin/payload/utils/get-safe-redirect.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/utils/get-safe-redirect.js +23 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts +12 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/client.js +92 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts +11 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/index.js +84 -0
- package/dist/better-auth/plugin/payload/views/admin-invite/index.scss +25 -0
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts +14 -0
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/create-first-admin/client.js +95 -0
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts +10 -4
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.js +124 -92
- package/dist/better-auth/plugin/payload/views/create-first-admin/index.scss +29 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts +8 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/client.js +119 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts +9 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/index.js +69 -0
- package/dist/better-auth/plugin/payload/views/forgot-password/index.scss +0 -0
- package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts +5 -0
- package/dist/better-auth/plugin/payload/views/inactivity/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/inactivity/index.js +12 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts +9 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/login-field.js +54 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts +1 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.js +121 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/index.scss +31 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts +56 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/login/form/fields/password/types.js +3 -0
- package/dist/better-auth/plugin/payload/views/login/form/index.d.ts +17 -0
- package/dist/better-auth/plugin/payload/views/login/form/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/login/form/index.js +137 -0
- package/dist/better-auth/plugin/payload/views/login/form/index.scss +23 -0
- package/dist/better-auth/plugin/payload/views/login/index.d.ts +10 -5
- package/dist/better-auth/plugin/payload/views/login/index.d.ts.map +1 -1
- package/dist/better-auth/plugin/payload/views/login/index.js +81 -61
- package/dist/better-auth/plugin/payload/views/login/index.scss +10 -0
- package/dist/better-auth/plugin/payload/views/logout/client.d.ts +8 -0
- package/dist/better-auth/plugin/payload/views/logout/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/logout/client.js +76 -0
- package/dist/better-auth/plugin/payload/views/logout/index.d.ts +8 -0
- package/dist/better-auth/plugin/payload/views/logout/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/logout/index.js +14 -0
- package/dist/better-auth/plugin/payload/views/logout/index.scss +0 -0
- package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts +7 -0
- package/dist/better-auth/plugin/payload/views/reset-password/client.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/reset-password/client.js +72 -0
- package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts +5 -0
- package/dist/better-auth/plugin/payload/views/reset-password/index.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/reset-password/index.js +81 -0
- package/dist/better-auth/plugin/payload/views/reset-password/index.scss +9 -0
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts +3 -0
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.d.ts.map +1 -0
- package/dist/better-auth/plugin/payload/views/reset-password/metadata.js +11 -0
- package/dist/better-auth/plugin/types.d.ts +170 -33
- package/dist/better-auth/plugin/types.d.ts.map +1 -1
- package/dist/better-auth/plugin/types.js +1 -1
- 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/utils/clerk-user.d.ts +0 -3
- package/dist/clerk/utils/clerk-user.d.ts.map +1 -1
- package/dist/clerk/utils/clerk-user.js +1 -3
- package/dist/clerk/utils/load-clerk-instance.d.ts +1 -1
- package/dist/clerk/utils/load-clerk-instance.d.ts.map +1 -1
- package/package.json +14 -14
- package/LICENSE.md +0 -17
- package/dist/better-auth/adapter/dev/bin/run.d.ts +0 -2
- package/dist/better-auth/adapter/dev/bin/run.d.ts.map +0 -1
- package/dist/better-auth/adapter/dev/bin/run.js +0 -64
- package/dist/better-auth/adapter/dev/bin/schema.d.ts +0 -23
- package/dist/better-auth/adapter/dev/bin/schema.d.ts.map +0 -1
- package/dist/better-auth/adapter/dev/bin/schema.js +0 -160
- package/dist/better-auth/adapter/dev/collections.d.ts +0 -4
- package/dist/better-auth/adapter/dev/collections.d.ts.map +0 -1
- package/dist/better-auth/adapter/dev/collections.js +0 -212
- package/dist/better-auth/adapter/dev/index.d.ts +0 -4
- package/dist/better-auth/adapter/dev/index.d.ts.map +0 -1
- package/dist/better-auth/adapter/dev/index.js +0 -168
- package/dist/better-auth/adapter/test/adapter.test.d.ts +0 -2
- package/dist/better-auth/adapter/test/adapter.test.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/adapter.test.js +0 -181
- package/dist/better-auth/adapter/test/better-auth-adapter-test.d.ts +0 -8
- package/dist/better-auth/adapter/test/better-auth-adapter-test.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/better-auth-adapter-test.js +0 -425
- package/dist/better-auth/adapter/test/schema.test.d.ts +0 -2
- package/dist/better-auth/adapter/test/schema.test.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/schema.test.js +0 -796
- package/dist/better-auth/adapter/test/test_payload1/schema.d.ts +0 -24
- package/dist/better-auth/adapter/test/test_payload1/schema.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/test_payload1/schema.js +0 -177
- package/dist/better-auth/adapter/test/test_payload2/schema.d.ts +0 -24
- package/dist/better-auth/adapter/test/test_payload2/schema.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/test_payload2/schema.js +0 -167
- package/dist/better-auth/adapter/test/test_payload3/schema.d.ts +0 -24
- package/dist/better-auth/adapter/test/test_payload3/schema.d.ts.map +0 -1
- package/dist/better-auth/adapter/test/test_payload3/schema.js +0 -198
- package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/accounts/hooks/sync-password-to-user.js +0 -47
- package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.d.ts +0 -7
- package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/endpoints/refresh-token.js +0 -106
- package/dist/better-auth/plugin/collections/users/hooks/after-login.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/after-login.js +0 -71
- package/dist/better-auth/plugin/collections/users/hooks/after-logout.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/after-logout.js +0 -49
- package/dist/better-auth/plugin/collections/users/hooks/before-login.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/before-login.js +0 -18
- package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.d.ts +0 -6
- package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/clean-up-user-after-delete.js +0 -33
- package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.d.ts +0 -3
- package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/on-verified-change.js +0 -14
- package/dist/better-auth/plugin/collections/users/hooks/sync-account.d.ts.map +0 -1
- package/dist/better-auth/plugin/collections/users/hooks/sync-account.js +0 -82
- package/dist/better-auth/plugin/lib/auth-strategy.d.ts +0 -9
- package/dist/better-auth/plugin/lib/auth-strategy.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/auth-strategy.js +0 -48
- package/dist/better-auth/plugin/lib/build-collection-configs.d.ts +0 -12
- package/dist/better-auth/plugin/lib/build-collection-configs.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/build-collection-configs.js +0 -1558
- package/dist/better-auth/plugin/lib/config.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/config.js +0 -44
- package/dist/better-auth/plugin/lib/ensure-password-set-before-create.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/ensure-password-set-before-create.js +0 -24
- package/dist/better-auth/plugin/lib/password.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/password.js +0 -63
- package/dist/better-auth/plugin/lib/payload-access.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/payload-access.js +0 -64
- package/dist/better-auth/plugin/lib/prepare-session-data.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/prepare-session-data.js +0 -42
- package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/respect-save-to-jwt-fields-middleware.js +0 -30
- package/dist/better-auth/plugin/lib/sanitize-auth-options.d.ts +0 -6
- package/dist/better-auth/plugin/lib/sanitize-auth-options.d.ts.map +0 -1
- package/dist/better-auth/plugin/lib/sanitize-auth-options.js +0 -298
- package/dist/better-auth/plugin/payload/components/admin-buttons.d.ts +0 -7
- package/dist/better-auth/plugin/payload/components/admin-buttons.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/admin-buttons.js +0 -219
- package/dist/better-auth/plugin/payload/components/login-redirect.d.ts +0 -2
- package/dist/better-auth/plugin/payload/components/login-redirect.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/login-redirect.js +0 -6
- package/dist/better-auth/plugin/payload/components/logout.d.ts +0 -3
- package/dist/better-auth/plugin/payload/components/logout.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/logout.js +0 -61
- package/dist/better-auth/plugin/payload/components/sign-in.d.ts +0 -4
- package/dist/better-auth/plugin/payload/components/sign-in.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/sign-in.js +0 -384
- package/dist/better-auth/plugin/payload/components/sign-up.d.ts +0 -7
- package/dist/better-auth/plugin/payload/components/sign-up.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/sign-up.js +0 -503
- package/dist/better-auth/plugin/payload/components/ui/button.d.ts +0 -11
- package/dist/better-auth/plugin/payload/components/ui/button.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/button.js +0 -42
- package/dist/better-auth/plugin/payload/components/ui/card.d.ts +0 -10
- package/dist/better-auth/plugin/payload/components/ui/card.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/card.js +0 -55
- package/dist/better-auth/plugin/payload/components/ui/checkbox.d.ts +0 -5
- package/dist/better-auth/plugin/payload/components/ui/checkbox.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/checkbox.js +0 -23
- package/dist/better-auth/plugin/payload/components/ui/cn.d.ts +0 -3
- package/dist/better-auth/plugin/payload/components/ui/cn.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/cn.js +0 -7
- package/dist/better-auth/plugin/payload/components/ui/input.d.ts +0 -4
- package/dist/better-auth/plugin/payload/components/ui/input.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/input.js +0 -14
- package/dist/better-auth/plugin/payload/components/ui/label.d.ts +0 -5
- package/dist/better-auth/plugin/payload/components/ui/label.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/label.js +0 -15
- package/dist/better-auth/plugin/payload/components/ui/password-input.d.ts +0 -3
- package/dist/better-auth/plugin/payload/components/ui/password-input.d.ts.map +0 -1
- package/dist/better-auth/plugin/payload/components/ui/password-input.js +0 -55
- /package/dist/better-auth/plugin/lib/{password.d.ts → sanitize-better-auth-options/utils/password.d.ts} +0 -0
|
@@ -1,298 +0,0 @@
|
|
|
1
|
-
import { supportedBetterAuthPluginIds, betterAuthPluginSlugs, baseCollectionSlugs } from './config';
|
|
2
|
-
import { ensurePasswordSetBeforeUserCreate } from './ensure-password-set-before-create';
|
|
3
|
-
import { verifyPassword, hashPassword } from './password';
|
|
4
|
-
/**
|
|
5
|
-
* Sanitizes the BetterAuth options
|
|
6
|
-
*/ export function sanitizeBetterAuthOptions(options) {
|
|
7
|
-
const baOptions = options.betterAuthOptions;
|
|
8
|
-
const userCollectionSlug = options.users?.slug ?? 'users';
|
|
9
|
-
const accountCollectionSlug = options.accounts?.slug ?? 'accounts';
|
|
10
|
-
const sessionCollectionSlug = options.sessions?.slug ?? 'sessions';
|
|
11
|
-
const verificationCollectionSlug = options.verifications?.slug ?? 'verifications';
|
|
12
|
-
const res = {
|
|
13
|
-
...baOptions
|
|
14
|
-
};
|
|
15
|
-
res.user = {
|
|
16
|
-
...baOptions?.user ?? {},
|
|
17
|
-
modelName: userCollectionSlug
|
|
18
|
-
};
|
|
19
|
-
res.account = {
|
|
20
|
-
...baOptions?.account ?? {},
|
|
21
|
-
modelName: accountCollectionSlug,
|
|
22
|
-
fields: {
|
|
23
|
-
userId: 'user'
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
res.session = {
|
|
27
|
-
...baOptions?.session ?? {},
|
|
28
|
-
modelName: sessionCollectionSlug,
|
|
29
|
-
fields: {
|
|
30
|
-
userId: 'user'
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
res.verification = {
|
|
34
|
-
...baOptions?.verification ?? {},
|
|
35
|
-
modelName: verificationCollectionSlug
|
|
36
|
-
};
|
|
37
|
-
res.emailAndPassword = {
|
|
38
|
-
...baOptions?.emailAndPassword ?? {},
|
|
39
|
-
enabled: baOptions?.emailAndPassword?.enabled ?? true
|
|
40
|
-
};
|
|
41
|
-
if (res.emailAndPassword.enabled) {
|
|
42
|
-
res.emailAndPassword.password = {
|
|
43
|
-
...res.emailAndPassword.password ?? {},
|
|
44
|
-
verify: async ({ hash, password })=>{
|
|
45
|
-
return await verifyPassword({
|
|
46
|
-
hash,
|
|
47
|
-
password
|
|
48
|
-
});
|
|
49
|
-
},
|
|
50
|
-
hash: async (password)=>{
|
|
51
|
-
return await hashPassword(password);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
if (Boolean(options.users?.blockFirstBetterAuthVerificationEmail)) {
|
|
56
|
-
const originalSendVerificationEmail = baOptions?.emailVerification?.sendVerificationEmail;
|
|
57
|
-
// Only override sendVerificationEmail if the developer provided their own implementation
|
|
58
|
-
if (typeof originalSendVerificationEmail === 'function') {
|
|
59
|
-
res.emailVerification = res?.emailVerification || {};
|
|
60
|
-
res.emailVerification.sendVerificationEmail = async (data, request)=>{
|
|
61
|
-
try {
|
|
62
|
-
const user = data.user;
|
|
63
|
-
const createdAt = new Date(user.createdAt);
|
|
64
|
-
const now = new Date();
|
|
65
|
-
// If the user was created less than one minute ago, don't send the verification email
|
|
66
|
-
// as we rely on payload to send the initial email
|
|
67
|
-
if (now.getTime() - createdAt.getTime() < 60000) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
await originalSendVerificationEmail(data, request);
|
|
71
|
-
} catch (error) {
|
|
72
|
-
console.error('Error sending verification email:', error);
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
ensurePasswordSetBeforeUserCreate(res);
|
|
78
|
-
if (res.plugins) {
|
|
79
|
-
try {
|
|
80
|
-
const supportedPlugins = res.plugins.filter((plugin)=>{
|
|
81
|
-
return Object.values(supportedBetterAuthPluginIds).includes(plugin.id);
|
|
82
|
-
});
|
|
83
|
-
if (supportedPlugins.length !== res.plugins.length) {
|
|
84
|
-
console.warn(`Unsupported BetterAuth plugins detected: ${res.plugins.filter((p)=>!Object.values(supportedBetterAuthPluginIds).includes(p.id)).map((p)=>p.id).join(', ')}. Supported plugins are: ${Object.values(supportedBetterAuthPluginIds).join(', ')}.
|
|
85
|
-
These plugins will be ignored.`);
|
|
86
|
-
}
|
|
87
|
-
// Add the schema to the supported plugins
|
|
88
|
-
if (supportedPlugins.length > 0) {
|
|
89
|
-
supportedPlugins.forEach((plugin)=>{
|
|
90
|
-
const pluginId = plugin.id;
|
|
91
|
-
switch(pluginId){
|
|
92
|
-
case supportedBetterAuthPluginIds.admin:
|
|
93
|
-
const adminPlugin = plugin;
|
|
94
|
-
if (!adminPlugin.adminRoles) adminPlugin.adminRoles = options.users?.adminRoles ?? [
|
|
95
|
-
'admin'
|
|
96
|
-
];
|
|
97
|
-
adminPlugin.adminRoles = options.users?.adminRoles ?? [
|
|
98
|
-
'admin'
|
|
99
|
-
];
|
|
100
|
-
Object.assign(plugin, adminPlugin);
|
|
101
|
-
break;
|
|
102
|
-
case supportedBetterAuthPluginIds.apiKey:
|
|
103
|
-
const apiKeyPlugin = plugin;
|
|
104
|
-
if (!apiKeyPlugin.schema) apiKeyPlugin.schema = {};
|
|
105
|
-
if (!apiKeyPlugin.schema.apikey) apiKeyPlugin.schema.apikey = {};
|
|
106
|
-
apiKeyPlugin.schema.apikey = {
|
|
107
|
-
...apiKeyPlugin.schema.apikey,
|
|
108
|
-
modelName: betterAuthPluginSlugs.apiKeys,
|
|
109
|
-
fields: {
|
|
110
|
-
...plugin.schema?.apikey?.fields ?? {},
|
|
111
|
-
userId: {
|
|
112
|
-
...plugin.schema?.apikey?.fields?.userId ?? {},
|
|
113
|
-
fieldName: 'user'
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
Object.assign(plugin, apiKeyPlugin);
|
|
118
|
-
break;
|
|
119
|
-
case supportedBetterAuthPluginIds.passkey:
|
|
120
|
-
const passkeyPlugin = plugin;
|
|
121
|
-
if (!passkeyPlugin.schema) passkeyPlugin.schema = {};
|
|
122
|
-
if (!passkeyPlugin.schema.passkey) passkeyPlugin.schema.passkey = {};
|
|
123
|
-
passkeyPlugin.schema.passkey = {
|
|
124
|
-
...passkeyPlugin.schema.passkey,
|
|
125
|
-
modelName: betterAuthPluginSlugs.passkeys,
|
|
126
|
-
fields: {
|
|
127
|
-
...passkeyPlugin.schema.passkey.fields || {},
|
|
128
|
-
userId: {
|
|
129
|
-
...passkeyPlugin.schema.passkey.fields.userId,
|
|
130
|
-
fieldName: 'user'
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
};
|
|
134
|
-
Object.assign(plugin, passkeyPlugin);
|
|
135
|
-
break;
|
|
136
|
-
case supportedBetterAuthPluginIds.organization:
|
|
137
|
-
const organizationPlugin = plugin;
|
|
138
|
-
if (!organizationPlugin.schema) organizationPlugin.schema = {};
|
|
139
|
-
if (!organizationPlugin.schema.organization) organizationPlugin.schema.member = {};
|
|
140
|
-
if (!organizationPlugin.schema.invitation) organizationPlugin.schema.invitation = {};
|
|
141
|
-
if (!organizationPlugin.schema.team) organizationPlugin.schema.team = {};
|
|
142
|
-
if (!organizationPlugin.schema.session) organizationPlugin.schema.session = {};
|
|
143
|
-
organizationPlugin.schema = {
|
|
144
|
-
...organizationPlugin.schema,
|
|
145
|
-
organization: {
|
|
146
|
-
...organizationPlugin.schema.organization,
|
|
147
|
-
modelName: betterAuthPluginSlugs.organizations,
|
|
148
|
-
fields: {
|
|
149
|
-
...organizationPlugin.schema.organization.fields ?? {}
|
|
150
|
-
}
|
|
151
|
-
},
|
|
152
|
-
member: {
|
|
153
|
-
...organizationPlugin.schema.member,
|
|
154
|
-
modelName: betterAuthPluginSlugs.members,
|
|
155
|
-
fields: {
|
|
156
|
-
...organizationPlugin.schema.member.fields ?? {},
|
|
157
|
-
organizationId: {
|
|
158
|
-
...organizationPlugin.schema.member.fields?.organizationId ?? {},
|
|
159
|
-
fieldName: 'organization'
|
|
160
|
-
},
|
|
161
|
-
userId: {
|
|
162
|
-
...organizationPlugin.schema.member.fields?.userId ?? {},
|
|
163
|
-
fieldName: 'user'
|
|
164
|
-
},
|
|
165
|
-
teamId: {
|
|
166
|
-
...organizationPlugin.schema.member.fields?.teamId ?? {},
|
|
167
|
-
fieldName: 'team'
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
invitation: {
|
|
172
|
-
...organizationPlugin.schema.invitation,
|
|
173
|
-
modelName: betterAuthPluginSlugs.invitations,
|
|
174
|
-
fields: {
|
|
175
|
-
...organizationPlugin.schema.invitation.fields ?? {},
|
|
176
|
-
organizationId: {
|
|
177
|
-
...organizationPlugin.schema.invitation.fields?.organizationId ?? {},
|
|
178
|
-
fieldName: 'organization'
|
|
179
|
-
},
|
|
180
|
-
inviterId: {
|
|
181
|
-
...organizationPlugin.schema.invitation.fields?.inviterId ?? {},
|
|
182
|
-
fieldName: 'inviter'
|
|
183
|
-
},
|
|
184
|
-
teamId: {
|
|
185
|
-
...organizationPlugin.schema.invitation.fields?.teamId ?? {},
|
|
186
|
-
fieldName: 'team'
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
},
|
|
190
|
-
team: {
|
|
191
|
-
...organizationPlugin.schema.team,
|
|
192
|
-
modelName: betterAuthPluginSlugs.teams,
|
|
193
|
-
fields: {
|
|
194
|
-
...organizationPlugin.schema.team.fields ?? {},
|
|
195
|
-
organizationId: {
|
|
196
|
-
...organizationPlugin.schema.team.fields?.organizationId ?? {},
|
|
197
|
-
fieldName: 'organization'
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
},
|
|
201
|
-
session: {
|
|
202
|
-
...organizationPlugin.schema.session,
|
|
203
|
-
modelName: baseCollectionSlugs.sessions,
|
|
204
|
-
fields: {
|
|
205
|
-
...organizationPlugin.schema.session.fields ?? {},
|
|
206
|
-
activeOrganizationId: {
|
|
207
|
-
...organizationPlugin.schema.session.fields?.activeOrganizationId ?? {},
|
|
208
|
-
fieldName: 'activeOrganization'
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
};
|
|
213
|
-
Object.assign(plugin, organizationPlugin);
|
|
214
|
-
break;
|
|
215
|
-
case supportedBetterAuthPluginIds.sso:
|
|
216
|
-
const ssoPlugin = plugin;
|
|
217
|
-
if (!ssoPlugin.schema) ssoPlugin.schema = {};
|
|
218
|
-
if (!ssoPlugin.schema.sso) ssoPlugin.schema.sso = {};
|
|
219
|
-
ssoPlugin.schema.sso = {
|
|
220
|
-
...ssoPlugin.schema.sso,
|
|
221
|
-
modelName: betterAuthPluginSlugs.ssoProviders,
|
|
222
|
-
fields: {
|
|
223
|
-
...ssoPlugin.schema.sso.fields ?? {},
|
|
224
|
-
userId: {
|
|
225
|
-
...ssoPlugin.schema.sso.fields?.userId ?? {},
|
|
226
|
-
fieldName: 'user'
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
};
|
|
230
|
-
Object.assign(plugin, ssoPlugin);
|
|
231
|
-
break;
|
|
232
|
-
case supportedBetterAuthPluginIds.oidc:
|
|
233
|
-
const oidcPlugin = plugin;
|
|
234
|
-
if (!oidcPlugin.schema) oidcPlugin.schema = {};
|
|
235
|
-
if (!oidcPlugin.schema.oauthApplication) oidcPlugin.schema.oauthApplication = {};
|
|
236
|
-
if (!oidcPlugin.schema.oauthAccessToken) oidcPlugin.schema.oauthAccessToken = {};
|
|
237
|
-
if (!oidcPlugin.schema.oauthConsent) oidcPlugin.schema.oauthConsent = {};
|
|
238
|
-
oidcPlugin.schema = {
|
|
239
|
-
...oidcPlugin.schema,
|
|
240
|
-
oauthApplication: {
|
|
241
|
-
...oidcPlugin.schema.oauthApplication,
|
|
242
|
-
modelName: betterAuthPluginSlugs.oauthApplications,
|
|
243
|
-
fields: {
|
|
244
|
-
...oidcPlugin.schema.oauthApplication.fields ?? {},
|
|
245
|
-
userId: {
|
|
246
|
-
...oidcPlugin.schema.oauthApplication.fields?.userId ?? {},
|
|
247
|
-
fieldName: 'user'
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
},
|
|
251
|
-
oauthAccessToken: {
|
|
252
|
-
...oidcPlugin.schema.oauthAccessToken,
|
|
253
|
-
modelName: betterAuthPluginSlugs.oauthAccessTokens,
|
|
254
|
-
fields: {
|
|
255
|
-
...oidcPlugin.schema.oauthAccessToken.fields ?? {},
|
|
256
|
-
userId: {
|
|
257
|
-
...oidcPlugin.schema.oauthAccessToken.fields?.userId ?? {},
|
|
258
|
-
fieldName: 'user'
|
|
259
|
-
},
|
|
260
|
-
clientId: {
|
|
261
|
-
...oidcPlugin.schema.oauthAccessToken.fields?.clientId ?? {},
|
|
262
|
-
fieldName: 'client'
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
},
|
|
266
|
-
oauthConsent: {
|
|
267
|
-
...oidcPlugin.schema.oauthConsent,
|
|
268
|
-
modelName: betterAuthPluginSlugs.oauthConsents,
|
|
269
|
-
fields: {
|
|
270
|
-
...oidcPlugin.schema.oauthConsent.fields ?? {},
|
|
271
|
-
userId: {
|
|
272
|
-
...oidcPlugin.schema.oauthConsent.fields?.userId ?? {},
|
|
273
|
-
fieldName: 'user'
|
|
274
|
-
},
|
|
275
|
-
clientId: {
|
|
276
|
-
...oidcPlugin.schema.oauthConsent.fields?.clientId ?? {},
|
|
277
|
-
fieldName: 'client'
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
};
|
|
282
|
-
Object.assign(plugin, oidcPlugin);
|
|
283
|
-
break;
|
|
284
|
-
default:
|
|
285
|
-
break;
|
|
286
|
-
}
|
|
287
|
-
});
|
|
288
|
-
}
|
|
289
|
-
// Make sure only the supported plugins are used
|
|
290
|
-
Object.assign(res.plugins, supportedPlugins);
|
|
291
|
-
} catch (error) {
|
|
292
|
-
throw new Error(`Error sanitizing BetterAuth plugins: ${error}`);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
return res;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vbGliL3Nhbml0aXplLWF1dGgtb3B0aW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBheWxvYWRCZXR0ZXJBdXRoUGx1Z2luT3B0aW9ucywgU2FuaXRpemVkQmV0dGVyQXV0aE9wdGlvbnMgfSBmcm9tICcuLidcbmltcG9ydCB7IHN1cHBvcnRlZEJldHRlckF1dGhQbHVnaW5JZHMsIGJldHRlckF1dGhQbHVnaW5TbHVncywgYmFzZUNvbGxlY3Rpb25TbHVncyB9IGZyb20gJy4vY29uZmlnJ1xuaW1wb3J0IHsgZW5zdXJlUGFzc3dvcmRTZXRCZWZvcmVVc2VyQ3JlYXRlIH0gZnJvbSAnLi9lbnN1cmUtcGFzc3dvcmQtc2V0LWJlZm9yZS1jcmVhdGUnXG5pbXBvcnQgeyB2ZXJpZnlQYXNzd29yZCwgaGFzaFBhc3N3b3JkIH0gZnJvbSAnLi9wYXNzd29yZCdcblxuLyoqXG4gKiBTYW5pdGl6ZXMgdGhlIEJldHRlckF1dGggb3B0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gc2FuaXRpemVCZXR0ZXJBdXRoT3B0aW9ucyhcbiAgb3B0aW9uczogUGF5bG9hZEJldHRlckF1dGhQbHVnaW5PcHRpb25zLFxuKTogU2FuaXRpemVkQmV0dGVyQXV0aE9wdGlvbnMge1xuICBjb25zdCBiYU9wdGlvbnMgPSBvcHRpb25zLmJldHRlckF1dGhPcHRpb25zXG4gIGNvbnN0IHVzZXJDb2xsZWN0aW9uU2x1ZyA9IG9wdGlvbnMudXNlcnM/LnNsdWcgPz8gJ3VzZXJzJ1xuICBjb25zdCBhY2NvdW50Q29sbGVjdGlvblNsdWcgPSBvcHRpb25zLmFjY291bnRzPy5zbHVnID8/ICdhY2NvdW50cydcbiAgY29uc3Qgc2Vzc2lvbkNvbGxlY3Rpb25TbHVnID0gb3B0aW9ucy5zZXNzaW9ucz8uc2x1ZyA/PyAnc2Vzc2lvbnMnXG4gIGNvbnN0IHZlcmlmaWNhdGlvbkNvbGxlY3Rpb25TbHVnID0gb3B0aW9ucy52ZXJpZmljYXRpb25zPy5zbHVnID8/ICd2ZXJpZmljYXRpb25zJ1xuXG4gIGNvbnN0IHJlczogU2FuaXRpemVkQmV0dGVyQXV0aE9wdGlvbnMgPSB7IC4uLmJhT3B0aW9ucyB9XG5cbiAgcmVzLnVzZXIgPSB7XG4gICAgLi4uKGJhT3B0aW9ucz8udXNlciA/PyB7fSksXG4gICAgbW9kZWxOYW1lOiB1c2VyQ29sbGVjdGlvblNsdWcsXG4gIH1cblxuICByZXMuYWNjb3VudCA9IHtcbiAgICAuLi4oYmFPcHRpb25zPy5hY2NvdW50ID8/IHt9KSxcbiAgICBtb2RlbE5hbWU6IGFjY291bnRDb2xsZWN0aW9uU2x1ZyxcbiAgICBmaWVsZHM6IHtcbiAgICAgIHVzZXJJZDogJ3VzZXInLFxuICAgIH0sXG4gIH1cblxuICByZXMuc2Vzc2lvbiA9IHtcbiAgICAuLi4oYmFPcHRpb25zPy5zZXNzaW9uID8/IHt9KSxcbiAgICBtb2RlbE5hbWU6IHNlc3Npb25Db2xsZWN0aW9uU2x1ZyxcbiAgICBmaWVsZHM6IHtcbiAgICAgIHVzZXJJZDogJ3VzZXInLFxuICAgIH0sXG4gIH1cblxuICByZXMudmVyaWZpY2F0aW9uID0ge1xuICAgIC4uLihiYU9wdGlvbnM/LnZlcmlmaWNhdGlvbiA/PyB7fSksXG4gICAgbW9kZWxOYW1lOiB2ZXJpZmljYXRpb25Db2xsZWN0aW9uU2x1ZyxcbiAgfVxuXG4gIHJlcy5lbWFpbEFuZFBhc3N3b3JkID0ge1xuICAgIC4uLihiYU9wdGlvbnM/LmVtYWlsQW5kUGFzc3dvcmQgPz8ge30pLFxuICAgIGVuYWJsZWQ6IGJhT3B0aW9ucz8uZW1haWxBbmRQYXNzd29yZD8uZW5hYmxlZCA/PyB0cnVlLFxuICB9XG5cbiAgaWYgKHJlcy5lbWFpbEFuZFBhc3N3b3JkLmVuYWJsZWQpIHtcbiAgICByZXMuZW1haWxBbmRQYXNzd29yZC5wYXNzd29yZCA9IHtcbiAgICAgIC4uLihyZXMuZW1haWxBbmRQYXNzd29yZC5wYXNzd29yZCA/PyB7fSksXG4gICAgICB2ZXJpZnk6IGFzeW5jICh7IGhhc2gsIHBhc3N3b3JkIH0pID0+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IHZlcmlmeVBhc3N3b3JkKHsgaGFzaCwgcGFzc3dvcmQgfSlcbiAgICAgIH0sXG4gICAgICBoYXNoOiBhc3luYyAocGFzc3dvcmQpID0+IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IGhhc2hQYXNzd29yZChwYXNzd29yZClcbiAgICAgIH0sXG4gICAgfVxuICB9XG5cbiAgaWYgKEJvb2xlYW4ob3B0aW9ucy51c2Vycz8uYmxvY2tGaXJzdEJldHRlckF1dGhWZXJpZmljYXRpb25FbWFpbCkpIHtcbiAgICBjb25zdCBvcmlnaW5hbFNlbmRWZXJpZmljYXRpb25FbWFpbCA9IGJhT3B0aW9ucz8uZW1haWxWZXJpZmljYXRpb24/LnNlbmRWZXJpZmljYXRpb25FbWFpbFxuICAgIC8vIE9ubHkgb3ZlcnJpZGUgc2VuZFZlcmlmaWNhdGlvbkVtYWlsIGlmIHRoZSBkZXZlbG9wZXIgcHJvdmlkZWQgdGhlaXIgb3duIGltcGxlbWVudGF0aW9uXG4gICAgaWYgKHR5cGVvZiBvcmlnaW5hbFNlbmRWZXJpZmljYXRpb25FbWFpbCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmVzLmVtYWlsVmVyaWZpY2F0aW9uID0gcmVzPy5lbWFpbFZlcmlmaWNhdGlvbiB8fCB7fVxuICAgICAgcmVzLmVtYWlsVmVyaWZpY2F0aW9uLnNlbmRWZXJpZmljYXRpb25FbWFpbCA9IGFzeW5jIChkYXRhLCByZXF1ZXN0KSA9PiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgdXNlciA9IGRhdGEudXNlclxuICAgICAgICAgIGNvbnN0IGNyZWF0ZWRBdCA9IG5ldyBEYXRlKHVzZXIuY3JlYXRlZEF0KVxuICAgICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKClcbiAgICAgICAgICAvLyBJZiB0aGUgdXNlciB3YXMgY3JlYXRlZCBsZXNzIHRoYW4gb25lIG1pbnV0ZSBhZ28sIGRvbid0IHNlbmQgdGhlIHZlcmlmaWNhdGlvbiBlbWFpbFxuICAgICAgICAgIC8vIGFzIHdlIHJlbHkgb24gcGF5bG9hZCB0byBzZW5kIHRoZSBpbml0aWFsIGVtYWlsXG4gICAgICAgICAgaWYgKG5vdy5nZXRUaW1lKCkgLSBjcmVhdGVkQXQuZ2V0VGltZSgpIDwgNjAwMDApIHtcbiAgICAgICAgICAgIHJldHVyblxuICAgICAgICAgIH1cblxuICAgICAgICAgIGF3YWl0IG9yaWdpbmFsU2VuZFZlcmlmaWNhdGlvbkVtYWlsKGRhdGEsIHJlcXVlc3QpXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3Igc2VuZGluZyB2ZXJpZmljYXRpb24gZW1haWw6JywgZXJyb3IpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBlbnN1cmVQYXNzd29yZFNldEJlZm9yZVVzZXJDcmVhdGUocmVzKVxuXG4gIGlmIChyZXMucGx1Z2lucykge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBzdXBwb3J0ZWRQbHVnaW5zID0gcmVzLnBsdWdpbnMuZmlsdGVyKChwbHVnaW4pID0+IHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXMoc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcykuaW5jbHVkZXMoXG4gICAgICAgICAgcGx1Z2luLmlkIGFzICh0eXBlb2Ygc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcylba2V5b2YgdHlwZW9mIHN1cHBvcnRlZEJldHRlckF1dGhQbHVnaW5JZHNdLFxuICAgICAgICApXG4gICAgICB9KVxuXG4gICAgICBpZiAoc3VwcG9ydGVkUGx1Z2lucy5sZW5ndGggIT09IHJlcy5wbHVnaW5zLmxlbmd0aCkge1xuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgYFVuc3VwcG9ydGVkIEJldHRlckF1dGggcGx1Z2lucyBkZXRlY3RlZDogJHtyZXMucGx1Z2luc1xuICAgICAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgICAgKHApID0+XG4gICAgICAgICAgICAgICAgIU9iamVjdC52YWx1ZXMoc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcykuaW5jbHVkZXMoXG4gICAgICAgICAgICAgICAgICBwLmlkIGFzICh0eXBlb2Ygc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcylba2V5b2YgdHlwZW9mIHN1cHBvcnRlZEJldHRlckF1dGhQbHVnaW5JZHNdLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChwKSA9PiBwLmlkKVxuICAgICAgICAgICAgLmpvaW4oJywgJyl9LiBTdXBwb3J0ZWQgcGx1Z2lucyBhcmU6ICR7T2JqZWN0LnZhbHVlcyhzdXBwb3J0ZWRCZXR0ZXJBdXRoUGx1Z2luSWRzKS5qb2luKFxuICAgICAgICAgICAgJywgJyxcbiAgICAgICAgICApfS4gXG4gICAgICAgICAgICBUaGVzZSBwbHVnaW5zIHdpbGwgYmUgaWdub3JlZC5gLFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCB0aGUgc2NoZW1hIHRvIHRoZSBzdXBwb3J0ZWQgcGx1Z2luc1xuICAgICAgaWYgKHN1cHBvcnRlZFBsdWdpbnMubGVuZ3RoID4gMCkge1xuICAgICAgICBzdXBwb3J0ZWRQbHVnaW5zLmZvckVhY2goKHBsdWdpbikgPT4ge1xuICAgICAgICAgIGNvbnN0IHBsdWdpbklkID1cbiAgICAgICAgICAgIHBsdWdpbi5pZCBhcyAodHlwZW9mIHN1cHBvcnRlZEJldHRlckF1dGhQbHVnaW5JZHMpW2tleW9mIHR5cGVvZiBzdXBwb3J0ZWRCZXR0ZXJBdXRoUGx1Z2luSWRzXVxuXG4gICAgICAgICAgc3dpdGNoIChwbHVnaW5JZCkge1xuICAgICAgICAgICAgY2FzZSBzdXBwb3J0ZWRCZXR0ZXJBdXRoUGx1Z2luSWRzLmFkbWluOlxuICAgICAgICAgICAgICBjb25zdCBhZG1pblBsdWdpbiA9IHBsdWdpbiBhcyBhbnlcbiAgICAgICAgICAgICAgaWYgKCFhZG1pblBsdWdpbi5hZG1pblJvbGVzKVxuICAgICAgICAgICAgICAgIGFkbWluUGx1Z2luLmFkbWluUm9sZXMgPSBvcHRpb25zLnVzZXJzPy5hZG1pblJvbGVzID8/IFsnYWRtaW4nXVxuICAgICAgICAgICAgICBhZG1pblBsdWdpbi5hZG1pblJvbGVzID0gb3B0aW9ucy51c2Vycz8uYWRtaW5Sb2xlcyA/PyBbJ2FkbWluJ11cbiAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwbHVnaW4sIGFkbWluUGx1Z2luKVxuICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgY2FzZSBzdXBwb3J0ZWRCZXR0ZXJBdXRoUGx1Z2luSWRzLmFwaUtleTpcbiAgICAgICAgICAgICAgY29uc3QgYXBpS2V5UGx1Z2luID0gcGx1Z2luIGFzIGFueVxuICAgICAgICAgICAgICBpZiAoIWFwaUtleVBsdWdpbi5zY2hlbWEpIGFwaUtleVBsdWdpbi5zY2hlbWEgPSB7fVxuICAgICAgICAgICAgICBpZiAoIWFwaUtleVBsdWdpbi5zY2hlbWEuYXBpa2V5KSBhcGlLZXlQbHVnaW4uc2NoZW1hLmFwaWtleSA9IHt9XG4gICAgICAgICAgICAgIGFwaUtleVBsdWdpbi5zY2hlbWEuYXBpa2V5ID0ge1xuICAgICAgICAgICAgICAgIC4uLmFwaUtleVBsdWdpbi5zY2hlbWEuYXBpa2V5LFxuICAgICAgICAgICAgICAgIG1vZGVsTmFtZTogYmV0dGVyQXV0aFBsdWdpblNsdWdzLmFwaUtleXMsXG4gICAgICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgICAgICAuLi4ocGx1Z2luLnNjaGVtYT8uYXBpa2V5Py5maWVsZHMgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgdXNlcklkOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLihwbHVnaW4uc2NoZW1hPy5hcGlrZXk/LmZpZWxkcz8udXNlcklkID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAndXNlcicsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwbHVnaW4sIGFwaUtleVBsdWdpbilcbiAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIGNhc2Ugc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcy5wYXNza2V5OlxuICAgICAgICAgICAgICBjb25zdCBwYXNza2V5UGx1Z2luID0gcGx1Z2luIGFzIGFueVxuICAgICAgICAgICAgICBpZiAoIXBhc3NrZXlQbHVnaW4uc2NoZW1hKSBwYXNza2V5UGx1Z2luLnNjaGVtYSA9IHt9XG4gICAgICAgICAgICAgIGlmICghcGFzc2tleVBsdWdpbi5zY2hlbWEucGFzc2tleSkgcGFzc2tleVBsdWdpbi5zY2hlbWEucGFzc2tleSA9IHt9XG4gICAgICAgICAgICAgIHBhc3NrZXlQbHVnaW4uc2NoZW1hLnBhc3NrZXkgPSB7XG4gICAgICAgICAgICAgICAgLi4ucGFzc2tleVBsdWdpbi5zY2hlbWEucGFzc2tleSxcbiAgICAgICAgICAgICAgICBtb2RlbE5hbWU6IGJldHRlckF1dGhQbHVnaW5TbHVncy5wYXNza2V5cyxcbiAgICAgICAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgICAgICAgIC4uLihwYXNza2V5UGx1Z2luLnNjaGVtYS5wYXNza2V5LmZpZWxkcyB8fCB7fSksXG4gICAgICAgICAgICAgICAgICB1c2VySWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4ucGFzc2tleVBsdWdpbi5zY2hlbWEucGFzc2tleS5maWVsZHMudXNlcklkLFxuICAgICAgICAgICAgICAgICAgICBmaWVsZE5hbWU6ICd1c2VyJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHBsdWdpbiwgcGFzc2tleVBsdWdpbilcbiAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIGNhc2Ugc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcy5vcmdhbml6YXRpb246XG4gICAgICAgICAgICAgIGNvbnN0IG9yZ2FuaXphdGlvblBsdWdpbiA9IHBsdWdpbiBhcyBhbnlcbiAgICAgICAgICAgICAgaWYgKCFvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hKSBvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hID0ge31cbiAgICAgICAgICAgICAgaWYgKCFvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLm9yZ2FuaXphdGlvbikgb3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5tZW1iZXIgPSB7fVxuICAgICAgICAgICAgICBpZiAoIW9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEuaW52aXRhdGlvbikgb3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5pbnZpdGF0aW9uID0ge31cbiAgICAgICAgICAgICAgaWYgKCFvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLnRlYW0pIG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEudGVhbSA9IHt9XG4gICAgICAgICAgICAgIGlmICghb3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5zZXNzaW9uKSBvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLnNlc3Npb24gPSB7fVxuICAgICAgICAgICAgICBvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIC4uLm9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEsXG4gICAgICAgICAgICAgICAgb3JnYW5pemF0aW9uOiB7XG4gICAgICAgICAgICAgICAgICAuLi5vcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLm9yZ2FuaXphdGlvbixcbiAgICAgICAgICAgICAgICAgIG1vZGVsTmFtZTogYmV0dGVyQXV0aFBsdWdpblNsdWdzLm9yZ2FuaXphdGlvbnMsXG4gICAgICAgICAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4uKG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEub3JnYW5pemF0aW9uLmZpZWxkcyA/PyB7fSksXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgbWVtYmVyOiB7XG4gICAgICAgICAgICAgICAgICAuLi5vcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLm1lbWJlcixcbiAgICAgICAgICAgICAgICAgIG1vZGVsTmFtZTogYmV0dGVyQXV0aFBsdWdpblNsdWdzLm1lbWJlcnMsXG4gICAgICAgICAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4uKG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEubWVtYmVyLmZpZWxkcyA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgIG9yZ2FuaXphdGlvbklkOiB7XG4gICAgICAgICAgICAgICAgICAgICAgLi4uKG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEubWVtYmVyLmZpZWxkcz8ub3JnYW5pemF0aW9uSWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkTmFtZTogJ29yZ2FuaXphdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLm1lbWJlci5maWVsZHM/LnVzZXJJZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAndXNlcicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHRlYW1JZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLm1lbWJlci5maWVsZHM/LnRlYW1JZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAndGVhbScsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgaW52aXRhdGlvbjoge1xuICAgICAgICAgICAgICAgICAgLi4ub3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5pbnZpdGF0aW9uLFxuICAgICAgICAgICAgICAgICAgbW9kZWxOYW1lOiBiZXR0ZXJBdXRoUGx1Z2luU2x1Z3MuaW52aXRhdGlvbnMsXG4gICAgICAgICAgICAgICAgICBmaWVsZHM6IHtcbiAgICAgICAgICAgICAgICAgICAgLi4uKG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEuaW52aXRhdGlvbi5maWVsZHMgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICBvcmdhbml6YXRpb25JZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLmludml0YXRpb24uZmllbGRzPy5vcmdhbml6YXRpb25JZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAnb3JnYW5pemF0aW9uJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgaW52aXRlcklkOiB7XG4gICAgICAgICAgICAgICAgICAgICAgLi4uKG9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEuaW52aXRhdGlvbi5maWVsZHM/Lmludml0ZXJJZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAnaW52aXRlcicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHRlYW1JZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLmludml0YXRpb24uZmllbGRzPy50ZWFtSWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkTmFtZTogJ3RlYW0nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHRlYW06IHtcbiAgICAgICAgICAgICAgICAgIC4uLm9yZ2FuaXphdGlvblBsdWdpbi5zY2hlbWEudGVhbSxcbiAgICAgICAgICAgICAgICAgIG1vZGVsTmFtZTogYmV0dGVyQXV0aFBsdWdpblNsdWdzLnRlYW1zLFxuICAgICAgICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLnRlYW0uZmllbGRzID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgb3JnYW5pemF0aW9uSWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi4ob3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS50ZWFtLmZpZWxkcz8ub3JnYW5pemF0aW9uSWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkTmFtZTogJ29yZ2FuaXphdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgc2Vzc2lvbjoge1xuICAgICAgICAgICAgICAgICAgLi4ub3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5zZXNzaW9uLFxuICAgICAgICAgICAgICAgICAgbW9kZWxOYW1lOiBiYXNlQ29sbGVjdGlvblNsdWdzLnNlc3Npb25zLFxuICAgICAgICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLihvcmdhbml6YXRpb25QbHVnaW4uc2NoZW1hLnNlc3Npb24uZmllbGRzID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlT3JnYW5pemF0aW9uSWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi4ob3JnYW5pemF0aW9uUGx1Z2luLnNjaGVtYS5zZXNzaW9uLmZpZWxkcz8uYWN0aXZlT3JnYW5pemF0aW9uSWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkTmFtZTogJ2FjdGl2ZU9yZ2FuaXphdGlvbicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwbHVnaW4sIG9yZ2FuaXphdGlvblBsdWdpbilcbiAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIGNhc2Ugc3VwcG9ydGVkQmV0dGVyQXV0aFBsdWdpbklkcy5zc286XG4gICAgICAgICAgICAgIGNvbnN0IHNzb1BsdWdpbiA9IHBsdWdpbiBhcyBhbnlcbiAgICAgICAgICAgICAgaWYgKCFzc29QbHVnaW4uc2NoZW1hKSBzc29QbHVnaW4uc2NoZW1hID0ge31cbiAgICAgICAgICAgICAgaWYgKCFzc29QbHVnaW4uc2NoZW1hLnNzbykgc3NvUGx1Z2luLnNjaGVtYS5zc28gPSB7fVxuICAgICAgICAgICAgICBzc29QbHVnaW4uc2NoZW1hLnNzbyA9IHtcbiAgICAgICAgICAgICAgICAuLi5zc29QbHVnaW4uc2NoZW1hLnNzbyxcbiAgICAgICAgICAgICAgICBtb2RlbE5hbWU6IGJldHRlckF1dGhQbHVnaW5TbHVncy5zc29Qcm92aWRlcnMsXG4gICAgICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgICAgICAuLi4oc3NvUGx1Z2luLnNjaGVtYS5zc28uZmllbGRzID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgIHVzZXJJZDoge1xuICAgICAgICAgICAgICAgICAgICAuLi4oc3NvUGx1Z2luLnNjaGVtYS5zc28uZmllbGRzPy51c2VySWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICBmaWVsZE5hbWU6ICd1c2VyJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHBsdWdpbiwgc3NvUGx1Z2luKVxuICAgICAgICAgICAgICBicmVha1xuICAgICAgICAgICAgY2FzZSBzdXBwb3J0ZWRCZXR0ZXJBdXRoUGx1Z2luSWRzLm9pZGM6XG4gICAgICAgICAgICAgIGNvbnN0IG9pZGNQbHVnaW4gPSBwbHVnaW4gYXMgYW55XG4gICAgICAgICAgICAgIGlmICghb2lkY1BsdWdpbi5zY2hlbWEpIG9pZGNQbHVnaW4uc2NoZW1hID0ge31cbiAgICAgICAgICAgICAgaWYgKCFvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFwcGxpY2F0aW9uKSBvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFwcGxpY2F0aW9uID0ge31cbiAgICAgICAgICAgICAgaWYgKCFvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFjY2Vzc1Rva2VuKSBvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFjY2Vzc1Rva2VuID0ge31cbiAgICAgICAgICAgICAgaWYgKCFvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aENvbnNlbnQpIG9pZGNQbHVnaW4uc2NoZW1hLm9hdXRoQ29uc2VudCA9IHt9XG4gICAgICAgICAgICAgIG9pZGNQbHVnaW4uc2NoZW1hID0ge1xuICAgICAgICAgICAgICAgIC4uLm9pZGNQbHVnaW4uc2NoZW1hLFxuICAgICAgICAgICAgICAgIG9hdXRoQXBwbGljYXRpb246IHtcbiAgICAgICAgICAgICAgICAgIC4uLm9pZGNQbHVnaW4uc2NoZW1hLm9hdXRoQXBwbGljYXRpb24sXG4gICAgICAgICAgICAgICAgICBtb2RlbE5hbWU6IGJldHRlckF1dGhQbHVnaW5TbHVncy5vYXV0aEFwcGxpY2F0aW9ucyxcbiAgICAgICAgICAgICAgICAgIGZpZWxkczoge1xuICAgICAgICAgICAgICAgICAgICAuLi4ob2lkY1BsdWdpbi5zY2hlbWEub2F1dGhBcHBsaWNhdGlvbi5maWVsZHMgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICB1c2VySWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi4ob2lkY1BsdWdpbi5zY2hlbWEub2F1dGhBcHBsaWNhdGlvbi5maWVsZHM/LnVzZXJJZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAndXNlcicsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgb2F1dGhBY2Nlc3NUb2tlbjoge1xuICAgICAgICAgICAgICAgICAgLi4ub2lkY1BsdWdpbi5zY2hlbWEub2F1dGhBY2Nlc3NUb2tlbixcbiAgICAgICAgICAgICAgICAgIG1vZGVsTmFtZTogYmV0dGVyQXV0aFBsdWdpblNsdWdzLm9hdXRoQWNjZXNzVG9rZW5zLFxuICAgICAgICAgICAgICAgICAgZmllbGRzOiB7XG4gICAgICAgICAgICAgICAgICAgIC4uLihvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFjY2Vzc1Rva2VuLmZpZWxkcyA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aEFjY2Vzc1Rva2VuLmZpZWxkcz8udXNlcklkID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgICBmaWVsZE5hbWU6ICd1c2VyJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgY2xpZW50SWQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAuLi4ob2lkY1BsdWdpbi5zY2hlbWEub2F1dGhBY2Nlc3NUb2tlbi5maWVsZHM/LmNsaWVudElkID8/IHt9KSxcbiAgICAgICAgICAgICAgICAgICAgICBmaWVsZE5hbWU6ICdjbGllbnQnLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIG9hdXRoQ29uc2VudDoge1xuICAgICAgICAgICAgICAgICAgLi4ub2lkY1BsdWdpbi5zY2hlbWEub2F1dGhDb25zZW50LFxuICAgICAgICAgICAgICAgICAgbW9kZWxOYW1lOiBiZXR0ZXJBdXRoUGx1Z2luU2x1Z3Mub2F1dGhDb25zZW50cyxcbiAgICAgICAgICAgICAgICAgIGZpZWxkczoge1xuICAgICAgICAgICAgICAgICAgICAuLi4ob2lkY1BsdWdpbi5zY2hlbWEub2F1dGhDb25zZW50LmZpZWxkcyA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgIHVzZXJJZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aENvbnNlbnQuZmllbGRzPy51c2VySWQgPz8ge30pLFxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkTmFtZTogJ3VzZXInLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDoge1xuICAgICAgICAgICAgICAgICAgICAgIC4uLihvaWRjUGx1Z2luLnNjaGVtYS5vYXV0aENvbnNlbnQuZmllbGRzPy5jbGllbnRJZCA/PyB7fSksXG4gICAgICAgICAgICAgICAgICAgICAgZmllbGROYW1lOiAnY2xpZW50JyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHBsdWdpbiwgb2lkY1BsdWdpbilcbiAgICAgICAgICAgICAgYnJlYWtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgIGJyZWFrXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgLy8gTWFrZSBzdXJlIG9ubHkgdGhlIHN1cHBvcnRlZCBwbHVnaW5zIGFyZSB1c2VkXG4gICAgICBPYmplY3QuYXNzaWduKHJlcy5wbHVnaW5zLCBzdXBwb3J0ZWRQbHVnaW5zKVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEVycm9yIHNhbml0aXppbmcgQmV0dGVyQXV0aCBwbHVnaW5zOiAke2Vycm9yfWApXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc1xufVxuIl0sIm5hbWVzIjpbInN1cHBvcnRlZEJldHRlckF1dGhQbHVnaW5JZHMiLCJiZXR0ZXJBdXRoUGx1Z2luU2x1Z3MiLCJiYXNlQ29sbGVjdGlvblNsdWdzIiwiZW5zdXJlUGFzc3dvcmRTZXRCZWZvcmVVc2VyQ3JlYXRlIiwidmVyaWZ5UGFzc3dvcmQiLCJoYXNoUGFzc3dvcmQiLCJzYW5pdGl6ZUJldHRlckF1dGhPcHRpb25zIiwib3B0aW9ucyIsImJhT3B0aW9ucyIsImJldHRlckF1dGhPcHRpb25zIiwidXNlckNvbGxlY3Rpb25TbHVnIiwidXNlcnMiLCJzbHVnIiwiYWNjb3VudENvbGxlY3Rpb25TbHVnIiwiYWNjb3VudHMiLCJzZXNzaW9uQ29sbGVjdGlvblNsdWciLCJzZXNzaW9ucyIsInZlcmlmaWNhdGlvbkNvbGxlY3Rpb25TbHVnIiwidmVyaWZpY2F0aW9ucyIsInJlcyIsInVzZXIiLCJtb2RlbE5hbWUiLCJhY2NvdW50IiwiZmllbGRzIiwidXNlcklkIiwic2Vzc2lvbiIsInZlcmlmaWNhdGlvbiIsImVtYWlsQW5kUGFzc3dvcmQiLCJlbmFibGVkIiwicGFzc3dvcmQiLCJ2ZXJpZnkiLCJoYXNoIiwiQm9vbGVhbiIsImJsb2NrRmlyc3RCZXR0ZXJBdXRoVmVyaWZpY2F0aW9uRW1haWwiLCJvcmlnaW5hbFNlbmRWZXJpZmljYXRpb25FbWFpbCIsImVtYWlsVmVyaWZpY2F0aW9uIiwic2VuZFZlcmlmaWNhdGlvbkVtYWlsIiwiZGF0YSIsInJlcXVlc3QiLCJjcmVhdGVkQXQiLCJEYXRlIiwibm93IiwiZ2V0VGltZSIsImVycm9yIiwiY29uc29sZSIsInBsdWdpbnMiLCJzdXBwb3J0ZWRQbHVnaW5zIiwiZmlsdGVyIiwicGx1Z2luIiwiT2JqZWN0IiwidmFsdWVzIiwiaW5jbHVkZXMiLCJpZCIsImxlbmd0aCIsIndhcm4iLCJwIiwibWFwIiwiam9pbiIsImZvckVhY2giLCJwbHVnaW5JZCIsImFkbWluIiwiYWRtaW5QbHVnaW4iLCJhZG1pblJvbGVzIiwiYXNzaWduIiwiYXBpS2V5IiwiYXBpS2V5UGx1Z2luIiwic2NoZW1hIiwiYXBpa2V5IiwiYXBpS2V5cyIsImZpZWxkTmFtZSIsInBhc3NrZXkiLCJwYXNza2V5UGx1Z2luIiwicGFzc2tleXMiLCJvcmdhbml6YXRpb24iLCJvcmdhbml6YXRpb25QbHVnaW4iLCJtZW1iZXIiLCJpbnZpdGF0aW9uIiwidGVhbSIsIm9yZ2FuaXphdGlvbnMiLCJtZW1iZXJzIiwib3JnYW5pemF0aW9uSWQiLCJ0ZWFtSWQiLCJpbnZpdGF0aW9ucyIsImludml0ZXJJZCIsInRlYW1zIiwiYWN0aXZlT3JnYW5pemF0aW9uSWQiLCJzc28iLCJzc29QbHVnaW4iLCJzc29Qcm92aWRlcnMiLCJvaWRjIiwib2lkY1BsdWdpbiIsIm9hdXRoQXBwbGljYXRpb24iLCJvYXV0aEFjY2Vzc1Rva2VuIiwib2F1dGhDb25zZW50Iiwib2F1dGhBcHBsaWNhdGlvbnMiLCJvYXV0aEFjY2Vzc1Rva2VucyIsImNsaWVudElkIiwib2F1dGhDb25zZW50cyIsIkVycm9yIl0sIm1hcHBpbmdzIjoiQUFDQSxTQUFTQSw0QkFBNEIsRUFBRUMscUJBQXFCLEVBQUVDLG1CQUFtQixRQUFRLFdBQVU7QUFDbkcsU0FBU0MsaUNBQWlDLFFBQVEsc0NBQXFDO0FBQ3ZGLFNBQVNDLGNBQWMsRUFBRUMsWUFBWSxRQUFRLGFBQVk7QUFFekQ7O0NBRUMsR0FDRCxPQUFPLFNBQVNDLDBCQUNkQyxPQUF1QztJQUV2QyxNQUFNQyxZQUFZRCxRQUFRRSxpQkFBaUI7SUFDM0MsTUFBTUMscUJBQXFCSCxRQUFRSSxLQUFLLEVBQUVDLFFBQVE7SUFDbEQsTUFBTUMsd0JBQXdCTixRQUFRTyxRQUFRLEVBQUVGLFFBQVE7SUFDeEQsTUFBTUcsd0JBQXdCUixRQUFRUyxRQUFRLEVBQUVKLFFBQVE7SUFDeEQsTUFBTUssNkJBQTZCVixRQUFRVyxhQUFhLEVBQUVOLFFBQVE7SUFFbEUsTUFBTU8sTUFBa0M7UUFBRSxHQUFH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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"admin-buttons.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/payload/components/admin-buttons.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,cAAc,CAAA;AAErB,OAAO,2BAA2B,CAAA;AAsDlC,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,qBAkJtE"}
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import React, { useEffect, useState } from 'react';
|
|
4
|
-
import { adminClient } from 'better-auth/client/plugins';
|
|
5
|
-
import { createAuthClient } from 'better-auth/react';
|
|
6
|
-
import { useParams, usePathname, useRouter } from 'next/navigation';
|
|
7
|
-
import { Button, toast } from '@payloadcms/ui';
|
|
8
|
-
import './styles.css';
|
|
9
|
-
import '@payloadcms/ui/styles.css';
|
|
10
|
-
async function getDocumentData(id, path) {
|
|
11
|
-
const apiUrl = `${path}/api`;
|
|
12
|
-
try {
|
|
13
|
-
// Try to load the /api page and parse the HTML response
|
|
14
|
-
const response = await fetch(apiUrl);
|
|
15
|
-
if (response.ok) {
|
|
16
|
-
const htmlResponse = await response.text();
|
|
17
|
-
// Parse the HTML to extract user data
|
|
18
|
-
try {
|
|
19
|
-
let documentData = null;
|
|
20
|
-
const parser = new DOMParser();
|
|
21
|
-
const doc = parser.parseFromString(htmlResponse, 'text/html');
|
|
22
|
-
// Look for the JSON data in the query inspector
|
|
23
|
-
const jsonRows = doc.querySelectorAll('.query-inspector__row-line');
|
|
24
|
-
if (jsonRows.length > 0) {
|
|
25
|
-
documentData = {};
|
|
26
|
-
jsonRows.forEach((row)=>{
|
|
27
|
-
const keyMatch = row.innerHTML.match(/"([^"]+)"\s*:/);
|
|
28
|
-
if (keyMatch) {
|
|
29
|
-
const key = keyMatch[1].trim();
|
|
30
|
-
const valueElement = row.querySelector('.query-inspector__value');
|
|
31
|
-
if (valueElement) {
|
|
32
|
-
let value = valueElement.textContent?.trim() ?? '';
|
|
33
|
-
// Convert values to appropriate types
|
|
34
|
-
if (value === 'true') value = 'true';
|
|
35
|
-
else if (value === 'false') value = 'false';
|
|
36
|
-
else if (value === 'null') value = 'null';
|
|
37
|
-
else if (!isNaN(Number(value))) value = Number(value).toString();
|
|
38
|
-
else if (value.startsWith('"') && value.endsWith('"')) {
|
|
39
|
-
value = value.substring(1, value.length - 1).trim();
|
|
40
|
-
}
|
|
41
|
-
documentData[key] = value;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
return documentData;
|
|
47
|
-
} catch (parseError) {
|
|
48
|
-
console.error('Error parsing document data from HTML:', parseError);
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
} catch (apiError) {
|
|
53
|
-
console.error('Error fetching document data from API:', apiError);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
export default function AdminButtons({ userSlug }) {
|
|
57
|
-
const router = useRouter();
|
|
58
|
-
const path = usePathname();
|
|
59
|
-
const params = useParams();
|
|
60
|
-
const [id, setId] = useState('');
|
|
61
|
-
const [documentData, setDocumentData] = useState(null);
|
|
62
|
-
const authClient = createAuthClient({
|
|
63
|
-
plugins: [
|
|
64
|
-
adminClient()
|
|
65
|
-
]
|
|
66
|
-
});
|
|
67
|
-
useEffect(()=>{
|
|
68
|
-
async function fetchDocumentData() {
|
|
69
|
-
// Get the ID from the params.segments array
|
|
70
|
-
const segments = params.segments;
|
|
71
|
-
const userSlugIndex = segments.findIndex((segment)=>segment === userSlug);
|
|
72
|
-
const id = userSlugIndex !== -1 && userSlugIndex < segments.length - 1 ? segments[userSlugIndex + 1] : segments[segments.length - 1];
|
|
73
|
-
const documentData = await getDocumentData(id, path);
|
|
74
|
-
setId(id);
|
|
75
|
-
setDocumentData(documentData);
|
|
76
|
-
}
|
|
77
|
-
fetchDocumentData();
|
|
78
|
-
}, [
|
|
79
|
-
params,
|
|
80
|
-
path,
|
|
81
|
-
userSlug
|
|
82
|
-
]);
|
|
83
|
-
const handleImpersonate = async ()=>{
|
|
84
|
-
await authClient.admin.impersonateUser({
|
|
85
|
-
userId: id,
|
|
86
|
-
fetchOptions: {
|
|
87
|
-
onSuccess () {
|
|
88
|
-
router.push('/');
|
|
89
|
-
},
|
|
90
|
-
onError (error) {
|
|
91
|
-
console.error('Error impersonating user:', error);
|
|
92
|
-
toast.error('Failed to impersonate user');
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
};
|
|
97
|
-
const handleBan = async ()=>{
|
|
98
|
-
await authClient.admin.banUser({
|
|
99
|
-
userId: id,
|
|
100
|
-
fetchOptions: {
|
|
101
|
-
onSuccess () {
|
|
102
|
-
toast.success('User banned successfully');
|
|
103
|
-
router.refresh();
|
|
104
|
-
},
|
|
105
|
-
onError (error) {
|
|
106
|
-
console.error('Error banning user:', error);
|
|
107
|
-
toast.error('Failed to ban user');
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
};
|
|
112
|
-
const handleUnban = async ()=>{
|
|
113
|
-
await authClient.admin.unbanUser({
|
|
114
|
-
userId: id,
|
|
115
|
-
fetchOptions: {
|
|
116
|
-
onSuccess () {
|
|
117
|
-
toast.success('User unbanned successfully');
|
|
118
|
-
router.refresh();
|
|
119
|
-
},
|
|
120
|
-
onError (error) {
|
|
121
|
-
console.error('Error unbanning user:', error);
|
|
122
|
-
toast.error('Failed to unban user');
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
};
|
|
127
|
-
const handleRevokeAllSessions = async ()=>{
|
|
128
|
-
await authClient.admin.revokeUserSessions({
|
|
129
|
-
userId: id,
|
|
130
|
-
fetchOptions: {
|
|
131
|
-
onSuccess () {
|
|
132
|
-
toast.success('All sessions revoked successfully');
|
|
133
|
-
router.refresh();
|
|
134
|
-
},
|
|
135
|
-
onError (error) {
|
|
136
|
-
console.error('Error revoking all sessions:', error);
|
|
137
|
-
toast.error('Failed to revoke all sessions');
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
});
|
|
141
|
-
};
|
|
142
|
-
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
143
|
-
children: [
|
|
144
|
-
/*#__PURE__*/ _jsx("style", {
|
|
145
|
-
children: `
|
|
146
|
-
.admin-actions-container {
|
|
147
|
-
display: flex;
|
|
148
|
-
flex-direction: column;
|
|
149
|
-
}
|
|
150
|
-
.admin-actions-container h3 {
|
|
151
|
-
margin-bottom: 1rem;
|
|
152
|
-
}
|
|
153
|
-
.admin-actions-container .btn {
|
|
154
|
-
margin-block: 0.5rem;
|
|
155
|
-
}
|
|
156
|
-
.ban-button {
|
|
157
|
-
background-color: oklch(0.258 0.092 26.042);
|
|
158
|
-
color: oklch(0.577 0.245 27.325);
|
|
159
|
-
border: 1px solid oklch(0.396 0.141 25.723);
|
|
160
|
-
&:hover {
|
|
161
|
-
color: #fff;
|
|
162
|
-
background-color: oklch(0.505 0.213 27.518);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
.revoke-sessions-button {
|
|
166
|
-
--theme-elevation-800: oklch(0.396 0.141 25.723);
|
|
167
|
-
color: oklch(0.637 0.237 25.331);
|
|
168
|
-
&:hover {
|
|
169
|
-
--theme-elevation-400: oklch(0.396 0.141 25.723);
|
|
170
|
-
color: #fff;
|
|
171
|
-
background-color: oklch(0.396 0.141 25.723);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
`
|
|
175
|
-
}),
|
|
176
|
-
/*#__PURE__*/ _jsxs("div", {
|
|
177
|
-
className: "admin-actions-container",
|
|
178
|
-
children: [
|
|
179
|
-
/*#__PURE__*/ _jsx("h3", {
|
|
180
|
-
children: "Admin Actions"
|
|
181
|
-
}),
|
|
182
|
-
/*#__PURE__*/ _jsxs("div", {
|
|
183
|
-
style: {
|
|
184
|
-
display: 'flex',
|
|
185
|
-
flexWrap: 'wrap',
|
|
186
|
-
columnGap: '0.5rem'
|
|
187
|
-
},
|
|
188
|
-
children: [
|
|
189
|
-
/*#__PURE__*/ _jsx(Button, {
|
|
190
|
-
onClick: handleImpersonate,
|
|
191
|
-
buttonStyle: "primary",
|
|
192
|
-
children: "Impersonate"
|
|
193
|
-
}),
|
|
194
|
-
/*#__PURE__*/ _jsx(Button, {
|
|
195
|
-
onClick: handleRevokeAllSessions,
|
|
196
|
-
buttonStyle: "secondary",
|
|
197
|
-
className: "revoke-sessions-button",
|
|
198
|
-
children: "Revoke All Sessions"
|
|
199
|
-
}),
|
|
200
|
-
/*#__PURE__*/ _jsx(Button, {
|
|
201
|
-
onClick: handleBan,
|
|
202
|
-
buttonStyle: "error",
|
|
203
|
-
className: "ban-button",
|
|
204
|
-
children: "Ban"
|
|
205
|
-
}),
|
|
206
|
-
/*#__PURE__*/ _jsx(Button, {
|
|
207
|
-
onClick: handleUnban,
|
|
208
|
-
buttonStyle: "primary",
|
|
209
|
-
children: "Unban"
|
|
210
|
-
})
|
|
211
|
-
]
|
|
212
|
-
})
|
|
213
|
-
]
|
|
214
|
-
})
|
|
215
|
-
]
|
|
216
|
-
});
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC9jb21wb25lbnRzL2FkbWluLWJ1dHRvbnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgYWRtaW5DbGllbnQgfSBmcm9tICdiZXR0ZXItYXV0aC9jbGllbnQvcGx1Z2lucydcbmltcG9ydCB7IGNyZWF0ZUF1dGhDbGllbnQgfSBmcm9tICdiZXR0ZXItYXV0aC9yZWFjdCdcbmltcG9ydCB7IHVzZVBhcmFtcywgdXNlUGF0aG5hbWUsIHVzZVJvdXRlciB9IGZyb20gJ25leHQvbmF2aWdhdGlvbidcbmltcG9ydCB7IEJ1dHRvbiwgdG9hc3QgfSBmcm9tICdAcGF5bG9hZGNtcy91aSdcbmltcG9ydCAnLi9zdHlsZXMuY3NzJ1xuXG5pbXBvcnQgJ0BwYXlsb2FkY21zL3VpL3N0eWxlcy5jc3MnXG5cbmFzeW5jIGZ1bmN0aW9uIGdldERvY3VtZW50RGF0YShpZDogc3RyaW5nLCBwYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgYXBpVXJsID0gYCR7cGF0aH0vYXBpYFxuICB0cnkge1xuICAgIC8vIFRyeSB0byBsb2FkIHRoZSAvYXBpIHBhZ2UgYW5kIHBhcnNlIHRoZSBIVE1MIHJlc3BvbnNlXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChhcGlVcmwpXG4gICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICBjb25zdCBodG1sUmVzcG9uc2UgPSBhd2FpdCByZXNwb25zZS50ZXh0KClcbiAgICAgIC8vIFBhcnNlIHRoZSBIVE1MIHRvIGV4dHJhY3QgdXNlciBkYXRhXG4gICAgICB0cnkge1xuICAgICAgICBsZXQgZG9jdW1lbnREYXRhOiBhbnkgPSBudWxsXG4gICAgICAgIGNvbnN0IHBhcnNlciA9IG5ldyBET01QYXJzZXIoKVxuICAgICAgICBjb25zdCBkb2MgPSBwYXJzZXIucGFyc2VGcm9tU3RyaW5nKGh0bWxSZXNwb25zZSwgJ3RleHQvaHRtbCcpXG5cbiAgICAgICAgLy8gTG9vayBmb3IgdGhlIEpTT04gZGF0YSBpbiB0aGUgcXVlcnkgaW5zcGVjdG9yXG4gICAgICAgIGNvbnN0IGpzb25Sb3dzID0gZG9jLnF1ZXJ5U2VsZWN0b3JBbGwoJy5xdWVyeS1pbnNwZWN0b3JfX3Jvdy1saW5lJylcbiAgICAgICAgaWYgKGpzb25Sb3dzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICBkb2N1bWVudERhdGEgPSB7fVxuXG4gICAgICAgICAganNvblJvd3MuZm9yRWFjaCgocm93KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBrZXlNYXRjaCA9IHJvdy5pbm5lckhUTUwubWF0Y2goL1wiKFteXCJdKylcIlxccyo6LylcbiAgICAgICAgICAgIGlmIChrZXlNYXRjaCkge1xuICAgICAgICAgICAgICBjb25zdCBrZXkgPSBrZXlNYXRjaFsxXS50cmltKClcbiAgICAgICAgICAgICAgY29uc3QgdmFsdWVFbGVtZW50ID0gcm93LnF1ZXJ5U2VsZWN0b3IoJy5xdWVyeS1pbnNwZWN0b3JfX3ZhbHVlJylcbiAgICAgICAgICAgICAgaWYgKHZhbHVlRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHZhbHVlRWxlbWVudC50ZXh0Q29udGVudD8udHJpbSgpID8/ICcnXG5cbiAgICAgICAgICAgICAgICAvLyBDb252ZXJ0IHZhbHVlcyB0byBhcHByb3ByaWF0ZSB0eXBlc1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gJ3RydWUnKSB2YWx1ZSA9ICd0cnVlJ1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHZhbHVlID09PSAnZmFsc2UnKSB2YWx1ZSA9ICdmYWxzZSdcbiAgICAgICAgICAgICAgICBlbHNlIGlmICh2YWx1ZSA9PT0gJ251bGwnKSB2YWx1ZSA9ICdudWxsJ1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKCFpc05hTihOdW1iZXIodmFsdWUpKSkgdmFsdWUgPSBOdW1iZXIodmFsdWUpLnRvU3RyaW5nKClcbiAgICAgICAgICAgICAgICBlbHNlIGlmICh2YWx1ZS5zdGFydHNXaXRoKCdcIicpICYmIHZhbHVlLmVuZHNXaXRoKCdcIicpKSB7XG4gICAgICAgICAgICAgICAgICB2YWx1ZSA9IHZhbHVlLnN1YnN0cmluZygxLCB2YWx1ZS5sZW5ndGggLSAxKS50cmltKClcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBkb2N1bWVudERhdGFba2V5XSA9IHZhbHVlXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRvY3VtZW50RGF0YVxuICAgICAgfSBjYXRjaCAocGFyc2VFcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBwYXJzaW5nIGRvY3VtZW50IGRhdGEgZnJvbSBIVE1MOicsIHBhcnNlRXJyb3IpXG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG4gICAgfVxuICB9IGNhdGNoIChhcGlFcnJvcikge1xuICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGRvY3VtZW50IGRhdGEgZnJvbSBBUEk6JywgYXBpRXJyb3IpXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gQWRtaW5CdXR0b25zKHsgdXNlclNsdWcgfTogeyB1c2VyU2x1Zzogc3RyaW5nIH0pIHtcbiAgY29uc3Qgcm91dGVyID0gdXNlUm91dGVyKClcbiAgY29uc3QgcGF0aCA9IHVzZVBhdGhuYW1lKClcbiAgY29uc3QgcGFyYW1zID0gdXNlUGFyYW1zKClcbiAgY29uc3QgW2lkLCBzZXRJZF0gPSB1c2VTdGF0ZSgnJylcbiAgY29uc3QgW2RvY3VtZW50RGF0YSwgc2V0RG9jdW1lbnREYXRhXSA9IHVzZVN0YXRlPGFueT4obnVsbClcblxuICBjb25zdCBhdXRoQ2xpZW50ID0gY3JlYXRlQXV0aENsaWVudCh7XG4gICAgcGx1Z2luczogW2FkbWluQ2xpZW50KCldLFxuICB9KVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYXN5bmMgZnVuY3Rpb24gZmV0Y2hEb2N1bWVudERhdGEoKSB7XG4gICAgICAvLyBHZXQgdGhlIElEIGZyb20gdGhlIHBhcmFtcy5zZWdtZW50cyBhcnJheVxuICAgICAgY29uc3Qgc2VnbWVudHMgPSBwYXJhbXMuc2VnbWVudHMgYXMgc3RyaW5nW11cbiAgICAgIGNvbnN0IHVzZXJTbHVnSW5kZXggPSBzZWdtZW50cy5maW5kSW5kZXgoKHNlZ21lbnQpID0+IHNlZ21lbnQgPT09IHVzZXJTbHVnKVxuICAgICAgY29uc3QgaWQgPVxuICAgICAgICB1c2VyU2x1Z0luZGV4ICE9PSAtMSAmJiB1c2VyU2x1Z0luZGV4IDwgc2VnbWVudHMubGVuZ3RoIC0gMVxuICAgICAgICAgID8gc2VnbWVudHNbdXNlclNsdWdJbmRleCArIDFdXG4gICAgICAgICAgOiBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXVxuXG4gICAgICBjb25zdCBkb2N1bWVudERhdGEgPSBhd2FpdCBnZXREb2N1bWVudERhdGEoaWQsIHBhdGgpXG4gICAgICBzZXRJZChpZClcbiAgICAgIHNldERvY3VtZW50RGF0YShkb2N1bWVudERhdGEpXG4gICAgfVxuICAgIGZldGNoRG9jdW1lbnREYXRhKClcbiAgfSwgW3BhcmFtcywgcGF0aCwgdXNlclNsdWddKVxuXG4gIGNvbnN0IGhhbmRsZUltcGVyc29uYXRlID0gYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGF1dGhDbGllbnQuYWRtaW4uaW1wZXJzb25hdGVVc2VyKHtcbiAgICAgIHVzZXJJZDogaWQsXG4gICAgICBmZXRjaE9wdGlvbnM6IHtcbiAgICAgICAgb25TdWNjZXNzKCkge1xuICAgICAgICAgIHJvdXRlci5wdXNoKCcvJylcbiAgICAgICAgfSxcbiAgICAgICAgb25FcnJvcihlcnJvcjogYW55KSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgaW1wZXJzb25hdGluZyB1c2VyOicsIGVycm9yKVxuICAgICAgICAgIHRvYXN0LmVycm9yKCdGYWlsZWQgdG8gaW1wZXJzb25hdGUgdXNlcicpXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBoYW5kbGVCYW4gPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYXV0aENsaWVudC5hZG1pbi5iYW5Vc2VyKHtcbiAgICAgIHVzZXJJZDogaWQsXG4gICAgICBmZXRjaE9wdGlvbnM6IHtcbiAgICAgICAgb25TdWNjZXNzKCkge1xuICAgICAgICAgIHRvYXN0LnN1Y2Nlc3MoJ1VzZXIgYmFubmVkIHN1Y2Nlc3NmdWxseScpXG4gICAgICAgICAgcm91dGVyLnJlZnJlc2goKVxuICAgICAgICB9LFxuICAgICAgICBvbkVycm9yKGVycm9yOiBhbnkpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBiYW5uaW5nIHVzZXI6JywgZXJyb3IpXG4gICAgICAgICAgdG9hc3QuZXJyb3IoJ0ZhaWxlZCB0byBiYW4gdXNlcicpXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pXG4gIH1cblxuICBjb25zdCBoYW5kbGVVbmJhbiA9IGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBhdXRoQ2xpZW50LmFkbWluLnVuYmFuVXNlcih7XG4gICAgICB1c2VySWQ6IGlkLFxuICAgICAgZmV0Y2hPcHRpb25zOiB7XG4gICAgICAgIG9uU3VjY2VzcygpIHtcbiAgICAgICAgICB0b2FzdC5zdWNjZXNzKCdVc2VyIHVuYmFubmVkIHN1Y2Nlc3NmdWxseScpXG4gICAgICAgICAgcm91dGVyLnJlZnJlc2goKVxuICAgICAgICB9LFxuICAgICAgICBvbkVycm9yKGVycm9yOiBhbnkpIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciB1bmJhbm5pbmcgdXNlcjonLCBlcnJvcilcbiAgICAgICAgICB0b2FzdC5lcnJvcignRmFpbGVkIHRvIHVuYmFuIHVzZXInKVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUmV2b2tlQWxsU2Vzc2lvbnMgPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgYXV0aENsaWVudC5hZG1pbi5yZXZva2VVc2VyU2Vzc2lvbnMoe1xuICAgICAgdXNlcklkOiBpZCxcbiAgICAgIGZldGNoT3B0aW9uczoge1xuICAgICAgICBvblN1Y2Nlc3MoKSB7XG4gICAgICAgICAgdG9hc3Quc3VjY2VzcygnQWxsIHNlc3Npb25zIHJldm9rZWQgc3VjY2Vzc2Z1bGx5JylcbiAgICAgICAgICByb3V0ZXIucmVmcmVzaCgpXG4gICAgICAgIH0sXG4gICAgICAgIG9uRXJyb3IoZXJyb3I6IGFueSkge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHJldm9raW5nIGFsbCBzZXNzaW9uczonLCBlcnJvcilcbiAgICAgICAgICB0b2FzdC5lcnJvcignRmFpbGVkIHRvIHJldm9rZSBhbGwgc2Vzc2lvbnMnKVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPHN0eWxlPntgXG4gICAgICAgIC5hZG1pbi1hY3Rpb25zLWNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIC5hZG1pbi1hY3Rpb25zLWNvbnRhaW5lciBoMyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuYWRtaW4tYWN0aW9ucy1jb250YWluZXIgLmJ0biB7XG4gICAgICAgICAgbWFyZ2luLWJsb2NrOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmJhbi1idXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG9rbGNoKDAuMjU4IDAuMDkyIDI2LjA0Mik7XG4gICAgICAgICAgY29sb3I6IG9rbGNoKDAuNTc3IDAuMjQ1IDI3LjMyNSk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgb2tsY2goMC4zOTYgMC4xNDEgMjUuNzIzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogb2tsY2goMC41MDUgMC4yMTMgMjcuNTE4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJldm9rZS1zZXNzaW9ucy1idXR0b24ge1xuICAgICAgICAgIC0tdGhlbWUtZWxldmF0aW9uLTgwMDogb2tsY2goMC4zOTYgMC4xNDEgMjUuNzIzKTtcbiAgICAgICAgICBjb2xvcjogb2tsY2goMC42MzcgMC4yMzcgMjUuMzMxKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC0tdGhlbWUtZWxldmF0aW9uLTQwMDogb2tsY2goMC4zOTYgMC4xNDEgMjUuNzIzKTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogb2tsY2goMC4zOTYgMC4xNDEgMjUuNzIzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIGB9PC9zdHlsZT5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYWRtaW4tYWN0aW9ucy1jb250YWluZXJcIj5cbiAgICAgICAgPGgzPkFkbWluIEFjdGlvbnM8L2gzPlxuICAgICAgICA8ZGl2IHN0eWxlPXt7IGRpc3BsYXk6ICdmbGV4JywgZmxleFdyYXA6ICd3cmFwJywgY29sdW1uR2FwOiAnMC41cmVtJyB9fT5cbiAgICAgICAgICA8QnV0dG9uIG9uQ2xpY2s9e2hhbmRsZUltcGVyc29uYXRlfSBidXR0b25TdHlsZT1cInByaW1hcnlcIj5cbiAgICAgICAgICAgIEltcGVyc29uYXRlXG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgb25DbGljaz17aGFuZGxlUmV2b2tlQWxsU2Vzc2lvbnN9XG4gICAgICAgICAgICBidXR0b25TdHlsZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICBjbGFzc05hbWU9XCJyZXZva2Utc2Vzc2lvbnMtYnV0dG9uXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBSZXZva2UgQWxsIFNlc3Npb25zXG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgPEJ1dHRvbiBvbkNsaWNrPXtoYW5kbGVCYW59IGJ1dHRvblN0eWxlPVwiZXJyb3JcIiBjbGFzc05hbWU9XCJiYW4tYnV0dG9uXCI+XG4gICAgICAgICAgICBCYW5cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICA8QnV0dG9uIG9uQ2xpY2s9e2hhbmRsZVVuYmFufSBidXR0b25TdHlsZT1cInByaW1hcnlcIj5cbiAgICAgICAgICAgIFVuYmFuXG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC8+XG4gIClcbn1cbiJdLCJuYW1lcyI6WyJSZWFjdCIsInVzZUVmZmVjdCIsInVzZVN0YXRlIiwiYWRtaW5DbGllbnQiLCJjcmVhdGVBdXRoQ2xpZW50IiwidXNlUGFyYW1zIiwidXNlUGF0aG5hbWUiLCJ1c2VSb3V0ZXIiLCJCdXR0b24iLCJ0b2FzdCIsImdldERvY3VtZW50RGF0YSIsImlkIiwicGF0aCIsImFwaVVybCIsInJlc3BvbnNlIiwiZmV0Y2giLCJvayIsImh0bWxSZXNwb25zZSIsInRleHQiLCJkb2N1bWVudERhdGEiLCJwYXJzZXIiLCJET01QYXJzZXIiLCJkb2MiLCJwYXJzZUZyb21TdHJpbmciLCJqc29uUm93cyIsInF1ZXJ5U2VsZWN0b3JBbGwiLCJsZW5ndGgiLCJmb3JFYWNoIiwicm93Iiwia2V5TWF0Y2giLCJpbm5lckhUTUwiLCJtYXRjaCIsImtleSIsInRyaW0iLCJ2YWx1ZUVsZW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwidmFsdWUiLCJ0ZXh0Q29udGVudCIsImlzTmFOIiwiTnVtYmVyIiwidG9TdHJpbmciLCJzdGFydHNXaXRoIiwiZW5kc1dpdGgiLCJzdWJzdHJpbmciLCJwYXJzZUVycm9yIiwiY29uc29sZSIsImVycm9yIiwiYXBpRXJyb3IiLCJBZG1pbkJ1dHRvbnMiLCJ1c2VyU2x1ZyIsInJvdXRlciIsInBhcmFtcyIsInNldElkIiwic2V0RG9jdW1lbnREYXRhIiwiYXV0aENsaWVudCIsInBsdWdpbnMiLCJmZXRjaERvY3VtZW50RGF0YSIsInNlZ21lbnRzIiwidXNlclNsdWdJbmRleCIsImZpbmRJbmRleCIsInNlZ21lbnQiLCJoYW5kbGVJbXBlcnNvbmF0ZSIsImFkbWluIiwiaW1wZXJzb25hdGVVc2VyIiwidXNlcklkIiwiZmV0Y2hPcHRpb25zIiwib25TdWNjZXNzIiwicHVzaCIsIm9uRXJyb3IiLCJoYW5kbGVCYW4iLCJiYW5Vc2VyIiwic3VjY2VzcyIsInJlZnJlc2giLCJoYW5kbGVVbmJhbiIsInVuYmFuVXNlciIsImhhbmRsZVJldm9rZUFsbFNlc3Npb25zIiwicmV2b2tlVXNlclNlc3Npb25zIiwic3R5bGUiLCJkaXYiLCJjbGFzc05hbWUiLCJoMyIsImRpc3BsYXkiLCJmbGV4V3JhcCIsImNvbHVtbkdhcCIsIm9uQ2xpY2siLCJidXR0b25TdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUE7O0FBRUEsT0FBT0EsU0FBU0MsU0FBUyxFQUFFQyxRQUFRLFFBQVEsUUFBTztBQUNsRCxTQUFTQyxXQUFXLFFBQVEsNkJBQTRCO0FBQ3hELFNBQVNDLGdCQUFnQixRQUFRLG9CQUFtQjtBQUNwRCxTQUFTQyxTQUFTLEVBQUVDLFdBQVcsRUFBRUMsU0FBUyxRQUFRLGtCQUFpQjtBQUNuRSxTQUFTQyxNQUFNLEVBQUVDLEtBQUssUUFBUSxpQkFBZ0I7QUFDOUMsT0FBTyxlQUFjO0FBRXJCLE9BQU8sNEJBQTJCO0FBRWxDLGVBQWVDLGdCQUFnQkMsRUFBVSxFQUFFQyxJQUFZO0lBQ3JELE1BQU1DLFNBQVMsR0FBR0QsS0FBSyxJQUFJLENBQUM7SUFDNUIsSUFBSTtRQUNGLHdEQUF3RDtRQUN4RCxNQUFNRSxX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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"login-redirect.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/payload/components/login-redirect.tsx"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,aAAa,SAEpC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { redirect } from 'next/navigation';
|
|
2
|
-
export default function LoginRedirect() {
|
|
3
|
-
redirect('/admin/login');
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9iZXR0ZXItYXV0aC9wbHVnaW4vcGF5bG9hZC9jb21wb25lbnRzL2xvZ2luLXJlZGlyZWN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWRpcmVjdCB9IGZyb20gJ25leHQvbmF2aWdhdGlvbidcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gTG9naW5SZWRpcmVjdCgpIHtcbiAgcmVkaXJlY3QoJy9hZG1pbi9sb2dpbicpXG59XG4iXSwibmFtZXMiOlsicmVkaXJlY3QiLCJMb2dpblJlZGlyZWN0Il0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxRQUFRLFFBQVEsa0JBQWlCO0FBRTFDLGVBQWUsU0FBU0M7SUFDdEJELFNBQVM7QUFDWCJ9
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../../../src/better-auth/plugin/payload/components/logout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,MAAM,CAAC,OAAO,UAAU,YAAY,sBAkDnC"}
|