1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-03 10:13:31 +00:00
Files
browser/libs/common/src/models/export/folder.export.ts
2025-11-03 18:10:52 -08:00

31 lines
882 B
TypeScript

import { EncString } from "../../key-management/crypto/models/enc-string";
import { Folder as FolderDomain } from "../../vault/models/domain/folder";
import { FolderView } from "../../vault/models/view/folder.view";
import { safeGetString } from "./utils";
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 = new EncString(req.name ?? "");
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) {
this.name = safeGetString(o.name ?? "") ?? "";
}
}