relay_core/envelope/
meta.rs1use chrono::{DateTime, Utc};
2use semver::Version;
3use serde::{Deserialize, Serialize};
4use uuid::Uuid;
5
6use crate::{
7 prelude::{Address, CryptoMeta},
8 signed::Signed,
9};
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct MetaEnvelope {
13 pub gid: Uuid,
14 pub version: Version,
15 pub from: Address,
16 pub to: Address,
17 pub timestamp: DateTime<Utc>,
18 pub crypto: CryptoMeta,
19 pub payload: Signed,
21}
22
23impl From<MetaEnvelope> for MetaPayload {
24 fn from(val: MetaEnvelope) -> MetaPayload {
25 MetaPayload {
26 gid: val.gid,
27 version: val.version,
28 from: val.from,
29 to: val.to,
30 timestamp: val.timestamp,
31 }
32 }
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
36pub struct MetaPayload {
37 pub gid: Uuid,
38 pub version: Version,
39 pub from: Address,
40 pub to: Address,
41 pub timestamp: DateTime<Utc>,
42}