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,8 @@ from typing import Any, Callable, Dict, Optional, Union, overload
7
7
 
8
8
  from reflex.components.component import Component
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
12
 
13
13
  class NextDocumentLib(Component):
14
14
  @overload
@@ -21,41 +21,51 @@ class NextDocumentLib(Component):
21
21
  id: Optional[Any] = None,
22
22
  class_name: Optional[Any] = None,
23
23
  autofocus: Optional[bool] = None,
24
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
25
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
26
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
24
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
25
+ on_blur: Optional[
26
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
27
+ ] = None,
28
+ on_click: Optional[
29
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
30
+ ] = None,
27
31
  on_context_menu: Optional[
28
- Union[EventHandler, EventSpec, list, Callable, Var]
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
29
33
  ] = None,
30
34
  on_double_click: Optional[
31
- Union[EventHandler, EventSpec, list, Callable, Var]
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
36
+ ] = None,
37
+ on_focus: Optional[
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
39
+ ] = None,
40
+ on_mount: Optional[
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
32
42
  ] = None,
33
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
34
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
35
43
  on_mouse_down: Optional[
36
- Union[EventHandler, EventSpec, list, Callable, Var]
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
37
45
  ] = None,
38
46
  on_mouse_enter: Optional[
39
- Union[EventHandler, EventSpec, list, Callable, Var]
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
40
48
  ] = None,
41
49
  on_mouse_leave: Optional[
42
- Union[EventHandler, EventSpec, list, Callable, Var]
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
43
51
  ] = None,
44
52
  on_mouse_move: Optional[
45
- Union[EventHandler, EventSpec, list, Callable, Var]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
46
54
  ] = None,
47
55
  on_mouse_out: Optional[
48
- Union[EventHandler, EventSpec, list, Callable, Var]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
49
57
  ] = None,
50
58
  on_mouse_over: Optional[
51
- Union[EventHandler, EventSpec, list, Callable, Var]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
52
60
  ] = None,
53
61
  on_mouse_up: Optional[
54
- Union[EventHandler, EventSpec, list, Callable, Var]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
63
+ ] = None,
64
+ on_scroll: Optional[
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
55
66
  ] = None,
56
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
57
67
  on_unmount: Optional[
58
- Union[EventHandler, EventSpec, list, Callable, Var]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
59
69
  ] = None,
60
70
  **props,
61
71
  ) -> "NextDocumentLib":
@@ -88,41 +98,51 @@ class Html(NextDocumentLib):
88
98
  id: Optional[Any] = None,
89
99
  class_name: Optional[Any] = None,
90
100
  autofocus: Optional[bool] = None,
91
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
92
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
93
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
101
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
102
+ on_blur: Optional[
103
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
104
+ ] = None,
105
+ on_click: Optional[
106
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
107
+ ] = None,
94
108
  on_context_menu: Optional[
95
- Union[EventHandler, EventSpec, list, Callable, Var]
109
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
96
110
  ] = None,
97
111
  on_double_click: Optional[
98
- Union[EventHandler, EventSpec, list, Callable, Var]
112
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
113
+ ] = None,
114
+ on_focus: Optional[
115
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
116
+ ] = None,
117
+ on_mount: Optional[
118
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
99
119
  ] = None,
100
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
101
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
102
120
  on_mouse_down: Optional[
103
- Union[EventHandler, EventSpec, list, Callable, Var]
121
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
104
122
  ] = None,
105
123
  on_mouse_enter: Optional[
106
- Union[EventHandler, EventSpec, list, Callable, Var]
124
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
107
125
  ] = None,
108
126
  on_mouse_leave: Optional[
109
- Union[EventHandler, EventSpec, list, Callable, Var]
127
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
110
128
  ] = None,
111
129
  on_mouse_move: Optional[
112
- Union[EventHandler, EventSpec, list, Callable, Var]
130
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
113
131
  ] = None,
114
132
  on_mouse_out: Optional[
115
- Union[EventHandler, EventSpec, list, Callable, Var]
133
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
116
134
  ] = None,
117
135
  on_mouse_over: Optional[
118
- Union[EventHandler, EventSpec, list, Callable, Var]
136
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
119
137
  ] = None,
120
138
  on_mouse_up: Optional[
121
- Union[EventHandler, EventSpec, list, Callable, Var]
139
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
140
+ ] = None,
141
+ on_scroll: Optional[
142
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
122
143
  ] = None,
123
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
124
144
  on_unmount: Optional[
125
- Union[EventHandler, EventSpec, list, Callable, Var]
145
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
126
146
  ] = None,
127
147
  **props,
128
148
  ) -> "Html":
@@ -154,41 +174,51 @@ class DocumentHead(NextDocumentLib):
154
174
  id: Optional[Any] = None,
155
175
  class_name: Optional[Any] = None,
156
176
  autofocus: Optional[bool] = None,
157
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
158
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
159
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
177
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
178
+ on_blur: Optional[
179
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
180
+ ] = None,
181
+ on_click: Optional[
182
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
183
+ ] = None,
160
184
  on_context_menu: Optional[
161
- Union[EventHandler, EventSpec, list, Callable, Var]
185
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
162
186
  ] = None,
163
187
  on_double_click: Optional[
164
- Union[EventHandler, EventSpec, list, Callable, Var]
188
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
189
+ ] = None,
190
+ on_focus: Optional[
191
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
192
+ ] = None,
193
+ on_mount: Optional[
194
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
165
195
  ] = None,
166
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
167
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
168
196
  on_mouse_down: Optional[
169
- Union[EventHandler, EventSpec, list, Callable, Var]
197
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
170
198
  ] = None,
171
199
  on_mouse_enter: Optional[
172
- Union[EventHandler, EventSpec, list, Callable, Var]
200
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
173
201
  ] = None,
174
202
  on_mouse_leave: Optional[
175
- Union[EventHandler, EventSpec, list, Callable, Var]
203
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
176
204
  ] = None,
177
205
  on_mouse_move: Optional[
178
- Union[EventHandler, EventSpec, list, Callable, Var]
206
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
179
207
  ] = None,
180
208
  on_mouse_out: Optional[
181
- Union[EventHandler, EventSpec, list, Callable, Var]
209
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
182
210
  ] = None,
183
211
  on_mouse_over: Optional[
184
- Union[EventHandler, EventSpec, list, Callable, Var]
212
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
185
213
  ] = None,
186
214
  on_mouse_up: Optional[
187
- Union[EventHandler, EventSpec, list, Callable, Var]
215
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
216
+ ] = None,
217
+ on_scroll: Optional[
218
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
188
219
  ] = None,
189
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
190
220
  on_unmount: Optional[
191
- Union[EventHandler, EventSpec, list, Callable, Var]
221
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
192
222
  ] = None,
193
223
  **props,
194
224
  ) -> "DocumentHead":
@@ -220,41 +250,51 @@ class Main(NextDocumentLib):
220
250
  id: Optional[Any] = None,
221
251
  class_name: Optional[Any] = None,
222
252
  autofocus: Optional[bool] = None,
223
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
224
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
225
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
253
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
254
+ on_blur: Optional[
255
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
256
+ ] = None,
257
+ on_click: Optional[
258
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
259
+ ] = None,
226
260
  on_context_menu: Optional[
227
- Union[EventHandler, EventSpec, list, Callable, Var]
261
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
228
262
  ] = None,
229
263
  on_double_click: Optional[
230
- Union[EventHandler, EventSpec, list, Callable, Var]
264
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
265
+ ] = None,
266
+ on_focus: Optional[
267
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
268
+ ] = None,
269
+ on_mount: Optional[
270
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
231
271
  ] = None,
232
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
233
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
234
272
  on_mouse_down: Optional[
235
- Union[EventHandler, EventSpec, list, Callable, Var]
273
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
236
274
  ] = None,
237
275
  on_mouse_enter: Optional[
238
- Union[EventHandler, EventSpec, list, Callable, Var]
276
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
239
277
  ] = None,
240
278
  on_mouse_leave: Optional[
241
- Union[EventHandler, EventSpec, list, Callable, Var]
279
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
242
280
  ] = None,
243
281
  on_mouse_move: Optional[
244
- Union[EventHandler, EventSpec, list, Callable, Var]
282
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
245
283
  ] = None,
246
284
  on_mouse_out: Optional[
247
- Union[EventHandler, EventSpec, list, Callable, Var]
285
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
248
286
  ] = None,
249
287
  on_mouse_over: Optional[
250
- Union[EventHandler, EventSpec, list, Callable, Var]
288
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
251
289
  ] = None,
252
290
  on_mouse_up: Optional[
253
- Union[EventHandler, EventSpec, list, Callable, Var]
291
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
292
+ ] = None,
293
+ on_scroll: Optional[
294
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
254
295
  ] = None,
255
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
256
296
  on_unmount: Optional[
257
- Union[EventHandler, EventSpec, list, Callable, Var]
297
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
258
298
  ] = None,
259
299
  **props,
260
300
  ) -> "Main":
@@ -286,41 +326,51 @@ class NextScript(NextDocumentLib):
286
326
  id: Optional[Any] = None,
287
327
  class_name: Optional[Any] = None,
288
328
  autofocus: Optional[bool] = None,
289
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
290
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
291
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
329
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
330
+ on_blur: Optional[
331
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
332
+ ] = None,
333
+ on_click: Optional[
334
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
335
+ ] = None,
292
336
  on_context_menu: Optional[
293
- Union[EventHandler, EventSpec, list, Callable, Var]
337
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
294
338
  ] = None,
295
339
  on_double_click: Optional[
296
- Union[EventHandler, EventSpec, list, Callable, Var]
340
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
341
+ ] = None,
342
+ on_focus: Optional[
343
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
344
+ ] = None,
345
+ on_mount: Optional[
346
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
297
347
  ] = None,
298
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
299
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
300
348
  on_mouse_down: Optional[
301
- Union[EventHandler, EventSpec, list, Callable, Var]
349
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
302
350
  ] = None,
303
351
  on_mouse_enter: Optional[
304
- Union[EventHandler, EventSpec, list, Callable, Var]
352
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
305
353
  ] = None,
306
354
  on_mouse_leave: Optional[
307
- Union[EventHandler, EventSpec, list, Callable, Var]
355
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
308
356
  ] = None,
309
357
  on_mouse_move: Optional[
310
- Union[EventHandler, EventSpec, list, Callable, Var]
358
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
311
359
  ] = None,
312
360
  on_mouse_out: Optional[
313
- Union[EventHandler, EventSpec, list, Callable, Var]
361
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
314
362
  ] = None,
315
363
  on_mouse_over: Optional[
316
- Union[EventHandler, EventSpec, list, Callable, Var]
364
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
317
365
  ] = None,
318
366
  on_mouse_up: Optional[
319
- Union[EventHandler, EventSpec, list, Callable, Var]
367
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
368
+ ] = None,
369
+ on_scroll: Optional[
370
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
320
371
  ] = None,
321
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
322
372
  on_unmount: Optional[
323
- Union[EventHandler, EventSpec, list, Callable, Var]
373
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
324
374
  ] = None,
325
375
  **props,
326
376
  ) -> "NextScript":
@@ -9,9 +9,10 @@ from reflex.components.component import Component
9
9
  from reflex.components.el import div, p
10
10
  from reflex.constants import Hooks, Imports
11
11
  from reflex.event import EventChain, EventHandler
12
+ from reflex.ivars.base import ImmutableVar
13
+ from reflex.ivars.function import FunctionVar
12
14
  from reflex.utils.imports import ImportVar
13
- from reflex.vars.base import Var
14
- from reflex.vars.function import FunctionVar
15
+ from reflex.vars import Var
15
16
 
16
17
 
17
18
  class ErrorBoundary(Component):
@@ -21,12 +22,12 @@ class ErrorBoundary(Component):
21
22
  tag = "ErrorBoundary"
22
23
 
23
24
  # Fired when the boundary catches an error.
24
- on_error: EventHandler[lambda error, info: [error, info]] = Var( # type: ignore
25
+ on_error: EventHandler[lambda error, info: [error, info]] = ImmutableVar( # type: ignore
25
26
  "logFrontendError"
26
27
  ).to(FunctionVar, EventChain)
27
28
 
28
29
  # Rendered instead of the children when an error is caught.
29
- Fallback_component: Var[Component] = Var(_js_expr="Fallback")._replace(
30
+ Fallback_component: Var[Component] = ImmutableVar.create_safe("Fallback")._replace(
30
31
  _var_type=Component
31
32
  )
32
33
 
@@ -38,7 +39,7 @@ class ErrorBoundary(Component):
38
39
  """
39
40
  return Imports.EVENTS
40
41
 
41
- def add_hooks(self) -> List[str | Var]:
42
+ def add_hooks(self) -> List[str | ImmutableVar]:
42
43
  """Add hooks for the component.
43
44
 
44
45
  Returns:
@@ -57,7 +58,7 @@ class ErrorBoundary(Component):
57
58
  fallback_container = div(
58
59
  p("Ooops...Unknown Reflex error has occured:"),
59
60
  p(
60
- Var(_js_expr="error.message"),
61
+ ImmutableVar.create("error.message"),
61
62
  color="red",
62
63
  ),
63
64
  p("Please contact the support."),
@@ -7,61 +7,74 @@ from typing import Any, Callable, Dict, List, Optional, Union, overload
7
7
 
8
8
  from reflex.components.component import Component
9
9
  from reflex.event import EventHandler, EventSpec
10
+ from reflex.ivars.base import ImmutableVar
10
11
  from reflex.style import Style
11
12
  from reflex.utils.imports import ImportVar
12
- from reflex.vars.base import Var
13
+ from reflex.vars import Var
13
14
 
14
15
  class ErrorBoundary(Component):
15
16
  def add_imports(self) -> dict[str, list[ImportVar]]: ...
16
- def add_hooks(self) -> List[str | Var]: ...
17
+ def add_hooks(self) -> List[str | ImmutableVar]: ...
17
18
  def add_custom_code(self) -> List[str]: ...
18
19
  @overload
19
20
  @classmethod
20
21
  def create( # type: ignore
21
22
  cls,
22
23
  *children,
23
- Fallback_component: Optional[Union[Component, Var[Component]]] = None,
24
+ Fallback_component: Optional[Union[Var[Component], Component]] = None,
24
25
  style: Optional[Style] = None,
25
26
  key: Optional[Any] = None,
26
27
  id: Optional[Any] = None,
27
28
  class_name: Optional[Any] = None,
28
29
  autofocus: Optional[bool] = None,
29
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
30
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
31
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
30
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
31
+ on_blur: Optional[
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
33
+ ] = None,
34
+ on_click: Optional[
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
36
+ ] = None,
32
37
  on_context_menu: Optional[
33
- Union[EventHandler, EventSpec, list, Callable, Var]
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
34
39
  ] = None,
35
40
  on_double_click: Optional[
36
- Union[EventHandler, EventSpec, list, Callable, Var]
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
42
+ ] = None,
43
+ on_error: Optional[
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
45
+ ] = None,
46
+ on_focus: Optional[
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
48
+ ] = None,
49
+ on_mount: Optional[
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
37
51
  ] = None,
38
- on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
39
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
40
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
41
52
  on_mouse_down: Optional[
42
- Union[EventHandler, EventSpec, list, Callable, Var]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
43
54
  ] = None,
44
55
  on_mouse_enter: Optional[
45
- Union[EventHandler, EventSpec, list, Callable, Var]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
46
57
  ] = None,
47
58
  on_mouse_leave: Optional[
48
- Union[EventHandler, EventSpec, list, Callable, Var]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
49
60
  ] = None,
50
61
  on_mouse_move: Optional[
51
- Union[EventHandler, EventSpec, list, Callable, Var]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
52
63
  ] = None,
53
64
  on_mouse_out: Optional[
54
- Union[EventHandler, EventSpec, list, Callable, Var]
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
55
66
  ] = None,
56
67
  on_mouse_over: Optional[
57
- Union[EventHandler, EventSpec, list, Callable, Var]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
58
69
  ] = None,
59
70
  on_mouse_up: Optional[
60
- Union[EventHandler, EventSpec, list, Callable, Var]
71
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
72
+ ] = None,
73
+ on_scroll: Optional[
74
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
61
75
  ] = None,
62
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
63
76
  on_unmount: Optional[
64
- Union[EventHandler, EventSpec, list, Callable, Var]
77
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
65
78
  ] = None,
66
79
  **props,
67
80
  ) -> "ErrorBoundary":
@@ -7,8 +7,8 @@ from typing import Any, Callable, Dict, Optional, Union, overload
7
7
 
8
8
  from reflex.components.component import Component
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
12
 
13
13
  class Fragment(Component):
14
14
  @overload
@@ -21,41 +21,51 @@ class Fragment(Component):
21
21
  id: Optional[Any] = None,
22
22
  class_name: Optional[Any] = None,
23
23
  autofocus: Optional[bool] = None,
24
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
25
- on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
26
- on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
24
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
25
+ on_blur: Optional[
26
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
27
+ ] = None,
28
+ on_click: Optional[
29
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
30
+ ] = None,
27
31
  on_context_menu: Optional[
28
- Union[EventHandler, EventSpec, list, Callable, Var]
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
29
33
  ] = None,
30
34
  on_double_click: Optional[
31
- Union[EventHandler, EventSpec, list, Callable, Var]
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
36
+ ] = None,
37
+ on_focus: Optional[
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
39
+ ] = None,
40
+ on_mount: Optional[
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
32
42
  ] = None,
33
- on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
34
- on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
35
43
  on_mouse_down: Optional[
36
- Union[EventHandler, EventSpec, list, Callable, Var]
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
37
45
  ] = None,
38
46
  on_mouse_enter: Optional[
39
- Union[EventHandler, EventSpec, list, Callable, Var]
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
40
48
  ] = None,
41
49
  on_mouse_leave: Optional[
42
- Union[EventHandler, EventSpec, list, Callable, Var]
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
43
51
  ] = None,
44
52
  on_mouse_move: Optional[
45
- Union[EventHandler, EventSpec, list, Callable, Var]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
46
54
  ] = None,
47
55
  on_mouse_out: Optional[
48
- Union[EventHandler, EventSpec, list, Callable, Var]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
49
57
  ] = None,
50
58
  on_mouse_over: Optional[
51
- Union[EventHandler, EventSpec, list, Callable, Var]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
52
60
  ] = None,
53
61
  on_mouse_up: Optional[
54
- Union[EventHandler, EventSpec, list, Callable, Var]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
63
+ ] = None,
64
+ on_scroll: Optional[
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
55
66
  ] = None,
56
- on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
57
67
  on_unmount: Optional[
58
- Union[EventHandler, EventSpec, list, Callable, Var]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
59
69
  ] = None,
60
70
  **props,
61
71
  ) -> "Fragment":