Tailwind classes in OCaml
1(** Button component module *) 2 3(** Button configuration *) 4type t 5 6(** Button variants *) 7type variant = 8 | Primary 9 | Secondary 10 | Outline 11 | Ghost 12 | Link 13 | Danger 14 | Success 15 16(** Button sizes *) 17type size = 18 | Xs 19 | Sm 20 | Md 21 | Lg 22 | Xl 23 24(** Create a button *) 25val make : 26 ?variant:variant -> 27 ?size:size -> 28 ?disabled:bool -> 29 ?loading:bool -> 30 ?full_width:bool -> 31 ?icon_left:Htmlit.El.html -> 32 ?icon_right:Htmlit.El.html -> 33 ?classes:Tailwind.t -> 34 ?attributes:(string * string) list -> 35 ?onclick:string -> 36 children:Htmlit.El.html list -> 37 unit -> t 38 39(** Convert button to Htmlit element *) 40val to_html : t -> Htmlit.El.html 41 42(** Create button group *) 43val group : 44 ?classes:Tailwind.t -> 45 ?vertical:bool -> 46 buttons:t list -> 47 unit -> Htmlit.El.html 48 49(** Icon button (button with just an icon) *) 50val icon : 51 ?variant:variant -> 52 ?size:size -> 53 ?disabled:bool -> 54 ?classes:Tailwind.t -> 55 ?attributes:(string * string) list -> 56 ?aria_label:string -> 57 icon:Htmlit.El.html -> 58 unit -> Htmlit.El.html 59 60(** Link styled as button *) 61val link : 62 ?variant:variant -> 63 ?size:size -> 64 ?classes:Tailwind.t -> 65 ?attributes:(string * string) list -> 66 href:string -> 67 children:Htmlit.El.html list -> 68 unit -> Htmlit.El.html