use indexmap::IndexMap; use serde::{Deserialize, Serialize}; #[derive(Debug, Clone, Serialize, Deserialize, Default)] #[serde(default)] pub struct Page { #[serde(skip_serializing_if = "Option::is_none")] pub path: Option, #[serde(skip_serializing_if = "Option::is_none")] pub title: Option, #[serde(skip_serializing_if = "Option::is_none")] pub sidebar: Option, #[serde(skip_serializing_if = "Option::is_none")] pub actions: Option>, } #[derive(Debug, Clone, Serialize, Deserialize, Default)] #[serde(default)] pub struct Sidebar { #[serde(skip_serializing_if = "Option::is_none")] pub category: Option, #[serde(skip_serializing_if = "Option::is_none")] pub priority: Option, } #[derive(Debug, Clone, Serialize, Deserialize, Default)] #[serde(default)] pub struct Action { #[serde(skip_serializing_if = "Option::is_none")] pub punc: Option, #[serde(skip_serializing_if = "Option::is_none")] pub navigate: Option, #[serde(skip_serializing_if = "Option::is_none")] pub present: Option, }