| 1 | //! Codewhale's canonical Whale v2 performance, shared by every terminal surface. |
| 2 | //! |
| 3 | //! The native core is adapted from `codewhale-app/src/whale` at |
| 4 | //! `bc1044887b4ef973e444b6f8f83f9389daffee2a`; see |
| 5 | //! `assets/whale-motion/PROVENANCE.md`. One host-owned [`Director`] accepts |
| 6 | //! authoritative owner inputs. Springs, authored clips, particles and the rig |
| 7 | //! produce the live pose; widgets only paint it. Drop the Director when the |
| 8 | //! foreground identity changes, or use [`Stage`] to manage that boundary. |
| 9 | //! |
| 10 | //! [`braille`] retains the canonical one-ink packed geometry. [`colored_braille`] |
| 11 | //! adds the native blue ombre and prop inks to those same dots; a terminal cell |
| 12 | //! can carry one foreground ink, so its majority visible shape wins, with later |
| 13 | //! paint order breaking ties. The caller supplies localized state words. |
| 14 | //! Reduced motion settles on the authored poster and schedules no animation. |
| 15 | |
| 16 | pub mod acting; |
| 17 | pub mod data; |
| 18 | pub mod habitat; |
| 19 | pub mod ink; |
| 20 | pub mod math; |
| 21 | pub mod props; |
| 22 | pub mod rig; |
| 23 | pub mod scene; |
| 24 | pub mod stage; |
| 25 | |
| 26 | pub use acting::{Activity, Context, Director, Event, Options, Presence, Span, acting_for}; |
| 27 | pub use data::Act; |
| 28 | pub use habitat::{Cove, Layer}; |
| 29 | pub use rig::{Cmd, Parts, Path, Role, Shape, holes_for}; |
| 30 | pub use scene::{ |
| 31 | ColoredGrid, Grid, View, braille, colored_braille, rasterize, rasterize_colored, scene, |
| 32 | scene_posed, |
| 33 | }; |
| 34 | pub use stage::{CoveScene, Inputs, Stage, Tier}; |
| 35 | |
| 36 | #[cfg(test)] |
| 37 | mod tests; |
| 38 |