rae 0.1.10

Renderer-neutral widget, layout, sanitization, and GLSL shader primitives for Rust desktop tools.
Documentation
#![forbid(unsafe_code)]
#![doc = include_str!("../README.md")]

pub mod color;
pub mod effect;
pub mod hit;
pub mod input;
pub mod layout;
pub mod math;
pub mod morph;
pub mod output;
pub mod sanitize;
pub mod scroll;
pub mod shader;
pub mod state;
pub mod theme;
pub mod transcript;
pub mod widget;

pub use color::{Palette, Rgba};
pub use effect::{
    AnimationCurve, Elevation, Glow, InteractionState, MotionSpec, Ripple, RipplePool,
    SurfaceEffects,
};
pub use hit::{hit_resize_handle, local_point, CursorKind, HitMap, HitRegion, ResizeHandle};
pub use input::{CommandItem, CommandPalette, KeyModifier, Shortcut, SnippetSet, TextSnippet};
pub use layout::{compute_shell_layout, AppLayout, Insets, Rect};
pub use math::{
    catmull_rom, clamp01, ease_in_out_cubic, fractal_brownian_motion, hash12, hsv_to_rgb, lerp,
    pulse, remap, rotate, smoothstep, spring, Oscillator, Vec2, Vec3,
};
pub use morph::{
    CardTopology, MaterialTokens, MorphCacheKey, MorphProfile, MorphShape, MorphState, ShapeAnchor,
};
pub use output::{
    materialize_output, tokenize_code_line, CodeBlockOutput, CodeToken, CodeTokenKind,
    OutputDocument, OutputOptions, OutputRow,
};
pub use sanitize::{
    char_display_width, copy_safe_text, sanitize_str, sanitize_title, sanitize_with_policy,
    str_display_width, strip_ansi_escapes, truncate_str, AnsiStripResult, SanitizePolicy,
    SanitizedText,
};
pub use scroll::{ScrollAnchor, ScrollState};
pub use shader::{ShaderDescriptor, ShaderFamily, ShaderSource, ShaderUniform, ShaderUniformKind};
pub use state::{OverlayKind, PaneId};
pub use theme::{ThemeFamily, ThemePreset};
pub use transcript::{TranscriptRow, TranscriptView, TranscriptViewport};
pub use widget::{PaneChrome, PromptModel, StatusChip, TranscriptItem, WidgetFrame, WidgetSection};