File

src/authed-client.config.ts

Index

Properties
Methods

Methods

isTokenValid
isTokenValid(token: string)
Parameters :
Name Type Optional
token string no
Returns : boolean
onMissingToken
onMissingToken()
Returns : any

Properties

tokenTimeout
tokenTimeout: number
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'
);

results matching ""

    No results matching ""