#!/bin/sh

# Adapted from: https://seb.jambor.dev/posts/improving-shell-workflows-with-fzf/
# Requires the following variables to be set:
# - ATLASSIAN_EMAIL
# - ATLASSIAN_API_TOKEN
# - JIRA_HOSTNAME
# - JIRA_PROJECT (for other script)

issue_details() {
    jira_key=$(echo "$1" | cut -d":" -f1)
    jq_template='"'\
'# \(.key): \(.fields.summary)\n'\
'\n'\
'*Created*: \(.fields.created)\n'\
'*Status*: \(.fields.status.statusCategory.name)\n'\
'*Reporter*: \(.fields.reporter.displayName)\n'\
'*Priority*: \(.fields.priority.name)\n'\
"*Epic*: https://$JIRA_HOSTNAME/browse/\(.fields.customfield_10014)\n"\
'\n'\
'## Link\n\n'\
"https://$JIRA_HOSTNAME/browse/\(.key)\n"\
'\n'\
'## Description\n\n'\
'\(.fields.description)'\
'"'
    curl \
      --get \
      --user "$ATLASSIAN_EMAIL:$ATLASSIAN_API_TOKEN" \
      --silent \
      --compressed \
      "https://$JIRA_HOSTNAME/rest/api/2/issue/$jira_key" |
    jq "$jq_template" |
    xargs printf |
    bat -l md --color always --style plain
}

issue_details "$1"
