//! Log command definitions.
//!
//! Commands for viewing Git logs.

use super::super::command::{CommandCategory, CommandDef, CommandId};
use crate::app::Action;

pub fn log_commands() -> Vec<CommandDef> {
    vec![
        CommandDef {
            id: CommandId::LogBrief,
            name: "Log brief",
            key: "lb",
            category: CommandCategory::Log,
            description: "Show brief git log",
            action_factory: |_| Some(Action::ShowLogBrief),
            is_enabled: |_| true,
            keywords: &["log", "brief", "short"],
        },
        CommandDef {
            id: CommandId::LogStats,
            name: "Log stats",
            key: "ls",
            category: CommandCategory::Log,
            description: "Show git log with stats",
            action_factory: |_| Some(Action::ShowLogStats),
            is_enabled: |_| true,
            keywords: &["log", "stats", "statistics"],
        },
    ]
}

