orbital-discussion 0.1.1

Composable discussion and reply-thread components for Orbital
Documentation
/// Visual styling for reply rows — orthogonal to [`super::DiscussionViewMode`].
#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
pub enum DiscussionAppearance {
    /// Nested cards with tree connector (default).
    #[default]
    Surface,
    /// Outlined cards, minimal elevation, no connector.
    Plain,
}

/// Resolved card tint for a single reply row.
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum DiscussionReplySurface {
    /// OP or root post — brand-tinted card.
    Op,
    /// Authored by the current viewer — accent card.
    Viewer,
    /// Default neutral surface card.
    Neutral,
}

impl DiscussionReplySurface {
    pub fn class_suffix(self) -> &'static str {
        match self {
            Self::Op => "op",
            Self::Viewer => "viewer",
            Self::Neutral => "neutral",
        }
    }
}