#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
resolve_node_binary() {
  if [[ -n "${KIWI_CONTROL_NODE:-}" && -x "${KIWI_CONTROL_NODE}" ]]; then
    printf '%s\n' "$KIWI_CONTROL_NODE"
    return
  fi

  if [[ -n "${SHREY_JUNIOR_NODE:-}" && -x "${SHREY_JUNIOR_NODE}" ]]; then
    printf '%s\n' "$SHREY_JUNIOR_NODE"
    return
  fi

  local candidate=""
  if candidate="$(command -v node 2>/dev/null)"; then
    printf '%s\n' "$candidate"
    return
  fi

  for candidate in /opt/homebrew/bin/node /usr/local/bin/node /usr/bin/node; do
    if [[ -x "$candidate" ]]; then
      printf '%s\n' "$candidate"
      return
    fi
  done

  printf '%s\n' "Kiwi Control requires Node.js 22+ to run." >&2
  exit 1
}
NODE_BIN="$(resolve_node_binary)"
exec "$NODE_BIN" "$SCRIPT_DIR/../lib/cli.js" "$@"
