tailwind_rs_core/classes/
utilities.rs1use super::ClassSet;
6use crate::responsive::Breakpoint;
7
8pub fn new(classes: impl IntoIterator<Item = String>) -> ClassSet {
10 let mut class_set = ClassSet::new();
11 class_set.add_classes(classes);
12 class_set
13}
14
15pub fn responsive(
17 base: impl IntoIterator<Item = String>,
18 responsive: impl IntoIterator<Item = (Breakpoint, String)>,
19) -> ClassSet {
20 let mut class_set = ClassSet::new();
21 class_set.add_classes(base);
22
23 for (breakpoint, class) in responsive {
24 class_set.add_responsive_class(breakpoint, class);
25 }
26
27 class_set
28}
29
30pub fn conditional(
32 base: impl IntoIterator<Item = String>,
33 conditional: impl IntoIterator<Item = (String, String)>,
34) -> ClassSet {
35 let mut class_set = ClassSet::new();
36 class_set.add_classes(base);
37
38 for (condition, class) in conditional {
39 class_set.add_conditional_class(condition, class);
40 }
41
42 class_set
43}
44
45pub fn merge(class_sets: impl IntoIterator<Item = ClassSet>) -> ClassSet {
47 let mut result = ClassSet::new();
48
49 for class_set in class_sets {
50 result.merge(class_set);
51 }
52
53 result
54}