#!/usr/bin/env bash
# Compila agent_spike.ts -> agent_spike.js con el mismo toolchain que producción
# (frida-il2cpp-bridge@0.13.1 + frida-compile@19.0.5 en /tmp/il2cpp_work).
# OJO: /tmp/il2cpp_work es EFÍMERO — se borra al reiniciar el Mac. Si falta, hay que
# reinstalar bridge y compile JUNTOS desde la caché de npm (ver reference_build_env).
set -e
HERE="$(cd "$(dirname "$0")" && pwd)"
WORK="/tmp/il2cpp_work"
export PATH="/Users/danicosta/.nvm/versions/node/v22.11.0/bin:$PATH"

if [ ! -d "$WORK/node_modules/.bin" ]; then
  echo "[build] ERROR: $WORK no preparado (frida-compile/frida-il2cpp-bridge)."
  exit 1
fi

cp "$HERE/agent_spike.ts" "$WORK/agent_spike.ts"
cd "$WORK"
# .bin/frida-compile da "Permission denied" en este entorno -> cli.js directo con node
node node_modules/frida-compile/dist/cli.js agent_spike.ts -c -o agent_spike.js
cp agent_spike.js "$HERE/"
echo "[build] OK -> agent_spike.js ($(wc -c < "$HERE/agent_spike.js") bytes)"
