use serde::{Deserialize, Serialize};
fn default_title() -> String {
"Zeph".to_owned()
}
#[allow(clippy::struct_excessive_bools)]
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct NotificationsConfig {
#[serde(default)]
pub enabled: bool,
#[serde(default)]
pub macos_native: bool,
#[serde(default)]
pub webhook_url: Option<String>,
#[serde(default)]
pub webhook_topic: Option<String>,
#[serde(default = "default_title")]
pub title: String,
#[serde(default)]
pub min_turn_duration_ms: u64,
#[serde(default)]
pub only_on_error: bool,
#[serde(default)]
pub webhook_allow_insecure: bool,
}
impl Default for NotificationsConfig {
fn default() -> Self {
Self {
enabled: false,
macos_native: false,
webhook_url: None,
webhook_topic: None,
title: default_title(),
min_turn_duration_ms: 0,
only_on_error: false,
webhook_allow_insecure: false,
}
}
}