use serde::{Deserialize, Serialize};
use crate::stela::{Image, Motion, VisualMotion};
use super::Section;
#[derive(bon::Builder, Debug, Deserialize, Serialize)]
pub struct SectionPost {
pub title: Option<String>,
pub image: Option<Image>,
pub background: Option<Image>,
pub is_pinned: Option<bool>,
pub body_html: Option<String>,
pub motion: Option<Motion>,
pub motions_tl: Vec<VisualMotion>,
pub motions_tr: Vec<VisualMotion>,
pub motions_br: Vec<VisualMotion>,
pub motions_bl: Vec<VisualMotion>,
}
impl From<SectionPost> for Section {
fn from(value: SectionPost) -> Self {
Section::Post(value.into())
}
}