@mulverse/mulguard-core 1.0.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/README.md +24 -0
- package/adapters.d.ts +522 -0
- package/adapters.d.ts.map +1 -0
- package/adapters.js +170 -0
- package/errors.d.ts +429 -0
- package/errors.d.ts.map +1 -0
- package/errors.js +473 -0
- package/index.d.ts +547 -0
- package/index.d.ts.map +1 -0
- package/index.js +142 -0
- package/jwt.d.ts +132 -0
- package/jwt.d.ts.map +1 -0
- package/jwt.js +123 -0
- package/lib/actions/callback/handle-login.d.ts +35 -0
- package/lib/actions/callback/handle-login.d.ts.map +1 -0
- package/lib/actions/callback/handle-login.js +275 -0
- package/lib/actions/callback/index.d.ts +5 -0
- package/lib/actions/callback/index.d.ts.map +1 -0
- package/lib/actions/callback/index.js +409 -0
- package/lib/actions/callback/oauth/callback.d.ts +36 -0
- package/lib/actions/callback/oauth/callback.d.ts.map +1 -0
- package/lib/actions/callback/oauth/callback.js +248 -0
- package/lib/actions/callback/oauth/checks.d.ts +70 -0
- package/lib/actions/callback/oauth/checks.d.ts.map +1 -0
- package/lib/actions/callback/oauth/checks.js +188 -0
- package/lib/actions/callback/oauth/csrf-token.d.ts +33 -0
- package/lib/actions/callback/oauth/csrf-token.d.ts.map +1 -0
- package/lib/actions/callback/oauth/csrf-token.js +39 -0
- package/lib/actions/index.d.ts +6 -0
- package/lib/actions/index.d.ts.map +1 -0
- package/lib/actions/index.js +5 -0
- package/lib/actions/session.d.ts +5 -0
- package/lib/actions/session.d.ts.map +1 -0
- package/lib/actions/session.js +127 -0
- package/lib/actions/signin/authorization-url.d.ts +12 -0
- package/lib/actions/signin/authorization-url.d.ts.map +1 -0
- package/lib/actions/signin/authorization-url.js +94 -0
- package/lib/actions/signin/index.d.ts +4 -0
- package/lib/actions/signin/index.d.ts.map +1 -0
- package/lib/actions/signin/index.js +22 -0
- package/lib/actions/signin/send-token.d.ts +10 -0
- package/lib/actions/signin/send-token.d.ts.map +1 -0
- package/lib/actions/signin/send-token.js +98 -0
- package/lib/actions/signout.d.ts +11 -0
- package/lib/actions/signout.d.ts.map +1 -0
- package/lib/actions/signout.js +30 -0
- package/lib/actions/webauthn-options.d.ts +8 -0
- package/lib/actions/webauthn-options.d.ts.map +1 -0
- package/lib/actions/webauthn-options.js +60 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +70 -0
- package/lib/init.d.ts +25 -0
- package/lib/init.d.ts.map +1 -0
- package/lib/init.js +172 -0
- package/lib/pages/error.d.ts +17 -0
- package/lib/pages/error.d.ts.map +1 -0
- package/lib/pages/error.js +40 -0
- package/lib/pages/index.d.ts +42 -0
- package/lib/pages/index.d.ts.map +1 -0
- package/lib/pages/index.js +136 -0
- package/lib/pages/signin.d.ts +10 -0
- package/lib/pages/signin.d.ts.map +1 -0
- package/lib/pages/signin.js +75 -0
- package/lib/pages/signout.d.ts +8 -0
- package/lib/pages/signout.d.ts.map +1 -0
- package/lib/pages/signout.js +17 -0
- package/lib/pages/styles.d.ts +3 -0
- package/lib/pages/styles.d.ts.map +1 -0
- package/lib/pages/styles.js +381 -0
- package/lib/pages/verify-request.d.ts +8 -0
- package/lib/pages/verify-request.d.ts.map +1 -0
- package/lib/pages/verify-request.js +11 -0
- package/lib/symbols.d.ts +50 -0
- package/lib/symbols.d.ts.map +1 -0
- package/lib/symbols.js +57 -0
- package/lib/utils/actions.d.ts +3 -0
- package/lib/utils/actions.d.ts.map +1 -0
- package/lib/utils/actions.js +14 -0
- package/lib/utils/assert.d.ts +14 -0
- package/lib/utils/assert.d.ts.map +1 -0
- package/lib/utils/assert.js +168 -0
- package/lib/utils/callback-url.d.ts +17 -0
- package/lib/utils/callback-url.d.ts.map +1 -0
- package/lib/utils/callback-url.js +27 -0
- package/lib/utils/cookie.d.ts +111 -0
- package/lib/utils/cookie.d.ts.map +1 -0
- package/lib/utils/cookie.js +205 -0
- package/lib/utils/date.d.ts +7 -0
- package/lib/utils/date.d.ts.map +1 -0
- package/lib/utils/date.js +8 -0
- package/lib/utils/email.d.ts +20 -0
- package/lib/utils/email.d.ts.map +1 -0
- package/lib/utils/email.js +57 -0
- package/lib/utils/env.d.ts +9 -0
- package/lib/utils/env.d.ts.map +1 -0
- package/lib/utils/env.js +96 -0
- package/lib/utils/logger.d.ts +18 -0
- package/lib/utils/logger.d.ts.map +1 -0
- package/lib/utils/logger.js +50 -0
- package/lib/utils/merge.d.ts +3 -0
- package/lib/utils/merge.d.ts.map +1 -0
- package/lib/utils/merge.js +23 -0
- package/lib/utils/providers.d.ts +19 -0
- package/lib/utils/providers.d.ts.map +1 -0
- package/lib/utils/providers.js +149 -0
- package/lib/utils/session.d.ts +7 -0
- package/lib/utils/session.d.ts.map +1 -0
- package/lib/utils/session.js +29 -0
- package/lib/utils/web.d.ts +10 -0
- package/lib/utils/web.d.ts.map +1 -0
- package/lib/utils/web.js +109 -0
- package/lib/utils/webauthn-client.d.ts +30 -0
- package/lib/utils/webauthn-client.d.ts.map +1 -0
- package/lib/utils/webauthn-client.js +197 -0
- package/lib/utils/webauthn-utils.d.ts +81 -0
- package/lib/utils/webauthn-utils.d.ts.map +1 -0
- package/lib/utils/webauthn-utils.js +343 -0
- package/lib/vendored/cookie.d.ts +120 -0
- package/lib/vendored/cookie.d.ts.map +1 -0
- package/lib/vendored/cookie.js +237 -0
- package/package.json +118 -0
- package/providers/42-school.d.ts +240 -0
- package/providers/42-school.d.ts.map +1 -0
- package/providers/42-school.js +78 -0
- package/providers/apple.d.ts +149 -0
- package/providers/apple.d.ts.map +1 -0
- package/providers/apple.js +104 -0
- package/providers/asgardeo.d.ts +102 -0
- package/providers/asgardeo.d.ts.map +1 -0
- package/providers/asgardeo.js +93 -0
- package/providers/atlassian.d.ts +94 -0
- package/providers/atlassian.d.ts.map +1 -0
- package/providers/atlassian.js +84 -0
- package/providers/auth0.d.ts +116 -0
- package/providers/auth0.d.ts.map +1 -0
- package/providers/auth0.js +49 -0
- package/providers/authentik.d.ts +90 -0
- package/providers/authentik.d.ts.map +1 -0
- package/providers/authentik.js +65 -0
- package/providers/azure-ad-b2c.d.ts +104 -0
- package/providers/azure-ad-b2c.d.ts.map +1 -0
- package/providers/azure-ad-b2c.js +100 -0
- package/providers/azure-ad.d.ts +19 -0
- package/providers/azure-ad.d.ts.map +1 -0
- package/providers/azure-ad.js +23 -0
- package/providers/azure-devops.d.ts +128 -0
- package/providers/azure-devops.d.ts.map +1 -0
- package/providers/azure-devops.js +158 -0
- package/providers/bankid-no.d.ts +134 -0
- package/providers/bankid-no.d.ts.map +1 -0
- package/providers/bankid-no.js +65 -0
- package/providers/battlenet.d.ts +85 -0
- package/providers/battlenet.d.ts.map +1 -0
- package/providers/battlenet.js +81 -0
- package/providers/beyondidentity.d.ts +77 -0
- package/providers/beyondidentity.d.ts.map +1 -0
- package/providers/beyondidentity.js +84 -0
- package/providers/bitbucket.d.ts +89 -0
- package/providers/bitbucket.d.ts.map +1 -0
- package/providers/bitbucket.js +92 -0
- package/providers/box.d.ts +63 -0
- package/providers/box.d.ts.map +1 -0
- package/providers/box.js +73 -0
- package/providers/boxyhq-saml.d.ts +121 -0
- package/providers/boxyhq-saml.d.ts.map +1 -0
- package/providers/boxyhq-saml.js +127 -0
- package/providers/bungie.d.ts +167 -0
- package/providers/bungie.d.ts.map +1 -0
- package/providers/bungie.js +174 -0
- package/providers/click-up.d.ts +75 -0
- package/providers/click-up.d.ts.map +1 -0
- package/providers/click-up.js +89 -0
- package/providers/cognito.d.ts +81 -0
- package/providers/cognito.d.ts.map +1 -0
- package/providers/cognito.js +73 -0
- package/providers/coinbase.d.ts +69 -0
- package/providers/coinbase.d.ts.map +1 -0
- package/providers/coinbase.js +78 -0
- package/providers/concept2.d.ts +81 -0
- package/providers/concept2.d.ts.map +1 -0
- package/providers/concept2.js +86 -0
- package/providers/credentials.d.ts +132 -0
- package/providers/credentials.d.ts.map +1 -0
- package/providers/credentials.js +74 -0
- package/providers/descope.d.ts +91 -0
- package/providers/descope.d.ts.map +1 -0
- package/providers/descope.js +78 -0
- package/providers/discord.d.ts +139 -0
- package/providers/discord.d.ts.map +1 -0
- package/providers/discord.js +86 -0
- package/providers/dribbble.d.ts +88 -0
- package/providers/dribbble.d.ts.map +1 -0
- package/providers/dribbble.js +85 -0
- package/providers/dropbox.d.ts +65 -0
- package/providers/dropbox.d.ts.map +1 -0
- package/providers/dropbox.js +88 -0
- package/providers/duende-identity-server6.d.ts +91 -0
- package/providers/duende-identity-server6.d.ts.map +1 -0
- package/providers/duende-identity-server6.js +80 -0
- package/providers/email.d.ts +41 -0
- package/providers/email.d.ts.map +1 -0
- package/providers/email.js +18 -0
- package/providers/eventbrite.d.ts +78 -0
- package/providers/eventbrite.d.ts.map +1 -0
- package/providers/eventbrite.js +88 -0
- package/providers/eveonline.d.ts +94 -0
- package/providers/eveonline.d.ts.map +1 -0
- package/providers/eveonline.js +92 -0
- package/providers/facebook.d.ts +84 -0
- package/providers/facebook.d.ts.map +1 -0
- package/providers/facebook.js +93 -0
- package/providers/faceit.d.ts +64 -0
- package/providers/faceit.d.ts.map +1 -0
- package/providers/faceit.js +74 -0
- package/providers/figma.d.ts +75 -0
- package/providers/figma.d.ts.map +1 -0
- package/providers/figma.js +81 -0
- package/providers/forwardemail.d.ts +4 -0
- package/providers/forwardemail.d.ts.map +1 -0
- package/providers/forwardemail.js +32 -0
- package/providers/foursquare.d.ts +71 -0
- package/providers/foursquare.d.ts.map +1 -0
- package/providers/foursquare.js +91 -0
- package/providers/freshbooks.d.ts +66 -0
- package/providers/freshbooks.d.ts.map +1 -0
- package/providers/freshbooks.js +76 -0
- package/providers/frontegg.d.ts +95 -0
- package/providers/frontegg.d.ts.map +1 -0
- package/providers/frontegg.js +88 -0
- package/providers/fusionauth.d.ts +279 -0
- package/providers/fusionauth.d.ts.map +1 -0
- package/providers/fusionauth.js +292 -0
- package/providers/github.d.ts +127 -0
- package/providers/github.d.ts.map +1 -0
- package/providers/github.js +115 -0
- package/providers/gitlab.d.ts +115 -0
- package/providers/gitlab.d.ts.map +1 -0
- package/providers/gitlab.js +75 -0
- package/providers/google.d.ts +138 -0
- package/providers/google.d.ts.map +1 -0
- package/providers/google.js +119 -0
- package/providers/hubspot.d.ts +76 -0
- package/providers/hubspot.d.ts.map +1 -0
- package/providers/hubspot.js +93 -0
- package/providers/huggingface.d.ts +216 -0
- package/providers/huggingface.d.ts.map +1 -0
- package/providers/huggingface.js +101 -0
- package/providers/identity-server4.d.ts +69 -0
- package/providers/identity-server4.d.ts.map +1 -0
- package/providers/identity-server4.js +64 -0
- package/providers/index.d.ts +61 -0
- package/providers/index.d.ts.map +1 -0
- package/providers/index.js +3 -0
- package/providers/instagram.d.ts +74 -0
- package/providers/instagram.d.ts.map +1 -0
- package/providers/instagram.js +87 -0
- package/providers/kakao.d.ts +148 -0
- package/providers/kakao.d.ts.map +1 -0
- package/providers/kakao.js +103 -0
- package/providers/keycloak.d.ts +100 -0
- package/providers/keycloak.d.ts.map +1 -0
- package/providers/keycloak.js +73 -0
- package/providers/kinde.d.ts +73 -0
- package/providers/kinde.d.ts.map +1 -0
- package/providers/kinde.js +51 -0
- package/providers/line.d.ts +83 -0
- package/providers/line.d.ts.map +1 -0
- package/providers/line.js +73 -0
- package/providers/linkedin.d.ts +77 -0
- package/providers/linkedin.d.ts.map +1 -0
- package/providers/linkedin.js +65 -0
- package/providers/logto.d.ts +98 -0
- package/providers/logto.d.ts.map +1 -0
- package/providers/logto.js +81 -0
- package/providers/loops.d.ts +40 -0
- package/providers/loops.d.ts.map +1 -0
- package/providers/loops.js +59 -0
- package/providers/mailchimp.d.ts +66 -0
- package/providers/mailchimp.d.ts.map +1 -0
- package/providers/mailchimp.js +76 -0
- package/providers/mailgun.d.ts +55 -0
- package/providers/mailgun.d.ts.map +1 -0
- package/providers/mailgun.js +74 -0
- package/providers/mailru.d.ts +63 -0
- package/providers/mailru.d.ts.map +1 -0
- package/providers/mailru.js +61 -0
- package/providers/mastodon.d.ts +90 -0
- package/providers/mastodon.d.ts.map +1 -0
- package/providers/mastodon.js +75 -0
- package/providers/mattermost.d.ts +132 -0
- package/providers/mattermost.d.ts.map +1 -0
- package/providers/mattermost.js +83 -0
- package/providers/medium.d.ts +68 -0
- package/providers/medium.d.ts.map +1 -0
- package/providers/medium.js +84 -0
- package/providers/microsoft-entra-id.d.ts +428 -0
- package/providers/microsoft-entra-id.d.ts.map +1 -0
- package/providers/microsoft-entra-id.js +156 -0
- package/providers/naver.d.ts +80 -0
- package/providers/naver.d.ts.map +1 -0
- package/providers/naver.js +79 -0
- package/providers/netlify.d.ts +66 -0
- package/providers/netlify.d.ts.map +1 -0
- package/providers/netlify.js +85 -0
- package/providers/netsuite.d.ts +189 -0
- package/providers/netsuite.d.ts.map +1 -0
- package/providers/netsuite.js +170 -0
- package/providers/nextcloud.d.ts +150 -0
- package/providers/nextcloud.d.ts.map +1 -0
- package/providers/nextcloud.js +99 -0
- package/providers/nodemailer.d.ts +27 -0
- package/providers/nodemailer.d.ts.map +1 -0
- package/providers/nodemailer.js +34 -0
- package/providers/notion.d.ts +99 -0
- package/providers/notion.d.ts.map +1 -0
- package/providers/notion.js +110 -0
- package/providers/oauth.d.ts +188 -0
- package/providers/oauth.d.ts.map +1 -0
- package/providers/oauth.js +1 -0
- package/providers/okta.d.ts +99 -0
- package/providers/okta.d.ts.map +1 -0
- package/providers/okta.js +63 -0
- package/providers/onelogin.d.ts +65 -0
- package/providers/onelogin.d.ts.map +1 -0
- package/providers/onelogin.js +61 -0
- package/providers/ory-hydra.d.ts +79 -0
- package/providers/ory-hydra.d.ts.map +1 -0
- package/providers/ory-hydra.js +67 -0
- package/providers/osso.d.ts +79 -0
- package/providers/osso.d.ts.map +1 -0
- package/providers/osso.js +77 -0
- package/providers/osu.d.ts +116 -0
- package/providers/osu.d.ts.map +1 -0
- package/providers/osu.js +75 -0
- package/providers/passage.d.ts +88 -0
- package/providers/passage.d.ts.map +1 -0
- package/providers/passage.js +75 -0
- package/providers/passkey.d.ts +65 -0
- package/providers/passkey.d.ts.map +1 -0
- package/providers/passkey.js +87 -0
- package/providers/patreon.d.ts +73 -0
- package/providers/patreon.d.ts.map +1 -0
- package/providers/patreon.js +77 -0
- package/providers/ping-id.d.ts +57 -0
- package/providers/ping-id.d.ts.map +1 -0
- package/providers/ping-id.js +40 -0
- package/providers/pinterest.d.ts +79 -0
- package/providers/pinterest.d.ts.map +1 -0
- package/providers/pinterest.js +85 -0
- package/providers/pipedrive.d.ts +99 -0
- package/providers/pipedrive.d.ts.map +1 -0
- package/providers/pipedrive.js +71 -0
- package/providers/postmark.d.ts +4 -0
- package/providers/postmark.d.ts.map +1 -0
- package/providers/postmark.js +36 -0
- package/providers/provider-types.d.ts +3 -0
- package/providers/provider-types.d.ts.map +1 -0
- package/providers/provider-types.js +1 -0
- package/providers/reddit.d.ts +88 -0
- package/providers/reddit.d.ts.map +1 -0
- package/providers/reddit.js +90 -0
- package/providers/resend.d.ts +4 -0
- package/providers/resend.d.ts.map +1 -0
- package/providers/resend.js +32 -0
- package/providers/roblox.d.ts +67 -0
- package/providers/roblox.d.ts.map +1 -0
- package/providers/roblox.js +53 -0
- package/providers/salesforce.d.ts +59 -0
- package/providers/salesforce.d.ts.map +1 -0
- package/providers/salesforce.js +52 -0
- package/providers/sendgrid.d.ts +4 -0
- package/providers/sendgrid.d.ts.map +1 -0
- package/providers/sendgrid.js +35 -0
- package/providers/simplelogin.d.ts +87 -0
- package/providers/simplelogin.d.ts.map +1 -0
- package/providers/simplelogin.js +83 -0
- package/providers/slack.d.ts +102 -0
- package/providers/slack.d.ts.map +1 -0
- package/providers/slack.js +69 -0
- package/providers/spotify.d.ts +75 -0
- package/providers/spotify.d.ts.map +1 -0
- package/providers/spotify.js +73 -0
- package/providers/strava.d.ts +68 -0
- package/providers/strava.d.ts.map +1 -0
- package/providers/strava.js +80 -0
- package/providers/threads.d.ts +108 -0
- package/providers/threads.d.ts.map +1 -0
- package/providers/threads.js +89 -0
- package/providers/tiktok.d.ts +248 -0
- package/providers/tiktok.d.ts.map +1 -0
- package/providers/tiktok.js +195 -0
- package/providers/todoist.d.ts +76 -0
- package/providers/todoist.d.ts.map +1 -0
- package/providers/todoist.js +97 -0
- package/providers/trakt.d.ts +93 -0
- package/providers/trakt.d.ts.map +1 -0
- package/providers/trakt.js +91 -0
- package/providers/twitch.d.ts +71 -0
- package/providers/twitch.d.ts.map +1 -0
- package/providers/twitch.js +96 -0
- package/providers/twitter.d.ts +183 -0
- package/providers/twitter.d.ts.map +1 -0
- package/providers/twitter.js +100 -0
- package/providers/united-effects.d.ts +80 -0
- package/providers/united-effects.d.ts.map +1 -0
- package/providers/united-effects.js +72 -0
- package/providers/vipps.d.ts +71 -0
- package/providers/vipps.d.ts.map +1 -0
- package/providers/vipps.js +33 -0
- package/providers/vk.d.ts +334 -0
- package/providers/vk.d.ts.map +1 -0
- package/providers/vk.js +103 -0
- package/providers/webauthn.d.ts +148 -0
- package/providers/webauthn.d.ts.map +1 -0
- package/providers/webauthn.js +128 -0
- package/providers/webex.d.ts +78 -0
- package/providers/webex.d.ts.map +1 -0
- package/providers/webex.js +73 -0
- package/providers/wechat.d.ts +78 -0
- package/providers/wechat.d.ts.map +1 -0
- package/providers/wechat.js +105 -0
- package/providers/wikimedia.d.ts +99 -0
- package/providers/wikimedia.d.ts.map +1 -0
- package/providers/wikimedia.js +90 -0
- package/providers/wordpress.d.ts +65 -0
- package/providers/wordpress.d.ts.map +1 -0
- package/providers/wordpress.js +71 -0
- package/providers/workos.d.ts +154 -0
- package/providers/workos.d.ts.map +1 -0
- package/providers/workos.js +143 -0
- package/providers/yandex.d.ts +131 -0
- package/providers/yandex.d.ts.map +1 -0
- package/providers/yandex.js +80 -0
- package/providers/zitadel.d.ts +117 -0
- package/providers/zitadel.d.ts.map +1 -0
- package/providers/zitadel.js +95 -0
- package/providers/zoho.d.ts +63 -0
- package/providers/zoho.d.ts.map +1 -0
- package/providers/zoho.js +79 -0
- package/providers/zoom.d.ts +93 -0
- package/providers/zoom.d.ts.map +1 -0
- package/providers/zoom.js +82 -0
- package/src/adapters/server-actions-helpers.ts +126 -0
- package/src/adapters.ts +603 -0
- package/src/errors.ts +551 -0
- package/src/index.ts +689 -0
- package/src/jwt.ts +283 -0
- package/src/lib/actions/callback/handle-login.ts +334 -0
- package/src/lib/actions/callback/index.ts +554 -0
- package/src/lib/actions/callback/oauth/callback.ts +347 -0
- package/src/lib/actions/callback/oauth/checks.ts +258 -0
- package/src/lib/actions/callback/oauth/csrf-token.ts +60 -0
- package/src/lib/actions/index.ts +5 -0
- package/src/lib/actions/session.ts +167 -0
- package/src/lib/actions/signin/authorization-url.ts +123 -0
- package/src/lib/actions/signin/index.ts +37 -0
- package/src/lib/actions/signin/send-token.ts +124 -0
- package/src/lib/actions/signout.ts +38 -0
- package/src/lib/actions/webauthn-options.ts +100 -0
- package/src/lib/index.ts +97 -0
- package/src/lib/init.ts +236 -0
- package/src/lib/pages/error.tsx +106 -0
- package/src/lib/pages/index.ts +181 -0
- package/src/lib/pages/signin.tsx +255 -0
- package/src/lib/pages/signout.tsx +49 -0
- package/src/lib/pages/styles.css +377 -0
- package/src/lib/pages/styles.ts +381 -0
- package/src/lib/pages/verify-request.tsx +36 -0
- package/src/lib/symbols.ts +60 -0
- package/src/lib/utils/actions.ts +17 -0
- package/src/lib/utils/assert.ts +259 -0
- package/src/lib/utils/callback-url.ts +42 -0
- package/src/lib/utils/cookie.ts +248 -0
- package/src/lib/utils/date.ts +8 -0
- package/src/lib/utils/email.ts +65 -0
- package/src/lib/utils/env.ts +113 -0
- package/src/lib/utils/logger.ts +75 -0
- package/src/lib/utils/merge.ts +30 -0
- package/src/lib/utils/providers.ts +203 -0
- package/src/lib/utils/session.ts +41 -0
- package/src/lib/utils/web.ts +151 -0
- package/src/lib/utils/webauthn-client.js +229 -0
- package/src/lib/utils/webauthn-utils.ts +531 -0
- package/src/lib/vendored/cookie.ts +383 -0
- package/src/providers/42-school.ts +256 -0
- package/src/providers/apple.ts +206 -0
- package/src/providers/asgardeo.ts +118 -0
- package/src/providers/atlassian.ts +120 -0
- package/src/providers/auth0.ts +127 -0
- package/src/providers/authentik.ts +100 -0
- package/src/providers/azure-ad-b2c.ts +124 -0
- package/src/providers/azure-ad.ts +30 -0
- package/src/providers/azure-devops.ts +184 -0
- package/src/providers/bankid-no.ts +161 -0
- package/src/providers/battlenet.ts +107 -0
- package/src/providers/beyondidentity.ts +102 -0
- package/src/providers/bitbucket.ts +122 -0
- package/src/providers/box.ts +87 -0
- package/src/providers/boxyhq-saml.ts +148 -0
- package/src/providers/bungie.ts +192 -0
- package/src/providers/click-up.ts +104 -0
- package/src/providers/cognito.ts +94 -0
- package/src/providers/coinbase.ts +93 -0
- package/src/providers/concept2.ts +108 -0
- package/src/providers/credentials.ts +157 -0
- package/src/providers/descope.ts +105 -0
- package/src/providers/discord.ts +176 -0
- package/src/providers/dribbble.ts +122 -0
- package/src/providers/dropbox.ts +102 -0
- package/src/providers/duende-identity-server6.ts +101 -0
- package/src/providers/email.ts +60 -0
- package/src/providers/eventbrite.ts +105 -0
- package/src/providers/eveonline.ts +117 -0
- package/src/providers/facebook.ts +119 -0
- package/src/providers/faceit.ts +90 -0
- package/src/providers/figma.ts +105 -0
- package/src/providers/forwardemail.ts +37 -0
- package/src/providers/foursquare.ts +105 -0
- package/src/providers/freshbooks.ts +90 -0
- package/src/providers/frontegg.ts +111 -0
- package/src/providers/fusionauth.ts +336 -0
- package/src/providers/github.ts +187 -0
- package/src/providers/gitlab.ts +140 -0
- package/src/providers/google.ts +152 -0
- package/src/providers/hubspot.ts +117 -0
- package/src/providers/huggingface.ts +234 -0
- package/src/providers/identity-server4.ts +78 -0
- package/src/providers/index.ts +115 -0
- package/src/providers/instagram.ts +103 -0
- package/src/providers/kakao.ts +184 -0
- package/src/providers/keycloak.ts +111 -0
- package/src/providers/kinde.ts +85 -0
- package/src/providers/line.ts +99 -0
- package/src/providers/linkedin.ts +91 -0
- package/src/providers/logto.ts +122 -0
- package/src/providers/loops.ts +79 -0
- package/src/providers/mailchimp.ts +90 -0
- package/src/providers/mailgun.ts +98 -0
- package/src/providers/mailru.ts +75 -0
- package/src/providers/mastodon.ts +112 -0
- package/src/providers/mattermost.ts +154 -0
- package/src/providers/medium.ts +89 -0
- package/src/providers/microsoft-entra-id.ts +497 -0
- package/src/providers/naver.ts +102 -0
- package/src/providers/netlify.ts +90 -0
- package/src/providers/netsuite.ts +225 -0
- package/src/providers/nextcloud.ts +207 -0
- package/src/providers/nodemailer.ts +84 -0
- package/src/providers/notion.ts +166 -0
- package/src/providers/oauth.ts +310 -0
- package/src/providers/okta.ts +111 -0
- package/src/providers/onelogin.ts +75 -0
- package/src/providers/ory-hydra.ts +93 -0
- package/src/providers/osso.ts +91 -0
- package/src/providers/osu.ts +138 -0
- package/src/providers/passage.ts +103 -0
- package/src/providers/passkey.ts +94 -0
- package/src/providers/patreon.ts +98 -0
- package/src/providers/ping-id.ts +68 -0
- package/src/providers/pinterest.ts +106 -0
- package/src/providers/pipedrive.ts +120 -0
- package/src/providers/postmark.ts +38 -0
- package/src/providers/provider-types.ts +107 -0
- package/src/providers/reddit.ts +104 -0
- package/src/providers/resend.ts +35 -0
- package/src/providers/roblox.ts +94 -0
- package/src/providers/salesforce.ts +73 -0
- package/src/providers/sendgrid.ts +36 -0
- package/src/providers/simplelogin.ts +107 -0
- package/src/providers/slack.ts +115 -0
- package/src/providers/spotify.ts +99 -0
- package/src/providers/strava.ts +101 -0
- package/src/providers/threads.ts +135 -0
- package/src/providers/tiktok.ts +319 -0
- package/src/providers/todoist.ts +122 -0
- package/src/providers/trakt.ts +120 -0
- package/src/providers/twitch.ts +121 -0
- package/src/providers/twitter.ts +207 -0
- package/src/providers/united-effects.ts +89 -0
- package/src/providers/vipps.ts +86 -0
- package/src/providers/vk.ts +401 -0
- package/src/providers/webauthn.ts +296 -0
- package/src/providers/webex.ts +102 -0
- package/src/providers/wechat.ts +141 -0
- package/src/providers/wikimedia.ts +258 -0
- package/src/providers/wordpress.ts +86 -0
- package/src/providers/workos.ts +180 -0
- package/src/providers/yandex.ts +159 -0
- package/src/providers/zitadel.ts +128 -0
- package/src/providers/zoho.ts +84 -0
- package/src/providers/zoom.ts +119 -0
- package/src/types.ts +430 -0
- package/src/warnings.ts +21 -0
- package/types.d.ts +309 -0
- package/types.d.ts.map +1 -0
- package/types.js +53 -0
- package/warnings.d.ts +17 -0
- package/warnings.d.ts.map +1 -0
- package/warnings.js +1 -0
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <div class="provider" style={{backgroundColor: "#fff", display: "flex", justifyContent: "space-between", color: "#000", padding: 16}}>
|
|
3
|
+
* <span>Built-in <b>Hugging Face</b> integration.</span>
|
|
4
|
+
* <a href="https://huggingface.co">
|
|
5
|
+
* <img style={{display: "block"}} src="https://authjs.dev/img/providers/huggingface.svg" height="48" width="48"/>
|
|
6
|
+
* </a>
|
|
7
|
+
* </div>
|
|
8
|
+
*
|
|
9
|
+
* @module providers/huggingface
|
|
10
|
+
*/
|
|
11
|
+
import type { OIDCConfig, OIDCUserConfig } from "./index.js";
|
|
12
|
+
export interface HuggingfaceProfile {
|
|
13
|
+
/**
|
|
14
|
+
* Unique identifier for the user.
|
|
15
|
+
*/
|
|
16
|
+
sub: string;
|
|
17
|
+
/**
|
|
18
|
+
* Full name of the user.
|
|
19
|
+
*
|
|
20
|
+
* Needs 'profile' scope
|
|
21
|
+
*/
|
|
22
|
+
name?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Username of the user.
|
|
25
|
+
*
|
|
26
|
+
* Need 'profile' scope
|
|
27
|
+
*/
|
|
28
|
+
preferred_username?: string;
|
|
29
|
+
/**
|
|
30
|
+
* URL of the user's avatar.
|
|
31
|
+
*
|
|
32
|
+
* Need 'profile' scope
|
|
33
|
+
*/
|
|
34
|
+
profile?: string;
|
|
35
|
+
/**
|
|
36
|
+
* URL of the user's profile picture.
|
|
37
|
+
*
|
|
38
|
+
* Need 'profile' scope
|
|
39
|
+
*/
|
|
40
|
+
picture?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Need 'profile' scope
|
|
43
|
+
*
|
|
44
|
+
* Website of the user.
|
|
45
|
+
*/
|
|
46
|
+
website?: string;
|
|
47
|
+
/**
|
|
48
|
+
* Need 'email' scope
|
|
49
|
+
*
|
|
50
|
+
* Email address of the user.
|
|
51
|
+
*/
|
|
52
|
+
email?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Need 'email' scope
|
|
55
|
+
*
|
|
56
|
+
* Whether the user's email address is verified. Should always be true, Hugging Face enforces
|
|
57
|
+
* email verification for users to grant access to OAuth apps.
|
|
58
|
+
*/
|
|
59
|
+
email_verified?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Whether the user has a paid subscription.
|
|
62
|
+
*/
|
|
63
|
+
isPro: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Whether the user has a payment method set up.
|
|
66
|
+
*
|
|
67
|
+
* Needs the `read-billing` scope.
|
|
68
|
+
*/
|
|
69
|
+
canPay?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* List of the user's organizations.
|
|
72
|
+
*/
|
|
73
|
+
orgs: Array<{
|
|
74
|
+
/**
|
|
75
|
+
* Unique identifier for the organization.
|
|
76
|
+
*/
|
|
77
|
+
sub: string;
|
|
78
|
+
/**
|
|
79
|
+
* Name of the organization.
|
|
80
|
+
*/
|
|
81
|
+
name: string;
|
|
82
|
+
/**
|
|
83
|
+
* URL of the organization's avatar.
|
|
84
|
+
*/
|
|
85
|
+
picture: string;
|
|
86
|
+
/**
|
|
87
|
+
* Username of the organization.
|
|
88
|
+
*/
|
|
89
|
+
preferred_username: string;
|
|
90
|
+
/**
|
|
91
|
+
* Whether the organization has a paid enterprise subscription.
|
|
92
|
+
*/
|
|
93
|
+
isEnterprise: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Whether the organization has a payment method set up.
|
|
96
|
+
*
|
|
97
|
+
* Access to the organization needs to be granted to the oauth app for this field to be present.
|
|
98
|
+
*/
|
|
99
|
+
canPay?: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* The role of the user in the organization.
|
|
102
|
+
*
|
|
103
|
+
* Access to the organization needs to be granted to the oauth app for this field to be present.
|
|
104
|
+
*/
|
|
105
|
+
roleInOrg?: "admin" | "write" | "read" | "contributor";
|
|
106
|
+
/**
|
|
107
|
+
* User needs to re-authenticate to access the organization.
|
|
108
|
+
*
|
|
109
|
+
* Access to the organization needs to be granted to the oauth app for this field to be present.
|
|
110
|
+
*/
|
|
111
|
+
pendingSSO?: boolean;
|
|
112
|
+
/**
|
|
113
|
+
* User needs to enable MFA to access the organization.
|
|
114
|
+
*
|
|
115
|
+
* Access to the organization needs to be granted to the oauth app for this field to be present.
|
|
116
|
+
*/
|
|
117
|
+
missingMFA?: boolean;
|
|
118
|
+
/**
|
|
119
|
+
* Resource groups are a feature of enterprise organizations.
|
|
120
|
+
*
|
|
121
|
+
* They allow granular access control to resources within the organization.
|
|
122
|
+
*
|
|
123
|
+
* Access to the organization needs to be granted to the oauth app for this field to be present.
|
|
124
|
+
*/
|
|
125
|
+
resourceGroups?: Array<{
|
|
126
|
+
/**
|
|
127
|
+
* Unique identifier for the resource group.
|
|
128
|
+
*/
|
|
129
|
+
sub: string;
|
|
130
|
+
name: string;
|
|
131
|
+
/**
|
|
132
|
+
* The role of the user in the resource group.
|
|
133
|
+
*/
|
|
134
|
+
role: "read" | "write" | "admin" | "contributor";
|
|
135
|
+
}>;
|
|
136
|
+
}>;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Add HuggingFace login to your page.
|
|
140
|
+
*
|
|
141
|
+
* ### Setup
|
|
142
|
+
*
|
|
143
|
+
* #### Callback URL
|
|
144
|
+
* ```
|
|
145
|
+
* https://example.com/api/auth/callback/huggingface
|
|
146
|
+
* ```
|
|
147
|
+
*
|
|
148
|
+
* #### Configuration
|
|
149
|
+
*```ts
|
|
150
|
+
* import { Auth } from "@auth/core"
|
|
151
|
+
* import HuggingFace from "@auth/core/providers/huggingface"
|
|
152
|
+
*
|
|
153
|
+
* const request = new Request(origin)
|
|
154
|
+
* const response = await Auth(request, {
|
|
155
|
+
* providers: [
|
|
156
|
+
* HuggingFace({
|
|
157
|
+
* clientId: HUGGINGFACE_CLIENT_ID,
|
|
158
|
+
* clientSecret: HUGGINGFACE_CLIENT_SECRET,
|
|
159
|
+
* authorization: {
|
|
160
|
+
* params: {
|
|
161
|
+
* scope: "openid profile email", // specify the scopes you need
|
|
162
|
+
* // orgIds: "unique_org_id" // If your oauth app needs access to a specific organization of the user
|
|
163
|
+
* }
|
|
164
|
+
* },
|
|
165
|
+
* }),
|
|
166
|
+
* ],
|
|
167
|
+
* })
|
|
168
|
+
* ```
|
|
169
|
+
*
|
|
170
|
+
* The following scopes are available:
|
|
171
|
+
*
|
|
172
|
+
* - `openid`: Grants access to the user's OpenID Connect profile.
|
|
173
|
+
* - `profile`: Grants access to the user's profile information.
|
|
174
|
+
* - `email`: Grants access to the user's email address.
|
|
175
|
+
* - `read-repos`: Grants read access to the user's repositories.
|
|
176
|
+
* - `write-repos`: Grants write access to the user's repositories.
|
|
177
|
+
* - `manage-repos`: Can create/delete repositories on behalf of the user.
|
|
178
|
+
* - `write-discussions`: Can post on the user's behalf.
|
|
179
|
+
* - `read-billing`: Know if the user has a payment method set up.
|
|
180
|
+
* - `inference-api`: Can make calls to Inference providers on behalf of the user.
|
|
181
|
+
* - `webhooks`: Can manage webhooks on behalf of the user.
|
|
182
|
+
*
|
|
183
|
+
* You need to enable them first in your OAuth app settings.
|
|
184
|
+
*
|
|
185
|
+
* /!\ By default, the `profile` and `email` scopes are enabled in NextAuth. So you need to enable
|
|
186
|
+
* the `email` scope in your OAuth app settings or you will get a scope error.
|
|
187
|
+
*
|
|
188
|
+
* ### Resources
|
|
189
|
+
*
|
|
190
|
+
* - [Hugging Face OAuth documentation](https://huggingface.co/docs/hub/en/oauth#creating-an-oauth-app)
|
|
191
|
+
* - [Create an OAuth application](https://huggingface.co/settings/applications/new)
|
|
192
|
+
*
|
|
193
|
+
* ### Notes
|
|
194
|
+
*
|
|
195
|
+
* By default, Auth.js assumes that the Hugging Face provider is
|
|
196
|
+
* based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) specification.
|
|
197
|
+
*
|
|
198
|
+
* :::tip
|
|
199
|
+
*
|
|
200
|
+
* The HuggingFace provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/huggingface.ts).
|
|
201
|
+
* To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
|
|
202
|
+
*
|
|
203
|
+
* :::
|
|
204
|
+
*
|
|
205
|
+
* :::info **Disclaimer**
|
|
206
|
+
*
|
|
207
|
+
* If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
|
|
208
|
+
*
|
|
209
|
+
* Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
|
|
210
|
+
* the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
|
|
211
|
+
* we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
|
|
212
|
+
*
|
|
213
|
+
* :::
|
|
214
|
+
*/
|
|
215
|
+
export default function Huggingface(options: OIDCUserConfig<HuggingfaceProfile>): OIDCConfig<HuggingfaceProfile>;
|
|
216
|
+
//# sourceMappingURL=huggingface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"huggingface.d.ts","sourceRoot":"","sources":["../src/providers/huggingface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE5D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IACX;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAA;IACd;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;QACV;;WAEG;QACH,GAAG,EAAE,MAAM,CAAA;QACX;;WAEG;QACH,IAAI,EAAE,MAAM,CAAA;QACZ;;WAEG;QACH,OAAO,EAAE,MAAM,CAAA;QACf;;WAEG;QACH,kBAAkB,EAAE,MAAM,CAAA;QAC1B;;WAEG;QACH,YAAY,EAAE,OAAO,CAAA;QACrB;;;;WAIG;QACH,MAAM,CAAC,EAAE,OAAO,CAAA;QAChB;;;;WAIG;QACH,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,aAAa,CAAA;QACtD;;;;WAIG;QACH,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB;;;;WAIG;QACH,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB;;;;;;WAMG;QACH,cAAc,CAAC,EAAE,KAAK,CAAC;YACrB;;eAEG;YACH,GAAG,EAAE,MAAM,CAAA;YACX,IAAI,EAAE,MAAM,CAAA;YACZ;;eAEG;YACH,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,aAAa,CAAA;SACjD,CAAC,CAAA;KACH,CAAC,CAAA;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,OAAO,EAAE,cAAc,CAAC,kBAAkB,CAAC,GAC1C,UAAU,CAAC,kBAAkB,CAAC,CAchC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <div class="provider" style={{backgroundColor: "#fff", display: "flex", justifyContent: "space-between", color: "#000", padding: 16}}>
|
|
3
|
+
* <span>Built-in <b>Hugging Face</b> integration.</span>
|
|
4
|
+
* <a href="https://huggingface.co">
|
|
5
|
+
* <img style={{display: "block"}} src="https://authjs.dev/img/providers/huggingface.svg" height="48" width="48"/>
|
|
6
|
+
* </a>
|
|
7
|
+
* </div>
|
|
8
|
+
*
|
|
9
|
+
* @module providers/huggingface
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Add HuggingFace login to your page.
|
|
13
|
+
*
|
|
14
|
+
* ### Setup
|
|
15
|
+
*
|
|
16
|
+
* #### Callback URL
|
|
17
|
+
* ```
|
|
18
|
+
* https://example.com/api/auth/callback/huggingface
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* #### Configuration
|
|
22
|
+
*```ts
|
|
23
|
+
* import { Auth } from "@auth/core"
|
|
24
|
+
* import HuggingFace from "@auth/core/providers/huggingface"
|
|
25
|
+
*
|
|
26
|
+
* const request = new Request(origin)
|
|
27
|
+
* const response = await Auth(request, {
|
|
28
|
+
* providers: [
|
|
29
|
+
* HuggingFace({
|
|
30
|
+
* clientId: HUGGINGFACE_CLIENT_ID,
|
|
31
|
+
* clientSecret: HUGGINGFACE_CLIENT_SECRET,
|
|
32
|
+
* authorization: {
|
|
33
|
+
* params: {
|
|
34
|
+
* scope: "openid profile email", // specify the scopes you need
|
|
35
|
+
* // orgIds: "unique_org_id" // If your oauth app needs access to a specific organization of the user
|
|
36
|
+
* }
|
|
37
|
+
* },
|
|
38
|
+
* }),
|
|
39
|
+
* ],
|
|
40
|
+
* })
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* The following scopes are available:
|
|
44
|
+
*
|
|
45
|
+
* - `openid`: Grants access to the user's OpenID Connect profile.
|
|
46
|
+
* - `profile`: Grants access to the user's profile information.
|
|
47
|
+
* - `email`: Grants access to the user's email address.
|
|
48
|
+
* - `read-repos`: Grants read access to the user's repositories.
|
|
49
|
+
* - `write-repos`: Grants write access to the user's repositories.
|
|
50
|
+
* - `manage-repos`: Can create/delete repositories on behalf of the user.
|
|
51
|
+
* - `write-discussions`: Can post on the user's behalf.
|
|
52
|
+
* - `read-billing`: Know if the user has a payment method set up.
|
|
53
|
+
* - `inference-api`: Can make calls to Inference providers on behalf of the user.
|
|
54
|
+
* - `webhooks`: Can manage webhooks on behalf of the user.
|
|
55
|
+
*
|
|
56
|
+
* You need to enable them first in your OAuth app settings.
|
|
57
|
+
*
|
|
58
|
+
* /!\ By default, the `profile` and `email` scopes are enabled in NextAuth. So you need to enable
|
|
59
|
+
* the `email` scope in your OAuth app settings or you will get a scope error.
|
|
60
|
+
*
|
|
61
|
+
* ### Resources
|
|
62
|
+
*
|
|
63
|
+
* - [Hugging Face OAuth documentation](https://huggingface.co/docs/hub/en/oauth#creating-an-oauth-app)
|
|
64
|
+
* - [Create an OAuth application](https://huggingface.co/settings/applications/new)
|
|
65
|
+
*
|
|
66
|
+
* ### Notes
|
|
67
|
+
*
|
|
68
|
+
* By default, Auth.js assumes that the Hugging Face provider is
|
|
69
|
+
* based on the [OIDC](https://openid.net/specs/openid-connect-core-1_0.html) specification.
|
|
70
|
+
*
|
|
71
|
+
* :::tip
|
|
72
|
+
*
|
|
73
|
+
* The HuggingFace provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/huggingface.ts).
|
|
74
|
+
* To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
|
|
75
|
+
*
|
|
76
|
+
* :::
|
|
77
|
+
*
|
|
78
|
+
* :::info **Disclaimer**
|
|
79
|
+
*
|
|
80
|
+
* If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
|
|
81
|
+
*
|
|
82
|
+
* Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
|
|
83
|
+
* the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
|
|
84
|
+
* we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
|
|
85
|
+
*
|
|
86
|
+
* :::
|
|
87
|
+
*/
|
|
88
|
+
export default function Huggingface(options) {
|
|
89
|
+
return {
|
|
90
|
+
id: "huggingface",
|
|
91
|
+
name: "Hugging Face",
|
|
92
|
+
type: "oidc",
|
|
93
|
+
issuer: "https://huggingface.co",
|
|
94
|
+
checks: ["state", "pkce"],
|
|
95
|
+
style: {
|
|
96
|
+
bg: "#FFD21E",
|
|
97
|
+
text: "#000",
|
|
98
|
+
},
|
|
99
|
+
options,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
|
|
3
|
+
* <span>Built-in <b>IdentityServer4</b> integration.</span>
|
|
4
|
+
* <a href="https://identityserver4.readthedocs.io">
|
|
5
|
+
* <img style={{display: "block"}} src="https://authjs.dev/img/providers/identity-server4.svg" height="48" width="48"/>
|
|
6
|
+
* </a>
|
|
7
|
+
* </div>
|
|
8
|
+
*
|
|
9
|
+
* @module providers/identity-server4
|
|
10
|
+
*/
|
|
11
|
+
import type { OAuthConfig, OAuthUserConfig } from "./index.js";
|
|
12
|
+
/**
|
|
13
|
+
* Add IdentityServer4 login to your page.
|
|
14
|
+
*
|
|
15
|
+
* ### Setup
|
|
16
|
+
*
|
|
17
|
+
* #### Callback URL
|
|
18
|
+
* ```
|
|
19
|
+
* https://example.com/api/auth/callback/identity-server4
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* #### Configuration
|
|
23
|
+
*```ts
|
|
24
|
+
* import { Auth } from "@auth/core"
|
|
25
|
+
* import IdentityServer4 from "@auth/core/providers/identity-server4"
|
|
26
|
+
*
|
|
27
|
+
* const request = new Request(origin)
|
|
28
|
+
* const response = await Auth(request, {
|
|
29
|
+
* providers: [
|
|
30
|
+
* IdentityServer4({
|
|
31
|
+
* clientId: IDENTITY_SERVER4_CLIENT_ID,
|
|
32
|
+
* clientSecret: IDENTITY_SERVER4_CLIENT_SECRET,
|
|
33
|
+
* issuer: IDENTITY_SERVER4_ISSUER,
|
|
34
|
+
* }),
|
|
35
|
+
* ],
|
|
36
|
+
* })
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* ### Resources
|
|
40
|
+
*
|
|
41
|
+
* - [IdentityServer4 OAuth documentation](https://identityserver4.readthedocs.io/en/latest/)
|
|
42
|
+
*
|
|
43
|
+
* ### Notes
|
|
44
|
+
*
|
|
45
|
+
* By default, Auth.js assumes that the IdentityServer4 provider is
|
|
46
|
+
* based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
|
|
47
|
+
*
|
|
48
|
+
* :::warning
|
|
49
|
+
* IdentityServer4 is discontinued and only releases security updates until November 2022. You should consider an alternative provider.
|
|
50
|
+
* :::
|
|
51
|
+
* :::tip
|
|
52
|
+
*
|
|
53
|
+
* The IdentityServer4 provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/identity-server4.ts).
|
|
54
|
+
* To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
|
|
55
|
+
*
|
|
56
|
+
* :::
|
|
57
|
+
*
|
|
58
|
+
* :::info **Disclaimer**
|
|
59
|
+
*
|
|
60
|
+
* If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
|
|
61
|
+
*
|
|
62
|
+
* Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
|
|
63
|
+
* the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
|
|
64
|
+
* we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
|
|
65
|
+
*
|
|
66
|
+
* :::
|
|
67
|
+
*/
|
|
68
|
+
export default function IdentityServer4(options: OAuthUserConfig<Record<string, any>>): OAuthConfig<Record<string, any>>;
|
|
69
|
+
//# sourceMappingURL=identity-server4.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-server4.d.ts","sourceRoot":"","sources":["../src/providers/identity-server4.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CACrC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAC5C,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAOlC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Add IdentityServer4 login to your page.
|
|
3
|
+
*
|
|
4
|
+
* ### Setup
|
|
5
|
+
*
|
|
6
|
+
* #### Callback URL
|
|
7
|
+
* ```
|
|
8
|
+
* https://example.com/api/auth/callback/identity-server4
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* #### Configuration
|
|
12
|
+
*```ts
|
|
13
|
+
* import { Auth } from "@auth/core"
|
|
14
|
+
* import IdentityServer4 from "@auth/core/providers/identity-server4"
|
|
15
|
+
*
|
|
16
|
+
* const request = new Request(origin)
|
|
17
|
+
* const response = await Auth(request, {
|
|
18
|
+
* providers: [
|
|
19
|
+
* IdentityServer4({
|
|
20
|
+
* clientId: IDENTITY_SERVER4_CLIENT_ID,
|
|
21
|
+
* clientSecret: IDENTITY_SERVER4_CLIENT_SECRET,
|
|
22
|
+
* issuer: IDENTITY_SERVER4_ISSUER,
|
|
23
|
+
* }),
|
|
24
|
+
* ],
|
|
25
|
+
* })
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* ### Resources
|
|
29
|
+
*
|
|
30
|
+
* - [IdentityServer4 OAuth documentation](https://identityserver4.readthedocs.io/en/latest/)
|
|
31
|
+
*
|
|
32
|
+
* ### Notes
|
|
33
|
+
*
|
|
34
|
+
* By default, Auth.js assumes that the IdentityServer4 provider is
|
|
35
|
+
* based on the [Open ID Connect](https://openid.net/specs/openid-connect-core-1_0.html) specification.
|
|
36
|
+
*
|
|
37
|
+
* :::warning
|
|
38
|
+
* IdentityServer4 is discontinued and only releases security updates until November 2022. You should consider an alternative provider.
|
|
39
|
+
* :::
|
|
40
|
+
* :::tip
|
|
41
|
+
*
|
|
42
|
+
* The IdentityServer4 provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/identity-server4.ts).
|
|
43
|
+
* To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
|
|
44
|
+
*
|
|
45
|
+
* :::
|
|
46
|
+
*
|
|
47
|
+
* :::info **Disclaimer**
|
|
48
|
+
*
|
|
49
|
+
* If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
|
|
50
|
+
*
|
|
51
|
+
* Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
|
|
52
|
+
* the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
|
|
53
|
+
* we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
|
|
54
|
+
*
|
|
55
|
+
* :::
|
|
56
|
+
*/
|
|
57
|
+
export default function IdentityServer4(options) {
|
|
58
|
+
return {
|
|
59
|
+
id: "identity-server4",
|
|
60
|
+
name: "IdentityServer4",
|
|
61
|
+
type: "oidc",
|
|
62
|
+
options,
|
|
63
|
+
};
|
|
64
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { Profile } from "../types.js";
|
|
2
|
+
import CredentialsProvider from "./credentials.js";
|
|
3
|
+
import type { CredentialsConfig, CredentialsProviderId } from "./credentials.js";
|
|
4
|
+
import type EmailProvider from "./email.js";
|
|
5
|
+
import type { EmailConfig, EmailProviderId } from "./email.js";
|
|
6
|
+
import type { OAuth2Config, OAuthConfig, OAuthProviderId, OIDCConfig } from "./oauth.js";
|
|
7
|
+
import type { WebAuthnConfig, WebAuthnProviderType } from "./webauthn.js";
|
|
8
|
+
export * from "./credentials.js";
|
|
9
|
+
export * from "./email.js";
|
|
10
|
+
export * from "./oauth.js";
|
|
11
|
+
/**
|
|
12
|
+
* Providers passed to Auth.js must define one of these types.
|
|
13
|
+
*
|
|
14
|
+
* @see [RFC 6749 - The OAuth 2.0 Authorization Framework](https://www.rfc-editor.org/rfc/rfc6749.html#section-2.3)
|
|
15
|
+
* @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
|
|
16
|
+
* @see [Email or Passwordless Authentication](https://authjs.dev/concepts/oauth)
|
|
17
|
+
* @see [Credentials-based Authentication](https://authjs.dev/getting-started/providers/credentials)
|
|
18
|
+
*/
|
|
19
|
+
export type ProviderType = "oidc" | "oauth" | "email" | "credentials" | WebAuthnProviderType;
|
|
20
|
+
/** Shared across all {@link ProviderType} */
|
|
21
|
+
export interface CommonProviderOptions {
|
|
22
|
+
/**
|
|
23
|
+
* Uniquely identifies the provider in {@link AuthConfig.providers}
|
|
24
|
+
* It's also part of the URL
|
|
25
|
+
*/
|
|
26
|
+
id: string;
|
|
27
|
+
/**
|
|
28
|
+
* The provider name used on the default sign-in page's sign-in button.
|
|
29
|
+
* For example if it's "Google", the corresponding button will say:
|
|
30
|
+
* "Sign in with Google"
|
|
31
|
+
*/
|
|
32
|
+
name: string;
|
|
33
|
+
/** See {@link ProviderType} */
|
|
34
|
+
type: ProviderType;
|
|
35
|
+
}
|
|
36
|
+
interface InternalProviderOptions {
|
|
37
|
+
/** Used to deep merge user-provided config with the default config
|
|
38
|
+
*/
|
|
39
|
+
options?: Record<string, unknown>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Must be a supported authentication provider config:
|
|
43
|
+
* - {@link OAuthConfig}
|
|
44
|
+
* - {@link EmailConfigInternal}
|
|
45
|
+
* - {@link CredentialsConfigInternal}
|
|
46
|
+
*
|
|
47
|
+
* For more information, see the guides:
|
|
48
|
+
*
|
|
49
|
+
* @see [OAuth/OIDC guide](https://authjs.dev/guides/providers/custom-provider)
|
|
50
|
+
* @see [Email (Passwordless) guide](https://authjs.dev/guides/providers/email)
|
|
51
|
+
* @see [Credentials guide](https://authjs.dev/getting-started/providers/credentials)
|
|
52
|
+
*/
|
|
53
|
+
export type Provider<P extends Profile = any> = (((OIDCConfig<P> | OAuth2Config<P> | EmailConfig | CredentialsConfig | WebAuthnConfig) & InternalProviderOptions) | ((...args: any) => (OAuth2Config<P> | OIDCConfig<P> | EmailConfig | CredentialsConfig | WebAuthnConfig) & InternalProviderOptions)) & InternalProviderOptions;
|
|
54
|
+
export type BuiltInProviders = Record<OAuthProviderId, (config: Partial<OAuthConfig<any>>) => OAuthConfig<any>> & Record<CredentialsProviderId, typeof CredentialsProvider> & Record<EmailProviderId, typeof EmailProvider> & Record<WebAuthnProviderType, (config: Partial<WebAuthnConfig>) => WebAuthnConfig>;
|
|
55
|
+
export type AppProviders = Array<Provider | ReturnType<BuiltInProviders[keyof BuiltInProviders]>>;
|
|
56
|
+
export interface AppProvider extends CommonProviderOptions {
|
|
57
|
+
signinUrl: string;
|
|
58
|
+
callbackUrl: string;
|
|
59
|
+
}
|
|
60
|
+
export type ProviderId = CredentialsProviderId | EmailProviderId | OAuthProviderId | WebAuthnProviderType | (string & {});
|
|
61
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,mBAAmB,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAChF,OAAO,KAAK,aAAa,MAAM,YAAY,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,UAAU,EACX,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEzE,cAAc,kBAAkB,CAAA;AAChC,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAE1B;;;;;;;GAOG;AACH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,OAAO,GACP,OAAO,GACP,aAAa,GACb,oBAAoB,CAAA;AAExB,6CAA6C;AAC7C,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAA;IACV;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,IAAI,EAAE,YAAY,CAAA;CACnB;AAED,UAAU,uBAAuB;IAC/B;OACG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,OAAO,GAAG,GAAG,IAAI,CAC5C,CAAC,CACG,UAAU,CAAC,CAAC,CAAC,GACb,YAAY,CAAC,CAAC,CAAC,GACf,WAAW,GACX,iBAAiB,GACjB,cAAc,CACjB,GACC,uBAAuB,CAAC,GAC1B,CAAC,CACC,GAAG,IAAI,EAAE,GAAG,KACT,CACD,YAAY,CAAC,CAAC,CAAC,GACf,UAAU,CAAC,CAAC,CAAC,GACb,WAAW,GACX,iBAAiB,GACjB,cAAc,CACjB,GACC,uBAAuB,CAAC,CAC7B,GACC,uBAAuB,CAAA;AAEzB,MAAM,MAAM,gBAAgB,GAAG,MAAM,CACnC,eAAe,EACf,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,WAAW,CAAC,GAAG,CAAC,CACxD,GACC,MAAM,CAAC,qBAAqB,EAAE,OAAO,mBAAmB,CAAC,GACzD,MAAM,CAAC,eAAe,EAAE,OAAO,aAAa,CAAC,GAC7C,MAAM,CACJ,oBAAoB,EACpB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,KAAK,cAAc,CACpD,CAAA;AAEH,MAAM,MAAM,YAAY,GAAG,KAAK,CAC9B,QAAQ,GAAG,UAAU,CAAC,gBAAgB,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAChE,CAAA;AAED,MAAM,WAAW,WAAY,SAAQ,qBAAqB;IACxD,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,UAAU,GAClB,qBAAqB,GACrB,eAAe,GACf,eAAe,GACf,oBAAoB,GACpB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <div class="provider" style={{backgroundColor: "#000", display: "flex", justifyContent: "space-between", color: "#fff", padding: 16}}>
|
|
3
|
+
* <span>Built-in <b>Instagram</b> integration.</span>
|
|
4
|
+
* <a href="https://www.instagram.com/">
|
|
5
|
+
* <img style={{display: "block"}} src="https://authjs.dev/img/providers/instagram.svg" height="48" width="48"/>
|
|
6
|
+
* </a>
|
|
7
|
+
* </div>
|
|
8
|
+
*
|
|
9
|
+
* @module providers/instagram
|
|
10
|
+
*/
|
|
11
|
+
import type { OAuthConfig, OAuthUserConfig } from "./index.js";
|
|
12
|
+
/**
|
|
13
|
+
* Add Instagram login to your page.
|
|
14
|
+
*
|
|
15
|
+
* ### Setup
|
|
16
|
+
*
|
|
17
|
+
* #### Callback URL
|
|
18
|
+
* ```
|
|
19
|
+
* https://example.com/api/auth/callback/instagram
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* #### Configuration
|
|
23
|
+
*```ts
|
|
24
|
+
* import { Auth } from "@auth/core"
|
|
25
|
+
* import Instagram from "@auth/core/providers/instagram"
|
|
26
|
+
*
|
|
27
|
+
* const request = new Request(origin)
|
|
28
|
+
* const response = await Auth(request, {
|
|
29
|
+
* providers: [
|
|
30
|
+
* Instagram({
|
|
31
|
+
* clientId: INSTAGRAM_CLIENT_ID,
|
|
32
|
+
* clientSecret: INSTAGRAM_CLIENT_SECRET,
|
|
33
|
+
* }),
|
|
34
|
+
* ],
|
|
35
|
+
* })
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* ### Resources
|
|
39
|
+
*
|
|
40
|
+
* - [Instagram OAuth documentation](https://developers.facebook.com/docs/instagram-basic-display-api/getting-started)
|
|
41
|
+
* - [Instagram OAuth apps](https://developers.facebook.com/apps/)
|
|
42
|
+
*
|
|
43
|
+
* ### Notes
|
|
44
|
+
*
|
|
45
|
+
* By default, Auth.js assumes that the Instagram provider is
|
|
46
|
+
* based on the [OAuth 2](https://www.rfc-editor.org/rfc/rfc6749.html) specification.
|
|
47
|
+
*
|
|
48
|
+
*
|
|
49
|
+
* :::warning
|
|
50
|
+
* Email address is not returned by the Instagram API.
|
|
51
|
+
* :::
|
|
52
|
+
*
|
|
53
|
+
* :::tip
|
|
54
|
+
* Instagram display app required callback URL to be configured in your Facebook app and Facebook required you to use **https** even for localhost! In order to do that, you either need to [add an SSL to your localhost](https://www.freecodecamp.org/news/how-to-get-https-working-on-your-local-development-environment-in-5-minutes-7af615770eec/) or use a proxy such as [ngrok](https://ngrok.com/docs).
|
|
55
|
+
* :::
|
|
56
|
+
* :::tip
|
|
57
|
+
*
|
|
58
|
+
* The Instagram provider comes with a [default configuration](https://github.com/nextauthjs/next-auth/blob/main/packages/core/src/providers/instagram.ts).
|
|
59
|
+
* To override the defaults for your use case, check out [customizing a built-in OAuth provider](https://authjs.dev/guides/configuring-oauth-providers).
|
|
60
|
+
*
|
|
61
|
+
* :::
|
|
62
|
+
*
|
|
63
|
+
* :::info **Disclaimer**
|
|
64
|
+
*
|
|
65
|
+
* If you think you found a bug in the default configuration, you can [open an issue](https://authjs.dev/new/provider-issue).
|
|
66
|
+
*
|
|
67
|
+
* Auth.js strictly adheres to the specification and it cannot take responsibility for any deviation from
|
|
68
|
+
* the spec by the provider. You can open an issue, but if the problem is non-compliance with the spec,
|
|
69
|
+
* we might not pursue a resolution. You can ask for more help in [Discussions](https://authjs.dev/new/github-discussions).
|
|
70
|
+
*
|
|
71
|
+
* :::
|
|
72
|
+
*/
|
|
73
|
+
export default function Instagram(config: OAuthUserConfig<Record<string, any>>): OAuthConfig<Record<string, any>>;
|
|
74
|
+
//# sourceMappingURL=instagram.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instagram.d.ts","sourceRoot":"","sources":["../src/providers/instagram.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAC3C,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CA2BlC"}
|