lb_rs/model/
meta_conversions.rs

1use super::{
2    crypto::Timestamped, file_metadata::FileMetadata, meta::Meta, server_file::ServerFile,
3    server_meta::ServerMeta, signed_file::SignedFile, signed_meta::SignedMeta,
4};
5
6impl From<FileMetadata> for Meta {
7    fn from(value: FileMetadata) -> Self {
8        Meta::V1 {
9            id: value.id,
10            file_type: value.file_type,
11            parent: value.parent,
12            name: value.name,
13            owner: value.owner,
14            is_deleted: value.is_deleted,
15            doc_hmac: value.document_hmac,
16            user_access_keys: value.user_access_keys,
17            folder_access_key: value.folder_access_key,
18            doc_size: None,
19        }
20    }
21}
22
23impl From<SignedFile> for SignedMeta {
24    fn from(value: SignedFile) -> Self {
25        let timestamped_value = Timestamped {
26            value: value.timestamped_value.value.into(),
27            timestamp: value.timestamped_value.timestamp,
28        };
29
30        Self { timestamped_value, signature: value.signature, public_key: value.public_key }
31    }
32}
33
34impl From<ServerFile> for ServerMeta {
35    fn from(value: ServerFile) -> Self {
36        Self { file: value.file.into(), version: value.version }
37    }
38}