yoga-python 0.1.1__cp312-cp312-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
yoga/__init__.py ADDED
@@ -0,0 +1,8 @@
1
+ """
2
+ Yoga Python bindings - Facebook Yoga layout engine
3
+
4
+ This package provides Python bindings for the Facebook Yoga layout engine.
5
+ Uses compiled C++ pybind11 extension.
6
+ """
7
+
8
+ from yoga.yoga import * # noqa: F401, F403 # type: ignore[import-not-found]
yoga/__init__.pyi ADDED
@@ -0,0 +1,582 @@
1
+ from collections.abc import Callable
2
+ from typing import Any
3
+
4
+ # Enums (pybind11 enum types)
5
+ class Direction:
6
+ Inherit: Direction
7
+ LTR: Direction
8
+ RTL: Direction
9
+ @property
10
+ def name(self) -> str: ...
11
+ @property
12
+ def value(self) -> int: ...
13
+ def __eq__(self, other: object) -> bool: ...
14
+ def __ne__(self, other: object) -> bool: ...
15
+ def __hash__(self) -> int: ...
16
+ def __int__(self) -> int: ...
17
+
18
+ class FlexDirection:
19
+ Column: FlexDirection
20
+ ColumnReverse: FlexDirection
21
+ Row: FlexDirection
22
+ RowReverse: FlexDirection
23
+ @property
24
+ def name(self) -> str: ...
25
+ @property
26
+ def value(self) -> int: ...
27
+ def __eq__(self, other: object) -> bool: ...
28
+ def __ne__(self, other: object) -> bool: ...
29
+ def __hash__(self) -> int: ...
30
+ def __int__(self) -> int: ...
31
+
32
+ class Justify:
33
+ FlexStart: Justify
34
+ Center: Justify
35
+ FlexEnd: Justify
36
+ SpaceBetween: Justify
37
+ SpaceAround: Justify
38
+ SpaceEvenly: Justify
39
+ @property
40
+ def name(self) -> str: ...
41
+ @property
42
+ def value(self) -> int: ...
43
+ def __eq__(self, other: object) -> bool: ...
44
+ def __ne__(self, other: object) -> bool: ...
45
+ def __hash__(self) -> int: ...
46
+ def __int__(self) -> int: ...
47
+
48
+ class Align:
49
+ Auto: Align
50
+ FlexStart: Align
51
+ Center: Align
52
+ FlexEnd: Align
53
+ Stretch: Align
54
+ Baseline: Align
55
+ SpaceBetween: Align
56
+ SpaceAround: Align
57
+ SpaceEvenly: Align
58
+ @property
59
+ def name(self) -> str: ...
60
+ @property
61
+ def value(self) -> int: ...
62
+ def __eq__(self, other: object) -> bool: ...
63
+ def __ne__(self, other: object) -> bool: ...
64
+ def __hash__(self) -> int: ...
65
+ def __int__(self) -> int: ...
66
+
67
+ class PositionType:
68
+ Static: PositionType
69
+ Relative: PositionType
70
+ Absolute: PositionType
71
+ @property
72
+ def name(self) -> str: ...
73
+ @property
74
+ def value(self) -> int: ...
75
+ def __eq__(self, other: object) -> bool: ...
76
+ def __ne__(self, other: object) -> bool: ...
77
+ def __hash__(self) -> int: ...
78
+ def __int__(self) -> int: ...
79
+
80
+ class Wrap:
81
+ NoWrap: Wrap
82
+ Wrap: Wrap
83
+ WrapReverse: Wrap
84
+ @property
85
+ def name(self) -> str: ...
86
+ @property
87
+ def value(self) -> int: ...
88
+ def __eq__(self, other: object) -> bool: ...
89
+ def __ne__(self, other: object) -> bool: ...
90
+ def __hash__(self) -> int: ...
91
+ def __int__(self) -> int: ...
92
+
93
+ class Overflow:
94
+ Visible: Overflow
95
+ Hidden: Overflow
96
+ Scroll: Overflow
97
+ @property
98
+ def name(self) -> str: ...
99
+ @property
100
+ def value(self) -> int: ...
101
+ def __eq__(self, other: object) -> bool: ...
102
+ def __ne__(self, other: object) -> bool: ...
103
+ def __hash__(self) -> int: ...
104
+ def __int__(self) -> int: ...
105
+
106
+ class Display:
107
+ Flex: Display
108
+ None_: Display
109
+ Contents: Display
110
+ @property
111
+ def name(self) -> str: ...
112
+ @property
113
+ def value(self) -> int: ...
114
+ def __eq__(self, other: object) -> bool: ...
115
+ def __ne__(self, other: object) -> bool: ...
116
+ def __hash__(self) -> int: ...
117
+ def __int__(self) -> int: ...
118
+
119
+ class Edge:
120
+ Left: Edge
121
+ Top: Edge
122
+ Right: Edge
123
+ Bottom: Edge
124
+ Start: Edge
125
+ End: Edge
126
+ Horizontal: Edge
127
+ Vertical: Edge
128
+ All: Edge
129
+ __members__: dict[str, Edge]
130
+ @property
131
+ def name(self) -> str: ...
132
+ @property
133
+ def value(self) -> int: ...
134
+ def __eq__(self, other: object) -> bool: ...
135
+ def __ne__(self, other: object) -> bool: ...
136
+ def __hash__(self) -> int: ...
137
+ def __int__(self) -> int: ...
138
+
139
+ class Unit:
140
+ Undefined: Unit
141
+ Point: Unit
142
+ Percent: Unit
143
+ Auto: Unit
144
+ MaxContent: Unit
145
+ FitContent: Unit
146
+ Stretch: Unit
147
+ @property
148
+ def name(self) -> str: ...
149
+ @property
150
+ def value(self) -> int: ...
151
+ def __eq__(self, other: object) -> bool: ...
152
+ def __ne__(self, other: object) -> bool: ...
153
+ def __hash__(self) -> int: ...
154
+ def __int__(self) -> int: ...
155
+
156
+ class MeasureMode:
157
+ Undefined: MeasureMode
158
+ Exactly: MeasureMode
159
+ AtMost: MeasureMode
160
+ @property
161
+ def name(self) -> str: ...
162
+ @property
163
+ def value(self) -> int: ...
164
+ def __eq__(self, other: object) -> bool: ...
165
+ def __ne__(self, other: object) -> bool: ...
166
+ def __hash__(self) -> int: ...
167
+ def __int__(self) -> int: ...
168
+
169
+ class Dimension:
170
+ Width: Dimension
171
+ Height: Dimension
172
+ @property
173
+ def name(self) -> str: ...
174
+ @property
175
+ def value(self) -> int: ...
176
+ def __eq__(self, other: object) -> bool: ...
177
+ def __ne__(self, other: object) -> bool: ...
178
+ def __hash__(self) -> int: ...
179
+ def __int__(self) -> int: ...
180
+
181
+ class NodeType:
182
+ Default: NodeType
183
+ Text: NodeType
184
+ @property
185
+ def name(self) -> str: ...
186
+ @property
187
+ def value(self) -> int: ...
188
+ def __eq__(self, other: object) -> bool: ...
189
+ def __ne__(self, other: object) -> bool: ...
190
+ def __hash__(self) -> int: ...
191
+ def __int__(self) -> int: ...
192
+
193
+ class LogLevel:
194
+ Error: LogLevel
195
+ Warn: LogLevel
196
+ Info: LogLevel
197
+ Debug: LogLevel
198
+ Verbose: LogLevel
199
+ Fatal: LogLevel
200
+ @property
201
+ def name(self) -> str: ...
202
+ @property
203
+ def value(self) -> int: ...
204
+ def __eq__(self, other: object) -> bool: ...
205
+ def __ne__(self, other: object) -> bool: ...
206
+ def __hash__(self) -> int: ...
207
+ def __int__(self) -> int: ...
208
+
209
+ class ExperimentalFeature:
210
+ WebFlexBasis: ExperimentalFeature
211
+ @property
212
+ def name(self) -> str: ...
213
+ @property
214
+ def value(self) -> int: ...
215
+ def __eq__(self, other: object) -> bool: ...
216
+ def __ne__(self, other: object) -> bool: ...
217
+ def __hash__(self) -> int: ...
218
+ def __int__(self) -> int: ...
219
+
220
+ class Gutter:
221
+ Column: Gutter
222
+ Row: Gutter
223
+ All: Gutter
224
+ @property
225
+ def name(self) -> str: ...
226
+ @property
227
+ def value(self) -> int: ...
228
+ def __eq__(self, other: object) -> bool: ...
229
+ def __ne__(self, other: object) -> bool: ...
230
+ def __hash__(self) -> int: ...
231
+ def __int__(self) -> int: ...
232
+
233
+ class BoxSizing:
234
+ BorderBox: BoxSizing
235
+ ContentBox: BoxSizing
236
+ @property
237
+ def name(self) -> str: ...
238
+ @property
239
+ def value(self) -> int: ...
240
+ def __eq__(self, other: object) -> bool: ...
241
+ def __ne__(self, other: object) -> bool: ...
242
+ def __hash__(self) -> int: ...
243
+ def __int__(self) -> int: ...
244
+
245
+ class Errata:
246
+ None_: Errata
247
+ StretchFlexBasis: Errata
248
+ AbsolutePositionWithoutInsetsExcludesPadding: Errata
249
+ AbsolutePercentAgainstInnerSize: Errata
250
+ All: Errata
251
+ Classic: Errata
252
+ @property
253
+ def name(self) -> str: ...
254
+ @property
255
+ def value(self) -> int: ...
256
+ def __eq__(self, other: object) -> bool: ...
257
+ def __ne__(self, other: object) -> bool: ...
258
+ def __hash__(self) -> int: ...
259
+ def __int__(self) -> int: ...
260
+
261
+ class EventType:
262
+ NodeAllocation: EventType
263
+ NodeDeallocation: EventType
264
+ NodeLayout: EventType
265
+ LayoutPassStart: EventType
266
+ LayoutPassEnd: EventType
267
+ MeasureCallbackStart: EventType
268
+ MeasureCallbackEnd: EventType
269
+ NodeBaselineStart: EventType
270
+ NodeBaselineEnd: EventType
271
+ @property
272
+ def name(self) -> str: ...
273
+ @property
274
+ def value(self) -> int: ...
275
+ def __eq__(self, other: object) -> bool: ...
276
+ def __ne__(self, other: object) -> bool: ...
277
+ def __hash__(self) -> int: ...
278
+ def __int__(self) -> int: ...
279
+
280
+ # EventType constants at module level
281
+ NodeAllocation: EventType
282
+ NodeDeallocation: EventType
283
+ NodeLayout: EventType
284
+ LayoutPassStart: EventType
285
+ LayoutPassEnd: EventType
286
+ MeasureCallbackStart: EventType
287
+ MeasureCallbackEnd: EventType
288
+ NodeBaselineStart: EventType
289
+ NodeBaselineEnd: EventType
290
+
291
+ # YGValue
292
+ class YGValue:
293
+ value: float
294
+ unit: int
295
+ def __init__(self, value: float, unit: int) -> None: ...
296
+ def __eq__(self, other: object) -> bool: ...
297
+ def __neg__(self) -> YGValue: ...
298
+ def __repr__(self) -> str: ...
299
+
300
+ YGValueAuto: YGValue
301
+ YGValueUndefined: YGValue
302
+ YGValueZero: YGValue
303
+ YGValueFitContent: YGValue
304
+
305
+ def YGValuePoint(value: float) -> YGValue: ...
306
+ def YGValuePercent(value: float) -> YGValue: ...
307
+ def YGFloatIsUndefined(value: float) -> bool: ...
308
+ def round_value_to_pixel_grid(
309
+ value: float,
310
+ point_scale_factor: float,
311
+ ceil: bool = False,
312
+ floor: bool = False,
313
+ ) -> float: ...
314
+
315
+ # LayoutData
316
+ class LayoutData:
317
+ layouts: int
318
+ measures: int
319
+ maxMeasureCache: int
320
+ cachedLayouts: int
321
+ cachedMeasures: int
322
+ measureCallbacks: int
323
+
324
+ # Config
325
+ class Config:
326
+ def __init__(self) -> None: ...
327
+ @property
328
+ def use_web_defaults(self) -> bool: ...
329
+ @use_web_defaults.setter
330
+ def use_web_defaults(self, value: bool) -> None: ...
331
+ @property
332
+ def point_scale_factor(self) -> float: ...
333
+ @point_scale_factor.setter
334
+ def point_scale_factor(self, value: float) -> None: ...
335
+ @property
336
+ def errata(self) -> Errata: ...
337
+ @errata.setter
338
+ def errata(self, value: Errata | int) -> None: ...
339
+ def set_experimental_feature_enabled(
340
+ self, feature: ExperimentalFeature | int, enabled: bool
341
+ ) -> None: ...
342
+ def is_experimental_feature_enabled(self, feature: ExperimentalFeature | int) -> bool: ...
343
+ def set_clone_node_callback(self, callback: Callable[..., Any] | None) -> None: ...
344
+ def clone_node(self, node: Node, owner: Node | None = None, child_index: int = 0) -> Node: ...
345
+ def set_logger(self, logger: Callable[..., Any] | None) -> None: ...
346
+
347
+ # Node
348
+ class Node:
349
+ def __init__(self, config: Config | None = None) -> None: ...
350
+
351
+ # Tree manipulation
352
+ def insert_child(self, child: Node, index: int) -> None: ...
353
+ def remove_child(self, child: Node) -> None: ...
354
+ def remove_all_children(self) -> None: ...
355
+ def set_children(self, children: list[Node]) -> None: ...
356
+ def swap_child(self, child: Node, index: int) -> None: ...
357
+ @property
358
+ def child_count(self) -> int: ...
359
+ @property
360
+ def owner(self) -> Node | None: ...
361
+ @property
362
+ def parent(self) -> Node | None: ...
363
+ def get_layout_children(self) -> list[Node]: ...
364
+
365
+ # Lifecycle
366
+ def free(self) -> None: ...
367
+ def free_recursive(self) -> None: ...
368
+ def clone(self) -> Node: ...
369
+ def reset(self) -> None: ...
370
+ def copy_style(self, other: Node) -> None: ...
371
+ def set_config(self, config: Config) -> None: ...
372
+ def get_config(self) -> Config: ...
373
+ def _node_id(self) -> int: ...
374
+
375
+ # Dirty state
376
+ @property
377
+ def is_dirty(self) -> bool: ...
378
+ def set_dirty(self, dirty: bool) -> None: ...
379
+ def mark_dirty(self) -> None: ...
380
+ def mark_dirty_and_propagate(self) -> None: ...
381
+ @property
382
+ def has_new_layout(self) -> bool: ...
383
+ @has_new_layout.setter
384
+ def has_new_layout(self, value: bool) -> None: ...
385
+ def __getitem__(self, index: int) -> Node: ...
386
+
387
+ # Callbacks
388
+ def set_measure_func(self, func: Callable[..., Any] | None) -> None: ...
389
+ def has_measure_func(self) -> bool: ...
390
+ def set_baseline_func(self, func: Callable[..., Any] | None) -> None: ...
391
+ def has_baseline_func(self) -> bool: ...
392
+ def set_dirtied_func(self, func: Callable[..., Any] | None) -> None: ...
393
+ def set_context(self, context: Any) -> None: ...
394
+ def measure(
395
+ self,
396
+ width: float,
397
+ width_mode: MeasureMode | int,
398
+ height: float,
399
+ height_mode: MeasureMode | int,
400
+ ) -> dict[str, float]: ...
401
+ def baseline(self, width: float, height: float) -> float: ...
402
+
403
+ # Style properties (read/write)
404
+ @property
405
+ def direction(self) -> Direction: ...
406
+ @direction.setter
407
+ def direction(self, value: Direction | int) -> None: ...
408
+ @property
409
+ def flex_direction(self) -> FlexDirection: ...
410
+ @flex_direction.setter
411
+ def flex_direction(self, value: FlexDirection | int) -> None: ...
412
+ @property
413
+ def justify_content(self) -> Justify: ...
414
+ @justify_content.setter
415
+ def justify_content(self, value: Justify | int) -> None: ...
416
+ @property
417
+ def align_content(self) -> Align: ...
418
+ @align_content.setter
419
+ def align_content(self, value: Align | int) -> None: ...
420
+ @property
421
+ def align_items(self) -> Align: ...
422
+ @align_items.setter
423
+ def align_items(self, value: Align | int) -> None: ...
424
+ @property
425
+ def align_self(self) -> Align: ...
426
+ @align_self.setter
427
+ def align_self(self, value: Align | int) -> None: ...
428
+ @property
429
+ def position_type(self) -> PositionType: ...
430
+ @position_type.setter
431
+ def position_type(self, value: PositionType | int) -> None: ...
432
+ @property
433
+ def flex_wrap(self) -> Wrap: ...
434
+ @flex_wrap.setter
435
+ def flex_wrap(self, value: Wrap | int) -> None: ...
436
+ @property
437
+ def overflow(self) -> Overflow: ...
438
+ @overflow.setter
439
+ def overflow(self, value: Overflow | int) -> None: ...
440
+ @property
441
+ def display(self) -> Display: ...
442
+ @display.setter
443
+ def display(self, value: Display | int) -> None: ...
444
+ @property
445
+ def flex(self) -> float: ...
446
+ @flex.setter
447
+ def flex(self, value: float) -> None: ...
448
+ @property
449
+ def flex_grow(self) -> float: ...
450
+ @flex_grow.setter
451
+ def flex_grow(self, value: float) -> None: ...
452
+ @property
453
+ def flex_shrink(self) -> float: ...
454
+ @flex_shrink.setter
455
+ def flex_shrink(self, value: float) -> None: ...
456
+ @property
457
+ def flex_basis(self) -> YGValue: ...
458
+ @flex_basis.setter
459
+ def flex_basis(self, value: YGValue | float) -> None: ...
460
+ @property
461
+ def width(self) -> YGValue: ...
462
+ @width.setter
463
+ def width(self, value: YGValue | float) -> None: ...
464
+ @property
465
+ def height(self) -> YGValue: ...
466
+ @height.setter
467
+ def height(self, value: YGValue | float) -> None: ...
468
+ @property
469
+ def min_width(self) -> YGValue: ...
470
+ @min_width.setter
471
+ def min_width(self, value: YGValue | float) -> None: ...
472
+ @property
473
+ def min_height(self) -> YGValue: ...
474
+ @min_height.setter
475
+ def min_height(self, value: YGValue | float) -> None: ...
476
+ @property
477
+ def max_width(self) -> YGValue: ...
478
+ @max_width.setter
479
+ def max_width(self, value: YGValue | float) -> None: ...
480
+ @property
481
+ def max_height(self) -> YGValue: ...
482
+ @max_height.setter
483
+ def max_height(self, value: YGValue | float) -> None: ...
484
+ @property
485
+ def aspect_ratio(self) -> float: ...
486
+ @aspect_ratio.setter
487
+ def aspect_ratio(self, value: float) -> None: ...
488
+ @property
489
+ def box_sizing(self) -> BoxSizing: ...
490
+ @box_sizing.setter
491
+ def box_sizing(self, value: BoxSizing | int) -> None: ...
492
+ @property
493
+ def node_type(self) -> NodeType: ...
494
+ @node_type.setter
495
+ def node_type(self, value: NodeType | int) -> None: ...
496
+ @property
497
+ def is_reference_baseline(self) -> bool: ...
498
+ @is_reference_baseline.setter
499
+ def is_reference_baseline(self, value: bool) -> None: ...
500
+ @property
501
+ def always_forms_containing_block(self) -> bool: ...
502
+ @always_forms_containing_block.setter
503
+ def always_forms_containing_block(self, value: bool) -> None: ...
504
+
505
+ # Edge-based style setters/getters
506
+ def get_position(self, edge: Edge | int) -> YGValue: ...
507
+ def set_position(self, edge: Edge | int, value: YGValue | float) -> None: ...
508
+ def set_position_percent(self, edge: Edge | int, value: float) -> None: ...
509
+ def set_position_auto(self, edge: Edge | int) -> None: ...
510
+ def get_margin(self, edge: Edge | int) -> YGValue: ...
511
+ def set_margin(self, edge: Edge | int, value: YGValue | float) -> None: ...
512
+ def set_margin_percent(self, edge: Edge | int, value: float) -> None: ...
513
+ def set_margin_auto(self, edge: Edge | int) -> None: ...
514
+ def get_padding(self, edge: Edge | int) -> YGValue: ...
515
+ def set_padding(self, edge: Edge | int, value: YGValue | float) -> None: ...
516
+ def set_padding_percent(self, edge: Edge | int, value: float) -> None: ...
517
+ def get_border(self, edge: Edge | int) -> float: ...
518
+ def set_border(self, edge: Edge | int, value: float) -> None: ...
519
+ def get_gap(self, gutter: Gutter | int) -> YGValue: ...
520
+ def set_gap(self, gutter: Gutter | int, value: YGValue | float) -> None: ...
521
+ def set_gap_percent(self, gutter: Gutter | int, value: float) -> None: ...
522
+
523
+ # Dimension convenience setters
524
+ def set_width_auto(self) -> None: ...
525
+ def set_width_percent(self, value: float) -> None: ...
526
+ def set_width_fit_content(self) -> None: ...
527
+ def set_width_max_content(self) -> None: ...
528
+ def set_width_stretch(self) -> None: ...
529
+ def set_height_auto(self) -> None: ...
530
+ def set_height_percent(self, value: float) -> None: ...
531
+ def set_height_fit_content(self) -> None: ...
532
+ def set_height_max_content(self) -> None: ...
533
+ def set_height_stretch(self) -> None: ...
534
+ def set_min_width_percent(self, value: float) -> None: ...
535
+ def set_min_width_fit_content(self) -> None: ...
536
+ def set_min_width_max_content(self) -> None: ...
537
+ def set_min_width_stretch(self) -> None: ...
538
+ def set_min_height_percent(self, value: float) -> None: ...
539
+ def set_min_height_fit_content(self) -> None: ...
540
+ def set_min_height_max_content(self) -> None: ...
541
+ def set_min_height_stretch(self) -> None: ...
542
+ def set_max_width_percent(self, value: float) -> None: ...
543
+ def set_max_width_fit_content(self) -> None: ...
544
+ def set_max_width_max_content(self) -> None: ...
545
+ def set_max_width_stretch(self) -> None: ...
546
+ def set_max_height_percent(self, value: float) -> None: ...
547
+ def set_max_height_fit_content(self) -> None: ...
548
+ def set_max_height_max_content(self) -> None: ...
549
+ def set_max_height_stretch(self) -> None: ...
550
+ def set_flex_basis_fit_content(self) -> None: ...
551
+ def set_flex_basis_max_content(self) -> None: ...
552
+ def set_flex_basis_stretch(self) -> None: ...
553
+
554
+ # Layout results (read-only after calculate_layout)
555
+ def calculate_layout(self, width: float, height: float, direction: Direction | int) -> None: ...
556
+ @property
557
+ def layout_left(self) -> float: ...
558
+ @property
559
+ def layout_top(self) -> float: ...
560
+ @property
561
+ def layout_right(self) -> float: ...
562
+ @property
563
+ def layout_bottom(self) -> float: ...
564
+ @property
565
+ def layout_width(self) -> float: ...
566
+ @property
567
+ def layout_height(self) -> float: ...
568
+ @property
569
+ def layout_direction(self) -> Direction: ...
570
+ @property
571
+ def layout_had_overflow(self) -> bool: ...
572
+ @property
573
+ def layout_raw_width(self) -> float: ...
574
+ @property
575
+ def layout_raw_height(self) -> float: ...
576
+ def layout_margin(self, edge: Edge | int) -> float: ...
577
+ def layout_padding(self, edge: Edge | int) -> float: ...
578
+ def layout_border(self, edge: Edge | int) -> float: ...
579
+
580
+ # Event system
581
+ def event_subscribe(callback: Callable[[int, EventType, Any], None]) -> None: ...
582
+ def event_reset() -> None: ...
yoga/enums.py ADDED
@@ -0,0 +1,132 @@
1
+ from enum import IntEnum
2
+
3
+ YGUndefined: float = float("nan")
4
+
5
+
6
+ class Direction(IntEnum):
7
+ Inherit = 0
8
+ LTR = 1
9
+ RTL = 2
10
+
11
+
12
+ class Unit(IntEnum):
13
+ Undefined = 0
14
+ Point = 1
15
+ Percent = 2
16
+ Auto = 3
17
+ MaxContent = 4
18
+ FitContent = 5
19
+ Stretch = 6
20
+
21
+
22
+ class FlexDirection(IntEnum):
23
+ Column = 0
24
+ ColumnReverse = 1
25
+ Row = 2
26
+ RowReverse = 3
27
+
28
+
29
+ class Justify(IntEnum):
30
+ FlexStart = 0
31
+ Center = 1
32
+ FlexEnd = 2
33
+ SpaceBetween = 3
34
+ SpaceAround = 4
35
+ SpaceEvenly = 5
36
+
37
+
38
+ class Overflow(IntEnum):
39
+ Visible = 0
40
+ Hidden = 1
41
+ Scroll = 2
42
+
43
+
44
+ class Align(IntEnum):
45
+ Auto = 0
46
+ FlexStart = 1
47
+ Center = 2
48
+ FlexEnd = 3
49
+ Stretch = 4
50
+ Baseline = 5
51
+ SpaceBetween = 6
52
+ SpaceAround = 7
53
+ SpaceEvenly = 8
54
+
55
+
56
+ class PositionType(IntEnum):
57
+ Static = 0
58
+ Relative = 1
59
+ Absolute = 2
60
+
61
+
62
+ class Display(IntEnum):
63
+ Flex = 0
64
+ None_ = 1
65
+ Contents = 2
66
+
67
+
68
+ class Wrap(IntEnum):
69
+ NoWrap = 0
70
+ Wrap = 1
71
+ WrapReverse = 2
72
+
73
+
74
+ class BoxSizing(IntEnum):
75
+ BorderBox = 0
76
+ ContentBox = 1
77
+
78
+
79
+ class MeasureMode(IntEnum):
80
+ Undefined = 0
81
+ Exactly = 1
82
+ AtMost = 2
83
+
84
+
85
+ class Dimension(IntEnum):
86
+ Width = 0
87
+ Height = 1
88
+
89
+
90
+ class Edge(IntEnum):
91
+ Left = 0
92
+ Top = 1
93
+ Right = 2
94
+ Bottom = 3
95
+ Start = 4
96
+ End = 5
97
+ Horizontal = 6
98
+ Vertical = 7
99
+ All = 8
100
+
101
+
102
+ class NodeType(IntEnum):
103
+ Default = 0
104
+ Text = 1
105
+
106
+
107
+ class LogLevel(IntEnum):
108
+ Error = 0
109
+ Warn = 1
110
+ Info = 2
111
+ Debug = 3
112
+ Verbose = 4
113
+ Fatal = 5
114
+
115
+
116
+ class ExperimentalFeature(IntEnum):
117
+ WebFlexBasis = 0
118
+
119
+
120
+ class Gutter(IntEnum):
121
+ Column = 0
122
+ Row = 1
123
+ All = 2
124
+
125
+
126
+ class Errata(IntEnum):
127
+ None_ = 0
128
+ StretchFlexBasis = 1
129
+ AbsolutePositionWithoutInsetsExcludesPadding = 2
130
+ AbsolutePercentAgainstInnerSize = 4
131
+ All = 2147483647
132
+ Classic = 2147483646