#!/usr/bin/env bash
set -euo pipefail

PIMS_VERSION='1.0'

PIMS_DIR="${PIMS_DIR:-$HOME/.pims}"
export PIMS_DIR

PIMS_PROJECTS="$PIMS_DIR/projects"
PIMS_CONFIG_FILE="$PIMS_DIR/config"
export PIMS_PROJECTS PIMS_CONFIG_FILE

# Resolve the directory where this script lives
PIMS_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
export PIMS_ROOT

# Source libraries
. "$PIMS_ROOT/lib/pims-core.sh"
. "$PIMS_ROOT/lib/pims-commands.sh"

pims_load_config
_pims_color_init

cmd="${1:-help}"
shift 2>/dev/null || true

case "$cmd" in
  version|--version|-V)
    echo "pims $PIMS_VERSION"
    exit 0
    ;;
esac

case "$cmd" in
  init|add|list|show|note|status|done|edit|projects|project-status|help)
    "_pims_cmd_${cmd//-/_}" "$@"
    ;;
  *)
    pims_die "unknown command '$cmd'. Run 'pims help' for usage."
    ;;
esac
