34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
import { CipherType } from "jslib-common/enums/cipherType";
|
|
import { CipherWithIdExport } from "jslib-common/models/export/cipherWithIdsExport";
|
|
import { CipherView } from "jslib-common/models/view/cipherView";
|
|
import { BaseResponse } from "jslib-node/cli/models/response/baseResponse";
|
|
|
|
import { AttachmentResponse } from "./attachmentResponse";
|
|
import { LoginResponse } from "./loginResponse";
|
|
import { PasswordHistoryResponse } from "./passwordHistoryResponse";
|
|
|
|
export class CipherResponse extends CipherWithIdExport implements BaseResponse {
|
|
object: string;
|
|
attachments: AttachmentResponse[];
|
|
revisionDate: Date;
|
|
deletedDate: Date;
|
|
passwordHistory: PasswordHistoryResponse[];
|
|
|
|
constructor(o: CipherView) {
|
|
super();
|
|
this.object = "item";
|
|
this.build(o);
|
|
if (o.attachments != null) {
|
|
this.attachments = o.attachments.map((a) => new AttachmentResponse(a));
|
|
}
|
|
this.revisionDate = o.revisionDate;
|
|
this.deletedDate = o.deletedDate;
|
|
if (o.passwordHistory != null) {
|
|
this.passwordHistory = o.passwordHistory.map((h) => new PasswordHistoryResponse(h));
|
|
}
|
|
if (o.type === CipherType.Login && o.login != null) {
|
|
this.login = new LoginResponse(o.login);
|
|
}
|
|
}
|
|
}
|