Tailwind classes in OCaml
1(** Visual effects: borders, shadows, opacity, transforms *)
2
3(** Effects configuration *)
4type t
5
6(** Border width *)
7type border_width =
8 | None | Px | Px2 | Px4 | Px8
9
10(** Border style *)
11type border_style =
12 | Solid | Dashed | Dotted | Double | Hidden | None
13
14(** Border radius *)
15type border_radius =
16 | None | Sm | Base | Md | Lg | Xl | Xl2 | Xl3 | Full
17
18(** Shadow size *)
19type shadow =
20 | None | Sm | Base | Md | Lg | Xl | Xl2 | Inner
21
22(** Opacity level *)
23type opacity = int (** 0-100 *)
24
25(** Transform origin *)
26type transform_origin =
27 | Center | Top | Top_right | Right | Bottom_right
28 | Bottom | Bottom_left | Left | Top_left
29
30(** Set border width *)
31val border_width : [`All | `X | `Y | `Top | `Right | `Bottom | `Left] -> border_width -> t
32
33(** Set border style *)
34val border_style : border_style -> t
35
36(** Set border color *)
37val border_color : Color.t -> t
38
39(** Set border radius *)
40val rounded : [`All | `Top | `Right | `Bottom | `Left | `Tl | `Tr | `Br | `Bl] -> border_radius -> t
41
42(** Set box shadow *)
43val shadow : shadow -> t
44
45(** Set opacity *)
46val opacity : opacity -> t
47
48(** Set backdrop blur *)
49val backdrop_blur : [`None | `Sm | `Base | `Md | `Lg | `Xl | `Xl2 | `Xl3] -> t
50
51(** Set transform *)
52val transform : [`None | `Gpu] -> t
53
54(** Set transform origin *)
55val transform_origin : transform_origin -> t
56
57(** Set scale (percentage) *)
58val scale : [`All | `X | `Y] -> int -> t
59
60(** Set rotate (degrees) *)
61val rotate : int -> t
62
63(** Set translate *)
64val translate : [`X | `Y] -> Size.t -> t
65
66(** Convert to CSS class *)
67val to_class : t -> Css.t
68
69(** Common border utilities *)
70val border : Css.t
71val border_2 : Css.t
72val border_4 : Css.t
73val rounded_sm : Css.t
74val rounded_md : Css.t
75val rounded_lg : Css.t
76val rounded_full : Css.t
77val shadow_sm : Css.t
78val shadow_md : Css.t
79val shadow_lg : Css.t