1mod runner;
5pub mod terminal;
6use bevy_app::prelude::{App, Plugin};
7use bevy_ecs::prelude::Resource;
8pub use ratatui;
9use terminal::Terminal;
10
11pub struct TerminalPlugin;
12impl Plugin for TerminalPlugin {
13 fn build(&self, app: &mut App) {
14 app.set_runner(runner::runner)
15 .insert_resource(Terminal::default())
16 .insert_resource(State::default());
17 }
18}
19
20#[derive(bevy_ecs::prelude::Event)]
21pub struct Event(pub ratatui::crossterm::event::Event);
22
23#[derive(Debug, Default, PartialEq, Resource)]
24pub enum State {
25 #[default]
26 Running,
27 Exit,
28}