use backbone_core::{EntityValidator, ValidationErrors, ValidationError};
use backbone_core::{OptionalNotBlank, RequiredString};
use crate::domain::entity::ItemVariant;
pub type ItemVariantValidator = EntityValidator<ItemVariant>;
pub fn item_variant_validator() -> ItemVariantValidator {
EntityValidator::new()
.rule(RequiredString::new("sku", |e: &ItemVariant| &e.sku))
.rule(RequiredString::new("variant_label", |e: &ItemVariant| &e.variant_label))
.rule(OptionalNotBlank::new("barcode", |e: &ItemVariant| e.barcode.as_deref()))
}