variable "aws_region" {
  description = "AWS region"
  default     = "us-east-1"
}

variable "environment" {
  default = "prod"
}

variable "service_name" {
  default = "email-campaigns-sender"
}

variable "application_family" {
  default = "fansifter"
}

variable "lambda_name" {
  default = "lambda-audience-email-campaigns-sender"
}

variable "lambda_timeout" {
  default = 5 * 60
}

variable "lambda_reserved_concurrency" {
  default = 40
}

variable "lambda_memory_size" {
  default = 1024
}

variable "snowflake_account" {
  default = "delphi.us-east-1"
}

variable "snowflake_database" {
  default = "FANSIFTER_APP_REPORTING"
}

variable "snowflake_schema" {
  default = "PROD"
}

variable "snowflake_warehouse" {
  default = "PROD_ETL_WH"
}

variable "snowflake_role" {
  default = "PROD_LAMBDA_AUDIENCE"
}

variable "snowflake_user" {
  default = "PROD_LAMBDA_AUDIENCE"
}

variable "secrets_manager_secret_names" {
  description = "List of secrets manager secrets to create."
  type        = list(string)
  default = [
    "SNOWFLAKE_PRIVATE_KEY",
    "SNOWFLAKE_KEY_PASSPHRASE",
  ]
}

variable "stripo_base_url" {
  default = "https://prod-stripo-api-gateway.prod-fansifter.theorchard.io"
}

variable "stripo_client_id" {
  default = "ABDpkd7m8LSx3rPcg9XhNFDqGzxborDRx"
}

variable "preference_center_url" {
  default = "https://fan-preferences.sonymusic.com"
}

variable "unsubscribe_host" {
  default = "unsub.e.sonymusicfans.com"
}

variable "reply_to_domains" {
  type        = map(string)
  description = "Domains for the Reply-To header added to emails"
  default = {
    sme        = "reply.e.sonymusicfans.com"
    theorchard = "reply.fans.theorchard.com"
    awal       = "reply.e.sonymusicfans.com"
  }
}

locals {
  snowflake_private_key_secret_name    = "${var.environment}/${var.lambda_name}/SNOWFLAKE_PRIVATE_KEY"
  snowflake_key_passphrase_secret_name = "${var.environment}/${var.lambda_name}/SNOWFLAKE_KEY_PASSPHRASE"
  sendgrid_sme_api_key_secret_name     = "${var.environment}/ows-email-campaigns/SENDGRID_SME_API_KEY"
  sendgrid_orchard_api_key_secret_name = "${var.environment}/ows-email-campaigns/SENDGRID_ORCHARD_API_KEY"
  sendgrid_awal_api_key_secret_name    = "${var.environment}/ows-email-campaigns/SENDGRID_AWAL_API_KEY"
  stripo_client_secret_name            = "${var.environment}/ows-email-campaigns/STRIPO_CLIENT_SECRET"
  preference_center_secret_key_name    = "${var.environment}/ows-preference-center/SECRET_KEY"
  reply_to_secret_key_name             = "${var.environment}/ows-email-campaigns/REPLY_TO_SECRET_KEY"
}
