use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ContainerConfig {
#[serde(rename = "backgroundColor", skip_serializing_if = "Option::is_none")]
pub background_color: Option<Box<models::ThemeColor>>,
#[serde(rename = "borderColor", skip_serializing_if = "Option::is_none")]
pub border_color: Option<Box<models::ThemeColor>>,
#[serde(rename = "borderSize", skip_serializing_if = "Option::is_none")]
pub border_size: Option<i32>,
#[serde(rename = "borderStyle", skip_serializing_if = "Option::is_none")]
pub border_style: Option<BorderStyle>,
#[serde(rename = "opacity", skip_serializing_if = "Option::is_none")]
pub opacity: Option<i32>,
#[serde(rename = "variant", skip_serializing_if = "Option::is_none")]
pub variant: Option<Variant>,
}
impl ContainerConfig {
pub fn new() -> ContainerConfig {
ContainerConfig {
background_color: None,
border_color: None,
border_size: None,
border_style: None,
opacity: None,
variant: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum BorderStyle {
#[serde(rename = "PAGE_THEME_BORDER_STYLE_UNSPECIFIED")]
PageThemeBorderStyleUnspecified,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_SOLID")]
PageThemeBorderStyleSolid,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_DASHED")]
PageThemeBorderStyleDashed,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_DOTTED")]
PageThemeBorderStyleDotted,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_DOUBLE")]
PageThemeBorderStyleDouble,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_GROOVE")]
PageThemeBorderStyleGroove,
#[serde(rename = "PAGE_THEME_BORDER_STYLE_RIDGE")]
PageThemeBorderStyleRidge,
}
impl Default for BorderStyle {
fn default() -> BorderStyle {
Self::PageThemeBorderStyleUnspecified
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Variant {
#[serde(rename = "PAGE_THEME_CONTAINER_VARIANT_UNSPECIFIED")]
PageThemeContainerVariantUnspecified,
#[serde(rename = "PAGE_THEME_CONTAINER_VARIANT_ROUNDED")]
PageThemeContainerVariantRounded,
#[serde(rename = "PAGE_THEME_CONTAINER_VARIANT_SQUARE")]
PageThemeContainerVariantSquare,
}
impl Default for Variant {
fn default() -> Variant {
Self::PageThemeContainerVariantUnspecified
}
}