f5ed284f8c 2025-06-21 1: use crate::Cursor;
f5ed284f8c 2025-06-21 2:
f5ed284f8c 2025-06-21 3: use lazy_static::lazy_static;
f5ed284f8c 2025-06-21 4: use regex::Regex;
f5ed284f8c 2025-06-21 5:
f5ed284f8c 2025-06-21 6: lazy_static! {
f5ed284f8c 2025-06-21 7: pub static ref RE_SPECIAL: Regex = Regex::new(r"([\-_*\[\]()~`>#+|{}\.!])").unwrap();
f5ed284f8c 2025-06-21 8: pub static ref RE_DOMAIN: Regex = Regex::new(r"^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$").unwrap();
f5ed284f8c 2025-06-21 9: }
f5ed284f8c 2025-06-21 10:
f5ed284f8c 2025-06-21 11: /// `Attachment` object to store number attachment data and corresponding file name
f5ed284f8c 2025-06-21 12: #[derive(Debug)]
f5ed284f8c 2025-06-21 13: pub struct Attachment {
f5ed284f8c 2025-06-21 14: pub data: Cursor<Vec<u8>>,
f5ed284f8c 2025-06-21 15: pub name: String,
f5ed284f8c 2025-06-21 16: }