reflex 0.6.4a2__py3-none-any.whl → 0.6.5__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 (228) hide show
  1. reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -14
  2. reflex/.templates/jinja/web/pages/utils.js.jinja2 +4 -8
  3. reflex/.templates/web/components/shiki/code.js +16 -11
  4. reflex/.templates/web/utils/state.js +29 -21
  5. reflex/__init__.py +4 -0
  6. reflex/__init__.pyi +4 -0
  7. reflex/app.py +148 -154
  8. reflex/app_mixins/lifespan.py +5 -1
  9. reflex/app_mixins/middleware.py +3 -1
  10. reflex/app_mixins/mixin.py +3 -2
  11. reflex/base.py +2 -4
  12. reflex/compiler/compiler.py +111 -37
  13. reflex/components/base/app_wrap.pyi +17 -17
  14. reflex/components/base/bare.py +72 -3
  15. reflex/components/base/body.pyi +17 -17
  16. reflex/components/base/document.pyi +81 -81
  17. reflex/components/base/error_boundary.pyi +25 -18
  18. reflex/components/base/fragment.pyi +17 -17
  19. reflex/components/base/head.pyi +33 -33
  20. reflex/components/base/link.pyi +33 -33
  21. reflex/components/base/meta.pyi +65 -65
  22. reflex/components/base/script.py +4 -4
  23. reflex/components/base/script.pyi +23 -20
  24. reflex/components/component.py +250 -31
  25. reflex/components/core/banner.py +1 -1
  26. reflex/components/core/banner.pyi +81 -81
  27. reflex/components/core/client_side_routing.pyi +33 -33
  28. reflex/components/core/clipboard.py +2 -2
  29. reflex/components/core/clipboard.pyi +24 -18
  30. reflex/components/core/debounce.py +2 -2
  31. reflex/components/core/debounce.pyi +18 -18
  32. reflex/components/core/html.pyi +17 -17
  33. reflex/components/core/upload.py +90 -28
  34. reflex/components/core/upload.pyi +128 -72
  35. reflex/components/datadisplay/code.py +55 -40
  36. reflex/components/datadisplay/code.pyi +46 -44
  37. reflex/components/datadisplay/dataeditor.py +21 -20
  38. reflex/components/datadisplay/dataeditor.pyi +103 -35
  39. reflex/components/datadisplay/shiki_code_block.py +60 -27
  40. reflex/components/datadisplay/shiki_code_block.pyi +86 -65
  41. reflex/components/dynamic.py +9 -5
  42. reflex/components/el/element.pyi +17 -17
  43. reflex/components/el/elements/base.pyi +17 -17
  44. reflex/components/el/elements/forms.py +12 -3
  45. reflex/components/el/elements/forms.pyi +293 -233
  46. reflex/components/el/elements/inline.pyi +449 -449
  47. reflex/components/el/elements/media.pyi +401 -401
  48. reflex/components/el/elements/metadata.pyi +97 -97
  49. reflex/components/el/elements/other.pyi +113 -113
  50. reflex/components/el/elements/scripts.pyi +49 -49
  51. reflex/components/el/elements/sectioning.pyi +241 -241
  52. reflex/components/el/elements/tables.pyi +161 -161
  53. reflex/components/el/elements/typography.pyi +241 -241
  54. reflex/components/gridjs/datatable.pyi +33 -33
  55. reflex/components/lucide/icon.py +1 -1
  56. reflex/components/lucide/icon.pyi +33 -33
  57. reflex/components/markdown/markdown.py +180 -49
  58. reflex/components/markdown/markdown.pyi +36 -19
  59. reflex/components/moment/moment.py +17 -21
  60. reflex/components/moment/moment.pyi +26 -21
  61. reflex/components/next/base.pyi +17 -17
  62. reflex/components/next/image.py +3 -3
  63. reflex/components/next/image.pyi +21 -19
  64. reflex/components/next/link.pyi +17 -17
  65. reflex/components/next/video.pyi +17 -17
  66. reflex/components/plotly/plotly.py +79 -78
  67. reflex/components/plotly/plotly.pyi +91 -41
  68. reflex/components/props.py +34 -0
  69. reflex/components/radix/primitives/accordion.py +15 -8
  70. reflex/components/radix/primitives/accordion.pyi +121 -118
  71. reflex/components/radix/primitives/base.pyi +33 -33
  72. reflex/components/radix/primitives/drawer.py +41 -20
  73. reflex/components/radix/primitives/drawer.pyi +279 -190
  74. reflex/components/radix/primitives/form.py +2 -2
  75. reflex/components/radix/primitives/form.pyi +200 -167
  76. reflex/components/radix/primitives/progress.pyi +81 -81
  77. reflex/components/radix/primitives/slider.pyi +89 -83
  78. reflex/components/radix/themes/base.py +30 -1
  79. reflex/components/radix/themes/base.pyi +286 -113
  80. reflex/components/radix/themes/color_mode.py +17 -9
  81. reflex/components/radix/themes/color_mode.pyi +68 -56
  82. reflex/components/radix/themes/components/alert_dialog.py +8 -5
  83. reflex/components/radix/themes/components/alert_dialog.pyi +125 -117
  84. reflex/components/radix/themes/components/aspect_ratio.pyi +17 -17
  85. reflex/components/radix/themes/components/avatar.py +1 -5
  86. reflex/components/radix/themes/components/avatar.pyi +17 -17
  87. reflex/components/radix/themes/components/badge.py +1 -5
  88. reflex/components/radix/themes/components/badge.pyi +17 -17
  89. reflex/components/radix/themes/components/button.pyi +18 -21
  90. reflex/components/radix/themes/components/callout.py +1 -4
  91. reflex/components/radix/themes/components/callout.pyi +81 -81
  92. reflex/components/radix/themes/components/card.py +1 -3
  93. reflex/components/radix/themes/components/card.pyi +17 -17
  94. reflex/components/radix/themes/components/checkbox.py +4 -8
  95. reflex/components/radix/themes/components/checkbox.pyi +61 -52
  96. reflex/components/radix/themes/components/checkbox_cards.pyi +33 -33
  97. reflex/components/radix/themes/components/checkbox_group.pyi +33 -33
  98. reflex/components/radix/themes/components/context_menu.py +121 -28
  99. reflex/components/radix/themes/components/context_menu.pyi +250 -147
  100. reflex/components/radix/themes/components/data_list.pyi +65 -65
  101. reflex/components/radix/themes/components/dialog.py +11 -11
  102. reflex/components/radix/themes/components/dialog.pyi +135 -120
  103. reflex/components/radix/themes/components/dropdown_menu.py +14 -25
  104. reflex/components/radix/themes/components/dropdown_menu.pyi +157 -145
  105. reflex/components/radix/themes/components/hover_card.py +19 -7
  106. reflex/components/radix/themes/components/hover_card.pyi +102 -67
  107. reflex/components/radix/themes/components/icon_button.pyi +18 -21
  108. reflex/components/radix/themes/components/inset.py +1 -3
  109. reflex/components/radix/themes/components/inset.pyi +17 -17
  110. reflex/components/radix/themes/components/popover.py +22 -13
  111. reflex/components/radix/themes/components/popover.pyi +98 -72
  112. reflex/components/radix/themes/components/progress.pyi +17 -17
  113. reflex/components/radix/themes/components/radio.pyi +17 -17
  114. reflex/components/radix/themes/components/radio_cards.py +2 -2
  115. reflex/components/radix/themes/components/radio_cards.pyi +37 -34
  116. reflex/components/radix/themes/components/radio_group.py +3 -7
  117. reflex/components/radix/themes/components/radio_group.pyi +69 -66
  118. reflex/components/radix/themes/components/scroll_area.py +1 -3
  119. reflex/components/radix/themes/components/scroll_area.pyi +17 -17
  120. reflex/components/radix/themes/components/segmented_control.pyi +37 -34
  121. reflex/components/radix/themes/components/select.py +7 -11
  122. reflex/components/radix/themes/components/select.pyi +175 -154
  123. reflex/components/radix/themes/components/separator.py +1 -4
  124. reflex/components/radix/themes/components/separator.pyi +17 -17
  125. reflex/components/radix/themes/components/skeleton.pyi +17 -17
  126. reflex/components/radix/themes/components/slider.py +12 -21
  127. reflex/components/radix/themes/components/slider.pyi +47 -25
  128. reflex/components/radix/themes/components/spinner.py +1 -4
  129. reflex/components/radix/themes/components/spinner.pyi +17 -17
  130. reflex/components/radix/themes/components/switch.py +3 -6
  131. reflex/components/radix/themes/components/switch.pyi +21 -18
  132. reflex/components/radix/themes/components/table.py +21 -5
  133. reflex/components/radix/themes/components/table.pyi +392 -116
  134. reflex/components/radix/themes/components/tabs.py +3 -6
  135. reflex/components/radix/themes/components/tabs.pyi +89 -83
  136. reflex/components/radix/themes/components/text_area.py +1 -5
  137. reflex/components/radix/themes/components/text_area.pyi +43 -20
  138. reflex/components/radix/themes/components/text_field.py +1 -5
  139. reflex/components/radix/themes/components/text_field.pyi +101 -55
  140. reflex/components/radix/themes/components/tooltip.py +5 -7
  141. reflex/components/radix/themes/components/tooltip.pyi +25 -22
  142. reflex/components/radix/themes/layout/base.py +2 -27
  143. reflex/components/radix/themes/layout/base.pyi +82 -82
  144. reflex/components/radix/themes/layout/box.pyi +17 -17
  145. reflex/components/radix/themes/layout/center.pyi +17 -17
  146. reflex/components/radix/themes/layout/container.pyi +17 -17
  147. reflex/components/radix/themes/layout/flex.py +1 -6
  148. reflex/components/radix/themes/layout/flex.pyi +17 -17
  149. reflex/components/radix/themes/layout/grid.py +1 -6
  150. reflex/components/radix/themes/layout/grid.pyi +17 -17
  151. reflex/components/radix/themes/layout/list.py +20 -15
  152. reflex/components/radix/themes/layout/list.pyi +175 -92
  153. reflex/components/radix/themes/layout/section.pyi +17 -17
  154. reflex/components/radix/themes/layout/spacer.pyi +17 -17
  155. reflex/components/radix/themes/layout/stack.py +6 -6
  156. reflex/components/radix/themes/layout/stack.pyi +91 -62
  157. reflex/components/radix/themes/typography/blockquote.py +2 -8
  158. reflex/components/radix/themes/typography/blockquote.pyi +17 -17
  159. reflex/components/radix/themes/typography/code.py +4 -10
  160. reflex/components/radix/themes/typography/code.pyi +19 -18
  161. reflex/components/radix/themes/typography/heading.py +4 -11
  162. reflex/components/radix/themes/typography/heading.pyi +19 -18
  163. reflex/components/radix/themes/typography/link.py +4 -10
  164. reflex/components/radix/themes/typography/link.pyi +19 -18
  165. reflex/components/radix/themes/typography/text.py +4 -11
  166. reflex/components/radix/themes/typography/text.pyi +115 -114
  167. reflex/components/react_player/audio.pyi +58 -33
  168. reflex/components/react_player/react_player.py +17 -17
  169. reflex/components/react_player/react_player.pyi +55 -33
  170. reflex/components/react_player/video.pyi +58 -33
  171. reflex/components/recharts/cartesian.py +45 -45
  172. reflex/components/recharts/cartesian.pyi +389 -304
  173. reflex/components/recharts/charts.py +22 -22
  174. reflex/components/recharts/charts.pyi +226 -179
  175. reflex/components/recharts/general.py +26 -27
  176. reflex/components/recharts/general.pyi +106 -99
  177. reflex/components/recharts/polar.py +33 -33
  178. reflex/components/recharts/polar.pyi +70 -64
  179. reflex/components/recharts/recharts.pyi +33 -33
  180. reflex/components/sonner/toast.py +9 -36
  181. reflex/components/sonner/toast.pyi +20 -24
  182. reflex/components/suneditor/editor.py +8 -8
  183. reflex/components/suneditor/editor.pyi +50 -25
  184. reflex/components/tags/iter_tag.py +1 -10
  185. reflex/components/tags/tag.py +1 -4
  186. reflex/config.py +252 -41
  187. reflex/constants/__init__.py +4 -16
  188. reflex/constants/base.py +7 -14
  189. reflex/constants/colors.py +0 -1
  190. reflex/constants/installer.py +12 -7
  191. reflex/constants/state.py +4 -0
  192. reflex/custom_components/custom_components.py +6 -6
  193. reflex/event.py +486 -241
  194. reflex/experimental/client_state.py +9 -9
  195. reflex/experimental/layout.py +2 -2
  196. reflex/experimental/layout.pyi +95 -87
  197. reflex/experimental/misc.py +1 -1
  198. reflex/istate/__init__.py +1 -0
  199. reflex/istate/proxy.py +33 -0
  200. reflex/istate/wrappers.py +27 -0
  201. reflex/model.py +7 -7
  202. reflex/page.py +2 -1
  203. reflex/reflex.py +142 -8
  204. reflex/state.py +133 -46
  205. reflex/testing.py +9 -7
  206. reflex/utils/console.py +0 -1
  207. reflex/utils/exceptions.py +31 -3
  208. reflex/utils/exec.py +33 -14
  209. reflex/utils/format.py +15 -12
  210. reflex/utils/net.py +1 -1
  211. reflex/utils/path_ops.py +2 -2
  212. reflex/utils/prerequisites.py +82 -46
  213. reflex/utils/pyi_generator.py +63 -20
  214. reflex/utils/registry.py +1 -1
  215. reflex/utils/serializers.py +75 -36
  216. reflex/utils/telemetry.py +3 -2
  217. reflex/utils/types.py +125 -10
  218. reflex/vars/base.py +131 -119
  219. reflex/vars/function.py +59 -12
  220. reflex/vars/number.py +3 -1
  221. reflex/vars/object.py +30 -24
  222. reflex/vars/sequence.py +7 -7
  223. {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/METADATA +3 -3
  224. reflex-0.6.5.dist-info/RECORD +394 -0
  225. reflex-0.6.4a2.dist-info/RECORD +0 -391
  226. {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/LICENSE +0 -0
  227. {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/WHEEL +0 -0
  228. {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/entry_points.txt +0 -0
@@ -2,12 +2,13 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Any, Iterable, Literal, Optional, Union
5
+ from typing import Any, Iterable, Literal, Union
6
6
 
7
7
  from reflex.components.component import Component, ComponentNamespace
8
8
  from reflex.components.core.foreach import Foreach
9
9
  from reflex.components.el.elements.typography import Li, Ol, Ul
10
10
  from reflex.components.lucide.icon import Icon
11
+ from reflex.components.markdown.markdown import MarkdownComponentMap
11
12
  from reflex.components.radix.themes.typography.text import Text
12
13
  from reflex.vars.base import Var
13
14
 
@@ -36,7 +37,7 @@ LiteralListStyleTypeOrdered = Literal[
36
37
  ]
37
38
 
38
39
 
39
- class BaseList(Component):
40
+ class BaseList(Component, MarkdownComponentMap):
40
41
  """Base class for ordered and unordered lists."""
41
42
 
42
43
  tag = "ul"
@@ -44,27 +45,30 @@ class BaseList(Component):
44
45
  # The style of the list. Default to "none".
45
46
  list_style_type: Var[
46
47
  Union[LiteralListStyleTypeUnordered, LiteralListStyleTypeOrdered]
47
- ]
48
+ ] = Var.create("none")
49
+
50
+ # A list of items to add to the list.
51
+ items: Var[Iterable] = Var.create([])
48
52
 
49
53
  @classmethod
50
54
  def create(
51
55
  cls,
52
56
  *children,
53
- items: Optional[Var[Iterable]] = None,
54
57
  **props,
55
58
  ):
56
59
  """Create a list component.
57
60
 
58
61
  Args:
59
62
  *children: The children of the component.
60
- items: A list of items to add to the list.
61
63
  **props: The properties of the component.
62
64
 
63
65
  Returns:
64
66
  The list component.
65
67
 
66
68
  """
69
+ items = props.pop("items", None)
67
70
  list_style_type = props.pop("list_style_type", "none")
71
+
68
72
  if not children and items is not None:
69
73
  if isinstance(items, Var):
70
74
  children = [Foreach.create(items, ListItem.create)]
@@ -87,6 +91,9 @@ class BaseList(Component):
87
91
  "direction": "column",
88
92
  }
89
93
 
94
+ def _exclude_props(self) -> list[str]:
95
+ return ["items", "list_style_type"]
96
+
90
97
 
91
98
  class UnorderedList(BaseList, Ul):
92
99
  """Display an unordered list."""
@@ -97,22 +104,21 @@ class UnorderedList(BaseList, Ul):
97
104
  def create(
98
105
  cls,
99
106
  *children,
100
- items: Optional[Var[Iterable]] = None,
101
- list_style_type: LiteralListStyleTypeUnordered = "disc",
102
107
  **props,
103
108
  ):
104
- """Create a unordered list component.
109
+ """Create an unordered list component.
105
110
 
106
111
  Args:
107
112
  *children: The children of the component.
108
- items: A list of items to add to the list.
109
- list_style_type: The style of the list.
110
113
  **props: The properties of the component.
111
114
 
112
115
  Returns:
113
116
  The list component.
114
117
 
115
118
  """
119
+ items = props.pop("items", None)
120
+ list_style_type = props.pop("list_style_type", "disc")
121
+
116
122
  props["margin_left"] = props.get("margin_left", "1.5rem")
117
123
  return super().create(
118
124
  *children, items=items, list_style_type=list_style_type, **props
@@ -128,29 +134,28 @@ class OrderedList(BaseList, Ol):
128
134
  def create(
129
135
  cls,
130
136
  *children,
131
- items: Optional[Var[Iterable]] = None,
132
- list_style_type: LiteralListStyleTypeOrdered = "decimal",
133
137
  **props,
134
138
  ):
135
139
  """Create an ordered list component.
136
140
 
137
141
  Args:
138
142
  *children: The children of the component.
139
- items: A list of items to add to the list.
140
- list_style_type: The style of the list.
141
143
  **props: The properties of the component.
142
144
 
143
145
  Returns:
144
146
  The list component.
145
147
 
146
148
  """
149
+ items = props.pop("items", None)
150
+ list_style_type = props.pop("list_style_type", "decimal")
151
+
147
152
  props["margin_left"] = props.get("margin_left", "1.5rem")
148
153
  return super().create(
149
154
  *children, items=items, list_style_type=list_style_type, **props
150
155
  )
151
156
 
152
157
 
153
- class ListItem(Li):
158
+ class ListItem(Li, MarkdownComponentMap):
154
159
  """Display an item of an ordered or unordered list."""
155
160
 
156
161
  @classmethod
@@ -7,7 +7,8 @@ from typing import Any, Dict, Iterable, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.component import Component, ComponentNamespace
9
9
  from reflex.components.el.elements.typography import Li, Ol, Ul
10
- from reflex.event import EventType
10
+ from reflex.components.markdown.markdown import MarkdownComponentMap
11
+ from reflex.event import BASE_STATE, EventType
11
12
  from reflex.style import Style
12
13
  from reflex.vars.base import Var
13
14
 
@@ -29,13 +30,12 @@ LiteralListStyleTypeOrdered = Literal[
29
30
  "katakana",
30
31
  ]
31
32
 
32
- class BaseList(Component):
33
+ class BaseList(Component, MarkdownComponentMap):
33
34
  @overload
34
35
  @classmethod
35
36
  def create( # type: ignore
36
37
  cls,
37
38
  *children,
38
- items: Optional[Union[Iterable, Var[Iterable]]] = None,
39
39
  list_style_type: Optional[
40
40
  Union[
41
41
  Literal[
@@ -78,35 +78,36 @@ class BaseList(Component):
78
78
  ],
79
79
  ]
80
80
  ] = None,
81
+ items: Optional[Union[Iterable, Var[Iterable]]] = None,
81
82
  style: Optional[Style] = None,
82
83
  key: Optional[Any] = None,
83
84
  id: Optional[Any] = None,
84
85
  class_name: Optional[Any] = None,
85
86
  autofocus: Optional[bool] = None,
86
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
87
- on_blur: Optional[EventType[[]]] = None,
88
- on_click: Optional[EventType[[]]] = None,
89
- on_context_menu: Optional[EventType[[]]] = None,
90
- on_double_click: Optional[EventType[[]]] = None,
91
- on_focus: Optional[EventType[[]]] = None,
92
- on_mount: Optional[EventType[[]]] = None,
93
- on_mouse_down: Optional[EventType[[]]] = None,
94
- on_mouse_enter: Optional[EventType[[]]] = None,
95
- on_mouse_leave: Optional[EventType[[]]] = None,
96
- on_mouse_move: Optional[EventType[[]]] = None,
97
- on_mouse_out: Optional[EventType[[]]] = None,
98
- on_mouse_over: Optional[EventType[[]]] = None,
99
- on_mouse_up: Optional[EventType[[]]] = None,
100
- on_scroll: Optional[EventType[[]]] = None,
101
- on_unmount: Optional[EventType[[]]] = None,
87
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
88
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
89
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
90
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
91
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
92
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
93
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
94
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
95
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
96
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
97
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
98
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
99
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
100
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
101
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
102
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
102
103
  **props,
103
104
  ) -> "BaseList":
104
105
  """Create a list component.
105
106
 
106
107
  Args:
107
108
  *children: The children of the component.
108
- items: A list of items to add to the list.
109
109
  list_style_type: The style of the list. Default to "none".
110
+ items: A list of items to add to the list.
110
111
  style: The style of the component.
111
112
  key: A unique key for the component.
112
113
  id: The id for the component.
@@ -129,8 +130,49 @@ class UnorderedList(BaseList, Ul):
129
130
  def create( # type: ignore
130
131
  cls,
131
132
  *children,
133
+ list_style_type: Optional[
134
+ Union[
135
+ Literal[
136
+ "armenian",
137
+ "decimal",
138
+ "decimal-leading-zero",
139
+ "georgian",
140
+ "hiragana",
141
+ "katakana",
142
+ "lower-alpha",
143
+ "lower-greek",
144
+ "lower-latin",
145
+ "lower-roman",
146
+ "none",
147
+ "upper-alpha",
148
+ "upper-latin",
149
+ "upper-roman",
150
+ ],
151
+ Literal["circle", "disc", "none", "square"],
152
+ Var[
153
+ Union[
154
+ Literal[
155
+ "armenian",
156
+ "decimal",
157
+ "decimal-leading-zero",
158
+ "georgian",
159
+ "hiragana",
160
+ "katakana",
161
+ "lower-alpha",
162
+ "lower-greek",
163
+ "lower-latin",
164
+ "lower-roman",
165
+ "none",
166
+ "upper-alpha",
167
+ "upper-latin",
168
+ "upper-roman",
169
+ ],
170
+ Literal["circle", "disc", "none", "square"],
171
+ ]
172
+ ],
173
+ ]
174
+ ] = None,
132
175
  items: Optional[Union[Iterable, Var[Iterable]]] = None,
133
- list_style_type: Optional[LiteralListStyleTypeUnordered] = "disc",
134
176
  access_key: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
135
177
  auto_capitalize: Optional[
136
178
  Union[Var[Union[bool, int, str]], bool, int, str]
@@ -160,30 +202,30 @@ class UnorderedList(BaseList, Ul):
160
202
  id: Optional[Any] = None,
161
203
  class_name: Optional[Any] = None,
162
204
  autofocus: Optional[bool] = None,
163
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
164
- on_blur: Optional[EventType[[]]] = None,
165
- on_click: Optional[EventType[[]]] = None,
166
- on_context_menu: Optional[EventType[[]]] = None,
167
- on_double_click: Optional[EventType[[]]] = None,
168
- on_focus: Optional[EventType[[]]] = None,
169
- on_mount: Optional[EventType[[]]] = None,
170
- on_mouse_down: Optional[EventType[[]]] = None,
171
- on_mouse_enter: Optional[EventType[[]]] = None,
172
- on_mouse_leave: Optional[EventType[[]]] = None,
173
- on_mouse_move: Optional[EventType[[]]] = None,
174
- on_mouse_out: Optional[EventType[[]]] = None,
175
- on_mouse_over: Optional[EventType[[]]] = None,
176
- on_mouse_up: Optional[EventType[[]]] = None,
177
- on_scroll: Optional[EventType[[]]] = None,
178
- on_unmount: Optional[EventType[[]]] = None,
205
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
206
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
207
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
208
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
209
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
210
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
211
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
212
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
213
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
214
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
215
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
216
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
217
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
218
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
219
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
220
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
179
221
  **props,
180
222
  ) -> "UnorderedList":
181
- """Create a unordered list component.
223
+ """Create an unordered list component.
182
224
 
183
225
  Args:
184
226
  *children: The children of the component.
227
+ list_style_type: The style of the list. Default to "none".
185
228
  items: A list of items to add to the list.
186
- list_style_type: The style of the list.
187
229
  access_key: Provides a hint for generating a keyboard shortcut for the current element.
188
230
  auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
189
231
  content_editable: Indicates whether the element's content is editable.
@@ -220,8 +262,49 @@ class OrderedList(BaseList, Ol):
220
262
  def create( # type: ignore
221
263
  cls,
222
264
  *children,
265
+ list_style_type: Optional[
266
+ Union[
267
+ Literal[
268
+ "armenian",
269
+ "decimal",
270
+ "decimal-leading-zero",
271
+ "georgian",
272
+ "hiragana",
273
+ "katakana",
274
+ "lower-alpha",
275
+ "lower-greek",
276
+ "lower-latin",
277
+ "lower-roman",
278
+ "none",
279
+ "upper-alpha",
280
+ "upper-latin",
281
+ "upper-roman",
282
+ ],
283
+ Literal["circle", "disc", "none", "square"],
284
+ Var[
285
+ Union[
286
+ Literal[
287
+ "armenian",
288
+ "decimal",
289
+ "decimal-leading-zero",
290
+ "georgian",
291
+ "hiragana",
292
+ "katakana",
293
+ "lower-alpha",
294
+ "lower-greek",
295
+ "lower-latin",
296
+ "lower-roman",
297
+ "none",
298
+ "upper-alpha",
299
+ "upper-latin",
300
+ "upper-roman",
301
+ ],
302
+ Literal["circle", "disc", "none", "square"],
303
+ ]
304
+ ],
305
+ ]
306
+ ] = None,
223
307
  items: Optional[Union[Iterable, Var[Iterable]]] = None,
224
- list_style_type: Optional[LiteralListStyleTypeOrdered] = "decimal",
225
308
  reversed: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
226
309
  start: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
227
310
  type: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
@@ -254,30 +337,30 @@ class OrderedList(BaseList, Ol):
254
337
  id: Optional[Any] = None,
255
338
  class_name: Optional[Any] = None,
256
339
  autofocus: Optional[bool] = None,
257
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
258
- on_blur: Optional[EventType[[]]] = None,
259
- on_click: Optional[EventType[[]]] = None,
260
- on_context_menu: Optional[EventType[[]]] = None,
261
- on_double_click: Optional[EventType[[]]] = None,
262
- on_focus: Optional[EventType[[]]] = None,
263
- on_mount: Optional[EventType[[]]] = None,
264
- on_mouse_down: Optional[EventType[[]]] = None,
265
- on_mouse_enter: Optional[EventType[[]]] = None,
266
- on_mouse_leave: Optional[EventType[[]]] = None,
267
- on_mouse_move: Optional[EventType[[]]] = None,
268
- on_mouse_out: Optional[EventType[[]]] = None,
269
- on_mouse_over: Optional[EventType[[]]] = None,
270
- on_mouse_up: Optional[EventType[[]]] = None,
271
- on_scroll: Optional[EventType[[]]] = None,
272
- on_unmount: Optional[EventType[[]]] = None,
340
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
341
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
342
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
343
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
344
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
345
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
346
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
347
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
348
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
349
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
350
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
351
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
352
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
353
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
354
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
355
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
273
356
  **props,
274
357
  ) -> "OrderedList":
275
358
  """Create an ordered list component.
276
359
 
277
360
  Args:
278
361
  *children: The children of the component.
362
+ list_style_type: The style of the list. Default to "none".
279
363
  items: A list of items to add to the list.
280
- list_style_type: The style of the list.
281
364
  reversed: Reverses the order of the list.
282
365
  start: Specifies the start value of the first list item in an ordered list.
283
366
  type: Specifies the kind of marker to use in the list (letters or numbers).
@@ -311,7 +394,7 @@ class OrderedList(BaseList, Ol):
311
394
  """
312
395
  ...
313
396
 
314
- class ListItem(Li):
397
+ class ListItem(Li, MarkdownComponentMap):
315
398
  @overload
316
399
  @classmethod
317
400
  def create( # type: ignore
@@ -346,22 +429,22 @@ class ListItem(Li):
346
429
  id: Optional[Any] = None,
347
430
  class_name: Optional[Any] = None,
348
431
  autofocus: Optional[bool] = None,
349
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
350
- on_blur: Optional[EventType[[]]] = None,
351
- on_click: Optional[EventType[[]]] = None,
352
- on_context_menu: Optional[EventType[[]]] = None,
353
- on_double_click: Optional[EventType[[]]] = None,
354
- on_focus: Optional[EventType[[]]] = None,
355
- on_mount: Optional[EventType[[]]] = None,
356
- on_mouse_down: Optional[EventType[[]]] = None,
357
- on_mouse_enter: Optional[EventType[[]]] = None,
358
- on_mouse_leave: Optional[EventType[[]]] = None,
359
- on_mouse_move: Optional[EventType[[]]] = None,
360
- on_mouse_out: Optional[EventType[[]]] = None,
361
- on_mouse_over: Optional[EventType[[]]] = None,
362
- on_mouse_up: Optional[EventType[[]]] = None,
363
- on_scroll: Optional[EventType[[]]] = None,
364
- on_unmount: Optional[EventType[[]]] = None,
432
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
433
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
434
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
435
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
436
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
437
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
438
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
439
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
440
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
441
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
442
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
443
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
444
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
445
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
446
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
447
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
365
448
  **props,
366
449
  ) -> "ListItem":
367
450
  """Create a list item component.
@@ -406,7 +489,6 @@ class List(ComponentNamespace):
406
489
  @staticmethod
407
490
  def __call__(
408
491
  *children,
409
- items: Optional[Union[Iterable, Var[Iterable]]] = None,
410
492
  list_style_type: Optional[
411
493
  Union[
412
494
  Literal[
@@ -449,35 +531,36 @@ class List(ComponentNamespace):
449
531
  ],
450
532
  ]
451
533
  ] = None,
534
+ items: Optional[Union[Iterable, Var[Iterable]]] = None,
452
535
  style: Optional[Style] = None,
453
536
  key: Optional[Any] = None,
454
537
  id: Optional[Any] = None,
455
538
  class_name: Optional[Any] = None,
456
539
  autofocus: Optional[bool] = None,
457
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
458
- on_blur: Optional[EventType[[]]] = None,
459
- on_click: Optional[EventType[[]]] = None,
460
- on_context_menu: Optional[EventType[[]]] = None,
461
- on_double_click: Optional[EventType[[]]] = None,
462
- on_focus: Optional[EventType[[]]] = None,
463
- on_mount: Optional[EventType[[]]] = None,
464
- on_mouse_down: Optional[EventType[[]]] = None,
465
- on_mouse_enter: Optional[EventType[[]]] = None,
466
- on_mouse_leave: Optional[EventType[[]]] = None,
467
- on_mouse_move: Optional[EventType[[]]] = None,
468
- on_mouse_out: Optional[EventType[[]]] = None,
469
- on_mouse_over: Optional[EventType[[]]] = None,
470
- on_mouse_up: Optional[EventType[[]]] = None,
471
- on_scroll: Optional[EventType[[]]] = None,
472
- on_unmount: Optional[EventType[[]]] = None,
540
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
541
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
542
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
543
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
544
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
545
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
546
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
547
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
548
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
549
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
550
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
551
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
552
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
553
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
554
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
555
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
473
556
  **props,
474
557
  ) -> "BaseList":
475
558
  """Create a list component.
476
559
 
477
560
  Args:
478
561
  *children: The children of the component.
479
- items: A list of items to add to the list.
480
562
  list_style_type: The style of the list. Default to "none".
563
+ items: A list of items to add to the list.
481
564
  style: The style of the component.
482
565
  key: A unique key for the component.
483
566
  id: The id for the component.
@@ -7,7 +7,7 @@ from typing import Any, Dict, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.core.breakpoints import Breakpoints
9
9
  from reflex.components.el import elements
10
- from reflex.event import EventType
10
+ from reflex.event import BASE_STATE, EventType
11
11
  from reflex.style import Style
12
12
  from reflex.vars.base import Var
13
13
 
@@ -61,22 +61,22 @@ class Section(elements.Section, RadixThemesComponent):
61
61
  id: Optional[Any] = None,
62
62
  class_name: Optional[Any] = None,
63
63
  autofocus: Optional[bool] = None,
64
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
65
- on_blur: Optional[EventType[[]]] = None,
66
- on_click: Optional[EventType[[]]] = None,
67
- on_context_menu: Optional[EventType[[]]] = None,
68
- on_double_click: Optional[EventType[[]]] = None,
69
- on_focus: Optional[EventType[[]]] = None,
70
- on_mount: Optional[EventType[[]]] = None,
71
- on_mouse_down: Optional[EventType[[]]] = None,
72
- on_mouse_enter: Optional[EventType[[]]] = None,
73
- on_mouse_leave: Optional[EventType[[]]] = None,
74
- on_mouse_move: Optional[EventType[[]]] = None,
75
- on_mouse_out: Optional[EventType[[]]] = None,
76
- on_mouse_over: Optional[EventType[[]]] = None,
77
- on_mouse_up: Optional[EventType[[]]] = None,
78
- on_scroll: Optional[EventType[[]]] = None,
79
- on_unmount: Optional[EventType[[]]] = None,
64
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
65
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
66
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
67
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
68
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
69
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
70
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
71
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
72
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
73
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
74
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
75
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
76
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
77
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
78
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
79
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
80
80
  **props,
81
81
  ) -> "Section":
82
82
  """Create a new component instance.
@@ -6,7 +6,7 @@
6
6
  from typing import Any, Dict, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.core.breakpoints import Breakpoints
9
- from reflex.event import EventType
9
+ from reflex.event import BASE_STATE, EventType
10
10
  from reflex.style import Style
11
11
  from reflex.vars.base import Var
12
12
 
@@ -124,22 +124,22 @@ class Spacer(Flex):
124
124
  id: Optional[Any] = None,
125
125
  class_name: Optional[Any] = None,
126
126
  autofocus: Optional[bool] = None,
127
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
128
- on_blur: Optional[EventType[[]]] = None,
129
- on_click: Optional[EventType[[]]] = None,
130
- on_context_menu: Optional[EventType[[]]] = None,
131
- on_double_click: Optional[EventType[[]]] = None,
132
- on_focus: Optional[EventType[[]]] = None,
133
- on_mount: Optional[EventType[[]]] = None,
134
- on_mouse_down: Optional[EventType[[]]] = None,
135
- on_mouse_enter: Optional[EventType[[]]] = None,
136
- on_mouse_leave: Optional[EventType[[]]] = None,
137
- on_mouse_move: Optional[EventType[[]]] = None,
138
- on_mouse_out: Optional[EventType[[]]] = None,
139
- on_mouse_over: Optional[EventType[[]]] = None,
140
- on_mouse_up: Optional[EventType[[]]] = None,
141
- on_scroll: Optional[EventType[[]]] = None,
142
- on_unmount: Optional[EventType[[]]] = None,
127
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
128
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
129
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
130
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
131
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
132
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
133
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
134
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
135
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
136
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
137
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
138
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
139
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
140
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
141
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
142
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
143
143
  **props,
144
144
  ) -> "Spacer":
145
145
  """Create a new component instance.
@@ -12,20 +12,22 @@ from .flex import Flex, LiteralFlexDirection
12
12
  class Stack(Flex):
13
13
  """A stack component."""
14
14
 
15
+ # The spacing between each stack item.
16
+ spacing: Var[LiteralSpacing] = Var.create("3")
17
+
18
+ # The alignment of the stack items.
19
+ align: Var[LiteralAlign] = Var.create("start")
20
+
15
21
  @classmethod
16
22
  def create(
17
23
  cls,
18
24
  *children,
19
- spacing: LiteralSpacing = "3",
20
- align: LiteralAlign = "start",
21
25
  **props,
22
26
  ) -> Component:
23
27
  """Create a new instance of the component.
24
28
 
25
29
  Args:
26
30
  *children: The children of the stack.
27
- spacing: The spacing between each stack item.
28
- align: The alignment of the stack items.
29
31
  **props: The properties of the stack.
30
32
 
31
33
  Returns:
@@ -39,8 +41,6 @@ class Stack(Flex):
39
41
 
40
42
  return super().create(
41
43
  *children,
42
- spacing=spacing,
43
- align=align,
44
44
  **props,
45
45
  )
46
46