Skip to main content

webui/
error.rs

1// Copyright (c) Microsoft Corporation.
2// Licensed under the MIT license.
3
4//! Error types for the WebUI library.
5
6use thiserror::Error;
7
8/// Errors that can occur during WebUI build, render, or inspection operations.
9#[derive(Debug, Error)]
10pub enum WebUIError {
11    /// I/O error (file read/write failures).
12    #[error("I/O error: {0}")]
13    Io(String),
14
15    /// Invalid or unknown parser plugin.
16    #[error("Unknown plugin: {0}")]
17    InvalidPlugin(String),
18
19    /// Component registration failure.
20    #[error("Component registration error: {0}")]
21    ComponentRegistration(String),
22
23    /// Component discovery failure (npm packages or local paths).
24    #[error("Component discovery error: {0}")]
25    ComponentDiscovery(String),
26
27    /// HTML/CSS parsing failure.
28    #[error("Parse error: {0}")]
29    Parse(String),
30
31    /// Protocol serialization or deserialization failure.
32    #[error("Protocol error: {0}")]
33    Protocol(String),
34
35    /// JSON serialization failure.
36    #[error("Serialization error: {0}")]
37    Serialization(String),
38
39    /// Handler rendering error.
40    #[error("Rendering error: {0}")]
41    Rendering(String),
42}