apiBaseUrl and make some props private

This commit is contained in:
Kyle Spearrin 2018-06-13 22:09:47 -04:00
parent 3303e60b40
commit 755f8f93ec
2 changed files with 37 additions and 41 deletions

View File

@ -24,9 +24,6 @@ import { AttachmentView } from '../models/view/attachmentView';
export abstract class ApiService { export abstract class ApiService {
urlsSet: boolean; urlsSet: boolean;
baseUrl: string;
identityBaseUrl: string;
deviceType: string;
setUrls: (urls: EnvironmentUrls) => void; setUrls: (urls: EnvironmentUrls) => void;
postIdentityToken: (request: TokenRequest) => Promise<IdentityTokenResponse | IdentityTwoFactorResponse>; postIdentityToken: (request: TokenRequest) => Promise<IdentityTokenResponse | IdentityTwoFactorResponse>;

View File

@ -29,11 +29,12 @@ import { SyncResponse } from '../models/response/syncResponse';
export class ApiService implements ApiServiceAbstraction { export class ApiService implements ApiServiceAbstraction {
urlsSet: boolean = false; urlsSet: boolean = false;
baseUrl: string;
identityBaseUrl: string; private apiBaseUrl: string;
deviceType: string; private identityBaseUrl: string;
isWebClient = false; private deviceType: string;
usingBaseUrl = false; private isWebClient = false;
private usingBaseUrl = false;
constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService, constructor(private tokenService: TokenService, private platformUtilsService: PlatformUtilsService,
private logoutCallback: (expired: boolean) => Promise<void>) { private logoutCallback: (expired: boolean) => Promise<void>) {
@ -47,44 +48,42 @@ export class ApiService implements ApiServiceAbstraction {
if (urls.base != null) { if (urls.base != null) {
this.usingBaseUrl = true; this.usingBaseUrl = true;
this.baseUrl = urls.base + '/api'; this.apiBaseUrl = urls.base + '/api';
this.identityBaseUrl = urls.base + '/identity'; this.identityBaseUrl = urls.base + '/identity';
return; return;
} }
if (urls.api != null && urls.identity != null) { if (urls.api != null && urls.identity != null) {
this.baseUrl = urls.api; this.apiBaseUrl = urls.api;
this.identityBaseUrl = urls.identity; this.identityBaseUrl = urls.identity;
return; return;
} }
/* tslint:disable */ /* tslint:disable */
// Desktop // Desktop
this.baseUrl = 'http://localhost:4000'; //this.apiBaseUrl = 'http://localhost:4000';
this.identityBaseUrl = 'http://localhost:33656'; //this.identityBaseUrl = 'http://localhost:33656';
// Desktop HTTPS // Desktop HTTPS
//this.baseUrl = 'https://localhost:44377'; //this.apiBaseUrl = 'https://localhost:44377';
//this.identityBaseUrl = 'https://localhost:44392'; //this.identityBaseUrl = 'https://localhost:44392';
// Desktop external // Desktop external
//this.baseUrl = 'http://192.168.1.3:4000'; //this.apiBaseUrl = 'http://192.168.1.3:4000';
//this.identityBaseUrl = 'http://192.168.1.3:33656'; //this.identityBaseUrl = 'http://192.168.1.3:33656';
// Preview // Preview
//this.baseUrl = 'https://preview-api.bitwarden.com'; //this.apiBaseUrl = 'https://preview-api.bitwarden.com';
//this.identityBaseUrl = 'https://preview-identity.bitwarden.com'; //this.identityBaseUrl = 'https://preview-identity.bitwarden.com';
// Production // Production
/*
if (this.isWebClient) { if (this.isWebClient) {
this.baseUrl = 'https://api.bitwarden.com'; this.apiBaseUrl = 'https://vault.bitwarden.com/api';
this.identityBaseUrl = 'https://identity.bitwarden.com'; this.identityBaseUrl = 'https://vault.bitwarden.com/identity';
} else { } else {
this.baseUrl = 'https://api.bitwarden.com'; this.apiBaseUrl = 'https://api.bitwarden.com';
this.identityBaseUrl = 'https://identity.bitwarden.com'; this.identityBaseUrl = 'https://identity.bitwarden.com';
} }
*/
/* tslint:enable */ /* tslint:enable */
} }
@ -133,7 +132,7 @@ export class ApiService implements ApiServiceAbstraction {
// Two Factor APIs // Two Factor APIs
async postTwoFactorEmail(request: TwoFactorEmailRequest): Promise<any> { async postTwoFactorEmail(request: TwoFactorEmailRequest): Promise<any> {
const response = await fetch(new Request(this.baseUrl + '/two-factor/send-email-login', { const response = await fetch(new Request(this.apiBaseUrl + '/two-factor/send-email-login', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -154,7 +153,7 @@ export class ApiService implements ApiServiceAbstraction {
async getProfile(): Promise<ProfileResponse> { async getProfile(): Promise<ProfileResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/accounts/profile', { const response = await fetch(new Request(this.apiBaseUrl + '/accounts/profile', {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -175,7 +174,7 @@ export class ApiService implements ApiServiceAbstraction {
async getAccountRevisionDate(): Promise<number> { async getAccountRevisionDate(): Promise<number> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/accounts/revision-date', { const response = await fetch(new Request(this.apiBaseUrl + '/accounts/revision-date', {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -194,7 +193,7 @@ export class ApiService implements ApiServiceAbstraction {
} }
async postPasswordHint(request: PasswordHintRequest): Promise<any> { async postPasswordHint(request: PasswordHintRequest): Promise<any> {
const response = await fetch(new Request(this.baseUrl + '/accounts/password-hint', { const response = await fetch(new Request(this.apiBaseUrl + '/accounts/password-hint', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -212,7 +211,7 @@ export class ApiService implements ApiServiceAbstraction {
} }
async postRegister(request: RegisterRequest): Promise<any> { async postRegister(request: RegisterRequest): Promise<any> {
const response = await fetch(new Request(this.baseUrl + '/accounts/register', { const response = await fetch(new Request(this.apiBaseUrl + '/accounts/register', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -233,7 +232,7 @@ export class ApiService implements ApiServiceAbstraction {
async postFolder(request: FolderRequest): Promise<FolderResponse> { async postFolder(request: FolderRequest): Promise<FolderResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/folders', { const response = await fetch(new Request(this.apiBaseUrl + '/folders', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -257,7 +256,7 @@ export class ApiService implements ApiServiceAbstraction {
async putFolder(id: string, request: FolderRequest): Promise<FolderResponse> { async putFolder(id: string, request: FolderRequest): Promise<FolderResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/folders/' + id, { const response = await fetch(new Request(this.apiBaseUrl + '/folders/' + id, {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -281,7 +280,7 @@ export class ApiService implements ApiServiceAbstraction {
async deleteFolder(id: string): Promise<any> { async deleteFolder(id: string): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/folders/' + id, { const response = await fetch(new Request(this.apiBaseUrl + '/folders/' + id, {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -301,7 +300,7 @@ export class ApiService implements ApiServiceAbstraction {
async postCipher(request: CipherRequest): Promise<CipherResponse> { async postCipher(request: CipherRequest): Promise<CipherResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -325,7 +324,7 @@ export class ApiService implements ApiServiceAbstraction {
async putCipher(id: string, request: CipherRequest): Promise<CipherResponse> { async putCipher(id: string, request: CipherRequest): Promise<CipherResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id, { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id, {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -349,7 +348,7 @@ export class ApiService implements ApiServiceAbstraction {
async deleteCipher(id: string): Promise<any> { async deleteCipher(id: string): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id, { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id, {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -367,7 +366,7 @@ export class ApiService implements ApiServiceAbstraction {
async deleteManyCiphers(request: CipherBulkDeleteRequest): Promise<any> { async deleteManyCiphers(request: CipherBulkDeleteRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -388,7 +387,7 @@ export class ApiService implements ApiServiceAbstraction {
async putMoveCiphers(request: CipherBulkMoveRequest): Promise<any> { async putMoveCiphers(request: CipherBulkMoveRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/move', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/move', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -409,7 +408,7 @@ export class ApiService implements ApiServiceAbstraction {
async putShareCipher(id: string, request: CipherShareRequest): Promise<any> { async putShareCipher(id: string, request: CipherShareRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id + '/share', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id + '/share', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -430,7 +429,7 @@ export class ApiService implements ApiServiceAbstraction {
async putShareCiphers(request: CipherBulkShareRequest): Promise<any> { async putShareCiphers(request: CipherBulkShareRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/share', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/share', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -451,7 +450,7 @@ export class ApiService implements ApiServiceAbstraction {
async putCipherCollections(id: string, request: CipherCollectionsRequest): Promise<any> { async putCipherCollections(id: string, request: CipherCollectionsRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id + '/collections', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id + '/collections', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -474,7 +473,7 @@ export class ApiService implements ApiServiceAbstraction {
async postCipherAttachment(id: string, data: FormData): Promise<CipherResponse> { async postCipherAttachment(id: string, data: FormData): Promise<CipherResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id + '/attachment', { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id + '/attachment', {
body: data, body: data,
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
@ -497,7 +496,7 @@ export class ApiService implements ApiServiceAbstraction {
async deleteCipherAttachment(id: string, attachmentId: string): Promise<any> { async deleteCipherAttachment(id: string, attachmentId: string): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id + '/attachment/' + attachmentId, { const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id + '/attachment/' + attachmentId, {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -516,7 +515,7 @@ export class ApiService implements ApiServiceAbstraction {
async postShareCipherAttachment(id: string, attachmentId: string, data: FormData, async postShareCipherAttachment(id: string, attachmentId: string, data: FormData,
organizationId: string): Promise<any> { organizationId: string): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/ciphers/' + id + '/attachment/' + const response = await fetch(new Request(this.apiBaseUrl + '/ciphers/' + id + '/attachment/' +
attachmentId + '/share?organizationId=' + organizationId, { attachmentId + '/share?organizationId=' + organizationId, {
body: data, body: data,
cache: 'no-cache', cache: 'no-cache',
@ -539,7 +538,7 @@ export class ApiService implements ApiServiceAbstraction {
async getSync(): Promise<SyncResponse> { async getSync(): Promise<SyncResponse> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/sync', { const response = await fetch(new Request(this.apiBaseUrl + '/sync', {
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),
headers: new Headers({ headers: new Headers({
@ -560,7 +559,7 @@ export class ApiService implements ApiServiceAbstraction {
async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise<any> { async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise<any> {
const authHeader = await this.handleTokenState(); const authHeader = await this.handleTokenState();
const response = await fetch(new Request(this.baseUrl + '/organizations/' + organizationId + '/import', { const response = await fetch(new Request(this.apiBaseUrl + '/organizations/' + organizationId + '/import', {
body: JSON.stringify(request), body: JSON.stringify(request),
cache: 'no-cache', cache: 'no-cache',
credentials: this.getCredentials(), credentials: this.getCredentials(),