#!/bin/bash
# MarkiTect Command Aliases
#
# This file provides backward-compatible aliases for the markdown commands
# that have been migrated to use md- prefixes. Users can source this file
# to maintain their existing workflows.
#
# Usage:
#   source aliases.sh
#   # or add to ~/.bashrc: source /path/to/markitect/aliases.sh

# Core markdown command aliases
alias markitect-ingest='markitect md-ingest'
alias markitect-get='markitect md-get'
alias markitect-list='markitect md-list'

# Common usage patterns with parameters
alias md-ingest-verbose='markitect md-ingest --verbose'
alias md-get-output='markitect md-get --output'
alias md-list-json='markitect md-list --format json'
alias md-list-yaml='markitect md-list --format yaml'
alias md-list-table='markitect md-list --format table'
alias md-list-names='markitect md-list --names-only'

# Convenience functions for complex workflows
md-process-dir() {
    if [ -z "$1" ]; then
        echo "Usage: md-process-dir <directory>"
        return 1
    fi

    find "$1" -name "*.md" -type f | while read -r file; do
        echo "Processing: $file"
        markitect md-ingest "$file"
    done
}

md-export-all() {
    local output_dir="${1:-exported}"
    mkdir -p "$output_dir"

    markitect md-list --names-only | while read -r filename; do
        if [ -n "$filename" ]; then
            echo "Exporting: $filename"
            markitect md-get "$filename" --output "$output_dir/$filename"
        fi
    done
}

# Show available aliases
md-aliases() {
    echo "Available MarkiTect aliases:"
    echo "  markitect-ingest    -> markitect md-ingest"
    echo "  markitect-get       -> markitect md-get"
    echo "  markitect-list      -> markitect md-list"
    echo ""
    echo "Convenience aliases:"
    echo "  md-ingest-verbose   -> markitect md-ingest --verbose"
    echo "  md-get-output       -> markitect md-get --output"
    echo "  md-list-json        -> markitect md-list --format json"
    echo "  md-list-yaml        -> markitect md-list --format yaml"
    echo "  md-list-table       -> markitect md-list --format table"
    echo "  md-list-names       -> markitect md-list --names-only"
    echo ""
    echo "Convenience functions:"
    echo "  md-process-dir <dir>          - Process all .md files in directory"
    echo "  md-export-all [output-dir]    - Export all stored files to directory"
    echo "  md-aliases                    - Show this help"
}

echo "MarkiTect aliases loaded. Type 'md-aliases' for help."