use backbone_core::{EntityValidator, ValidationErrors, ValidationError};
use backbone_core::{OptionalNotBlank, RequiredString};
use crate::domain::entity::SmsTracker;
pub type SmsTrackerValidator = EntityValidator<SmsTracker>;
pub fn sms_tracker_validator() -> SmsTrackerValidator {
EntityValidator::new()
.rule(RequiredString::new("sms_uuid", |e: &SmsTracker| &e.sms_uuid))
.rule(OptionalNotBlank::new("failure_reason", |e: &SmsTracker| e.failure_reason.as_deref()))
.rule(OptionalNotBlank::new("recipient", |e: &SmsTracker| e.recipient.as_deref()))
}