use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PageTheme {
#[serde(rename = "badgeEnabled", skip_serializing_if = "Option::is_none")]
pub badge_enabled: Option<bool>,
#[serde(rename = "badgeIconColor", skip_serializing_if = "Option::is_none")]
pub badge_icon_color: Option<Box<models::ThemeColor>>,
#[serde(rename = "badgeId", skip_serializing_if = "Option::is_none")]
pub badge_id: Option<String>,
#[serde(rename = "badgeShape", skip_serializing_if = "Option::is_none")]
pub badge_shape: Option<BadgeShape>,
#[serde(rename = "bodyFont", skip_serializing_if = "Option::is_none")]
pub body_font: Option<Box<models::FontConfig>>,
#[serde(rename = "canvasColor", skip_serializing_if = "Option::is_none")]
pub canvas_color: Option<Box<models::ThemeColor>>,
#[serde(rename = "canvasCoverId", skip_serializing_if = "Option::is_none")]
pub canvas_cover_id: Option<String>,
#[serde(rename = "canvasCoverMode", skip_serializing_if = "Option::is_none")]
pub canvas_cover_mode: Option<CanvasCoverMode>,
#[serde(rename = "containerConfig", skip_serializing_if = "Option::is_none")]
pub container_config: Option<Box<models::ContainerConfig>>,
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(rename = "elementColor", skip_serializing_if = "Option::is_none")]
pub element_color: Option<Box<models::ThemeColor>>,
#[serde(rename = "elementFont", skip_serializing_if = "Option::is_none")]
pub element_font: Option<Box<models::FontConfig>>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "titleFont", skip_serializing_if = "Option::is_none")]
pub title_font: Option<Box<models::FontConfig>>,
#[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(rename = "workspaceId", skip_serializing_if = "Option::is_none")]
pub workspace_id: Option<String>,
}
impl PageTheme {
pub fn new() -> PageTheme {
PageTheme {
badge_enabled: None,
badge_icon_color: None,
badge_id: None,
badge_shape: None,
body_font: None,
canvas_color: None,
canvas_cover_id: None,
canvas_cover_mode: None,
container_config: None,
created_at: None,
element_color: None,
element_font: None,
id: None,
title_font: None,
updated_at: None,
workspace_id: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum BadgeShape {
#[serde(rename = "PAGE_THEME_BADGE_SHAPE_UNSPECIFIED")]
PageThemeBadgeShapeUnspecified,
#[serde(rename = "PAGE_THEME_BADGE_SHAPE_CIRCLE")]
PageThemeBadgeShapeCircle,
#[serde(rename = "PAGE_THEME_BADGE_SHAPE_SQUARE")]
PageThemeBadgeShapeSquare,
#[serde(rename = "PAGE_THEME_BADGE_SHAPE_ROUNDED")]
PageThemeBadgeShapeRounded,
}
impl Default for BadgeShape {
fn default() -> BadgeShape {
Self::PageThemeBadgeShapeUnspecified
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum CanvasCoverMode {
#[serde(rename = "PAGE_THEME_BACKGROUND_COVER_MODE_UNSPECIFIED")]
PageThemeBackgroundCoverModeUnspecified,
#[serde(rename = "PAGE_THEME_BACKGROUND_COVER_MODE_FULL")]
PageThemeBackgroundCoverModeFull,
#[serde(rename = "PAGE_THEME_BACKGROUND_COVER_MODE_PROGRESSIVE_TOP")]
PageThemeBackgroundCoverModeProgressiveTop,
#[serde(rename = "PAGE_THEME_BACKGROUND_COVER_MODE_PROGRESSIVE_BOTTOM")]
PageThemeBackgroundCoverModeProgressiveBottom,
}
impl Default for CanvasCoverMode {
fn default() -> CanvasCoverMode {
Self::PageThemeBackgroundCoverModeUnspecified
}
}