UNPKG

oidc-provider

Version:

OAuth 2.0 Authorization Server implementation for Node.js with OpenID Connect

20 lines (17 loc) 721 B
import { InvalidClientMetadata } from './errors.js'; export default (client) => { if (client.subjectType === 'pairwise') { if (!client.sectorIdentifierUri) { switch (true) { case client.responseTypes.length !== 0: return new URL(client.redirectUris[0]).host; case client.grantTypes.includes('urn:openid:params:grant-type:ciba'): case client.grantTypes.includes('urn:ietf:params:oauth:grant-type:device_code'): return new URL(client.jwksUri).host; default: throw new InvalidClientMetadata('could not determine a sector identifier'); } } } return client.sectorIdentifierUri ? new URL(client.sectorIdentifierUri).host : undefined; };