patternfly_yew/components/table/
props.rs1use crate::prelude::AsClasses;
2use yew::prelude::*;
3
4#[derive(Debug, Clone, Copy, Default, Eq, PartialEq)]
5pub enum TableMode {
6 #[default]
7 Default,
8 Compact,
9 CompactNoBorders,
10 CompactExpandable,
11 Expandable,
12}
13
14impl TableMode {
15 pub fn is_expandable(&self) -> bool {
16 matches!(self, Self::CompactExpandable | Self::Expandable)
17 }
18}
19
20#[derive(Copy, Clone, Debug, PartialEq)]
21pub enum TableGridMode {
22 Medium,
23 Large,
24 XLarge,
25 XXLarge,
26}
27
28impl AsClasses for TableGridMode {
29 fn extend_classes(&self, classes: &mut Classes) {
30 match self {
31 Self::Medium => classes.push(classes!("pf-m-grid-md")),
32 Self::Large => classes.push(classes!("pf-m-grid-lg")),
33 Self::XLarge => classes.push(classes!("pf-m-grid-xl")),
34 Self::XXLarge => classes.push(classes!("pf-m-grid-2xl")),
35 }
36 }
37}
38
39#[derive(Clone, Debug, PartialEq, Eq)]
40pub enum TextModifier {
41 Wrap,
42 NoWrap,
43 Truncate,
44 BreakWord,
45}
46
47impl AsClasses for TextModifier {
48 fn extend_classes(&self, classes: &mut Classes) {
49 match self {
50 Self::Wrap => classes.extend(classes!("pf-m-wrap")),
51 Self::NoWrap => classes.extend(classes!("pf-m-nowrap")),
52 Self::Truncate => classes.extend(classes!("pf-m-truncate")),
53 Self::BreakWord => classes.extend(classes!("pf-m-break-word")),
54 }
55 }
56}
57
58#[derive(Clone, Copy, Debug, PartialEq, Eq)]
59pub enum SpanModifiers {
60 Truncate,
61}
62
63impl AsClasses for SpanModifiers {
64 fn extend_classes(&self, classes: &mut Classes) {
65 match self {
66 Self::Truncate => classes.push("pf-m-truncate"),
67 }
68 }
69}