#!/usr/bin/env dash

# shellcheck source=/dev/null
SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH

# override shell lib output to stdout
eprint() {
    # shellcheck disable=SC2317
    print "$@"
}
eprintln() {
    # shellcheck disable=SC2317
    println "$@"
}

enable_hook_dbg() {
    debug_hooks="$(task _get rc.debug.hooks)"
    [ "$debug_hooks" ] && [ "$debug_hooks" -ge 1 ] && dbg_enable
}

update_git_repo() {
    task_data="$(task _get rc.data.location)"
    [ "$task_data" ] || die "Taskwarrior should have a location set"

    cd "$task_data" || die "(BUG?): Your data.location path is not accessable"

    [ -d ./.git/ ] || git init

    git add .
    git commit --message="chore: Update" --no-gpg-sign
}

read -r new_task
# We don't change the task, thus immediately return the json
echo "$new_task"

enable_hook_dbg
update_git_repo

exit 0

# vim: ft=sh