#!/usr/bin/env bash
set -euo pipefail
session="$1"
side="$2"
out="$3"
mkdir -p "$out"
drive() { agent-device "$@" --session "$session"; }
# Begin in settings.json on an iPhone 18 Pro, portrait, dark appearance, word wrap off.
if [ "$side" = base ]; then
  drive longpress 160 149 1000 --settle
  drive screenshot "$out/wrap-off.png"
  drive press 'label="File actions"' --settle
  drive press 'role=button label="Enable word wrap"' --settle
  drive longpress 160 149 1000 --settle
  drive screenshot "$out/wrap-on.png"
  drive press 'label="File actions"' --settle
  drive screenshot "$out/actions-menu.png"
  exit 0
fi
for mode in off on; do
  drive press 'label="File actions"' --settle
  if [ "$mode" = on ]; then
    drive press 'role=button label="Enable word wrap"' --settle
    drive press 'label="File actions"' --settle
  fi
  drive press 'role=button label="Select text"' --settle
  drive longpress 110 157 1000 --settle
  drive screenshot "$out/wrap-$mode-partial.png"
  drive press 'role=cell label="Copy"' --settle
  drive clipboard read
  drive longpress 110 157 1000 --settle
  drive gesture pan 131 174 50 60 1600
  drive screenshot "$out/wrap-$mode-range.png"
  drive press 'role=cell label="Copy"' --settle
  drive clipboard read
  drive press 'label="File actions"' --settle
  drive press 'role=button label="Done selecting"' --settle
  drive screenshot "$out/wrap-$mode-restored.png"
  drive press 'role=button label="Back"' --settle
  drive fill 'role=text-view' '' --settle
  drive longpress 'role=text-view' 1000 --settle
  drive press 'role=cell label="Paste"' --settle
  drive screenshot "$out/wrap-$mode-draft.png"
  if [ "$mode" = off ]; then
    drive press 'label="Open files"' --settle
    drive press 'label="settings.json"' --settle
  fi
done
