Skip to main content

systemprompt_provider_contracts/web_config/
branding.rs

1//! Brand-identity configuration: name, logo, social handles, copyright.
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct BrandingConfig {
7    pub name: String,
8    pub title: String,
9    pub description: String,
10    pub copyright: String,
11    #[serde(rename = "themeColor")]
12    pub theme_color: String,
13    pub display_sitename: bool,
14    pub twitter_handle: String,
15    pub logo: LogoConfig,
16    pub favicon: String,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize)]
20pub struct LogoConfig {
21    pub primary: LogoVariant,
22    #[serde(default)]
23    pub dark: Option<LogoVariant>,
24    #[serde(default)]
25    pub small: Option<LogoVariant>,
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize)]
29pub struct LogoVariant {
30    #[serde(default)]
31    pub svg: Option<String>,
32    #[serde(default)]
33    pub webp: Option<String>,
34    #[serde(default)]
35    pub png: Option<String>,
36}