@echo off
setlocal EnableExtensions
REM Run this from an elevated or normal CMD **outside** other npm/node installs.
REM Requires portable Node at ..\.tools\node-from-tar\node-v22.14.0-win-x64 (see wm-ims/README.md).

set "BACKEND=%~dp0.."
set "NODE_ROOT=%BACKEND%\.tools\node-from-tar\node-v22.14.0-win-x64"

if not exist "%NODE_ROOT%\node.exe" (
  echo Portable Node not found at:
  echo   %NODE_ROOT%
  echo Extract node-v*-win-x64.zip into .tools\node-from-tar\ or install Node.js and use npm on PATH.
  exit /b 1
)

set "PATH=%NODE_ROOT%;%PATH%"
cd /d "%BACKEND%" || exit /b 1

if not exist ".env" (
  copy /y ".env.example" ".env" || exit /b 1
  echo Created .env from .env.example — edit DATABASE_URL if needed.
)

echo [1/5] npm install...
call "%NODE_ROOT%\npm.cmd" install --no-fund --no-audit
if errorlevel 1 exit /b 1

echo [2/5] prisma migrate deploy...
call "%NODE_ROOT%\npx.cmd" prisma migrate deploy
if errorlevel 1 exit /b 1

echo [3/5] prisma generate...
call "%NODE_ROOT%\npx.cmd" prisma generate
if errorlevel 1 exit /b 1

echo [4/5] prisma seed...
call "%NODE_ROOT%\npm.cmd" run prisma:seed
if errorlevel 1 exit /b 1

echo [5/5] Starting dev server ^(Ctrl+C to stop^)...
call "%NODE_ROOT%\npm.cmd" run dev
