1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
//! Constructs and sends emails from different providers.
#[allow(clippy::use_self)]
#[allow(clippy::module_name_repetitions)]
pub mod email_provider;
pub mod error;
pub mod mail_cmd;
pub mod sendgrid;
/// Holds all environment variables that are required
/// by any email provider.
#[derive(Debug)]
pub struct EnvLoader {
pub(crate) api_key: Option<String>,
}
impl EnvLoader {
/// Creates a new `EnvLoader` by loading the
/// `API_KEY` environment variable.
pub(crate) fn new() -> Self {
Self {
api_key: std::env::var("API_KEY").ok(),
}
}
}