#!/usr/bin/env bash
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
BIN_NAME="$(basename "$0").bin"
BIN_PATH="$SCRIPT_DIR/$BIN_NAME"

if [ ! -x "$BIN_PATH" ]; then
  echo "错误: 找不到可执行文件: $BIN_PATH" >&2
  exit 1
fi

# 如果当前在终端中运行（用户手动执行 Launcher），直接执行二进制并透传参数
if [ -t 1 ]; then
  cd "$SCRIPT_DIR"
  exec "$BIN_PATH" "$@"
  exit 0
fi

# 从 Finder / open 命令启动：用 AppleScript 打开 Terminal，再运行二进制（不带参数）
ESC_SCRIPT_DIR=${SCRIPT_DIR//\"/\\\"}
ESC_BIN_NAME=${BIN_NAME//\"/\\\"}

/usr/bin/osascript <<EOF_OSA
tell application "Terminal"
  activate
  do script "cd \\"$ESC_SCRIPT_DIR\\"; ./\\"$ESC_BIN_NAME\\""
end tell
EOF_OSA
