use thiserror::Error;
#[derive(Debug, Error)]
pub enum LangError {
#[error("failed to read translation file: {0}")]
IoError(#[from] std::io::Error),
#[error("failed to parse translation JSON: {0}")]
JsonError(#[from] serde_json::Error),
#[error("no translations loaded from the given path")]
NoTranslationsLoaded,
#[error("invalid locale: {locale}")]
InvalidLocale {
locale: String,
},
#[error("lang config error: {message}")]
ConfigError {
message: String,
},
}