#[cfg(target_arch = "wasm32")]
extern crate tinycrossterm as crossterm;
pub mod action;
pub mod bus;
pub mod component;
pub mod event;
pub mod features;
pub mod keybindings;
pub mod resource;
pub mod runtime;
pub mod store;
#[cfg(feature = "subscriptions")]
pub mod subscriptions;
#[cfg(feature = "tasks")]
pub mod tasks;
pub mod testing;
#[allow(deprecated)]
pub use action::{Action, ActionCategory, ActionParams, ActionSummary};
pub use component::Component;
pub use features::{DynamicFeatures, FeatureFlags};
pub use bus::{
process_raw_event, spawn_event_poller, DefaultBindingContext, EventBus, EventHandler,
EventOutcome, EventRoutingState, HandlerResponse, RawEvent, RouteTarget, RoutedEvent,
SimpleEventBus,
};
pub use event::{
ComponentId, Event, EventContext, EventKind, EventType, GlobalKeyPolicy, NumericComponentId,
};
pub use keybindings::{format_key_for_display, parse_key_string, BindingContext, Keybindings};
#[cfg(feature = "tracing")]
pub use store::LoggingMiddleware;
pub use store::{
ComposedMiddleware, DispatchError, DispatchLimits, Middleware, NoEffect, NoopMiddleware,
Reducer, ReducerResult, Store, StoreWithMiddleware,
};
pub use runtime::{
DispatchErrorPolicy, EffectContext, PollerConfig, RenderContext, Runtime, RuntimeStore,
};
pub use resource::DataResource;
#[cfg(feature = "tasks")]
pub use tasks::{TaskKey, TaskManager, TaskPauseHandle};
#[cfg(feature = "subscriptions")]
pub use subscriptions::{SubKey, SubPauseHandle, Subscriptions};
pub use ratatui::{
layout::Rect,
style::{Color, Modifier, Style},
text::{Line, Span, Text},
Frame,
};
pub use testing::{
alt_key, buffer_rect_to_string_plain, buffer_to_string, buffer_to_string_plain, char_key,
ctrl_key, into_event, key, key_event, key_events, keys, ActionAssertions, ActionAssertionsEq,
EffectAssertions, EffectAssertionsEq, RenderHarness, StoreTestHarness, TestHarness,
};
#[cfg(feature = "testing-time")]
pub use testing::{advance_time, pause_time, resume_time};
pub mod prelude {
pub use crate::action::{Action, ActionCategory, ActionParams};
pub use crate::bus::{
process_raw_event, spawn_event_poller, DefaultBindingContext, EventBus, EventHandler,
EventOutcome, EventRoutingState, HandlerResponse, RawEvent, RouteTarget, RoutedEvent,
SimpleEventBus,
};
pub use crate::component::Component;
pub use crate::event::{
ComponentId, Event, EventContext, EventKind, EventType, GlobalKeyPolicy, NumericComponentId,
};
pub use crate::features::{DynamicFeatures, FeatureFlags};
pub use crate::keybindings::{
format_key_for_display, parse_key_string, BindingContext, Keybindings,
};
pub use crate::reducer_compose;
pub use crate::resource::DataResource;
#[cfg(feature = "tracing")]
pub use crate::store::LoggingMiddleware;
pub use crate::store::{
ComposedMiddleware, DispatchError, DispatchLimits, Middleware, NoEffect, NoopMiddleware,
Reducer, ReducerResult, Store, StoreWithMiddleware,
};
pub use crate::runtime::{
DispatchErrorPolicy, EffectContext, PollerConfig, RenderContext, Runtime, RuntimeStore,
};
#[cfg(feature = "subscriptions")]
pub use crate::subscriptions::{SubKey, SubPauseHandle, Subscriptions};
#[cfg(feature = "tasks")]
pub use crate::tasks::{TaskKey, TaskManager, TaskPauseHandle};
pub use ratatui::{
layout::Rect,
style::{Color, Modifier, Style},
text::{Line, Span, Text},
Frame,
};
}