reflex 0.5.2a1__py3-none-any.whl → 0.5.3__py3-none-any.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.

Potentially problematic release.


This version of reflex might be problematic. Click here for more details.

Files changed (166) hide show
  1. reflex/.templates/web/postcss.config.js +1 -0
  2. reflex/.templates/web/styles/tailwind.css +4 -1
  3. reflex/__init__.py +298 -204
  4. reflex/__init__.pyi +196 -157
  5. reflex/app.py +13 -2
  6. reflex/compiler/compiler.py +1 -1
  7. reflex/components/__init__.py +31 -17
  8. reflex/components/__init__.pyi +26 -0
  9. reflex/components/base/__init__.py +25 -9
  10. reflex/components/base/__init__.pyi +26 -0
  11. reflex/components/base/fragment.py +3 -0
  12. reflex/components/base/fragment.pyi +2 -0
  13. reflex/components/base/head.py +3 -0
  14. reflex/components/base/head.pyi +2 -0
  15. reflex/components/base/script.py +3 -0
  16. reflex/components/base/script.pyi +2 -0
  17. reflex/components/core/__init__.py +51 -37
  18. reflex/components/core/__init__.pyi +39 -0
  19. reflex/components/core/banner.py +7 -1
  20. reflex/components/core/banner.pyi +6 -1
  21. reflex/components/core/debounce.py +3 -0
  22. reflex/components/core/debounce.pyi +2 -0
  23. reflex/components/core/foreach.py +3 -0
  24. reflex/components/core/html.py +4 -1
  25. reflex/components/core/html.pyi +2 -0
  26. reflex/components/core/match.py +3 -0
  27. reflex/components/core/responsive.py +1 -1
  28. reflex/components/core/upload.py +5 -2
  29. reflex/components/core/upload.pyi +4 -2
  30. reflex/components/datadisplay/__init__.py +17 -8
  31. reflex/components/datadisplay/__init__.pyi +14 -0
  32. reflex/components/datadisplay/code.py +3 -0
  33. reflex/components/datadisplay/code.pyi +2 -0
  34. reflex/components/datadisplay/dataeditor.py +4 -0
  35. reflex/components/datadisplay/dataeditor.pyi +3 -0
  36. reflex/components/el/__init__.py +15 -1
  37. reflex/components/el/__init__.pyi +228 -0
  38. reflex/components/el/elements/__init__.py +129 -220
  39. reflex/components/el/elements/__init__.pyi +342 -0
  40. reflex/components/el/elements/forms.py +15 -0
  41. reflex/components/el/elements/forms.pyi +14 -0
  42. reflex/components/el/elements/inline.py +30 -0
  43. reflex/components/el/elements/inline.pyi +29 -0
  44. reflex/components/el/elements/media.py +16 -0
  45. reflex/components/el/elements/media.pyi +15 -0
  46. reflex/components/el/elements/metadata.py +7 -0
  47. reflex/components/el/elements/metadata.pyi +6 -0
  48. reflex/components/el/elements/other.py +9 -0
  49. reflex/components/el/elements/other.pyi +8 -0
  50. reflex/components/el/elements/scripts.py +5 -0
  51. reflex/components/el/elements/scripts.pyi +4 -0
  52. reflex/components/el/elements/sectioning.py +17 -0
  53. reflex/components/el/elements/sectioning.pyi +16 -0
  54. reflex/components/el/elements/tables.py +12 -0
  55. reflex/components/el/elements/tables.pyi +11 -0
  56. reflex/components/el/elements/typography.py +16 -0
  57. reflex/components/el/elements/typography.pyi +15 -0
  58. reflex/components/moment/__init__.py +1 -1
  59. reflex/components/plotly/plotly.py +185 -7
  60. reflex/components/plotly/plotly.pyi +62 -4
  61. reflex/components/radix/__init__.py +14 -2
  62. reflex/components/radix/__init__.pyi +73 -0
  63. reflex/components/radix/primitives/__init__.py +13 -5
  64. reflex/components/radix/primitives/__init__.pyi +11 -0
  65. reflex/components/radix/themes/__init__.py +20 -6
  66. reflex/components/radix/themes/__init__.pyi +13 -0
  67. reflex/components/radix/themes/base.py +26 -20
  68. reflex/components/radix/themes/base.pyi +4 -1
  69. reflex/components/radix/themes/color_mode.py +3 -1
  70. reflex/components/radix/themes/color_mode.pyi +3 -1
  71. reflex/components/radix/themes/components/__init__.py +11 -79
  72. reflex/components/radix/themes/components/__init__.pyi +44 -0
  73. reflex/components/radix/themes/components/alert_dialog.py +2 -2
  74. reflex/components/radix/themes/components/alert_dialog.pyi +2 -2
  75. reflex/components/radix/themes/components/badge.py +2 -2
  76. reflex/components/radix/themes/components/badge.pyi +2 -2
  77. reflex/components/radix/themes/components/button.py +2 -2
  78. reflex/components/radix/themes/components/button.pyi +2 -2
  79. reflex/components/radix/themes/components/callout.py +4 -4
  80. reflex/components/radix/themes/components/callout.pyi +4 -4
  81. reflex/components/radix/themes/components/card.py +2 -2
  82. reflex/components/radix/themes/components/card.pyi +2 -2
  83. reflex/components/radix/themes/components/dialog.py +2 -2
  84. reflex/components/radix/themes/components/dialog.pyi +2 -2
  85. reflex/components/radix/themes/components/hover_card.py +2 -2
  86. reflex/components/radix/themes/components/hover_card.pyi +2 -2
  87. reflex/components/radix/themes/components/icon_button.py +2 -2
  88. reflex/components/radix/themes/components/icon_button.pyi +2 -2
  89. reflex/components/radix/themes/components/inset.py +2 -2
  90. reflex/components/radix/themes/components/inset.pyi +2 -2
  91. reflex/components/radix/themes/components/popover.py +2 -2
  92. reflex/components/radix/themes/components/popover.pyi +2 -2
  93. reflex/components/radix/themes/components/table.py +8 -8
  94. reflex/components/radix/themes/components/table.pyi +8 -8
  95. reflex/components/radix/themes/components/text_area.py +11 -2
  96. reflex/components/radix/themes/components/text_area.pyi +18 -3
  97. reflex/components/radix/themes/components/text_field.py +3 -3
  98. reflex/components/radix/themes/components/text_field.pyi +3 -3
  99. reflex/components/radix/themes/layout/__init__.py +12 -38
  100. reflex/components/radix/themes/layout/__init__.pyi +21 -0
  101. reflex/components/radix/themes/layout/box.py +5 -2
  102. reflex/components/radix/themes/layout/box.pyi +4 -2
  103. reflex/components/radix/themes/layout/center.py +3 -0
  104. reflex/components/radix/themes/layout/center.pyi +2 -0
  105. reflex/components/radix/themes/layout/container.py +5 -2
  106. reflex/components/radix/themes/layout/container.pyi +4 -2
  107. reflex/components/radix/themes/layout/flex.py +5 -2
  108. reflex/components/radix/themes/layout/flex.pyi +4 -2
  109. reflex/components/radix/themes/layout/grid.py +5 -2
  110. reflex/components/radix/themes/layout/grid.pyi +4 -2
  111. reflex/components/radix/themes/layout/list.py +14 -0
  112. reflex/components/radix/themes/layout/list.pyi +3 -0
  113. reflex/components/radix/themes/layout/section.py +7 -4
  114. reflex/components/radix/themes/layout/section.pyi +5 -3
  115. reflex/components/radix/themes/layout/spacer.py +3 -0
  116. reflex/components/radix/themes/layout/spacer.pyi +2 -0
  117. reflex/components/radix/themes/layout/stack.py +5 -0
  118. reflex/components/radix/themes/layout/stack.pyi +4 -0
  119. reflex/components/radix/themes/typography/__init__.py +11 -16
  120. reflex/components/radix/themes/typography/__init__.pyi +12 -0
  121. reflex/components/radix/themes/typography/blockquote.py +5 -2
  122. reflex/components/radix/themes/typography/blockquote.pyi +4 -2
  123. reflex/components/radix/themes/typography/code.py +5 -2
  124. reflex/components/radix/themes/typography/code.pyi +4 -2
  125. reflex/components/radix/themes/typography/heading.py +5 -2
  126. reflex/components/radix/themes/typography/heading.pyi +4 -2
  127. reflex/components/radix/themes/typography/link.py +3 -0
  128. reflex/components/radix/themes/typography/link.pyi +2 -0
  129. reflex/components/radix/themes/typography/text.py +6 -6
  130. reflex/components/radix/themes/typography/text.pyi +6 -6
  131. reflex/components/recharts/__init__.py +114 -104
  132. reflex/components/recharts/__init__.pyi +106 -0
  133. reflex/components/recharts/cartesian.py +17 -0
  134. reflex/components/recharts/cartesian.pyi +16 -0
  135. reflex/components/recharts/charts.py +12 -0
  136. reflex/components/recharts/charts.pyi +11 -0
  137. reflex/components/recharts/general.py +7 -0
  138. reflex/components/recharts/general.pyi +6 -0
  139. reflex/components/recharts/polar.py +11 -0
  140. reflex/components/recharts/polar.pyi +9 -0
  141. reflex/config.py +3 -0
  142. reflex/constants/__init__.py +0 -2
  143. reflex/constants/base.py +5 -1
  144. reflex/constants/installer.py +2 -1
  145. reflex/experimental/__init__.py +2 -0
  146. reflex/experimental/assets.py +56 -0
  147. reflex/experimental/client_state.py +4 -2
  148. reflex/experimental/hooks.py +8 -6
  149. reflex/experimental/layout.py +3 -1
  150. reflex/state.py +54 -4
  151. reflex/utils/exec.py +8 -0
  152. reflex/utils/format.py +8 -4
  153. reflex/utils/lazy_loader.py +33 -0
  154. reflex/utils/prerequisites.py +1 -14
  155. reflex/utils/pyi_generator.py +71 -20
  156. reflex/utils/serializers.py +9 -4
  157. reflex/utils/types.py +3 -1
  158. reflex/vars.py +92 -6
  159. reflex/vars.pyi +16 -0
  160. {reflex-0.5.2a1.dist-info → reflex-0.5.3.dist-info}/METADATA +2 -1
  161. {reflex-0.5.2a1.dist-info → reflex-0.5.3.dist-info}/RECORD +164 -151
  162. reflex/config.pyi +0 -112
  163. reflex/constants/base.pyi +0 -94
  164. {reflex-0.5.2a1.dist-info → reflex-0.5.3.dist-info}/LICENSE +0 -0
  165. {reflex-0.5.2a1.dist-info → reflex-0.5.3.dist-info}/WHEEL +0 -0
  166. {reflex-0.5.2a1.dist-info → reflex-0.5.3.dist-info}/entry_points.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  """Interactive components provided by @radix-ui/themes."""
2
2
  from typing import Any, Dict, Literal
3
3
 
4
- from reflex import el
5
4
  from reflex.components.component import ComponentNamespace
5
+ from reflex.components.el import elements
6
6
  from reflex.constants import EventTriggers
7
7
  from reflex.vars import Var
8
8
 
@@ -47,7 +47,7 @@ class HoverCardTrigger(RadixThemesTriggerComponent):
47
47
  tag = "HoverCard.Trigger"
48
48
 
49
49
 
50
- class HoverCardContent(el.Div, RadixThemesComponent):
50
+ class HoverCardContent(elements.Div, RadixThemesComponent):
51
51
  """Contains the content of the open hover card."""
52
52
 
53
53
  tag = "HoverCard.Content"
@@ -8,8 +8,8 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Any, Dict, Literal
11
- from reflex import el
12
11
  from reflex.components.component import ComponentNamespace
12
+ from reflex.components.el import elements
13
13
  from reflex.constants import EventTriggers
14
14
  from reflex.vars import Var
15
15
  from ..base import RadixThemesComponent, RadixThemesTriggerComponent
@@ -175,7 +175,7 @@ class HoverCardTrigger(RadixThemesTriggerComponent):
175
175
  """
176
176
  ...
177
177
 
178
- class HoverCardContent(el.Div, RadixThemesComponent):
178
+ class HoverCardContent(elements.Div, RadixThemesComponent):
179
179
  @overload
180
180
  @classmethod
181
181
  def create( # type: ignore
@@ -3,9 +3,9 @@ from __future__ import annotations
3
3
 
4
4
  from typing import Literal
5
5
 
6
- from reflex import el
7
6
  from reflex.components.component import Component
8
7
  from reflex.components.core.match import Match
8
+ from reflex.components.el import elements
9
9
  from reflex.components.lucide import Icon
10
10
  from reflex.style import Style
11
11
  from reflex.vars import Var
@@ -21,7 +21,7 @@ from ..base import (
21
21
  LiteralButtonSize = Literal["1", "2", "3", "4"]
22
22
 
23
23
 
24
- class IconButton(el.Button, RadixLoadingProp, RadixThemesComponent):
24
+ class IconButton(elements.Button, RadixLoadingProp, RadixThemesComponent):
25
25
  """A button designed specifically for usage with a single icon."""
26
26
 
27
27
  tag = "IconButton"
@@ -8,9 +8,9 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Literal
11
- from reflex import el
12
11
  from reflex.components.component import Component
13
12
  from reflex.components.core.match import Match
13
+ from reflex.components.el import elements
14
14
  from reflex.components.lucide import Icon
15
15
  from reflex.style import Style
16
16
  from reflex.vars import Var
@@ -24,7 +24,7 @@ from ..base import (
24
24
 
25
25
  LiteralButtonSize = Literal["1", "2", "3", "4"]
26
26
 
27
- class IconButton(el.Button, RadixLoadingProp, RadixThemesComponent):
27
+ class IconButton(elements.Button, RadixLoadingProp, RadixThemesComponent):
28
28
  @overload
29
29
  @classmethod
30
30
  def create( # type: ignore
@@ -1,7 +1,7 @@
1
1
  """Interactive components provided by @radix-ui/themes."""
2
2
  from typing import Literal, Union
3
3
 
4
- from reflex import el
4
+ from reflex.components.el import elements
5
5
  from reflex.vars import Var
6
6
 
7
7
  from ..base import (
@@ -11,7 +11,7 @@ from ..base import (
11
11
  LiteralButtonSize = Literal["1", "2", "3", "4"]
12
12
 
13
13
 
14
- class Inset(el.Div, RadixThemesComponent):
14
+ class Inset(elements.Div, RadixThemesComponent):
15
15
  """Applies a negative margin to allow content to bleed into the surrounding container."""
16
16
 
17
17
  tag = "Inset"
@@ -8,13 +8,13 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Literal, Union
11
- from reflex import el
11
+ from reflex.components.el import elements
12
12
  from reflex.vars import Var
13
13
  from ..base import RadixThemesComponent
14
14
 
15
15
  LiteralButtonSize = Literal["1", "2", "3", "4"]
16
16
 
17
- class Inset(el.Div, RadixThemesComponent):
17
+ class Inset(elements.Div, RadixThemesComponent):
18
18
  @overload
19
19
  @classmethod
20
20
  def create( # type: ignore
@@ -1,8 +1,8 @@
1
1
  """Interactive components provided by @radix-ui/themes."""
2
2
  from typing import Any, Dict, Literal
3
3
 
4
- from reflex import el
5
4
  from reflex.components.component import ComponentNamespace
5
+ from reflex.components.el import elements
6
6
  from reflex.constants import EventTriggers
7
7
  from reflex.vars import Var
8
8
 
@@ -41,7 +41,7 @@ class PopoverTrigger(RadixThemesTriggerComponent):
41
41
  tag = "Popover.Trigger"
42
42
 
43
43
 
44
- class PopoverContent(el.Div, RadixThemesComponent):
44
+ class PopoverContent(elements.Div, RadixThemesComponent):
45
45
  """Contains content to be rendered in the open popover."""
46
46
 
47
47
  tag = "Popover.Content"
@@ -8,8 +8,8 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Any, Dict, Literal
11
- from reflex import el
12
11
  from reflex.components.component import ComponentNamespace
12
+ from reflex.components.el import elements
13
13
  from reflex.constants import EventTriggers
14
14
  from reflex.vars import Var
15
15
  from ..base import RadixThemesComponent, RadixThemesTriggerComponent
@@ -171,7 +171,7 @@ class PopoverTrigger(RadixThemesTriggerComponent):
171
171
  """
172
172
  ...
173
173
 
174
- class PopoverContent(el.Div, RadixThemesComponent):
174
+ class PopoverContent(elements.Div, RadixThemesComponent):
175
175
  def get_event_triggers(self) -> Dict[str, Any]: ...
176
176
  @overload
177
177
  @classmethod
@@ -1,8 +1,8 @@
1
1
  """Interactive components provided by @radix-ui/themes."""
2
2
  from typing import List, Literal
3
3
 
4
- from reflex import el
5
4
  from reflex.components.component import ComponentNamespace
5
+ from reflex.components.el import elements
6
6
  from reflex.vars import Var
7
7
 
8
8
  from ..base import (
@@ -10,7 +10,7 @@ from ..base import (
10
10
  )
11
11
 
12
12
 
13
- class TableRoot(el.Table, RadixThemesComponent):
13
+ class TableRoot(elements.Table, RadixThemesComponent):
14
14
  """A semantic table for presenting tabular data."""
15
15
 
16
16
  tag = "Table.Root"
@@ -22,7 +22,7 @@ class TableRoot(el.Table, RadixThemesComponent):
22
22
  variant: Var[Literal["surface", "ghost"]]
23
23
 
24
24
 
25
- class TableHeader(el.Thead, RadixThemesComponent):
25
+ class TableHeader(elements.Thead, RadixThemesComponent):
26
26
  """The header of the table defines column names and other non-data elements."""
27
27
 
28
28
  tag = "Table.Header"
@@ -32,7 +32,7 @@ class TableHeader(el.Thead, RadixThemesComponent):
32
32
  _valid_parents: List[str] = ["TableRoot"]
33
33
 
34
34
 
35
- class TableRow(el.Tr, RadixThemesComponent):
35
+ class TableRow(elements.Tr, RadixThemesComponent):
36
36
  """A row containing table cells."""
37
37
 
38
38
  tag = "Table.Row"
@@ -43,7 +43,7 @@ class TableRow(el.Tr, RadixThemesComponent):
43
43
  _invalid_children: List[str] = ["TableBody", "TableHeader", "TableRow"]
44
44
 
45
45
 
46
- class TableColumnHeaderCell(el.Th, RadixThemesComponent):
46
+ class TableColumnHeaderCell(elements.Th, RadixThemesComponent):
47
47
  """A table cell that is semantically treated as a column header."""
48
48
 
49
49
  tag = "Table.ColumnHeaderCell"
@@ -61,7 +61,7 @@ class TableColumnHeaderCell(el.Th, RadixThemesComponent):
61
61
  ]
62
62
 
63
63
 
64
- class TableBody(el.Tbody, RadixThemesComponent):
64
+ class TableBody(elements.Tbody, RadixThemesComponent):
65
65
  """The body of the table contains the data rows."""
66
66
 
67
67
  tag = "Table.Body"
@@ -76,7 +76,7 @@ class TableBody(el.Tbody, RadixThemesComponent):
76
76
  _valid_parents: List[str] = ["TableRoot"]
77
77
 
78
78
 
79
- class TableCell(el.Td, RadixThemesComponent):
79
+ class TableCell(elements.Td, RadixThemesComponent):
80
80
  """A cell containing data."""
81
81
 
82
82
  tag = "Table.Cell"
@@ -93,7 +93,7 @@ class TableCell(el.Td, RadixThemesComponent):
93
93
  ]
94
94
 
95
95
 
96
- class TableRowHeaderCell(el.Th, RadixThemesComponent):
96
+ class TableRowHeaderCell(elements.Th, RadixThemesComponent):
97
97
  """A table cell that is semantically treated as a row header."""
98
98
 
99
99
  tag = "Table.RowHeaderCell"
@@ -8,12 +8,12 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import List, Literal
11
- from reflex import el
12
11
  from reflex.components.component import ComponentNamespace
12
+ from reflex.components.el import elements
13
13
  from reflex.vars import Var
14
14
  from ..base import RadixThemesComponent
15
15
 
16
- class TableRoot(el.Table, RadixThemesComponent):
16
+ class TableRoot(elements.Table, RadixThemesComponent):
17
17
  @overload
18
18
  @classmethod
19
19
  def create( # type: ignore
@@ -164,7 +164,7 @@ class TableRoot(el.Table, RadixThemesComponent):
164
164
  """
165
165
  ...
166
166
 
167
- class TableHeader(el.Thead, RadixThemesComponent):
167
+ class TableHeader(elements.Thead, RadixThemesComponent):
168
168
  @overload
169
169
  @classmethod
170
170
  def create( # type: ignore
@@ -303,7 +303,7 @@ class TableHeader(el.Thead, RadixThemesComponent):
303
303
  """
304
304
  ...
305
305
 
306
- class TableRow(el.Tr, RadixThemesComponent):
306
+ class TableRow(elements.Tr, RadixThemesComponent):
307
307
  @overload
308
308
  @classmethod
309
309
  def create( # type: ignore
@@ -445,7 +445,7 @@ class TableRow(el.Tr, RadixThemesComponent):
445
445
  """
446
446
  ...
447
447
 
448
- class TableColumnHeaderCell(el.Th, RadixThemesComponent):
448
+ class TableColumnHeaderCell(elements.Th, RadixThemesComponent):
449
449
  @overload
450
450
  @classmethod
451
451
  def create( # type: ignore
@@ -607,7 +607,7 @@ class TableColumnHeaderCell(el.Th, RadixThemesComponent):
607
607
  """
608
608
  ...
609
609
 
610
- class TableBody(el.Tbody, RadixThemesComponent):
610
+ class TableBody(elements.Tbody, RadixThemesComponent):
611
611
  @overload
612
612
  @classmethod
613
613
  def create( # type: ignore
@@ -746,7 +746,7 @@ class TableBody(el.Tbody, RadixThemesComponent):
746
746
  """
747
747
  ...
748
748
 
749
- class TableCell(el.Td, RadixThemesComponent):
749
+ class TableCell(elements.Td, RadixThemesComponent):
750
750
  @overload
751
751
  @classmethod
752
752
  def create( # type: ignore
@@ -904,7 +904,7 @@ class TableCell(el.Td, RadixThemesComponent):
904
904
  """
905
905
  ...
906
906
 
907
- class TableRowHeaderCell(el.Th, RadixThemesComponent):
907
+ class TableRowHeaderCell(elements.Th, RadixThemesComponent):
908
908
  @overload
909
909
  @classmethod
910
910
  def create( # type: ignore
@@ -1,21 +1,24 @@
1
1
  """Interactive components provided by @radix-ui/themes."""
2
2
  from typing import Any, Dict, Literal, Union
3
3
 
4
- from reflex import el
5
4
  from reflex.components.component import Component
6
5
  from reflex.components.core.debounce import DebounceInput
6
+ from reflex.components.el import elements
7
7
  from reflex.constants import EventTriggers
8
8
  from reflex.vars import Var
9
9
 
10
10
  from ..base import (
11
11
  LiteralAccentColor,
12
+ LiteralRadius,
12
13
  RadixThemesComponent,
13
14
  )
14
15
 
15
16
  LiteralTextAreaSize = Literal["1", "2", "3"]
16
17
 
18
+ LiteralTextAreaResize = Literal["none", "vertical", "horizontal", "both"]
17
19
 
18
- class TextArea(RadixThemesComponent, el.Textarea):
20
+
21
+ class TextArea(RadixThemesComponent, elements.Textarea):
19
22
  """The input part of a TextArea, may be used by itself."""
20
23
 
21
24
  tag = "TextArea"
@@ -26,9 +29,15 @@ class TextArea(RadixThemesComponent, el.Textarea):
26
29
  # The variant of the text area
27
30
  variant: Var[Literal["classic", "surface", "soft"]]
28
31
 
32
+ # The resize behavior of the text area: "none" | "vertical" | "horizontal" | "both"
33
+ resize: Var[LiteralTextAreaResize]
34
+
29
35
  # The color of the text area
30
36
  color_scheme: Var[LiteralAccentColor]
31
37
 
38
+ # The radius of the text area: "none" | "small" | "medium" | "large" | "full"
39
+ radius: Var[LiteralRadius]
40
+
32
41
  # Whether the form control should have autocomplete enabled
33
42
  auto_complete: Var[bool]
34
43
 
@@ -8,16 +8,17 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Any, Dict, Literal, Union
11
- from reflex import el
12
11
  from reflex.components.component import Component
13
12
  from reflex.components.core.debounce import DebounceInput
13
+ from reflex.components.el import elements
14
14
  from reflex.constants import EventTriggers
15
15
  from reflex.vars import Var
16
- from ..base import LiteralAccentColor, RadixThemesComponent
16
+ from ..base import LiteralAccentColor, LiteralRadius, RadixThemesComponent
17
17
 
18
18
  LiteralTextAreaSize = Literal["1", "2", "3"]
19
+ LiteralTextAreaResize = Literal["none", "vertical", "horizontal", "both"]
19
20
 
20
- class TextArea(RadixThemesComponent, el.Textarea):
21
+ class TextArea(RadixThemesComponent, elements.Textarea):
21
22
  @overload
22
23
  @classmethod
23
24
  def create( # type: ignore
@@ -32,6 +33,12 @@ class TextArea(RadixThemesComponent, el.Textarea):
32
33
  Literal["classic", "surface", "soft"],
33
34
  ]
34
35
  ] = None,
36
+ resize: Optional[
37
+ Union[
38
+ Var[Literal["none", "vertical", "horizontal", "both"]],
39
+ Literal["none", "vertical", "horizontal", "both"],
40
+ ]
41
+ ] = None,
35
42
  color_scheme: Optional[
36
43
  Union[
37
44
  Var[
@@ -94,6 +101,12 @@ class TextArea(RadixThemesComponent, el.Textarea):
94
101
  ],
95
102
  ]
96
103
  ] = None,
104
+ radius: Optional[
105
+ Union[
106
+ Var[Literal["none", "small", "medium", "large", "full"]],
107
+ Literal["none", "small", "medium", "large", "full"],
108
+ ]
109
+ ] = None,
97
110
  auto_complete: Optional[Union[Var[bool], bool]] = None,
98
111
  auto_focus: Optional[Union[Var[bool], bool]] = None,
99
112
  dirname: Optional[Union[Var[str], str]] = None,
@@ -219,7 +232,9 @@ class TextArea(RadixThemesComponent, el.Textarea):
219
232
  *children: The children of the component.
220
233
  size: The size of the text area: "1" | "2" | "3"
221
234
  variant: The variant of the text area
235
+ resize: The resize behavior of the text area: "none" | "vertical" | "horizontal" | "both"
222
236
  color_scheme: The color of the text area
237
+ radius: The radius of the text area: "none" | "small" | "medium" | "large" | "full"
223
238
  auto_complete: Whether the form control should have autocomplete enabled
224
239
  auto_focus: Automatically focuses the textarea when the page loads
225
240
  dirname: Name part of the textarea to submit in 'dir' and 'name' pair when form is submitted
@@ -3,10 +3,10 @@ from __future__ import annotations
3
3
 
4
4
  from typing import Any, Dict, Literal, Union
5
5
 
6
- from reflex.components import el
7
6
  from reflex.components.base.fragment import Fragment
8
7
  from reflex.components.component import Component, ComponentNamespace
9
8
  from reflex.components.core.debounce import DebounceInput
9
+ from reflex.components.el import elements
10
10
  from reflex.constants import EventTriggers
11
11
  from reflex.style import Style, format_as_emotion
12
12
  from reflex.utils import console
@@ -22,7 +22,7 @@ LiteralTextFieldSize = Literal["1", "2", "3"]
22
22
  LiteralTextFieldVariant = Literal["classic", "surface", "soft"]
23
23
 
24
24
 
25
- class TextFieldRoot(el.Div, RadixThemesComponent):
25
+ class TextFieldRoot(elements.Div, RadixThemesComponent):
26
26
  """Captures user input with an optional slot for buttons and icons."""
27
27
 
28
28
  tag = "TextField.Root"
@@ -197,4 +197,4 @@ class TextField(ComponentNamespace):
197
197
  __call__ = staticmethod(TextFieldRoot.create)
198
198
 
199
199
 
200
- text_field = TextField()
200
+ input = text_field = TextField()
@@ -8,10 +8,10 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Any, Dict, Literal, Union
11
- from reflex.components import el
12
11
  from reflex.components.base.fragment import Fragment
13
12
  from reflex.components.component import Component, ComponentNamespace
14
13
  from reflex.components.core.debounce import DebounceInput
14
+ from reflex.components.el import elements
15
15
  from reflex.constants import EventTriggers
16
16
  from reflex.style import Style, format_as_emotion
17
17
  from reflex.utils import console
@@ -21,7 +21,7 @@ from ..base import LiteralAccentColor, LiteralRadius, RadixThemesComponent
21
21
  LiteralTextFieldSize = Literal["1", "2", "3"]
22
22
  LiteralTextFieldVariant = Literal["classic", "surface", "soft"]
23
23
 
24
- class TextFieldRoot(el.Div, RadixThemesComponent):
24
+ class TextFieldRoot(elements.Div, RadixThemesComponent):
25
25
  @overload
26
26
  @classmethod
27
27
  def create( # type: ignore
@@ -662,4 +662,4 @@ class TextField(ComponentNamespace):
662
662
  """
663
663
  ...
664
664
 
665
- text_field = TextField()
665
+ input = text_field = TextField()
@@ -1,42 +1,16 @@
1
1
  """Layout components."""
2
+ from __future__ import annotations
2
3
 
3
- from .box import Box
4
- from .center import Center
5
- from .container import Container
6
- from .flex import Flex
7
- from .grid import Grid
8
- from .list import list_ns as list
9
- from .section import Section
10
- from .spacer import Spacer
11
- from .stack import HStack, Stack, VStack
4
+ from reflex import RADIX_THEMES_LAYOUT_MAPPING
5
+ from reflex.utils import lazy_loader
12
6
 
13
- box = Box.create
14
- center = Center.create
15
- container = Container.create
16
- flex = Flex.create
17
- grid = Grid.create
18
- section = Section.create
19
- spacer = Spacer.create
20
- stack = Stack.create
21
- hstack = HStack.create
22
- vstack = VStack.create
23
- list_item = list.item
24
- ordered_list = list.ordered
25
- unordered_list = list.unordered
7
+ _SUBMOD_ATTRS: dict[str, list[str]] = {
8
+ "".join(k.split("components.radix.themes.layout.")[-1]): v
9
+ for k, v in RADIX_THEMES_LAYOUT_MAPPING.items()
10
+ }
26
11
 
27
- __all__ = [
28
- "box",
29
- "center",
30
- "container",
31
- "flex",
32
- "grid",
33
- "section",
34
- "spacer",
35
- "stack",
36
- "hstack",
37
- "vstack",
38
- "list",
39
- "list_item",
40
- "ordered_list",
41
- "unordered_list",
42
- ]
12
+
13
+ __getattr__, __dir__, __all__ = lazy_loader.attach(
14
+ __name__,
15
+ submod_attrs=_SUBMOD_ATTRS,
16
+ )
@@ -0,0 +1,21 @@
1
+ """Stub file for reflex/components/radix/themes/layout/__init__.py"""
2
+ # ------------------- DO NOT EDIT ----------------------
3
+ # This file was generated by `reflex/utils/pyi_generator.py`!
4
+ # ------------------------------------------------------
5
+
6
+ from .box import box as box
7
+ from .center import center as center
8
+ from .container import container as container
9
+ from .flex import flex as flex
10
+ from .grid import grid as grid
11
+ from .section import section as section
12
+ from .spacer import spacer as spacer
13
+ from .stack import stack as stack
14
+ from .stack import hstack as hstack
15
+ from .stack import vstack as vstack
16
+ from .list import list_ns as list
17
+ from .list import list_item as list_item
18
+ from .list import ordered_list as ordered_list
19
+ from .list import unordered_list as unordered_list
20
+ from reflex import RADIX_THEMES_LAYOUT_MAPPING
21
+ from reflex.utils import lazy_loader
@@ -1,12 +1,15 @@
1
1
  """Declarative layout and common spacing props."""
2
2
  from __future__ import annotations
3
3
 
4
- from reflex import el
4
+ from reflex.components.el import elements
5
5
 
6
6
  from ..base import RadixThemesComponent
7
7
 
8
8
 
9
- class Box(el.Div, RadixThemesComponent):
9
+ class Box(elements.Div, RadixThemesComponent):
10
10
  """A fundamental layout building block, based on `div` element."""
11
11
 
12
12
  tag = "Box"
13
+
14
+
15
+ box = Box.create
@@ -7,10 +7,10 @@ from typing import Any, Dict, Literal, Optional, Union, overload
7
7
  from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
- from reflex import el
10
+ from reflex.components.el import elements
11
11
  from ..base import RadixThemesComponent
12
12
 
13
- class Box(el.Div, RadixThemesComponent):
13
+ class Box(elements.Div, RadixThemesComponent):
14
14
  @overload
15
15
  @classmethod
16
16
  def create( # type: ignore
@@ -144,3 +144,5 @@ class Box(el.Div, RadixThemesComponent):
144
144
  A new component instance.
145
145
  """
146
146
  ...
147
+
148
+ box = Box.create
@@ -21,3 +21,6 @@ class Center(Flex):
21
21
  "align_items": "center",
22
22
  "justify_content": "center",
23
23
  }
24
+
25
+
26
+ center = Center.create
@@ -182,3 +182,5 @@ class Center(Flex):
182
182
  A new component instance.
183
183
  """
184
184
  ...
185
+
186
+ center = Center.create
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
 
4
4
  from typing import Literal
5
5
 
6
- from reflex import el
6
+ from reflex.components.el import elements
7
7
  from reflex.style import STACK_CHILDREN_FULL_WIDTH
8
8
  from reflex.vars import Var
9
9
 
@@ -12,7 +12,7 @@ from ..base import RadixThemesComponent
12
12
  LiteralContainerSize = Literal["1", "2", "3", "4"]
13
13
 
14
14
 
15
- class Container(el.Div, RadixThemesComponent):
15
+ class Container(elements.Div, RadixThemesComponent):
16
16
  """Constrains the maximum width of page content.
17
17
 
18
18
  See https://www.radix-ui.com/themes/docs/components/container
@@ -49,3 +49,6 @@ class Container(el.Div, RadixThemesComponent):
49
49
  padding=padding,
50
50
  **props,
51
51
  )
52
+
53
+
54
+ container = Container.create
@@ -8,14 +8,14 @@ from reflex.vars import Var, BaseVar, ComputedVar
8
8
  from reflex.event import EventChain, EventHandler, EventSpec
9
9
  from reflex.style import Style
10
10
  from typing import Literal
11
- from reflex import el
11
+ from reflex.components.el import elements
12
12
  from reflex.style import STACK_CHILDREN_FULL_WIDTH
13
13
  from reflex.vars import Var
14
14
  from ..base import RadixThemesComponent
15
15
 
16
16
  LiteralContainerSize = Literal["1", "2", "3", "4"]
17
17
 
18
- class Container(el.Div, RadixThemesComponent):
18
+ class Container(elements.Div, RadixThemesComponent):
19
19
  @overload
20
20
  @classmethod
21
21
  def create( # type: ignore
@@ -131,3 +131,5 @@ class Container(el.Div, RadixThemesComponent):
131
131
  The container component.
132
132
  """
133
133
  ...
134
+
135
+ container = Container.create
@@ -4,7 +4,7 @@ from __future__ import annotations
4
4
 
5
5
  from typing import Dict, Literal
6
6
 
7
- from reflex import el
7
+ from reflex.components.el import elements
8
8
  from reflex.vars import Var
9
9
 
10
10
  from ..base import (
@@ -18,7 +18,7 @@ LiteralFlexDirection = Literal["row", "column", "row-reverse", "column-reverse"]
18
18
  LiteralFlexWrap = Literal["nowrap", "wrap", "wrap-reverse"]
19
19
 
20
20
 
21
- class Flex(el.Div, RadixThemesComponent):
21
+ class Flex(elements.Div, RadixThemesComponent):
22
22
  """Component for creating flex layouts."""
23
23
 
24
24
  tag = "Flex"
@@ -43,3 +43,6 @@ class Flex(el.Div, RadixThemesComponent):
43
43
 
44
44
  # Reflex maps the "spacing" prop to "gap" prop.
45
45
  _rename_props: Dict[str, str] = {"spacing": "gap"}
46
+
47
+
48
+ flex = Flex.create