pub const APP_CLIENT_ID: &str = "e49f90dc-c265-4392-b62f-b26704f9088f";
pub const SCOPES: &[&str] = &[
"offline_access",
"User.Read",
"Mail.ReadWrite",
"Mail.Send",
"Calendars.ReadWrite",
];
pub const AUTHORITY: &str = "https://login.microsoftonline.com/common";
pub const DEVICE_CODE_URL: &str = "https://login.microsoftonline.com/common/oauth2/v2.0/devicecode";
pub const TOKEN_URL: &str = "https://login.microsoftonline.com/common/oauth2/v2.0/token";
pub const GRAPH_BASE: &str = "https://graph.microsoft.com/v1.0";
pub fn client_id() -> Option<String> {
if let Ok(v) = std::env::var("PIDGE_CLIENT_ID") {
if !v.is_empty() {
return Some(v);
}
}
if APP_CLIENT_ID.is_empty() {
None
} else {
Some(APP_CLIENT_ID.to_string())
}
}
pub fn scope_string() -> String {
SCOPES.join(" ")
}