validation passed to the canvas library now compiled

This commit is contained in:
Priec
2025-08-04 23:38:44 +02:00
parent 3d4435bac5
commit e6c4cb7e75
11 changed files with 1291 additions and 152 deletions

View File

@@ -0,0 +1,26 @@
//! Validation module for canvas form fields
pub mod config;
pub mod limits;
pub mod state;
// Re-export main types
pub use config::{ValidationConfig, ValidationResult, ValidationConfigBuilder};
pub use limits::{CharacterLimits, LimitCheckResult};
pub use state::{ValidationState, ValidationSummary};
/// Validation error types
#[derive(Debug, Clone, thiserror::Error)]
pub enum ValidationError {
#[error("Character limit exceeded: {current}/{max}")]
CharacterLimitExceeded { current: usize, max: usize },
#[error("Invalid character '{char}' at position {position}")]
InvalidCharacter { char: char, position: usize },
#[error("Validation configuration error: {message}")]
ConfigurationError { message: String },
}
/// Result type for validation operations
pub type Result<T> = std::result::Result<T, ValidationError>;