use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct MemoryResponseDto {
#[serde(rename = "assets")]
pub assets: Vec<models::AssetResponseDto>,
#[serde(rename = "createdAt")]
pub created_at: String,
#[serde(rename = "data")]
pub data: Box<models::OnThisDayDto>,
#[serde(rename = "deletedAt", skip_serializing_if = "Option::is_none")]
pub deleted_at: Option<String>,
#[serde(rename = "hideAt", skip_serializing_if = "Option::is_none")]
pub hide_at: Option<String>,
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "isSaved")]
pub is_saved: bool,
#[serde(rename = "memoryAt")]
pub memory_at: String,
#[serde(rename = "ownerId")]
pub owner_id: String,
#[serde(rename = "seenAt", skip_serializing_if = "Option::is_none")]
pub seen_at: Option<String>,
#[serde(rename = "showAt", skip_serializing_if = "Option::is_none")]
pub show_at: Option<String>,
#[serde(rename = "type")]
pub r#type: models::MemoryType,
#[serde(rename = "updatedAt")]
pub updated_at: String,
}
impl MemoryResponseDto {
pub fn new(assets: Vec<models::AssetResponseDto>, created_at: String, data: models::OnThisDayDto, id: String, is_saved: bool, memory_at: String, owner_id: String, r#type: models::MemoryType, updated_at: String) -> MemoryResponseDto {
MemoryResponseDto {
assets,
created_at,
data: Box::new(data),
deleted_at: None,
hide_at: None,
id,
is_saved,
memory_at,
owner_id,
seen_at: None,
show_at: None,
r#type,
updated_at,
}
}
}