namespace OTSSignsOrchestrator.Core.Configuration;
///
/// Shared constants for the application.
///
public static class AppConstants
{
public const string AdminRole = "Admin";
public const string ViewerRole = "Viewer";
/// Docker secret name for the global SMTP password.
public const string GlobalSmtpSecretName = "global_smtp_password";
/// Build a per-customer MySQL password secret name.
public static string CustomerMysqlSecretName(string customerName)
=> $"{SanitizeName(customerName)}_mysql_password";
/// Sanitize a customer name for use in Docker/secret names.
public static string SanitizeName(string name)
=> new string(name.Where(c => char.IsLetterOrDigit(c) || c == '-' || c == '_').ToArray()).ToLowerInvariant();
}