1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-14 23:33:31 +00:00

get templates

This commit is contained in:
Kyle Spearrin
2018-05-14 16:25:14 -04:00
parent a1238ff685
commit 85770b7cbb
14 changed files with 222 additions and 6 deletions

View File

@@ -12,13 +12,22 @@ import { CipherResponse } from '../models/response/cipherResponse';
import { CollectionResponse } from '../models/response/collectionResponse';
import { FolderResponse } from '../models/response/folderResponse';
import { StringResponse } from '../models/response/stringResponse';
import { TemplateResponse } from '../models/response/templateResponse';
import { CipherRequest } from '../models/request/cipherRequest';
import { LoginRequest } from '../models/request/loginRequest';
import { LoginUriRequest } from '../models/request/loginUriRequest';
import { FieldRequest } from '../models/request/fieldRequest';
import { CardRequest } from '../models/request/cardRequest';
import { IdentityRequest } from '../models/request/identityRequest';
import { SecureNoteRequest } from '../models/request/secureNoteRequest';
export class GetCommand {
constructor(private cipherService: CipherService, private folderService: FolderService,
private collectionService: CollectionService, private totpService: TotpService) { }
async run(object: string, id: string, cmd: program.Command): Promise<Response> {
switch (object) {
switch (object.toLowerCase()) {
case 'item':
return await this.getCipher(id);
case 'totp':
@@ -27,6 +36,8 @@ export class GetCommand {
return await this.getFolder(id);
case 'collection':
return await this.getCollection(id);
case 'template':
return await this.getTemplate(id);
default:
return Response.badRequest('Unknown object.');
}
@@ -88,4 +99,36 @@ export class GetCommand {
const res = new CollectionResponse(decCollection);
return Response.success(res);
}
private async getTemplate(id: string) {
let template: any = null;
switch (id.toLowerCase()) {
case 'item':
template = CipherRequest.template();
break;
case 'field':
template = FieldRequest.template();
break;
case 'login':
template = LoginRequest.template();
break;
case 'loginuri':
template = LoginUriRequest.template();
break;
case 'card':
template = CardRequest.template();
break;
case 'identity':
template = IdentityRequest.template();
break;
case 'securenote':
template = SecureNoteRequest.template();
break;
default:
return Response.badRequest('Unknown object.');
}
const res = new TemplateResponse(template);
return Response.success(res);
}
}