#!/bin/sh
set -eu

BUNDLED_UPLOAD_URL='https://ai-backups-upload.speechify-account.workers.dev'
SCRIPT_URL='https://scripts.speechify.dev/backup-ai-sessions.py'

if ! command -v python3 >/dev/null 2>&1; then
  echo "python3 is required to run this backup utility." >&2
  exit 1
fi

if [ -f "$(dirname "$0")/backup-ai-sessions.py" ]; then
  BUNDLED_UPLOAD_URL="$BUNDLED_UPLOAD_URL" exec python3 "$(dirname "$0")/backup-ai-sessions.py" "$@"
fi

tmpdir="$(mktemp -d 2>/dev/null || mktemp -d -t ai-session-backup)"
cleanup() {
  rm -rf "$tmpdir"
}
trap cleanup EXIT INT TERM

payload="$tmpdir/backup-ai-sessions.py"
if command -v curl >/dev/null 2>&1; then
  curl -fsSL "$SCRIPT_URL" -o "$payload"
elif command -v wget >/dev/null 2>&1; then
  wget -qO "$payload" "$SCRIPT_URL"
else
  echo "curl or wget is required to download the backup utility." >&2
  exit 1
fi

BUNDLED_UPLOAD_URL="$BUNDLED_UPLOAD_URL" exec python3 "$payload" "$@"
