Source file mosaic_mlx.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
include Mosaic
let fragment ?(children = []) () = Mosaic.fragment children
let box ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?border ?border_style ?border_sides
?border_color ?focused_border_color ?background ?fill ?title
?title_alignment ?(children = []) () =
Mosaic.box ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?border ?border_style ?border_sides
?border_color ?focused_border_color ?background ?fill ?title
?title_alignment children
let scroll_box ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?scroll_x ?scroll_y
?sticky_scroll ?sticky_start ?background ?on_scroll ?(children = []) () =
Mosaic.scroll_box ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?scroll_x ?scroll_y
?sticky_scroll ?sticky_start ?background ?on_scroll children
let text ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?style ?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?text_style ?wrap ?selectable ?selection_bg
?selection_fg ?tab_width ?truncate ?(children = []) () =
Mosaic.text ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?style ?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?text_style ?wrap ?selectable ?selection_bg
?selection_fg ?tab_width ?truncate
(String.concat "" children)
let code ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?spans ?text_style ?wrap ?tab_width
?selectable ?selection_bg ?selection_fg ?on_selection ?(children = []) () =
Mosaic.code ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?spans ?text_style ?wrap ?tab_width
?selectable ?selection_bg ?selection_fg ?on_selection
(String.concat "" children)
let markdown ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?md_style ?conceal ?streaming ?(children = [])
() =
Mosaic.markdown ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?md_style ?conceal
?streaming
(String.concat "" children)
let input ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?value ?cursor ?selection ?placeholder
?max_length ?text_color ?background_color ?focused_text_color
?focused_background_color ?placeholder_color ?selection_color ?selection_fg
?cursor_style ?cursor_color ?cursor_blinking ?on_input ?on_change ?on_submit
?on_cursor ?children:_ () =
Mosaic.input ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?value ?cursor ?selection
?placeholder ?max_length ?text_color ?background_color ?focused_text_color
?focused_background_color ?placeholder_color ?selection_color ?selection_fg
?cursor_style ?cursor_color ?cursor_blinking ?on_input ?on_change ?on_submit
?on_cursor ()
let textarea ?key ?id ?display ?box_sizing ?position ?overflow ?scrollbar_width
?text_align ?inset ?flex_direction ?flex_wrap ?justify_content ?align_items
?size ?min_size ?max_size ?aspect_ratio ?gap ?padding ?margin ?border_width
?align_self ?align_content ?justify_items ?justify_self ?flex_grow
?flex_shrink ?flex_basis ?grid_template_rows ?grid_template_columns
?grid_auto_rows ?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row ?grid_column
?visible ?z_index ?opacity ?focusable ?autofocus ?buffered ?live ?ref
?on_mouse ?on_key ?on_paste ?value ?cursor ?selection ?spans
?ghost_text ?ghost_text_color ?placeholder ?wrap ?text_color
?background_color ?focused_text_color ?focused_background_color
?placeholder_color ?selection_color ?selection_fg ?cursor_style
?cursor_color ?cursor_blinking ?on_input ?on_change ?on_submit ?on_cursor
?children:_ () =
Mosaic.textarea ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?value ?cursor ?selection
?spans ?ghost_text ?ghost_text_color ?placeholder ?wrap ?text_color
?background_color ?focused_text_color ?focused_background_color
?placeholder_color ?selection_color ?selection_fg ?cursor_style
?cursor_color ?cursor_blinking ?on_input ?on_change ?on_submit ?on_cursor ()
let line_number ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio ?gap
?padding ?margin ?border_width ?align_self ?align_content ?justify_items
?justify_self ?flex_grow ?flex_shrink ?flex_basis ?grid_template_rows
?grid_template_columns ?grid_auto_rows ?grid_auto_columns ?grid_auto_flow
?grid_template_areas ?grid_template_column_names ?grid_template_row_names
?grid_row ?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus
?buffered ?live ?ref ?on_mouse ?on_key ?on_paste ?fg ?bg ?min_width
?padding_right ?show_line_numbers ?line_number_offset ?line_colors
?line_signs ?hidden_line_numbers ?(children = []) () =
match children with
| [ child ] ->
Mosaic.line_number ?key ?id ?display ?box_sizing ?position ?overflow
?scrollbar_width ?text_align ?inset ?flex_direction ?flex_wrap
?justify_content ?align_items ?size ?min_size ?max_size ?aspect_ratio
?gap ?padding ?margin ?border_width ?align_self ?align_content
?justify_items ?justify_self ?flex_grow ?flex_shrink ?flex_basis
?grid_template_rows ?grid_template_columns ?grid_auto_rows
?grid_auto_columns ?grid_auto_flow ?grid_template_areas
?grid_template_column_names ?grid_template_row_names ?grid_row
?grid_column ?visible ?z_index ?opacity ?focusable ?autofocus ?buffered
?live ?ref ?on_mouse ?on_key ?on_paste ?fg ?bg ?min_width ?padding_right
?show_line_numbers ?line_number_offset ?line_colors ?line_signs
?hidden_line_numbers child
| _ -> Mosaic.empty