File

libs/oauth/src/lib/symbols.ts

Index

Properties

Properties

acrValues (Optional)
Type string[]
authorizeUrl
Type string
bffBaseUrl
Type string
Description

All requests to this URL (or child paths) will have the access token appended as a header when there is an access token present.

clientId
Type string
default (Optional)
Type boolean
Description

If set to true, this configuration will be taken as the default config when OAuth actions are requested without a specific config name.

endSessionUrl (Optional)
Type string
name
Type string
Description

The name of this OAuth config. Will be used for reference to identify which configuration to use when calling one of the OAuth actions (authorize or token).

refreshBeforeExpiryThreshold (Optional)
Type number
Description

Defines the threshold when a token is refreshed even before it has expired.

Example: If the token still has 5,000 ms before it expires, it will be renewed. If it has 5,001ms, it won't be renewed.

revokeUrl (Optional)
Type string
scope
Type string
tokenUrl
Type string
import { InjectionToken } from '@angular/core';

export const OAUTH_CONFIGURATIONS = new InjectionToken<OauthConfig>('OAUTH_CONFIGURATIONS');
export const LOCATION = new InjectionToken<Location>('LOCATION', {
  providedIn: 'root',
  factory: () => window.location
});
export const STORAGE = new InjectionToken<Storage>('STORAGE', {
  providedIn: 'root',
  factory: () => sessionStorage
});

export interface OauthOptions {
  configurations: OauthConfig[];
}

export type OauthConfig = OauthConfigWithAppTokenUrl | OauthConfigWithAppTokenPageIdOrInternalPath;

interface OauthConfigBase {
  /**
   * If set to true, this configuration will be taken as the default config when OAuth actions are requested
   * without a specific config name.
   */
  default?: boolean;
  /**
   * The name of this OAuth config. Will be used for reference to identify which configuration to use when
   * calling one of the OAuth actions (`authorize` or `token`).
   */
  name: string;
  clientId: string;
  authorizeUrl: string;
  tokenUrl: string;
  endSessionUrl?: string;
  revokeUrl?: string;
  scope: string;
  acrValues?: string[];
  /**
   * All requests to this URL (or child paths) will have the access token appended as a header
   * when there is an access token present.
   */
  bffBaseUrl: string;
  /**
   * Defines the threshold when a token is refreshed even before it has expired.
   *
   * Example: If the token still has 5,000 ms before it expires, it will be renewed.
   * If it has 5,001ms, it won't be renewed.
   */
  refreshBeforeExpiryThreshold?: number;
}

export interface OauthConfigWithAppTokenUrl extends OauthConfigBase {
  appTokenUrl: string;
  appTokenPageIdOrInternalPath?: never;
}

export interface OauthConfigWithAppTokenPageIdOrInternalPath extends OauthConfigBase {
  appTokenPageIdOrInternalPath: string;
  appTokenUrl?: never;
}

results matching ""

    No results matching ""