#!/bin/bash

# omarchy:summary=Prompt for a reminder duration + message and schedule it
# omarchy:examples=omarchy reminder set-interactive

set -e

prompt_minutes() {
  while :; do
    minutes=$(omarchy-menu-input "Remind in minutes") || exit 0
    if [[ $minutes =~ ^[0-9]+$ ]] && (( minutes > 0 )); then
      printf '%s' "$minutes"
      return 0
    fi
    [[ -z $minutes ]] && exit 0
    omarchy-notification-send "Invalid reminder" "Enter the number of minutes" -u critical
  done
}

minutes=$(prompt_minutes)
[[ -n $minutes ]] || exit 0

message=$(omarchy-menu-input "Reminder message") || exit 0
if [[ -n $message ]]; then
  omarchy-reminder "$minutes" "$message"
else
  omarchy-reminder "$minutes"
fi
