feat: add default label to name for YAML column config

Co-authored-by: aider (openai/andrew/openrouter/qwen/qwen3-coder) <aider@aider.chat>
This commit is contained in:
Andrew Phillips
2025-08-16 12:48:10 -03:00
parent 8a2e992ca5
commit 9fc645c54a

View File

@@ -5,12 +5,33 @@ use serde::{Deserialize, Serialize};
use log::{debug, error}; use log::{debug, error};
use crate::args::{Args}; use crate::args::{Args};
#[derive(Debug, Clone, Deserialize, Serialize)] #[derive(Debug, Clone, Serialize)]
pub struct ColumnConfig { pub struct ColumnConfig {
pub name: String, pub name: String,
pub label: String, pub label: String,
} }
impl<'de> serde::Deserialize<'de> for ColumnConfig {
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[derive(Deserialize)]
struct Helper {
name: String,
label: Option<String>,
}
let helper = Helper::deserialize(deserializer)?;
let label = helper.label.unwrap_or_else(|| helper.name.clone());
Ok(ColumnConfig {
name: helper.name,
label,
})
}
}
#[derive(Debug, Clone, Deserialize, Serialize)] #[derive(Debug, Clone, Deserialize, Serialize)]
pub struct ServerConfig { pub struct ServerConfig {
pub address: Option<String>, pub address: Option<String>,