# ============================================================================
# Connexa Frontend — build Vite puis service statique via Nginx
# ============================================================================

# --- Étape 1 : build -------------------------------------------------------
FROM node:20-alpine AS builder
WORKDIR /app

COPY package*.json ./
RUN npm ci

# Args de build Vite (publics, pas de secrets — la clé Google est restreinte
# par domaine/API côté Google Cloud ; vide = carte admin désactivée).
ARG VITE_GOOGLE_MAPS_API_KEY
ENV VITE_GOOGLE_MAPS_API_KEY=$VITE_GOOGLE_MAPS_API_KEY

COPY . .
RUN npm run build

# --- Étape 2 : service statique --------------------------------------------
FROM nginx:1.25-alpine AS runner
# Configuration SPA (fallback index.html pour le routage côté client)
COPY nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=builder /app/dist /usr/share/nginx/html
EXPOSE 80
