Skip to main content

sova_meta/
defaults.rs

1//! App-level meta defaults.
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
4pub enum TrailingSlash {
5    #[default]
6    Keep,
7    Always,
8    Never,
9}
10
11#[derive(Debug, Clone)]
12pub struct MetaDefaults {
13    pub site_name: Option<String>,
14    pub title_template: Option<String>,
15    pub default_image: Option<String>,
16    pub twitter_site: Option<String>,
17    pub public_url: Option<String>,
18    pub trailing_slash: TrailingSlash,
19    /// Staging / `[meta] robots = "block-all"` — force noindex on all pages.
20    pub robots_block_all: bool,
21    /// When false, missing title/description on indexable routes only warn.
22    pub check_strict: bool,
23}
24
25impl Default for MetaDefaults {
26    fn default() -> Self {
27        Self {
28            site_name: None,
29            title_template: None,
30            default_image: None,
31            twitter_site: None,
32            public_url: None,
33            trailing_slash: TrailingSlash::Keep,
34            robots_block_all: false,
35            check_strict: true,
36        }
37    }
38}