import os

from dotenv import load_dotenv

load_dotenv()

APP_ENV = os.getenv("APP_ENV", "dev")
DATABASE_URL = os.getenv("DATABASE_URL")


# Os helpers abaixo leem o ambiente a cada chamada (e não só no import), para que os testes
# consigam ligar/desligar a proteção e o modo de produção.
def em_producao() -> bool:
    return os.getenv("APP_ENV", "dev").strip().lower() in ("prod", "production", "producao")


def auth_desligada() -> bool:
    """Libera o login só em desenvolvimento/testes (`AUTH_DESLIGADA=1`); em produção é sempre ignorado."""
    return os.getenv("AUTH_DESLIGADA", "").strip() == "1" and not em_producao()


def cookie_seguro() -> bool:
    return os.getenv("COOKIE_SECURE", "").strip() == "1"


def origens_cors() -> list[str]:
    bruto = os.getenv("CORS_ORIGINS", "http://localhost:5173")
    return [o.strip() for o in bruto.split(",") if o.strip()]
