reflex 0.6.0__py3-none-any.whl → 0.6.0a1__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 (253) hide show
  1. reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +2 -2
  2. reflex/.templates/jinja/web/pages/_app.js.jinja2 +1 -1
  3. reflex/.templates/jinja/web/pages/utils.js.jinja2 +2 -2
  4. reflex/.templates/web/components/reflex/chakra_color_mode_provider.js +36 -0
  5. reflex/.templates/web/utils/state.js +1 -3
  6. reflex/__init__.py +2 -8
  7. reflex/__init__.pyi +1 -2
  8. reflex/app.py +2 -4
  9. reflex/app_module_for_backend.py +1 -1
  10. reflex/base.py +1 -1
  11. reflex/compiler/compiler.py +2 -2
  12. reflex/compiler/utils.py +3 -3
  13. reflex/components/base/app_wrap.py +2 -2
  14. reflex/components/base/app_wrap.pyi +27 -17
  15. reflex/components/base/bare.py +5 -4
  16. reflex/components/base/body.pyi +27 -17
  17. reflex/components/base/document.pyi +131 -81
  18. reflex/components/base/error_boundary.py +7 -6
  19. reflex/components/base/error_boundary.pyi +33 -20
  20. reflex/components/base/fragment.pyi +27 -17
  21. reflex/components/base/head.pyi +53 -33
  22. reflex/components/base/link.py +1 -1
  23. reflex/components/base/link.pyi +54 -33
  24. reflex/components/base/meta.pyi +105 -65
  25. reflex/components/base/script.py +2 -1
  26. reflex/components/base/script.pyi +38 -21
  27. reflex/components/component.py +47 -53
  28. reflex/components/core/banner.py +27 -23
  29. reflex/components/core/banner.pyi +171 -134
  30. reflex/components/core/client_side_routing.py +3 -2
  31. reflex/components/core/client_side_routing.pyi +54 -33
  32. reflex/components/core/clipboard.py +1 -2
  33. reflex/components/core/clipboard.pyi +33 -20
  34. reflex/components/core/cond.py +5 -5
  35. reflex/components/core/debounce.py +5 -5
  36. reflex/components/core/debounce.pyi +33 -20
  37. reflex/components/core/foreach.py +4 -3
  38. reflex/components/core/html.py +1 -1
  39. reflex/components/core/html.pyi +46 -35
  40. reflex/components/core/match.py +17 -17
  41. reflex/components/core/upload.py +23 -17
  42. reflex/components/core/upload.pyi +124 -78
  43. reflex/components/datadisplay/code.py +10 -9
  44. reflex/components/datadisplay/code.pyi +409 -299
  45. reflex/components/datadisplay/dataeditor.py +10 -8
  46. reflex/components/datadisplay/dataeditor.pyi +53 -40
  47. reflex/components/el/element.pyi +27 -17
  48. reflex/components/el/elements/base.py +1 -1
  49. reflex/components/el/elements/base.pyi +45 -34
  50. reflex/components/el/elements/forms.py +16 -16
  51. reflex/components/el/elements/forms.pyi +707 -554
  52. reflex/components/el/elements/inline.py +1 -1
  53. reflex/components/el/elements/inline.pyi +1218 -937
  54. reflex/components/el/elements/media.py +1 -1
  55. reflex/components/el/elements/media.pyi +997 -786
  56. reflex/components/el/elements/metadata.py +6 -3
  57. reflex/components/el/elements/metadata.pyi +242 -181
  58. reflex/components/el/elements/other.py +1 -1
  59. reflex/components/el/elements/other.pyi +306 -235
  60. reflex/components/el/elements/scripts.py +1 -1
  61. reflex/components/el/elements/scripts.pyi +140 -109
  62. reflex/components/el/elements/sectioning.py +2 -0
  63. reflex/components/el/elements/sectioning.pyi +647 -496
  64. reflex/components/el/elements/tables.py +1 -1
  65. reflex/components/el/elements/tables.pyi +452 -351
  66. reflex/components/el/elements/typography.py +1 -1
  67. reflex/components/el/elements/typography.pyi +657 -506
  68. reflex/components/gridjs/datatable.py +9 -6
  69. reflex/components/gridjs/datatable.pyi +56 -35
  70. reflex/components/lucide/icon.py +1 -1
  71. reflex/components/lucide/icon.pyi +54 -33
  72. reflex/components/markdown/markdown.py +31 -26
  73. reflex/components/markdown/markdown.pyi +37 -27
  74. reflex/components/moment/moment.py +12 -13
  75. reflex/components/moment/moment.pyi +35 -23
  76. reflex/components/next/base.pyi +27 -17
  77. reflex/components/next/image.py +1 -1
  78. reflex/components/next/image.pyi +37 -22
  79. reflex/components/next/link.py +1 -1
  80. reflex/components/next/link.pyi +28 -17
  81. reflex/components/next/video.py +1 -1
  82. reflex/components/next/video.pyi +28 -17
  83. reflex/components/plotly/plotly.py +13 -12
  84. reflex/components/plotly/plotly.pyi +54 -39
  85. reflex/components/props.py +1 -1
  86. reflex/components/radix/__init__.pyi +0 -1
  87. reflex/components/radix/primitives/__init__.pyi +0 -1
  88. reflex/components/radix/primitives/accordion.py +4 -4
  89. reflex/components/radix/primitives/accordion.pyi +495 -424
  90. reflex/components/radix/primitives/base.py +1 -1
  91. reflex/components/radix/primitives/base.pyi +54 -33
  92. reflex/components/radix/primitives/drawer.py +1 -1
  93. reflex/components/radix/primitives/drawer.pyi +273 -172
  94. reflex/components/radix/primitives/form.py +1 -1
  95. reflex/components/radix/primitives/form.pyi +364 -257
  96. reflex/components/radix/primitives/progress.py +1 -1
  97. reflex/components/radix/primitives/progress.pyi +282 -231
  98. reflex/components/radix/primitives/slider.py +1 -1
  99. reflex/components/radix/primitives/slider.pyi +138 -87
  100. reflex/components/radix/themes/base.py +24 -3
  101. reflex/components/radix/themes/base.pyi +250 -178
  102. reflex/components/radix/themes/color_mode.py +5 -5
  103. reflex/components/radix/themes/color_mode.pyi +220 -187
  104. reflex/components/radix/themes/components/alert_dialog.py +1 -1
  105. reflex/components/radix/themes/components/alert_dialog.pyi +207 -136
  106. reflex/components/radix/themes/components/aspect_ratio.py +1 -1
  107. reflex/components/radix/themes/components/aspect_ratio.pyi +28 -17
  108. reflex/components/radix/themes/components/avatar.py +1 -1
  109. reflex/components/radix/themes/components/avatar.pyi +81 -70
  110. reflex/components/radix/themes/components/badge.py +1 -1
  111. reflex/components/radix/themes/components/badge.pyi +99 -88
  112. reflex/components/radix/themes/components/button.py +1 -1
  113. reflex/components/radix/themes/components/button.pyi +109 -98
  114. reflex/components/radix/themes/components/callout.py +1 -1
  115. reflex/components/radix/themes/components/callout.pyi +373 -322
  116. reflex/components/radix/themes/components/card.py +1 -1
  117. reflex/components/radix/themes/components/card.pyi +49 -38
  118. reflex/components/radix/themes/components/checkbox.py +2 -1
  119. reflex/components/radix/themes/components/checkbox.pyi +245 -208
  120. reflex/components/radix/themes/components/checkbox_cards.py +1 -1
  121. reflex/components/radix/themes/components/checkbox_cards.pyi +115 -94
  122. reflex/components/radix/themes/components/checkbox_group.py +1 -1
  123. reflex/components/radix/themes/components/checkbox_group.pyi +107 -86
  124. reflex/components/radix/themes/components/context_menu.py +1 -1
  125. reflex/components/radix/themes/components/context_menu.pyi +319 -238
  126. reflex/components/radix/themes/components/data_list.py +1 -1
  127. reflex/components/radix/themes/components/data_list.pyi +171 -130
  128. reflex/components/radix/themes/components/dialog.py +1 -1
  129. reflex/components/radix/themes/components/dialog.pyi +210 -139
  130. reflex/components/radix/themes/components/dropdown_menu.py +1 -1
  131. reflex/components/radix/themes/components/dropdown_menu.pyi +332 -249
  132. reflex/components/radix/themes/components/hover_card.py +1 -1
  133. reflex/components/radix/themes/components/hover_card.pyi +131 -90
  134. reflex/components/radix/themes/components/icon_button.py +3 -2
  135. reflex/components/radix/themes/components/icon_button.pyi +109 -98
  136. reflex/components/radix/themes/components/inset.py +1 -1
  137. reflex/components/radix/themes/components/inset.pyi +58 -47
  138. reflex/components/radix/themes/components/popover.py +1 -1
  139. reflex/components/radix/themes/components/popover.pyi +136 -95
  140. reflex/components/radix/themes/components/progress.py +1 -1
  141. reflex/components/radix/themes/components/progress.pyi +82 -71
  142. reflex/components/radix/themes/components/radio.py +1 -1
  143. reflex/components/radix/themes/components/radio.pyi +80 -69
  144. reflex/components/radix/themes/components/radio_cards.py +1 -1
  145. reflex/components/radix/themes/components/radio_cards.pyi +119 -98
  146. reflex/components/radix/themes/components/radio_group.py +11 -8
  147. reflex/components/radix/themes/components/radio_group.pyi +271 -228
  148. reflex/components/radix/themes/components/scroll_area.py +1 -1
  149. reflex/components/radix/themes/components/scroll_area.pyi +32 -21
  150. reflex/components/radix/themes/components/segmented_control.py +1 -1
  151. reflex/components/radix/themes/components/segmented_control.pyi +113 -90
  152. reflex/components/radix/themes/components/select.py +3 -2
  153. reflex/components/radix/themes/components/select.pyi +471 -374
  154. reflex/components/radix/themes/components/separator.py +2 -1
  155. reflex/components/radix/themes/components/separator.pyi +80 -69
  156. reflex/components/radix/themes/components/skeleton.py +1 -1
  157. reflex/components/radix/themes/components/skeleton.pyi +34 -23
  158. reflex/components/radix/themes/components/slider.py +3 -2
  159. reflex/components/radix/themes/components/slider.pyi +88 -75
  160. reflex/components/radix/themes/components/spinner.py +1 -1
  161. reflex/components/radix/themes/components/spinner.pyi +30 -19
  162. reflex/components/radix/themes/components/switch.py +1 -1
  163. reflex/components/radix/themes/components/switch.pyi +84 -71
  164. reflex/components/radix/themes/components/table.py +1 -1
  165. reflex/components/radix/themes/components/table.pyi +332 -261
  166. reflex/components/radix/themes/components/tabs.py +1 -1
  167. reflex/components/radix/themes/components/tabs.pyi +194 -139
  168. reflex/components/radix/themes/components/text_area.py +1 -1
  169. reflex/components/radix/themes/components/text_area.pyi +111 -96
  170. reflex/components/radix/themes/components/text_field.py +1 -1
  171. reflex/components/radix/themes/components/text_field.pyi +286 -247
  172. reflex/components/radix/themes/components/tooltip.py +1 -1
  173. reflex/components/radix/themes/components/tooltip.pyi +37 -26
  174. reflex/components/radix/themes/layout/__init__.pyi +0 -1
  175. reflex/components/radix/themes/layout/base.py +1 -1
  176. reflex/components/radix/themes/layout/base.pyi +67 -56
  177. reflex/components/radix/themes/layout/box.pyi +45 -34
  178. reflex/components/radix/themes/layout/center.pyi +67 -56
  179. reflex/components/radix/themes/layout/container.py +2 -1
  180. reflex/components/radix/themes/layout/container.pyi +47 -36
  181. reflex/components/radix/themes/layout/flex.py +1 -1
  182. reflex/components/radix/themes/layout/flex.pyi +67 -56
  183. reflex/components/radix/themes/layout/grid.py +1 -1
  184. reflex/components/radix/themes/layout/grid.pyi +75 -64
  185. reflex/components/radix/themes/layout/list.py +6 -5
  186. reflex/components/radix/themes/layout/list.pyi +244 -193
  187. reflex/components/radix/themes/layout/section.py +2 -1
  188. reflex/components/radix/themes/layout/section.pyi +47 -36
  189. reflex/components/radix/themes/layout/spacer.pyi +67 -56
  190. reflex/components/radix/themes/layout/stack.py +1 -1
  191. reflex/components/radix/themes/layout/stack.pyi +159 -128
  192. reflex/components/radix/themes/typography/blockquote.py +1 -1
  193. reflex/components/radix/themes/typography/blockquote.pyi +100 -89
  194. reflex/components/radix/themes/typography/code.py +1 -1
  195. reflex/components/radix/themes/typography/code.pyi +101 -90
  196. reflex/components/radix/themes/typography/heading.py +1 -1
  197. reflex/components/radix/themes/typography/heading.pyi +107 -96
  198. reflex/components/radix/themes/typography/link.py +1 -1
  199. reflex/components/radix/themes/typography/link.pyi +113 -102
  200. reflex/components/radix/themes/typography/text.py +1 -1
  201. reflex/components/radix/themes/typography/text.pyi +572 -501
  202. reflex/components/react_player/audio.pyi +60 -33
  203. reflex/components/react_player/react_player.py +1 -1
  204. reflex/components/react_player/react_player.pyi +60 -33
  205. reflex/components/react_player/video.pyi +60 -33
  206. reflex/components/recharts/cartesian.py +3 -2
  207. reflex/components/recharts/cartesian.pyi +861 -678
  208. reflex/components/recharts/charts.py +5 -4
  209. reflex/components/recharts/charts.pyi +357 -252
  210. reflex/components/recharts/general.py +2 -1
  211. reflex/components/recharts/general.pyi +231 -180
  212. reflex/components/recharts/polar.py +5 -4
  213. reflex/components/recharts/polar.pyi +181 -144
  214. reflex/components/recharts/recharts.pyi +53 -33
  215. reflex/components/sonner/toast.py +17 -16
  216. reflex/components/sonner/toast.pyi +47 -36
  217. reflex/components/suneditor/editor.py +3 -2
  218. reflex/components/suneditor/editor.pyi +78 -55
  219. reflex/components/tags/cond_tag.py +4 -6
  220. reflex/components/tags/iter_tag.py +16 -28
  221. reflex/components/tags/match_tag.py +4 -6
  222. reflex/components/tags/tag.py +23 -40
  223. reflex/custom_components/custom_components.py +1 -3
  224. reflex/event.py +65 -113
  225. reflex/experimental/client_state.py +24 -25
  226. reflex/experimental/hooks.py +16 -16
  227. reflex/experimental/layout.py +5 -5
  228. reflex/experimental/layout.pyi +187 -136
  229. reflex/{vars → ivars}/__init__.py +2 -6
  230. reflex/{vars → ivars}/base.py +216 -599
  231. reflex/{vars → ivars}/function.py +19 -15
  232. reflex/{vars → ivars}/number.py +20 -41
  233. reflex/{vars → ivars}/object.py +30 -28
  234. reflex/{vars → ivars}/sequence.py +50 -53
  235. reflex/middleware/hydrate_middleware.py +0 -2
  236. reflex/middleware/middleware.py +3 -3
  237. reflex/state.py +82 -148
  238. reflex/style.py +22 -21
  239. reflex/utils/exceptions.py +0 -20
  240. reflex/utils/format.py +34 -54
  241. reflex/utils/imports.py +73 -16
  242. reflex/utils/prerequisites.py +15 -35
  243. reflex/utils/pyi_generator.py +8 -13
  244. reflex/utils/serializers.py +22 -12
  245. reflex/utils/telemetry.py +2 -3
  246. reflex/utils/types.py +5 -10
  247. reflex/vars.py +501 -0
  248. {reflex-0.6.0.dist-info → reflex-0.6.0a1.dist-info}/METADATA +5 -4
  249. reflex-0.6.0a1.dist-info/RECORD +384 -0
  250. reflex-0.6.0.dist-info/RECORD +0 -382
  251. {reflex-0.6.0.dist-info → reflex-0.6.0a1.dist-info}/LICENSE +0 -0
  252. {reflex-0.6.0.dist-info → reflex-0.6.0a1.dist-info}/WHEEL +0 -0
  253. {reflex-0.6.0.dist-info → reflex-0.6.0a1.dist-info}/entry_points.txt +0 -0
@@ -7,8 +7,9 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.core.breakpoints import Breakpoints
9
9
  from reflex.event import EventHandler, EventSpec
10
+ from reflex.ivars.base import ImmutableVar
10
11
  from reflex.style import Style
11
- from reflex.vars.base import Var
12
+ from reflex.vars import Var
12
13
 
13
14
  from ..base import LiteralAlign, LiteralSpacing
14
15
  from .flex import Flex
@@ -24,109 +25,119 @@ class Stack(Flex):
24
25
  as_child: Optional[Union[Var[bool], bool]] = None,
25
26
  direction: Optional[
26
27
  Union[
27
- Breakpoints[
28
- str, Literal["column", "column-reverse", "row", "row-reverse"]
29
- ],
30
- Literal["column", "column-reverse", "row", "row-reverse"],
31
28
  Var[
32
29
  Union[
33
30
  Breakpoints[
34
31
  str,
35
- Literal["column", "column-reverse", "row", "row-reverse"],
32
+ Literal["row", "column", "row-reverse", "column-reverse"],
36
33
  ],
37
- Literal["column", "column-reverse", "row", "row-reverse"],
34
+ Literal["row", "column", "row-reverse", "column-reverse"],
38
35
  ]
39
36
  ],
37
+ Literal["row", "column", "row-reverse", "column-reverse"],
38
+ Breakpoints[
39
+ str, Literal["row", "column", "row-reverse", "column-reverse"]
40
+ ],
40
41
  ]
41
42
  ] = None,
42
43
  justify: Optional[
43
44
  Union[
44
- Breakpoints[str, Literal["between", "center", "end", "start"]],
45
- Literal["between", "center", "end", "start"],
46
45
  Var[
47
46
  Union[
48
- Breakpoints[str, Literal["between", "center", "end", "start"]],
49
- Literal["between", "center", "end", "start"],
47
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
48
+ Literal["start", "center", "end", "between"],
50
49
  ]
51
50
  ],
51
+ Literal["start", "center", "end", "between"],
52
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
52
53
  ]
53
54
  ] = None,
54
55
  wrap: Optional[
55
56
  Union[
56
- Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
57
- Literal["nowrap", "wrap", "wrap-reverse"],
58
57
  Var[
59
58
  Union[
60
59
  Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
61
60
  Literal["nowrap", "wrap", "wrap-reverse"],
62
61
  ]
63
62
  ],
63
+ Literal["nowrap", "wrap", "wrap-reverse"],
64
+ Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
64
65
  ]
65
66
  ] = None,
66
- access_key: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
67
+ access_key: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
67
68
  auto_capitalize: Optional[
68
- Union[Var[Union[bool, int, str]], bool, int, str]
69
+ Union[Var[Union[bool, int, str]], str, int, bool]
69
70
  ] = None,
70
71
  content_editable: Optional[
71
- Union[Var[Union[bool, int, str]], bool, int, str]
72
+ Union[Var[Union[bool, int, str]], str, int, bool]
72
73
  ] = None,
73
74
  context_menu: Optional[
74
- Union[Var[Union[bool, int, str]], bool, int, str]
75
+ Union[Var[Union[bool, int, str]], str, int, bool]
75
76
  ] = None,
76
- dir: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
77
- draggable: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
77
+ dir: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
78
+ draggable: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
78
79
  enter_key_hint: Optional[
79
- Union[Var[Union[bool, int, str]], bool, int, str]
80
- ] = None,
81
- hidden: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
82
- input_mode: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
83
- item_prop: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
84
- lang: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
85
- role: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
86
- slot: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
87
- spell_check: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
88
- tab_index: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
89
- title: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
80
+ Union[Var[Union[bool, int, str]], str, int, bool]
81
+ ] = None,
82
+ hidden: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
83
+ input_mode: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
84
+ item_prop: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
85
+ lang: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
86
+ role: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
87
+ slot: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
88
+ spell_check: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
89
+ tab_index: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
90
+ title: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
90
91
  style: Optional[Style] = None,
91
92
  key: Optional[Any] = None,
92
93
  id: Optional[Any] = None,
93
94
  class_name: Optional[Any] = None,
94
95
  autofocus: Optional[bool] = None,
95
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
96
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
97
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
96
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
97
+ on_blur: Optional[
98
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
99
+ ] = None,
100
+ on_click: Optional[
101
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
102
+ ] = None,
98
103
  on_context_menu: Optional[
99
- Union[EventHandler, EventSpec, list, Callable, Var]
104
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
100
105
  ] = None,
101
106
  on_double_click: Optional[
102
- Union[EventHandler, EventSpec, list, Callable, Var]
107
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
108
+ ] = None,
109
+ on_focus: Optional[
110
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
111
+ ] = None,
112
+ on_mount: Optional[
113
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
103
114
  ] = None,
104
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
105
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
106
115
  on_mouse_down: Optional[
107
- Union[EventHandler, EventSpec, list, Callable, Var]
116
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
108
117
  ] = None,
109
118
  on_mouse_enter: Optional[
110
- Union[EventHandler, EventSpec, list, Callable, Var]
119
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
111
120
  ] = None,
112
121
  on_mouse_leave: Optional[
113
- Union[EventHandler, EventSpec, list, Callable, Var]
122
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
114
123
  ] = None,
115
124
  on_mouse_move: Optional[
116
- Union[EventHandler, EventSpec, list, Callable, Var]
125
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
117
126
  ] = None,
118
127
  on_mouse_out: Optional[
119
- Union[EventHandler, EventSpec, list, Callable, Var]
128
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
120
129
  ] = None,
121
130
  on_mouse_over: Optional[
122
- Union[EventHandler, EventSpec, list, Callable, Var]
131
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
123
132
  ] = None,
124
133
  on_mouse_up: Optional[
125
- Union[EventHandler, EventSpec, list, Callable, Var]
134
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
135
+ ] = None,
136
+ on_scroll: Optional[
137
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
126
138
  ] = None,
127
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
128
139
  on_unmount: Optional[
129
- Union[EventHandler, EventSpec, list, Callable, Var]
140
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
130
141
  ] = None,
131
142
  **props,
132
143
  ) -> "Stack":
@@ -179,99 +190,109 @@ class VStack(Stack):
179
190
  align: Optional[LiteralAlign] = "start",
180
191
  direction: Optional[
181
192
  Union[
182
- Literal["column", "column-reverse", "row", "row-reverse"],
183
- Var[Literal["column", "column-reverse", "row", "row-reverse"]],
193
+ Var[Literal["row", "column", "row-reverse", "column-reverse"]],
194
+ Literal["row", "column", "row-reverse", "column-reverse"],
184
195
  ]
185
196
  ] = None,
186
197
  as_child: Optional[Union[Var[bool], bool]] = None,
187
198
  justify: Optional[
188
199
  Union[
189
- Breakpoints[str, Literal["between", "center", "end", "start"]],
190
- Literal["between", "center", "end", "start"],
191
200
  Var[
192
201
  Union[
193
- Breakpoints[str, Literal["between", "center", "end", "start"]],
194
- Literal["between", "center", "end", "start"],
202
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
203
+ Literal["start", "center", "end", "between"],
195
204
  ]
196
205
  ],
206
+ Literal["start", "center", "end", "between"],
207
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
197
208
  ]
198
209
  ] = None,
199
210
  wrap: Optional[
200
211
  Union[
201
- Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
202
- Literal["nowrap", "wrap", "wrap-reverse"],
203
212
  Var[
204
213
  Union[
205
214
  Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
206
215
  Literal["nowrap", "wrap", "wrap-reverse"],
207
216
  ]
208
217
  ],
218
+ Literal["nowrap", "wrap", "wrap-reverse"],
219
+ Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
209
220
  ]
210
221
  ] = None,
211
- access_key: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
222
+ access_key: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
212
223
  auto_capitalize: Optional[
213
- Union[Var[Union[bool, int, str]], bool, int, str]
224
+ Union[Var[Union[bool, int, str]], str, int, bool]
214
225
  ] = None,
215
226
  content_editable: Optional[
216
- Union[Var[Union[bool, int, str]], bool, int, str]
227
+ Union[Var[Union[bool, int, str]], str, int, bool]
217
228
  ] = None,
218
229
  context_menu: Optional[
219
- Union[Var[Union[bool, int, str]], bool, int, str]
230
+ Union[Var[Union[bool, int, str]], str, int, bool]
220
231
  ] = None,
221
- dir: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
222
- draggable: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
232
+ dir: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
233
+ draggable: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
223
234
  enter_key_hint: Optional[
224
- Union[Var[Union[bool, int, str]], bool, int, str]
225
- ] = None,
226
- hidden: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
227
- input_mode: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
228
- item_prop: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
229
- lang: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
230
- role: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
231
- slot: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
232
- spell_check: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
233
- tab_index: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
234
- title: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
235
+ Union[Var[Union[bool, int, str]], str, int, bool]
236
+ ] = None,
237
+ hidden: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
238
+ input_mode: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
239
+ item_prop: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
240
+ lang: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
241
+ role: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
242
+ slot: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
243
+ spell_check: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
244
+ tab_index: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
245
+ title: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
235
246
  style: Optional[Style] = None,
236
247
  key: Optional[Any] = None,
237
248
  id: Optional[Any] = None,
238
249
  class_name: Optional[Any] = None,
239
250
  autofocus: Optional[bool] = None,
240
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
241
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
242
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
251
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
252
+ on_blur: Optional[
253
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
254
+ ] = None,
255
+ on_click: Optional[
256
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
257
+ ] = None,
243
258
  on_context_menu: Optional[
244
- Union[EventHandler, EventSpec, list, Callable, Var]
259
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
245
260
  ] = None,
246
261
  on_double_click: Optional[
247
- Union[EventHandler, EventSpec, list, Callable, Var]
262
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
263
+ ] = None,
264
+ on_focus: Optional[
265
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
266
+ ] = None,
267
+ on_mount: Optional[
268
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
248
269
  ] = None,
249
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
250
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
251
270
  on_mouse_down: Optional[
252
- Union[EventHandler, EventSpec, list, Callable, Var]
271
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
253
272
  ] = None,
254
273
  on_mouse_enter: Optional[
255
- Union[EventHandler, EventSpec, list, Callable, Var]
274
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
256
275
  ] = None,
257
276
  on_mouse_leave: Optional[
258
- Union[EventHandler, EventSpec, list, Callable, Var]
277
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
259
278
  ] = None,
260
279
  on_mouse_move: Optional[
261
- Union[EventHandler, EventSpec, list, Callable, Var]
280
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
262
281
  ] = None,
263
282
  on_mouse_out: Optional[
264
- Union[EventHandler, EventSpec, list, Callable, Var]
283
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
265
284
  ] = None,
266
285
  on_mouse_over: Optional[
267
- Union[EventHandler, EventSpec, list, Callable, Var]
286
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
268
287
  ] = None,
269
288
  on_mouse_up: Optional[
270
- Union[EventHandler, EventSpec, list, Callable, Var]
289
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
290
+ ] = None,
291
+ on_scroll: Optional[
292
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
271
293
  ] = None,
272
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
273
294
  on_unmount: Optional[
274
- Union[EventHandler, EventSpec, list, Callable, Var]
295
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
275
296
  ] = None,
276
297
  **props,
277
298
  ) -> "VStack":
@@ -324,99 +345,109 @@ class HStack(Stack):
324
345
  align: Optional[LiteralAlign] = "start",
325
346
  direction: Optional[
326
347
  Union[
327
- Literal["column", "column-reverse", "row", "row-reverse"],
328
- Var[Literal["column", "column-reverse", "row", "row-reverse"]],
348
+ Var[Literal["row", "column", "row-reverse", "column-reverse"]],
349
+ Literal["row", "column", "row-reverse", "column-reverse"],
329
350
  ]
330
351
  ] = None,
331
352
  as_child: Optional[Union[Var[bool], bool]] = None,
332
353
  justify: Optional[
333
354
  Union[
334
- Breakpoints[str, Literal["between", "center", "end", "start"]],
335
- Literal["between", "center", "end", "start"],
336
355
  Var[
337
356
  Union[
338
- Breakpoints[str, Literal["between", "center", "end", "start"]],
339
- Literal["between", "center", "end", "start"],
357
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
358
+ Literal["start", "center", "end", "between"],
340
359
  ]
341
360
  ],
361
+ Literal["start", "center", "end", "between"],
362
+ Breakpoints[str, Literal["start", "center", "end", "between"]],
342
363
  ]
343
364
  ] = None,
344
365
  wrap: Optional[
345
366
  Union[
346
- Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
347
- Literal["nowrap", "wrap", "wrap-reverse"],
348
367
  Var[
349
368
  Union[
350
369
  Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
351
370
  Literal["nowrap", "wrap", "wrap-reverse"],
352
371
  ]
353
372
  ],
373
+ Literal["nowrap", "wrap", "wrap-reverse"],
374
+ Breakpoints[str, Literal["nowrap", "wrap", "wrap-reverse"]],
354
375
  ]
355
376
  ] = None,
356
- access_key: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
377
+ access_key: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
357
378
  auto_capitalize: Optional[
358
- Union[Var[Union[bool, int, str]], bool, int, str]
379
+ Union[Var[Union[bool, int, str]], str, int, bool]
359
380
  ] = None,
360
381
  content_editable: Optional[
361
- Union[Var[Union[bool, int, str]], bool, int, str]
382
+ Union[Var[Union[bool, int, str]], str, int, bool]
362
383
  ] = None,
363
384
  context_menu: Optional[
364
- Union[Var[Union[bool, int, str]], bool, int, str]
385
+ Union[Var[Union[bool, int, str]], str, int, bool]
365
386
  ] = None,
366
- dir: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
367
- draggable: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
387
+ dir: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
388
+ draggable: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
368
389
  enter_key_hint: Optional[
369
- Union[Var[Union[bool, int, str]], bool, int, str]
370
- ] = None,
371
- hidden: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
372
- input_mode: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
373
- item_prop: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
374
- lang: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
375
- role: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
376
- slot: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
377
- spell_check: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
378
- tab_index: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
379
- title: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
390
+ Union[Var[Union[bool, int, str]], str, int, bool]
391
+ ] = None,
392
+ hidden: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
393
+ input_mode: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
394
+ item_prop: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
395
+ lang: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
396
+ role: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
397
+ slot: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
398
+ spell_check: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
399
+ tab_index: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
400
+ title: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
380
401
  style: Optional[Style] = None,
381
402
  key: Optional[Any] = None,
382
403
  id: Optional[Any] = None,
383
404
  class_name: Optional[Any] = None,
384
405
  autofocus: Optional[bool] = None,
385
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
386
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
387
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
406
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
407
+ on_blur: Optional[
408
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
409
+ ] = None,
410
+ on_click: Optional[
411
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
412
+ ] = None,
388
413
  on_context_menu: Optional[
389
- Union[EventHandler, EventSpec, list, Callable, Var]
414
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
390
415
  ] = None,
391
416
  on_double_click: Optional[
392
- Union[EventHandler, EventSpec, list, Callable, Var]
417
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
418
+ ] = None,
419
+ on_focus: Optional[
420
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
421
+ ] = None,
422
+ on_mount: Optional[
423
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
393
424
  ] = None,
394
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
395
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
396
425
  on_mouse_down: Optional[
397
- Union[EventHandler, EventSpec, list, Callable, Var]
426
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
398
427
  ] = None,
399
428
  on_mouse_enter: Optional[
400
- Union[EventHandler, EventSpec, list, Callable, Var]
429
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
401
430
  ] = None,
402
431
  on_mouse_leave: Optional[
403
- Union[EventHandler, EventSpec, list, Callable, Var]
432
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
404
433
  ] = None,
405
434
  on_mouse_move: Optional[
406
- Union[EventHandler, EventSpec, list, Callable, Var]
435
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
407
436
  ] = None,
408
437
  on_mouse_out: Optional[
409
- Union[EventHandler, EventSpec, list, Callable, Var]
438
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
410
439
  ] = None,
411
440
  on_mouse_over: Optional[
412
- Union[EventHandler, EventSpec, list, Callable, Var]
441
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
413
442
  ] = None,
414
443
  on_mouse_up: Optional[
415
- Union[EventHandler, EventSpec, list, Callable, Var]
444
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
445
+ ] = None,
446
+ on_scroll: Optional[
447
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
416
448
  ] = None,
417
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
418
449
  on_unmount: Optional[
419
- Union[EventHandler, EventSpec, list, Callable, Var]
450
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
420
451
  ] = None,
421
452
  **props,
422
453
  ) -> "HStack":
@@ -7,7 +7,7 @@ from __future__ import annotations
7
7
 
8
8
  from reflex.components.core.breakpoints import Responsive
9
9
  from reflex.components.el import elements
10
- from reflex.vars.base import Var
10
+ from reflex.vars import Var
11
11
 
12
12
  from ..base import (
13
13
  LiteralAccentColor,