Tailwind classes in OCaml
1(** Main Tailwind API module *)
2
3(** The main type representing a collection of Tailwind classes *)
4type t = Css.t
5
6(** Module aliases for accessing individual utilities *)
7module Css = Css
8module Color = Color
9module Size = Size
10module Spacing = Spacing
11module Display = Display
12module Flexbox = Flexbox
13module Grid = Grid
14module Position = Position
15module Layout = Layout
16module Typography = Typography
17module Effects = Effects
18module Responsive = Responsive
19module Variants = Variants
20module Reset = Reset
21module Patterns = Patterns
22
23(** Convenience aliases for shorter imports *)
24module C = Color
25module S = Spacing
26module E = Effects
27module T = Typography
28module F = Flexbox
29module G = Grid
30module P = Patterns
31module R = Reset
32
33(** Combine multiple CSS classes *)
34val tw : Css.t list -> Css.t
35
36(** Conditionally include classes *)
37val class_list : (Css.t * bool) list -> Css.t
38
39(** Convert CSS classes to string *)
40val to_string : t -> string
41
42(** Core utility functions *)
43
44(** Screen reader only (visually hidden but accessible) *)
45val sr_only : t
46
47(** Focus ring utility *)
48val focus_ring : ?color:Color.t -> ?width:Effects.border_width -> unit -> t
49
50(** V4 specific features *)
51module V4 : sig
52 (** Container query support *)
53 val container_query : Responsive.container_size -> t -> t
54
55 (** Starting style animation *)
56 val starting_style : t -> t
57
58 (** Text shadow utilities *)
59 val text_shadow : [`None | `Sm | `Base | `Lg | `Xl] -> t
60
61 (** Mask utilities *)
62 val mask : [`Auto | `Cover | `Contain] -> t
63
64 (** 3D perspective *)
65 val perspective : [`None | `Distant | `Normal | `Near] -> t
66end