# Step 1: Build Stage (Development & Builder)
FROM node:20-alpine AS base

WORKDIR /app

COPY package*.json ./

RUN npm install

# Development Stage
FROM base AS development
COPY . .
EXPOSE 5173
CMD ["npm", "run", "dev", "--", "--host"]

# Production Build Stage
FROM base AS builder
COPY . .
RUN npm run build

# Production Runner Stage
FROM nginx:alpine AS production
COPY --from=builder /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
