src/authed-client.config.ts
Properties |
Methods |
isTokenValid | ||||||
isTokenValid(token: string)
|
||||||
Defined in src/authed-client.config.ts:16
|
||||||
Parameters :
Returns :
boolean
|
onMissingToken |
onMissingToken()
|
Defined in src/authed-client.config.ts:18
|
Returns :
any
|
tokenTimeout |
tokenTimeout:
|
Type : number
|
import { Observable } from 'rxjs';
import { InjectionToken, Type } from '@angular/core';
import { throwError } from 'rxjs/index';
export interface AuthService {
readonly idToken: Observable<string>;
}
export interface AuthedClientOptions extends Partial<AuthedClientConfig> {
authService: Type<AuthService>;
}
export interface AuthedClientConfig {
tokenTimeout: number;
isTokenValid(token: string): boolean;
onMissingToken(): any;
}
export const defaultConfig: AuthedClientConfig = {
tokenTimeout: 10000,
isTokenValid: (token: string) => !!token,
onMissingToken: () => throwError(Error('Not authenticated.'))
};
export function withDefaults(config: Partial<AuthedClientConfig>) {
return Object.assign({}, defaultConfig, config);
}
export const authServiceToken = new InjectionToken<AuthService>('AuthService');
export const clientConfigToken = new InjectionToken<AuthedClientConfig>(
'AuthedClientConfig'
);