#!/usr/bin/env bash
set -euo pipefail
source "$SHELLOPS_DIR/.envrc"
import "$SHELLOPS_DIR/lib/violet/api.sh"

USAGE="$(cat <<EOF
Runs violet against a path, failing on legibility violations.

Usage: action violet lint [-h,--help] [path]

Arguments:
  path        Directory or file to analyze. Defaults to current directory.

Flags:
  -h, --help    Show this help text.
EOF
)"

function main() {
  local path="."

  parse_args path "$@"
  violet_lint "$path" --no-color
}

function parse_args() {
  local -n _path=$1
  shift

  while [[ $# -gt 0 ]]; do
    case "$1" in
      -h|--help) log "$USAGE"; exit 0 ;;
      -*)
        error "Unknown option: $1"
        exit 1
        ;;
      *)
        _path="$1"
        ;;
    esac
    shift
  done
}

if [[ "${BASH_SOURCE[0]}" == "$0" ]]; then
  main "$@"
fi
