oxi-tui 0.58.0

Terminal UI rendering pipeline and widget library for oxi (v2 โ€” terminal-first pipeline)
Documentation
//! Retained widget tree + memoization.
//!
//! Widgets live across frames (retained). Each frame:
//! 1. Pipeline calls `RetainedTree::any_hash_changed` โ€” walks the tree,
//!    aggregates child hashes into root hash.
//! 2. If root hash unchanged AND no resize: pipeline skips render entirely.
//! 3. Otherwise: `RetainedTree::render` walks the tree, calling `render()`
//!    only on subtrees whose hash changed.
//!
//! See spec ยง5.

pub mod chat;
pub mod context;
pub mod panel;
pub mod primitive;
pub mod renderable;
pub mod retained_child;
pub mod tree;

pub use primitive::{Border, List, Scrollbar, Text};

pub use crate::pipeline::diff_backend::{CellRange, LinkCollector, LinkTarget};
pub use context::{FocusTarget, RenderCtx};
pub use renderable::{Renderable, hash_combine, hash_str};
pub use retained_child::RetainedChild;
pub use tree::RetainedTree;