use serde::Serialize; use super::footnote_definition::RenderRealFootnoteDefinition; use super::GlobalSettings; use super::RenderDocumentElement; #[derive(Debug, Serialize)] #[serde(tag = "type")] #[serde(rename = "blog_post_page")] pub(crate) struct RenderBlogPostPage { global_settings: GlobalSettings, /// The title that will be shown visibly on the page. title: Option, self_link: Option, children: Vec, footnotes: Vec, } impl RenderBlogPostPage { // TODO: Maybe these settings should be moved into a common struct so this can have the same type signature as the others. pub(crate) fn new( global_settings: GlobalSettings, title: Option, self_link: Option, children: Vec, footnotes: Vec, ) -> RenderBlogPostPage { RenderBlogPostPage { global_settings, title, self_link, children, footnotes, } } }