1
0
mirror of https://github.com/bitwarden/jslib synced 2025-12-10 21:33:17 +00:00
Files
jslib/common/src/models/export/folderExport.ts
2022-04-19 13:03:04 +02:00

33 lines
868 B
TypeScript

import { EncString } from "../domain/encString";
import { Folder as FolderDomain } from "../domain/folder";
import { FolderView } from "../view/folderView";
export class FolderExport {
static template(): FolderExport {
const req = new FolderExport();
req.name = "Folder name";
return req;
}
static toView(req: FolderExport, view = new FolderView()) {
view.name = req.name;
return view;
}
static toDomain(req: FolderExport, domain = new FolderDomain()) {
domain.name = req.name != null ? new EncString(req.name) : null;
return domain;
}
name: string;
// Use build method instead of ctor so that we can control order of JSON stringify for pretty print
build(o: FolderView | FolderDomain) {
if (o instanceof FolderView) {
this.name = o.name;
} else {
this.name = o.name?.encryptedString;
}
}
}