setuprs 0.1.6

setuprs is a versatile CLI and TUI application designed to streamline project management by enabling quick creation and cloning of project snapshots. Utilizing clap.rs for command-line functionality and ratatui.rs for an interactive text interface, setuprs offers a user-friendly solution for managing and replicating project scaffolds efficiently.
use crossterm::event::KeyCode;

use crate::tui::app::{App, Content, CurrentMode, DefaultActions};

pub struct ErrorMode<'a> {
    keycode: KeyCode,
    state: &'a mut App,
}

impl<'a> DefaultActions for ErrorMode<'a> {
    fn keycode(&self) -> KeyCode {
        self.keycode
    }

    fn state(&mut self) -> &mut App {
        self.state
    }
}

impl<'a> ErrorMode<'a> {
    pub fn actions(app: &'a mut App, keycode: KeyCode) -> Self {
        if let KeyCode::Char(_) = keycode {
            app.mode = CurrentMode::Main(Content::Help)
        }
        Self {
            keycode,
            state: app,
        }
    }
}