1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-16 16:23:44 +00:00

updates for 2fa auth services

This commit is contained in:
Kyle Spearrin
2018-02-01 22:55:49 -05:00
parent 5845291aaf
commit 7c3bed1737
12 changed files with 195 additions and 36 deletions

View File

@@ -17,6 +17,7 @@ import { CipherResponse } from '../models/response/cipherResponse';
import { ErrorResponse } from '../models/response/errorResponse';
import { FolderResponse } from '../models/response/folderResponse';
import { IdentityTokenResponse } from '../models/response/identityTokenResponse';
import { IdentityTwoFactorResponse } from '../models/response/identityTwoFactorResponse';
import { SyncResponse } from '../models/response/syncResponse';
export class ApiService implements ApiServiceAbstraction {
@@ -72,7 +73,7 @@ export class ApiService implements ApiServiceAbstraction {
// Auth APIs
async postIdentityToken(request: TokenRequest): Promise<IdentityTokenResponse | any> {
async postIdentityToken(request: TokenRequest): Promise<IdentityTokenResponse | IdentityTwoFactorResponse> {
const response = await fetch(new Request(this.identityBaseUrl + '/connect/token', {
body: this.qsStringify(request.toIdentityToken()),
cache: 'no-cache',
@@ -96,7 +97,7 @@ export class ApiService implements ApiServiceAbstraction {
} else if (response.status === 400 && responseJson.TwoFactorProviders2 &&
Object.keys(responseJson.TwoFactorProviders2).length) {
await this.tokenService.clearTwoFactorToken(request.email);
return responseJson.TwoFactorProviders2;
return new IdentityTwoFactorResponse(responseJson);
}
}