use backbone_core::{EntityValidator, ValidationErrors, ValidationError};
use backbone_core::{OptionalNotBlank, RequiredString};
use crate::domain::entity::Activity;
pub type ActivityValidator = EntityValidator<Activity>;
pub fn activity_validator() -> ActivityValidator {
EntityValidator::new()
.rule(RequiredString::new("subject", |e: &Activity| &e.subject))
.rule(OptionalNotBlank::new("outcome", |e: &Activity| e.outcome.as_deref()))
.rule(OptionalNotBlank::new("notes", |e: &Activity| e.notes.as_deref()))
}