@better-auth/oauth-provider 1.8.0-beta.0 → 1.8.0-beta.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.
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-wcPFST8Q.mjs";
2
- import { A as getAcrValuesSupported, C as authorizationQuerySchema, D as STANDARD_CLAIMS, F as getRequestedUserInfoClaims, I as isValidOidcClaimsRequest, M as canSatisfyEssentialAcrRequest, N as claimsRequestParameterSchema, O as STANDARD_CLAIM_NAMES, P as filterClaimsRequestUserInfoClaims, S as SafeUrlSchema, T as clientRegistrationRequestSchema, _ as logStartupSeedFailure, a as tokenEndpoint, b as userInfoResource, c as normalizeClientCredentialsScopes, d as JWS_ALGORITHMS, f as assertIdentifierValid, g as logEnforcePerClientResourcesResolution, h as isAudienceClaimAllowed, i as invalidateRefreshFamily, j as resolveAuthenticationContext, k as getSupportedClaims, l as validateClientCredentialsScopes, m as invalidateResourceCache, o as userInfoEndpoint, p as getResource, s as findToken, t as introspectEndpoint, u as getEndpointUrl, v as resolveResourcePolicy, w as clientJwksSchema, x as ResourceUriSchema, y as seedResourcesOnce } from "./introspect-CEo9Q06v.mjs";
3
- import { $ as validateOAuthProviderExtensions, A as storeClientSecret, E as removePromptFromQuery, F as validateClientCredentials, J as getSupportedGrantTypes, K as getExtensionInteractionRequest, L as verifyOAuthQueryParams, N as toResourceList, O as resolveSubjectIdentifier, Q as validateExtensionClientMetadata, R as applyOAuthProviderMetadataExtensions, S as parsePrompt, T as removeMaxAgeFromQuery, U as getClientDiscoveries, W as getExtensionClientMetadataFields, Y as hasExtensionClientMetadata, Z as isExtensionTokenEndpointAuthMethod, _ as mergeDiscoveryMetadata, a as decryptStoredClientSecret, b as parseBearerToken, c as extractClientCredentials, d as getConsentReferenceId, f as getJwtPlugin, g as isSessionFreshForSignedQuery, h as isPKCERequired, i as consentCovers, j as storeToken, k as searchParamsToQuery, l as findConsent, n as assertNotTrustedClient, o as deriveSectorIdentifier, q as getSupportedAuthMethods, r as clientAllowsGrant, s as destructureCredentials, t as applyFormParams, tt as stripReservedOAuthClientMetadataExtensions, u as getClient, w as readFormParams, x as parseClientMetadata } from "./utils-BMNe8Sg2.mjs";
2
+ import { A as getAcrValuesSupported, C as authorizationQuerySchema, D as STANDARD_CLAIMS, F as getRequestedUserInfoClaims, I as isValidOidcClaimsRequest, M as canSatisfyEssentialAcrRequest, N as claimsRequestParameterSchema, O as STANDARD_CLAIM_NAMES, P as filterClaimsRequestUserInfoClaims, S as SafeUrlSchema, T as clientRegistrationRequestSchema, _ as logStartupSeedFailure, a as tokenEndpoint, b as userInfoResource, c as normalizeClientCredentialsScopes, d as JWS_ALGORITHMS, f as assertIdentifierValid, g as logEnforcePerClientResourcesResolution, h as isAudienceClaimAllowed, i as invalidateRefreshFamily, j as resolveAuthenticationContext, k as getSupportedClaims, l as validateClientCredentialsScopes, m as invalidateResourceCache, o as userInfoEndpoint, p as getResource, s as findToken, t as introspectEndpoint, u as getEndpointUrl, v as resolveResourcePolicy, w as clientJwksSchema, x as ResourceUriSchema, y as seedResourcesOnce } from "./introspect-DdmCPEHN.mjs";
3
+ import { $ as validateOAuthProviderExtensions, A as storeClientSecret, E as removePromptFromQuery, F as validateClientCredentials, J as getSupportedGrantTypes, K as getExtensionInteractionRequest, L as verifyOAuthQueryParams, N as toResourceList, O as resolveSubjectIdentifier, Q as validateExtensionClientMetadata, R as applyOAuthProviderMetadataExtensions, S as parsePrompt, T as removeMaxAgeFromQuery, U as getClientDiscoveries, W as getExtensionClientMetadataFields, Y as hasExtensionClientMetadata, Z as isExtensionTokenEndpointAuthMethod, _ as mergeDiscoveryMetadata, a as decryptStoredClientSecret, b as parseBearerToken, c as extractClientCredentials, d as getConsentReferenceId, f as getJwtPlugin, g as isSessionFreshForSignedQuery, h as isPKCERequired, i as consentCovers, j as storeToken, k as searchParamsToQuery, l as findConsent, n as assertNotTrustedClient, o as deriveSectorIdentifier, q as getSupportedAuthMethods, r as clientAllowsGrant, s as destructureCredentials, t as applyFormParams, tt as stripReservedOAuthClientMetadataExtensions, u as getClient, w as readFormParams, x as parseClientMetadata } from "./utils-D-CUrvd1.mjs";
4
4
  import { a as setSignedOAuthQueryParameterNames, i as postLoginClearedParam, n as canonicalizeOAuthQueryParams, o as signedQueryIssuedAtParam, r as getSignedQueryIssuedAt } from "./signed-query-Df1MNiSH.mjs";
5
- import { t as PACKAGE_VERSION } from "./version-DeABnmP9.mjs";
5
+ import { t as PACKAGE_VERSION } from "./version-BwHks7Wg.mjs";
6
6
  import { isBrowserFetchRequest } from "@better-auth/core/utils/fetch-metadata";
7
7
  import { isLoopbackHost, isLoopbackIP, isPublicRoutableHost } from "@better-auth/core/utils/host";
8
8
  import { appendQueryParams } from "@better-auth/core/utils/url";
@@ -1882,6 +1882,8 @@ async function registerEndpoint(ctx, opts) {
1882
1882
  user: session.user,
1883
1883
  session: session.session
1884
1884
  }) : void 0);
1885
+ const clientCredentialsScopes = normalizeClientCredentialsScopes(tokenAuthorization?.clientCredentialsScopes ?? []);
1886
+ validateClientCredentialsScopes(clientCredentialsScopes, resolveRegistrationGrantTypes(registrationMetadata), registrationMetadata.token_endpoint_auth_method, opts);
1885
1887
  const response = await createOAuthClientRegistration(ctx, opts, {
1886
1888
  metadata: {
1887
1889
  ...registrationMetadata,
@@ -1890,7 +1892,8 @@ async function registerEndpoint(ctx, opts) {
1890
1892
  registrationSource: "dynamic",
1891
1893
  userId: referenceId ? void 0 : session?.session.userId,
1892
1894
  referenceId,
1893
- requestedResources
1895
+ requestedResources,
1896
+ clientCredentialsScopes
1894
1897
  });
1895
1898
  ctx.setStatus(201);
1896
1899
  return ctx.json(response);
@@ -2106,7 +2109,7 @@ async function persistOAuthClientRegistration(ctx, opts, input) {
2106
2109
  user_id: owner?.referenceId ? void 0 : owner?.userId,
2107
2110
  reference_id: owner?.referenceId
2108
2111
  });
2109
- schema.clientCredentialsScopes = input.registrationSource === "clientMetadataDocument" ? input.existingClient?.clientCredentialsScopes ?? [] : input.registrationSource === "managed" ? input.clientCredentialsScopes ?? [] : [];
2112
+ schema.clientCredentialsScopes = input.registrationSource === "clientMetadataDocument" ? input.existingClient?.clientCredentialsScopes ?? [] : input.clientCredentialsScopes ?? [];
2110
2113
  schema.clientDiscoveryId = input.registrationSource === "clientMetadataDocument" ? input.clientDiscoveryId : null;
2111
2114
  schema.sectorIdentifier = deriveSectorIdentifier(clientId, body.redirect_uris);
2112
2115
  if (input.registrationSource === "clientMetadataDocument" && body.application_type === void 0) schema.applicationType = null;
@@ -1,4 +1,4 @@
1
- import { c as ResourceServerMetadata } from "./oauth-BlEuA8oD.mjs";
1
+ import { c as ResourceServerMetadata } from "./oauth-CzT1PvAY.mjs";
2
2
  import { ResourceRequestInput, VerifyAccessTokenRequestOptions } from "better-auth/oauth2";
3
3
  import { JWTPayload, JWTVerifyOptions } from "jose";
4
4
  import { BetterAuthOptions } from "better-auth/types";
@@ -1,5 +1,5 @@
1
- import { f as getJwtPlugin, p as getOAuthProviderPlugin } from "./utils-BMNe8Sg2.mjs";
2
- import { t as PACKAGE_VERSION } from "./version-DeABnmP9.mjs";
1
+ import { f as getJwtPlugin, p as getOAuthProviderPlugin } from "./utils-D-CUrvd1.mjs";
2
+ import { t as PACKAGE_VERSION } from "./version-BwHks7Wg.mjs";
3
3
  import { t as createResourceServerChallenge } from "./resource-challenge-Damwi0Or.mjs";
4
4
  import { APIError } from "better-call";
5
5
  import { BetterAuthError } from "@better-auth/core/error";
package/dist/client.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { g as oauthDeviceAuthorization, r as oauthProvider } from "./oauth-mdkaIwmm.mjs";
1
+ import { g as oauthDeviceAuthorization, r as oauthProvider } from "./oauth-DfH-ghKj.mjs";
2
2
  import * as _$_better_fetch_fetch0 from "@better-fetch/fetch";
3
3
 
4
4
  //#region src/client.d.ts
package/dist/client.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as buildSignedOAuthQuery } from "./signed-query-Df1MNiSH.mjs";
2
- import { t as PACKAGE_VERSION } from "./version-DeABnmP9.mjs";
2
+ import { t as PACKAGE_VERSION } from "./version-BwHks7Wg.mjs";
3
3
  import { safeJSONParse } from "@better-auth/core/utils/json";
4
4
  import { deviceAuthorizationClient } from "better-auth/client/plugins";
5
5
  //#region src/client.ts
@@ -1,4 +1,4 @@
1
- import { J as Scope, K as Prompt, L as OAuthOptions, R as OAuthProviderApi, a as GrantType, l as TokenEndpointAuthMethod, n as AuthServerMetadata, q as SchemaClient, rt as Awaitable, z as OAuthProviderExtension } from "./oauth-BlEuA8oD.mjs";
1
+ import { J as Scope, K as Prompt, L as OAuthOptions, R as OAuthProviderApi, a as GrantType, l as TokenEndpointAuthMethod, n as AuthServerMetadata, q as SchemaClient, rt as Awaitable, z as OAuthProviderExtension } from "./oauth-CzT1PvAY.mjs";
2
2
  import { APIError } from "better-call";
3
3
  import { JWSAlgorithms, JwtOptions } from "better-auth/plugins";
4
4
  import { JWTPayload } from "jose";
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as OAuthClientMetadata, A as OAuthExtensionGrantHandler, B as OAuthRefreshToken, C as OAuthClientAuthenticationRequest, D as OAuthClientRegistrationResponse, E as OAuthClientMetadataExtensionInput, F as OAuthMetadataExtensionInput, G as OAuthUserInfoExtensionInput, H as OAuthResourceInput, I as OAuthOpaqueAccessToken, J as Scope, K as Prompt, L as OAuthOptions, M as OAuthInteractionQuery, N as OAuthInteractionRequest, O as OAuthClientResource, P as OAuthInteractionRequestHandler, Q as ClientRegistrationRequest, R as OAuthProviderApi, S as OAuthClientAuthenticationInput, T as OAuthClientAuthenticationStrategy, U as OAuthTokenIssueParams, V as OAuthResource, W as OAuthTokenResponse, X as StoredAuthorizationQuery, Y as StoreTokenType, Z as VerificationValue, _ as OAuthAuthenticationContext, a as GrantType, b as OAuthClaimExtensionInput, c as ResourceServerMetadata, d as ActiveAccessTokenPayload, et as ResourceUriSchema, f as AuthorizePrompt, g as OAuthAuthenticatedClient, h as InitialAccessTokenAuthorization, i as Confirmation, it as OAuthClientRegistrationMetadata, j as OAuthExtensionGrantHandlerInput, k as OAuthConsent, l as TokenEndpointAuthMethod, m as ClientMetadataResourceFetch, n as AuthServerMetadata, nt as oauthClientMetadataSchema, o as OAuthClient, p as ClientDiscovery, q as SchemaClient, r as BearerMethodsSupported, s as OIDCMetadata, t as AuthMethod, u as TokenType, v as OAuthAuthenticationContextOptions, w as OAuthClientAuthenticationResult, x as OAuthClientAdministrativeResponse, y as OAuthAuthorizationQuery, z as OAuthProviderExtension } from "./oauth-BlEuA8oD.mjs";
2
- import { c as OAuthEndpointRedirectContext, d as OAuthFieldErrorCodeMap, f as OAuthRedirectOnError, g as oauthDeviceAuthorization, h as OAuthDeviceAuthorizationOptions, l as OAuthErrorCode, m as DEVICE_CODE_GRANT_TYPE, n as getOAuthProviderState, o as getIssuer, r as oauthProvider, s as OAuthEndpointErrorResult, t as DEFAULT_OAUTH_SCOPES, u as OAuthFieldErrorCode } from "./oauth-mdkaIwmm.mjs";
3
- import { _ as oauthProviderOpenIdConfigMetadata, a as verifyOAuthQueryParams, c as OAuthTokenExchangeRequest, d as getOAuthProviderApi, f as createResourceServerChallenge, g as oauthProviderAuthServerMetadata, h as oauthAuthorizationServerMetadata, l as TOKEN_EXCHANGE_GRANT_TYPE, m as metadataResponse, o as ACCESS_TOKEN_TYPE, p as authServerMetadata, s as OAuthTokenExchangeOptions, t as consumeClientAssertion, u as oauthTokenExchange, v as oidcServerMetadata, y as extendOAuthProvider } from "./index-sGnh4IfY.mjs";
1
+ import { $ as OAuthClientMetadata, A as OAuthExtensionGrantHandler, B as OAuthRefreshToken, C as OAuthClientAuthenticationRequest, D as OAuthClientRegistrationResponse, E as OAuthClientMetadataExtensionInput, F as OAuthMetadataExtensionInput, G as OAuthUserInfoExtensionInput, H as OAuthResourceInput, I as OAuthOpaqueAccessToken, J as Scope, K as Prompt, L as OAuthOptions, M as OAuthInteractionQuery, N as OAuthInteractionRequest, O as OAuthClientResource, P as OAuthInteractionRequestHandler, Q as ClientRegistrationRequest, R as OAuthProviderApi, S as OAuthClientAuthenticationInput, T as OAuthClientAuthenticationStrategy, U as OAuthTokenIssueParams, V as OAuthResource, W as OAuthTokenResponse, X as StoredAuthorizationQuery, Y as StoreTokenType, Z as VerificationValue, _ as OAuthAuthenticationContext, a as GrantType, b as OAuthClaimExtensionInput, c as ResourceServerMetadata, d as ActiveAccessTokenPayload, et as ResourceUriSchema, f as AuthorizePrompt, g as OAuthAuthenticatedClient, h as InitialAccessTokenAuthorization, i as Confirmation, it as OAuthClientRegistrationMetadata, j as OAuthExtensionGrantHandlerInput, k as OAuthConsent, l as TokenEndpointAuthMethod, m as ClientMetadataResourceFetch, n as AuthServerMetadata, nt as oauthClientMetadataSchema, o as OAuthClient, p as ClientDiscovery, q as SchemaClient, r as BearerMethodsSupported, s as OIDCMetadata, t as AuthMethod, u as TokenType, v as OAuthAuthenticationContextOptions, w as OAuthClientAuthenticationResult, x as OAuthClientAdministrativeResponse, y as OAuthAuthorizationQuery, z as OAuthProviderExtension } from "./oauth-CzT1PvAY.mjs";
2
+ import { c as OAuthEndpointRedirectContext, d as OAuthFieldErrorCodeMap, f as OAuthRedirectOnError, g as oauthDeviceAuthorization, h as OAuthDeviceAuthorizationOptions, l as OAuthErrorCode, m as DEVICE_CODE_GRANT_TYPE, n as getOAuthProviderState, o as getIssuer, r as oauthProvider, s as OAuthEndpointErrorResult, t as DEFAULT_OAUTH_SCOPES, u as OAuthFieldErrorCode } from "./oauth-DfH-ghKj.mjs";
3
+ import { _ as oauthProviderOpenIdConfigMetadata, a as verifyOAuthQueryParams, c as OAuthTokenExchangeRequest, d as getOAuthProviderApi, f as createResourceServerChallenge, g as oauthProviderAuthServerMetadata, h as oauthAuthorizationServerMetadata, l as TOKEN_EXCHANGE_GRANT_TYPE, m as metadataResponse, o as ACCESS_TOKEN_TYPE, p as authServerMetadata, s as OAuthTokenExchangeOptions, t as consumeClientAssertion, u as oauthTokenExchange, v as oidcServerMetadata, y as extendOAuthProvider } from "./index-DVydGHlT.mjs";
4
4
  export { ACCESS_TOKEN_TYPE, ActiveAccessTokenPayload, AuthMethod, AuthServerMetadata, AuthorizePrompt, BearerMethodsSupported, ClientDiscovery, ClientMetadataResourceFetch, ClientRegistrationRequest, Confirmation, DEFAULT_OAUTH_SCOPES, DEVICE_CODE_GRANT_TYPE, GrantType, InitialAccessTokenAuthorization, OAuthAuthenticatedClient, OAuthAuthenticationContext, OAuthAuthenticationContextOptions, OAuthAuthorizationQuery, OAuthClaimExtensionInput, OAuthClient, OAuthClientAdministrativeResponse, OAuthClientAuthenticationInput, OAuthClientAuthenticationRequest, OAuthClientAuthenticationResult, OAuthClientAuthenticationStrategy, OAuthClientMetadata, OAuthClientMetadataExtensionInput, OAuthClientRegistrationMetadata, OAuthClientRegistrationResponse, OAuthClientResource, OAuthConsent, OAuthDeviceAuthorizationOptions, OAuthEndpointErrorResult, OAuthEndpointRedirectContext, OAuthErrorCode, OAuthExtensionGrantHandler, OAuthExtensionGrantHandlerInput, OAuthFieldErrorCode, OAuthFieldErrorCodeMap, OAuthInteractionQuery, OAuthInteractionRequest, OAuthInteractionRequestHandler, OAuthMetadataExtensionInput, OAuthOpaqueAccessToken, OAuthOptions, OAuthProviderApi, OAuthProviderExtension, OAuthRedirectOnError, OAuthRefreshToken, OAuthResource, OAuthResourceInput, OAuthTokenExchangeOptions, OAuthTokenExchangeRequest, OAuthTokenIssueParams, OAuthTokenResponse, OAuthUserInfoExtensionInput, OIDCMetadata, Prompt, ResourceServerMetadata, ResourceUriSchema, SchemaClient, Scope, StoreTokenType, StoredAuthorizationQuery, TOKEN_EXCHANGE_GRANT_TYPE, TokenEndpointAuthMethod, TokenType, VerificationValue, authServerMetadata, consumeClientAssertion, createResourceServerChallenge, extendOAuthProvider, getIssuer, getOAuthProviderApi, getOAuthProviderState, metadataResponse, oauthAuthorizationServerMetadata, oauthClientMetadataSchema, oauthDeviceAuthorization, oauthProvider, oauthProviderAuthServerMetadata, oauthProviderOpenIdConfigMetadata, oauthTokenExchange, oidcServerMetadata, verifyOAuthQueryParams };
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { E as oauthClientMetadataSchema, r as getOAuthProviderApi, v as resolveResourcePolicy, x as ResourceUriSchema } from "./introspect-CEo9Q06v.mjs";
2
- import { C as parseScopes, H as extendOAuthProvider, I as validateClientScopes, L as verifyOAuthQueryParams, N as toResourceList, P as tokenError, i as consentCovers, l as findConsent, p as getOAuthProviderPlugin, u as getClient, v as normalizeClientAuthenticationParameters, w as readFormParams, y as normalizeTimestampValue } from "./utils-BMNe8Sg2.mjs";
3
- import { c as consumeClientAssertion, d as authServerMetadata, f as metadataResponse, g as oidcServerMetadata, h as oauthProviderOpenIdConfigMetadata, i as oauthProvider, m as oauthProviderAuthServerMetadata, n as DEFAULT_OAUTH_SCOPES, p as oauthAuthorizationServerMetadata, r as getOAuthProviderState, t as getIssuer } from "./authorize-92EtLsBi.mjs";
1
+ import { E as oauthClientMetadataSchema, r as getOAuthProviderApi, v as resolveResourcePolicy, x as ResourceUriSchema } from "./introspect-DdmCPEHN.mjs";
2
+ import { C as parseScopes, H as extendOAuthProvider, I as validateClientScopes, L as verifyOAuthQueryParams, N as toResourceList, P as tokenError, i as consentCovers, l as findConsent, p as getOAuthProviderPlugin, u as getClient, v as normalizeClientAuthenticationParameters, w as readFormParams, y as normalizeTimestampValue } from "./utils-D-CUrvd1.mjs";
3
+ import { c as consumeClientAssertion, d as authServerMetadata, f as metadataResponse, g as oidcServerMetadata, h as oauthProviderOpenIdConfigMetadata, i as oauthProvider, m as oauthProviderAuthServerMetadata, n as DEFAULT_OAUTH_SCOPES, p as oauthAuthorizationServerMetadata, r as getOAuthProviderState, t as getIssuer } from "./authorize-Dg976Ug0.mjs";
4
4
  import { t as createResourceServerChallenge } from "./resource-challenge-Damwi0Or.mjs";
5
5
  import { appendQueryParams } from "@better-auth/core/utils/url";
6
6
  import { isAPIError } from "better-auth/api";
@@ -1,6 +1,6 @@
1
- import { J as Scope, L as OAuthOptions, at as OAuthClientRegistrationResult, ct as registerClientMetadataDocument, ot as RegisterClientMetadataDocumentInput, st as assertPublicRoutableHttpsUri } from "./oauth-BlEuA8oD.mjs";
2
- import { a as validatePublicClientJwks, i as PublicClientJwksValidationResult, p as createOAuthEndpoint } from "./oauth-mdkaIwmm.mjs";
3
- import { b as getExtensionClientMetadataFields, i as validateClientScopes, n as parseClientMetadata, r as toResourceList } from "./index-sGnh4IfY.mjs";
1
+ import { J as Scope, L as OAuthOptions, at as OAuthClientRegistrationResult, ct as registerClientMetadataDocument, ot as RegisterClientMetadataDocumentInput, st as assertPublicRoutableHttpsUri } from "./oauth-CzT1PvAY.mjs";
2
+ import { a as validatePublicClientJwks, i as PublicClientJwksValidationResult, p as createOAuthEndpoint } from "./oauth-DfH-ghKj.mjs";
3
+ import { b as getExtensionClientMetadataFields, i as validateClientScopes, n as parseClientMetadata, r as toResourceList } from "./index-DVydGHlT.mjs";
4
4
  import { JWSAlgorithms } from "better-auth/plugins";
5
5
  import { Session, User } from "better-auth/types";
6
6
  import { AuthContext, GenericEndpointContext } from "@better-auth/core";
package/dist/internal.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { A as getAcrValuesSupported, v as resolveResourcePolicy } from "./introspect-CEo9Q06v.mjs";
2
- import { I as validateClientScopes, N as toResourceList, W as getExtensionClientMetadataFields, et as isForbiddenCimdClientMetadataField, x as parseClientMetadata } from "./utils-BMNe8Sg2.mjs";
3
- import { a as assertPublicRoutableHttpsUri, l as validatePublicClientJwks, o as registerClientMetadataDocument, u as createOAuthEndpoint } from "./authorize-92EtLsBi.mjs";
1
+ import { A as getAcrValuesSupported, v as resolveResourcePolicy } from "./introspect-DdmCPEHN.mjs";
2
+ import { I as validateClientScopes, N as toResourceList, W as getExtensionClientMetadataFields, et as isForbiddenCimdClientMetadataField, x as parseClientMetadata } from "./utils-D-CUrvd1.mjs";
3
+ import { a as assertPublicRoutableHttpsUri, l as validatePublicClientJwks, o as registerClientMetadataDocument, u as createOAuthEndpoint } from "./authorize-Dg976Ug0.mjs";
4
4
  export { assertPublicRoutableHttpsUri, createOAuthEndpoint, getAcrValuesSupported, getExtensionClientMetadataFields, isForbiddenCimdClientMetadataField, parseClientMetadata, registerClientMetadataDocument, resolveResourcePolicy, toResourceList, validateClientScopes, validatePublicClientJwks };
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-wcPFST8Q.mjs";
2
- import { B as collectExtensionIdTokenClaims, D as resolveSessionAuthTime, F as validateClientCredentials, G as getExtensionGrantHandler, I as validateClientScopes, J as getSupportedGrantTypes, M as toAudienceClaim, N as toResourceList, O as resolveSubjectIdentifier, V as collectExtensionUserInfoClaims, X as hasUserInfoClaimExtension, a as decryptStoredClientSecret, c as extractClientCredentials, f as getJwtPlugin, h as isPKCERequired, j as storeToken, m as getStoredToken, r as clientAllowsGrant, s as destructureCredentials, u as getClient, x as parseClientMetadata, y as normalizeTimestampValue, z as collectExtensionAccessTokenClaims } from "./utils-BMNe8Sg2.mjs";
2
+ import { B as collectExtensionIdTokenClaims, D as resolveSessionAuthTime, F as validateClientCredentials, G as getExtensionGrantHandler, I as validateClientScopes, J as getSupportedGrantTypes, M as toAudienceClaim, N as toResourceList, O as resolveSubjectIdentifier, V as collectExtensionUserInfoClaims, X as hasUserInfoClaimExtension, a as decryptStoredClientSecret, c as extractClientCredentials, f as getJwtPlugin, h as isPKCERequired, j as storeToken, m as getStoredToken, r as clientAllowsGrant, s as destructureCredentials, u as getClient, x as parseClientMetadata, y as normalizeTimestampValue, z as collectExtensionAccessTokenClaims } from "./utils-D-CUrvd1.mjs";
3
3
  import { APIError } from "better-auth/api";
4
4
  import { generateRandomString, symmetricDecrypt, symmetricEncrypt } from "better-auth/crypto";
5
5
  import { APIError as APIError$1 } from "better-call";
@@ -1327,6 +1327,19 @@ interface InitialAccessTokenAuthorization {
1327
1327
  * client is stored with neither a `user_id` nor a `reference_id`).
1328
1328
  */
1329
1329
  referenceId?: string;
1330
+ /**
1331
+ * Scope ceiling for the `client_credentials` grant, such as the machine
1332
+ * scopes an administrator approved when the token was issued. Return only
1333
+ * scopes that approval covered: the token is the only proof of it.
1334
+ *
1335
+ * The client must register the `client_credentials` grant with a
1336
+ * confidential authentication method, and every scope must be one the
1337
+ * provider offers and not a user-delegated scope such as `openid`.
1338
+ * Otherwise registration fails.
1339
+ *
1340
+ * @default []
1341
+ */
1342
+ clientCredentialsScopes?: string[];
1330
1343
  }
1331
1344
  interface OAuthOptions<Scopes extends readonly Scope[] = InternallySupportedScopes[]> {
1332
1345
  /**
@@ -1,4 +1,4 @@
1
- import { D as OAuthClientRegistrationResponse, F as OAuthMetadataExtensionInput, J as Scope, K as Prompt, L as OAuthOptions, P as OAuthInteractionRequestHandler, V as OAuthResource, W as OAuthTokenResponse, a as GrantType, j as OAuthExtensionGrantHandlerInput, k as OAuthConsent, l as TokenEndpointAuthMethod, n as AuthServerMetadata, o as OAuthClient, tt as clientRegistrationRequestSchema, u as TokenType, x as OAuthClientAdministrativeResponse } from "./oauth-BlEuA8oD.mjs";
1
+ import { D as OAuthClientRegistrationResponse, F as OAuthMetadataExtensionInput, J as Scope, K as Prompt, L as OAuthOptions, P as OAuthInteractionRequestHandler, V as OAuthResource, W as OAuthTokenResponse, a as GrantType, j as OAuthExtensionGrantHandlerInput, k as OAuthConsent, l as TokenEndpointAuthMethod, n as AuthServerMetadata, o as OAuthClient, tt as clientRegistrationRequestSchema, u as TokenType, x as OAuthClientAdministrativeResponse } from "./oauth-CzT1PvAY.mjs";
2
2
  import * as _$better_call0 from "better-call";
3
3
  import { EndpointContext, EndpointOptions, StrictEndpoint } from "better-call";
4
4
  import * as z from "zod";
@@ -986,7 +986,7 @@ async function extractClientCredentials(ctx, opts, expectedAudience) {
986
986
  confirmation: result.confirmation
987
987
  };
988
988
  }
989
- const { verifyClientAssertion: verify } = await import("./authorize-92EtLsBi.mjs").then((n) => n.s);
989
+ const { verifyClientAssertion: verify } = await import("./authorize-Dg976Ug0.mjs").then((n) => n.s);
990
990
  return {
991
991
  kind: "pre_verified",
992
992
  method: "private_key_jwt",
@@ -1,5 +1,5 @@
1
1
  //#endregion
2
2
  //#region src/version.ts
3
- const PACKAGE_VERSION = "1.8.0-beta.0";
3
+ const PACKAGE_VERSION = "1.8.0-beta.1";
4
4
  //#endregion
5
5
  export { PACKAGE_VERSION as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@better-auth/oauth-provider",
3
- "version": "1.8.0-beta.0",
3
+ "version": "1.8.0-beta.1",
4
4
  "description": "An oauth provider plugin for Better Auth",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -71,16 +71,16 @@
71
71
  "devDependencies": {
72
72
  "listhen": "^1.9.0",
73
73
  "tsdown": "0.21.10",
74
- "@better-auth/core": "1.8.0-beta.0",
75
- "@better-auth/memory-adapter": "1.8.0-beta.0",
76
- "better-auth": "1.8.0-beta.0"
74
+ "@better-auth/core": "1.8.0-beta.1",
75
+ "@better-auth/memory-adapter": "1.8.0-beta.1",
76
+ "better-auth": "1.8.0-beta.1"
77
77
  },
78
78
  "peerDependencies": {
79
79
  "@better-auth/utils": "^0.4.2 || ^0.5.0",
80
80
  "@better-fetch/fetch": "1.3.2",
81
81
  "better-call": "1.4.2",
82
- "@better-auth/core": "^1.8.0-beta.0",
83
- "better-auth": "^1.8.0-beta.0"
82
+ "@better-auth/core": "^1.8.0-beta.1",
83
+ "better-auth": "^1.8.0-beta.1"
84
84
  },
85
85
  "scripts": {
86
86
  "build": "tsdown",