1use std::io;
2use thiserror::Error as ThisError;
3
4#[derive(ThisError, Debug)]
6pub enum Error {
7 #[error("IO error: {0}")]
9 IoError(#[from] io::Error),
10
11 #[error("Parse error: {0}")]
13 ParseError(String),
14
15 #[error("Component error: {0}")]
17 ComponentError(String),
18
19 #[error("Render error: {0}")]
21 RenderError(String),
22
23 #[error("Configuration error: {0}")]
25 ConfigError(String),
26
27 #[error("YAML parsing error: {0}")]
29 YamlError(#[from] serde_yaml::Error),
30
31 #[error("TOML parsing error: {0}")]
33 TomlError(#[from] toml::de::Error),
34
35 #[error("Watch error: {0}")]
37 NotifyError(#[from] notify::Error),
38
39 #[cfg(feature = "minify")]
41 #[error("HTML minification error: {0}")]
42 MinifyError(#[from] minify_html::Error),
43}