#!/bin/bash

set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
MODE="${1:-dev}"

source "$SCRIPT_DIR/runtime-env.sh"
nexus_export_runtime_env "$PROJECT_ROOT"

cd "$PROJECT_ROOT/frontend"

case "$MODE" in
  dev)
    exec npm run dev -- --host "$FRONTEND_HOST" --port "$FRONTEND_PORT" --strictPort
    ;;
  preview)
    exec npm run preview -- --host "$FRONTEND_HOST" --port "$FRONTEND_PORT" --strictPort
    ;;
  build-preview)
    npm run build
    exec npm run preview -- --host "$FRONTEND_HOST" --port "$FRONTEND_PORT" --strictPort
    ;;
  build)
    exec npm run build
    ;;
  *)
    echo "Unknown frontend mode: $MODE" >&2
    exit 1
    ;;
esac
