reflex 0.5.10a3__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 (237) hide show
  1. reflex/.templates/jinja/web/pages/utils.js.jinja2 +4 -4
  2. reflex/.templates/jinja/web/utils/context.js.jinja2 +1 -1
  3. reflex/.templates/jinja/web/utils/theme.js.jinja2 +1 -1
  4. reflex/__init__.py +3 -2
  5. reflex/__init__.pyi +2 -2
  6. reflex/app.py +43 -9
  7. reflex/base.py +3 -2
  8. reflex/compiler/compiler.py +6 -6
  9. reflex/compiler/utils.py +5 -3
  10. reflex/components/base/app_wrap.py +2 -4
  11. reflex/components/base/app_wrap.pyi +17 -17
  12. reflex/components/base/bare.py +7 -4
  13. reflex/components/base/body.pyi +17 -17
  14. reflex/components/base/document.pyi +81 -81
  15. reflex/components/base/error_boundary.py +10 -8
  16. reflex/components/base/error_boundary.pyi +20 -19
  17. reflex/components/base/fragment.pyi +17 -17
  18. reflex/components/base/head.pyi +33 -33
  19. reflex/components/base/link.pyi +34 -33
  20. reflex/components/base/meta.pyi +65 -65
  21. reflex/components/base/script.py +2 -1
  22. reflex/components/base/script.pyi +21 -20
  23. reflex/components/component.py +116 -145
  24. reflex/components/core/banner.py +59 -60
  25. reflex/components/core/banner.pyi +86 -150
  26. reflex/components/core/client_side_routing.py +2 -1
  27. reflex/components/core/client_side_routing.pyi +34 -33
  28. reflex/components/core/clipboard.py +2 -2
  29. reflex/components/core/clipboard.pyi +19 -18
  30. reflex/components/core/cond.py +21 -44
  31. reflex/components/core/debounce.py +6 -8
  32. reflex/components/core/debounce.pyi +19 -18
  33. reflex/components/core/foreach.py +5 -14
  34. reflex/components/core/html.pyi +18 -17
  35. reflex/components/core/match.py +36 -43
  36. reflex/components/core/upload.py +32 -25
  37. reflex/components/core/upload.pyi +84 -73
  38. reflex/components/datadisplay/code.py +55 -28
  39. reflex/components/datadisplay/code.pyi +20 -17
  40. reflex/components/datadisplay/dataeditor.py +17 -11
  41. reflex/components/datadisplay/dataeditor.pyi +34 -33
  42. reflex/components/el/__init__.py +0 -1
  43. reflex/components/el/__init__.pyi +0 -11
  44. reflex/components/el/element.pyi +17 -17
  45. reflex/components/el/elements/__init__.py +1 -7
  46. reflex/components/el/elements/__init__.pyi +1 -15
  47. reflex/components/el/elements/base.pyi +18 -17
  48. reflex/components/el/elements/forms.py +24 -31
  49. reflex/components/el/elements/forms.pyi +237 -236
  50. reflex/components/el/elements/inline.pyi +450 -449
  51. reflex/components/el/elements/media.py +0 -21
  52. reflex/components/el/elements/media.pyi +338 -337
  53. reflex/components/el/elements/metadata.py +3 -2
  54. reflex/components/el/elements/metadata.pyi +98 -97
  55. reflex/components/el/elements/other.pyi +114 -113
  56. reflex/components/el/elements/scripts.pyi +50 -49
  57. reflex/components/el/elements/sectioning.pyi +242 -241
  58. reflex/components/el/elements/tables.pyi +162 -161
  59. reflex/components/el/elements/typography.pyi +242 -241
  60. reflex/components/gridjs/datatable.py +13 -14
  61. reflex/components/gridjs/datatable.pyi +34 -33
  62. reflex/components/lucide/icon.py +2 -126
  63. reflex/components/lucide/icon.pyi +34 -142
  64. reflex/components/markdown/markdown.py +30 -35
  65. reflex/components/markdown/markdown.pyi +29 -32
  66. reflex/components/moment/moment.pyi +19 -18
  67. reflex/components/next/base.pyi +17 -17
  68. reflex/components/next/image.py +0 -4
  69. reflex/components/next/image.pyi +20 -19
  70. reflex/components/next/link.pyi +18 -17
  71. reflex/components/next/video.pyi +18 -17
  72. reflex/components/plotly/plotly.py +16 -28
  73. reflex/components/plotly/plotly.pyi +36 -35
  74. reflex/components/props.py +21 -10
  75. reflex/components/radix/__init__.pyi +1 -1
  76. reflex/components/radix/primitives/__init__.pyi +0 -1
  77. reflex/components/radix/primitives/accordion.py +7 -8
  78. reflex/components/radix/primitives/accordion.pyi +117 -116
  79. reflex/components/radix/primitives/base.pyi +34 -33
  80. reflex/components/radix/primitives/drawer.pyi +169 -168
  81. reflex/components/radix/primitives/form.pyi +168 -167
  82. reflex/components/radix/primitives/progress.pyi +82 -81
  83. reflex/components/radix/primitives/slider.pyi +84 -83
  84. reflex/components/radix/themes/base.py +8 -4
  85. reflex/components/radix/themes/base.pyi +114 -113
  86. reflex/components/radix/themes/color_mode.py +12 -21
  87. reflex/components/radix/themes/color_mode.pyi +67 -67
  88. reflex/components/radix/themes/components/__init__.pyi +1 -0
  89. reflex/components/radix/themes/components/alert_dialog.pyi +118 -117
  90. reflex/components/radix/themes/components/aspect_ratio.pyi +18 -17
  91. reflex/components/radix/themes/components/avatar.pyi +18 -17
  92. reflex/components/radix/themes/components/badge.pyi +18 -17
  93. reflex/components/radix/themes/components/button.pyi +18 -17
  94. reflex/components/radix/themes/components/callout.pyi +82 -81
  95. reflex/components/radix/themes/components/card.pyi +18 -17
  96. reflex/components/radix/themes/components/checkbox.py +2 -3
  97. reflex/components/radix/themes/components/checkbox.pyi +53 -52
  98. reflex/components/radix/themes/components/checkbox_cards.pyi +34 -33
  99. reflex/components/radix/themes/components/checkbox_group.pyi +34 -33
  100. reflex/components/radix/themes/components/context_menu.pyi +140 -139
  101. reflex/components/radix/themes/components/data_list.py +5 -0
  102. reflex/components/radix/themes/components/data_list.pyi +71 -65
  103. reflex/components/radix/themes/components/dialog.pyi +121 -120
  104. reflex/components/radix/themes/components/dropdown_menu.pyi +142 -141
  105. reflex/components/radix/themes/components/hover_card.pyi +68 -67
  106. reflex/components/radix/themes/components/icon_button.py +2 -1
  107. reflex/components/radix/themes/components/icon_button.pyi +18 -17
  108. reflex/components/radix/themes/components/inset.pyi +18 -17
  109. reflex/components/radix/themes/components/popover.pyi +73 -72
  110. reflex/components/radix/themes/components/progress.pyi +18 -17
  111. reflex/components/radix/themes/components/radio.pyi +18 -17
  112. reflex/components/radix/themes/components/radio_cards.pyi +35 -34
  113. reflex/components/radix/themes/components/radio_group.py +35 -31
  114. reflex/components/radix/themes/components/radio_group.pyi +73 -66
  115. reflex/components/radix/themes/components/scroll_area.pyi +18 -17
  116. reflex/components/radix/themes/components/segmented_control.pyi +35 -34
  117. reflex/components/radix/themes/components/select.py +2 -1
  118. reflex/components/radix/themes/components/select.pyi +155 -154
  119. reflex/components/radix/themes/components/separator.py +2 -3
  120. reflex/components/radix/themes/components/separator.pyi +18 -17
  121. reflex/components/radix/themes/components/skeleton.pyi +18 -17
  122. reflex/components/radix/themes/components/slider.py +2 -1
  123. reflex/components/radix/themes/components/slider.pyi +20 -19
  124. reflex/components/radix/themes/components/spinner.pyi +18 -17
  125. reflex/components/radix/themes/components/switch.pyi +19 -18
  126. reflex/components/radix/themes/components/table.pyi +114 -113
  127. reflex/components/radix/themes/components/tabs.pyi +84 -83
  128. reflex/components/radix/themes/components/text_area.pyi +21 -20
  129. reflex/components/radix/themes/components/text_field.py +0 -79
  130. reflex/components/radix/themes/components/text_field.pyi +57 -63
  131. reflex/components/radix/themes/components/tooltip.pyi +21 -20
  132. reflex/components/radix/themes/layout/base.pyi +18 -17
  133. reflex/components/radix/themes/layout/box.pyi +18 -17
  134. reflex/components/radix/themes/layout/center.pyi +18 -17
  135. reflex/components/radix/themes/layout/container.py +2 -3
  136. reflex/components/radix/themes/layout/container.pyi +18 -17
  137. reflex/components/radix/themes/layout/flex.pyi +18 -17
  138. reflex/components/radix/themes/layout/grid.pyi +18 -17
  139. reflex/components/radix/themes/layout/list.py +5 -4
  140. reflex/components/radix/themes/layout/list.pyi +86 -85
  141. reflex/components/radix/themes/layout/section.py +2 -3
  142. reflex/components/radix/themes/layout/section.pyi +18 -17
  143. reflex/components/radix/themes/layout/spacer.pyi +18 -17
  144. reflex/components/radix/themes/layout/stack.pyi +50 -49
  145. reflex/components/radix/themes/typography/blockquote.pyi +18 -17
  146. reflex/components/radix/themes/typography/code.pyi +18 -17
  147. reflex/components/radix/themes/typography/heading.pyi +18 -17
  148. reflex/components/radix/themes/typography/link.pyi +18 -17
  149. reflex/components/radix/themes/typography/text.pyi +114 -113
  150. reflex/components/react_player/audio.pyi +34 -33
  151. reflex/components/react_player/react_player.pyi +34 -33
  152. reflex/components/react_player/video.pyi +34 -33
  153. reflex/components/recharts/cartesian.py +23 -19
  154. reflex/components/recharts/cartesian.pyi +297 -296
  155. reflex/components/recharts/charts.py +6 -5
  156. reflex/components/recharts/charts.pyi +179 -178
  157. reflex/components/recharts/general.py +8 -7
  158. reflex/components/recharts/general.pyi +82 -81
  159. reflex/components/recharts/polar.py +14 -13
  160. reflex/components/recharts/polar.pyi +76 -75
  161. reflex/components/recharts/recharts.pyi +33 -33
  162. reflex/components/sonner/toast.py +30 -33
  163. reflex/components/sonner/toast.pyi +27 -25
  164. reflex/components/suneditor/editor.py +2 -1
  165. reflex/components/suneditor/editor.pyi +27 -26
  166. reflex/components/tags/iter_tag.py +16 -16
  167. reflex/components/tags/tag.py +8 -10
  168. reflex/constants/base.py +3 -1
  169. reflex/constants/event.py +1 -0
  170. reflex/event.py +89 -79
  171. reflex/experimental/__init__.py +25 -6
  172. reflex/experimental/client_state.py +34 -58
  173. reflex/experimental/hooks.py +13 -18
  174. reflex/experimental/layout.py +5 -5
  175. reflex/experimental/layout.pyi +84 -83
  176. reflex/{experimental/vars → ivars}/__init__.py +0 -1
  177. reflex/ivars/base.py +2180 -0
  178. reflex/ivars/function.py +200 -0
  179. reflex/ivars/number.py +1137 -0
  180. reflex/ivars/object.py +564 -0
  181. reflex/ivars/sequence.py +1601 -0
  182. reflex/model.py +22 -0
  183. reflex/reflex.py +4 -0
  184. reflex/state.py +388 -73
  185. reflex/style.py +52 -34
  186. reflex/testing.py +8 -3
  187. reflex/utils/exceptions.py +12 -0
  188. reflex/utils/exec.py +0 -14
  189. reflex/utils/format.py +74 -223
  190. reflex/utils/net.py +43 -0
  191. reflex/utils/path_ops.py +13 -1
  192. reflex/utils/prerequisites.py +46 -26
  193. reflex/utils/pyi_generator.py +5 -4
  194. reflex/utils/serializers.py +13 -31
  195. reflex/utils/types.py +44 -9
  196. reflex/vars.py +127 -2230
  197. {reflex-0.5.10a3.dist-info → reflex-0.6.0a1.dist-info}/METADATA +4 -6
  198. reflex-0.6.0a1.dist-info/RECORD +384 -0
  199. reflex/.templates/apps/demo/.gitignore +0 -4
  200. reflex/.templates/apps/demo/assets/favicon.ico +0 -0
  201. reflex/.templates/apps/demo/assets/github.svg +0 -10
  202. reflex/.templates/apps/demo/assets/icon.svg +0 -37
  203. reflex/.templates/apps/demo/assets/logo.svg +0 -68
  204. reflex/.templates/apps/demo/assets/paneleft.svg +0 -13
  205. reflex/.templates/apps/demo/code/__init__.py +0 -1
  206. reflex/.templates/apps/demo/code/demo.py +0 -127
  207. reflex/.templates/apps/demo/code/pages/__init__.py +0 -7
  208. reflex/.templates/apps/demo/code/pages/chatapp.py +0 -31
  209. reflex/.templates/apps/demo/code/pages/datatable.py +0 -360
  210. reflex/.templates/apps/demo/code/pages/forms.py +0 -257
  211. reflex/.templates/apps/demo/code/pages/graphing.py +0 -253
  212. reflex/.templates/apps/demo/code/pages/home.py +0 -56
  213. reflex/.templates/apps/demo/code/sidebar.py +0 -178
  214. reflex/.templates/apps/demo/code/state.py +0 -22
  215. reflex/.templates/apps/demo/code/states/form_state.py +0 -40
  216. reflex/.templates/apps/demo/code/states/pie_state.py +0 -47
  217. reflex/.templates/apps/demo/code/styles.py +0 -68
  218. reflex/.templates/apps/demo/code/webui/__init__.py +0 -0
  219. reflex/.templates/apps/demo/code/webui/components/__init__.py +0 -4
  220. reflex/.templates/apps/demo/code/webui/components/chat.py +0 -118
  221. reflex/.templates/apps/demo/code/webui/components/loading_icon.py +0 -19
  222. reflex/.templates/apps/demo/code/webui/components/modal.py +0 -56
  223. reflex/.templates/apps/demo/code/webui/components/navbar.py +0 -70
  224. reflex/.templates/apps/demo/code/webui/components/sidebar.py +0 -66
  225. reflex/.templates/apps/demo/code/webui/state.py +0 -146
  226. reflex/.templates/apps/demo/code/webui/styles.py +0 -88
  227. reflex/experimental/vars/base.py +0 -583
  228. reflex/experimental/vars/function.py +0 -290
  229. reflex/experimental/vars/number.py +0 -1458
  230. reflex/experimental/vars/object.py +0 -804
  231. reflex/experimental/vars/sequence.py +0 -1764
  232. reflex/utils/watch.py +0 -96
  233. reflex/vars.pyi +0 -218
  234. reflex-0.5.10a3.dist-info/RECORD +0 -413
  235. {reflex-0.5.10a3.dist-info → reflex-0.6.0a1.dist-info}/LICENSE +0 -0
  236. {reflex-0.5.10a3.dist-info → reflex-0.6.0a1.dist-info}/WHEEL +0 -0
  237. {reflex-0.5.10a3.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 import BaseVar, Var
12
12
 
13
13
  class NextDocumentLib(Component):
14
14
  @overload
@@ -21,51 +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,
24
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
25
25
  on_blur: Optional[
26
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
26
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
27
27
  ] = None,
28
28
  on_click: Optional[
29
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
29
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
30
30
  ] = None,
31
31
  on_context_menu: Optional[
32
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
33
33
  ] = None,
34
34
  on_double_click: Optional[
35
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
36
36
  ] = None,
37
37
  on_focus: Optional[
38
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
39
39
  ] = None,
40
40
  on_mount: Optional[
41
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
42
42
  ] = None,
43
43
  on_mouse_down: Optional[
44
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
45
45
  ] = None,
46
46
  on_mouse_enter: Optional[
47
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
48
48
  ] = None,
49
49
  on_mouse_leave: Optional[
50
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
51
51
  ] = None,
52
52
  on_mouse_move: Optional[
53
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
54
54
  ] = None,
55
55
  on_mouse_out: Optional[
56
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
57
57
  ] = None,
58
58
  on_mouse_over: Optional[
59
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
60
60
  ] = None,
61
61
  on_mouse_up: Optional[
62
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
63
63
  ] = None,
64
64
  on_scroll: Optional[
65
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
66
66
  ] = None,
67
67
  on_unmount: Optional[
68
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
69
69
  ] = None,
70
70
  **props,
71
71
  ) -> "NextDocumentLib":
@@ -98,51 +98,51 @@ class Html(NextDocumentLib):
98
98
  id: Optional[Any] = None,
99
99
  class_name: Optional[Any] = None,
100
100
  autofocus: Optional[bool] = None,
101
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
101
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
102
102
  on_blur: Optional[
103
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
103
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
104
104
  ] = None,
105
105
  on_click: Optional[
106
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
106
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
107
107
  ] = None,
108
108
  on_context_menu: Optional[
109
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
109
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
110
110
  ] = None,
111
111
  on_double_click: Optional[
112
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
112
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
113
113
  ] = None,
114
114
  on_focus: Optional[
115
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
115
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
116
116
  ] = None,
117
117
  on_mount: Optional[
118
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
118
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
119
119
  ] = None,
120
120
  on_mouse_down: Optional[
121
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
121
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
122
122
  ] = None,
123
123
  on_mouse_enter: Optional[
124
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
124
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
125
125
  ] = None,
126
126
  on_mouse_leave: Optional[
127
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
127
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
128
128
  ] = None,
129
129
  on_mouse_move: Optional[
130
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
130
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
131
131
  ] = None,
132
132
  on_mouse_out: Optional[
133
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
133
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
134
134
  ] = None,
135
135
  on_mouse_over: Optional[
136
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
136
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
137
137
  ] = None,
138
138
  on_mouse_up: Optional[
139
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
139
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
140
140
  ] = None,
141
141
  on_scroll: Optional[
142
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
142
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
143
143
  ] = None,
144
144
  on_unmount: Optional[
145
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
145
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
146
146
  ] = None,
147
147
  **props,
148
148
  ) -> "Html":
@@ -174,51 +174,51 @@ class DocumentHead(NextDocumentLib):
174
174
  id: Optional[Any] = None,
175
175
  class_name: Optional[Any] = None,
176
176
  autofocus: Optional[bool] = None,
177
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
177
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
178
178
  on_blur: Optional[
179
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
179
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
180
180
  ] = None,
181
181
  on_click: Optional[
182
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
182
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
183
183
  ] = None,
184
184
  on_context_menu: Optional[
185
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
185
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
186
186
  ] = None,
187
187
  on_double_click: Optional[
188
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
188
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
189
189
  ] = None,
190
190
  on_focus: Optional[
191
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
191
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
192
192
  ] = None,
193
193
  on_mount: Optional[
194
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
194
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
195
195
  ] = None,
196
196
  on_mouse_down: Optional[
197
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
197
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
198
198
  ] = None,
199
199
  on_mouse_enter: Optional[
200
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
200
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
201
201
  ] = None,
202
202
  on_mouse_leave: Optional[
203
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
203
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
204
204
  ] = None,
205
205
  on_mouse_move: Optional[
206
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
206
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
207
207
  ] = None,
208
208
  on_mouse_out: Optional[
209
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
209
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
210
210
  ] = None,
211
211
  on_mouse_over: Optional[
212
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
212
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
213
213
  ] = None,
214
214
  on_mouse_up: Optional[
215
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
215
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
216
216
  ] = None,
217
217
  on_scroll: Optional[
218
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
218
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
219
219
  ] = None,
220
220
  on_unmount: Optional[
221
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
221
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
222
222
  ] = None,
223
223
  **props,
224
224
  ) -> "DocumentHead":
@@ -250,51 +250,51 @@ class Main(NextDocumentLib):
250
250
  id: Optional[Any] = None,
251
251
  class_name: Optional[Any] = None,
252
252
  autofocus: Optional[bool] = None,
253
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
253
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
254
254
  on_blur: Optional[
255
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
255
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
256
256
  ] = None,
257
257
  on_click: Optional[
258
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
258
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
259
259
  ] = None,
260
260
  on_context_menu: Optional[
261
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
261
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
262
262
  ] = None,
263
263
  on_double_click: Optional[
264
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
264
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
265
265
  ] = None,
266
266
  on_focus: Optional[
267
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
267
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
268
268
  ] = None,
269
269
  on_mount: Optional[
270
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
270
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
271
271
  ] = None,
272
272
  on_mouse_down: Optional[
273
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
273
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
274
274
  ] = None,
275
275
  on_mouse_enter: Optional[
276
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
276
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
277
277
  ] = None,
278
278
  on_mouse_leave: Optional[
279
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
279
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
280
280
  ] = None,
281
281
  on_mouse_move: Optional[
282
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
282
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
283
283
  ] = None,
284
284
  on_mouse_out: Optional[
285
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
285
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
286
286
  ] = None,
287
287
  on_mouse_over: Optional[
288
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
288
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
289
289
  ] = None,
290
290
  on_mouse_up: Optional[
291
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
291
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
292
292
  ] = None,
293
293
  on_scroll: Optional[
294
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
294
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
295
295
  ] = None,
296
296
  on_unmount: Optional[
297
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
297
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
298
298
  ] = None,
299
299
  **props,
300
300
  ) -> "Main":
@@ -326,51 +326,51 @@ class NextScript(NextDocumentLib):
326
326
  id: Optional[Any] = None,
327
327
  class_name: Optional[Any] = None,
328
328
  autofocus: Optional[bool] = None,
329
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
329
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
330
330
  on_blur: Optional[
331
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
331
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
332
332
  ] = None,
333
333
  on_click: Optional[
334
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
334
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
335
335
  ] = None,
336
336
  on_context_menu: Optional[
337
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
337
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
338
338
  ] = None,
339
339
  on_double_click: Optional[
340
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
340
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
341
341
  ] = None,
342
342
  on_focus: Optional[
343
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
343
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
344
344
  ] = None,
345
345
  on_mount: Optional[
346
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
346
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
347
347
  ] = None,
348
348
  on_mouse_down: Optional[
349
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
349
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
350
350
  ] = None,
351
351
  on_mouse_enter: Optional[
352
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
352
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
353
353
  ] = None,
354
354
  on_mouse_leave: Optional[
355
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
355
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
356
356
  ] = None,
357
357
  on_mouse_move: Optional[
358
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
358
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
359
359
  ] = None,
360
360
  on_mouse_out: Optional[
361
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
361
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
362
362
  ] = None,
363
363
  on_mouse_over: Optional[
364
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
364
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
365
365
  ] = None,
366
366
  on_mouse_up: Optional[
367
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
367
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
368
368
  ] = None,
369
369
  on_scroll: Optional[
370
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
370
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
371
371
  ] = None,
372
372
  on_unmount: Optional[
373
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
373
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
374
374
  ] = None,
375
375
  **props,
376
376
  ) -> "NextScript":
@@ -9,6 +9,8 @@ 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
15
  from reflex.vars import Var
14
16
 
@@ -20,14 +22,14 @@ class ErrorBoundary(Component):
20
22
  tag = "ErrorBoundary"
21
23
 
22
24
  # Fired when the boundary catches an error.
23
- on_error: EventHandler[lambda error, info: [error, info]] = Var.create_safe( # type: ignore
24
- "logFrontendError", _var_is_string=False, _var_is_local=False
25
- ).to(EventChain)
25
+ on_error: EventHandler[lambda error, info: [error, info]] = ImmutableVar( # type: ignore
26
+ "logFrontendError"
27
+ ).to(FunctionVar, EventChain)
26
28
 
27
29
  # Rendered instead of the children when an error is caught.
28
- Fallback_component: Var[Component] = Var.create_safe(
29
- "Fallback", _var_is_string=False, _var_is_local=False
30
- ).to(Component)
30
+ Fallback_component: Var[Component] = ImmutableVar.create_safe("Fallback")._replace(
31
+ _var_type=Component
32
+ )
31
33
 
32
34
  def add_imports(self) -> dict[str, list[ImportVar]]:
33
35
  """Add imports for the component.
@@ -37,7 +39,7 @@ class ErrorBoundary(Component):
37
39
  """
38
40
  return Imports.EVENTS
39
41
 
40
- def add_hooks(self) -> List[str | Var]:
42
+ def add_hooks(self) -> List[str | ImmutableVar]:
41
43
  """Add hooks for the component.
42
44
 
43
45
  Returns:
@@ -56,7 +58,7 @@ class ErrorBoundary(Component):
56
58
  fallback_container = div(
57
59
  p("Ooops...Unknown Reflex error has occured:"),
58
60
  p(
59
- Var.create("error.message", _var_is_local=False, _var_is_string=False),
61
+ ImmutableVar.create("error.message"),
60
62
  color="red",
61
63
  ),
62
64
  p("Please contact the support."),
@@ -7,13 +7,14 @@ 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 import BaseVar, 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
@@ -26,54 +27,54 @@ class ErrorBoundary(Component):
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
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
30
31
  on_blur: Optional[
31
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
32
33
  ] = None,
33
34
  on_click: Optional[
34
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
35
36
  ] = None,
36
37
  on_context_menu: Optional[
37
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
38
39
  ] = None,
39
40
  on_double_click: Optional[
40
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
41
42
  ] = None,
42
43
  on_error: Optional[
43
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
44
45
  ] = None,
45
46
  on_focus: Optional[
46
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
47
48
  ] = None,
48
49
  on_mount: Optional[
49
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
50
51
  ] = None,
51
52
  on_mouse_down: Optional[
52
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
53
54
  ] = None,
54
55
  on_mouse_enter: Optional[
55
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
56
57
  ] = None,
57
58
  on_mouse_leave: Optional[
58
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
59
60
  ] = None,
60
61
  on_mouse_move: Optional[
61
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
62
63
  ] = None,
63
64
  on_mouse_out: Optional[
64
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
65
66
  ] = None,
66
67
  on_mouse_over: Optional[
67
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
68
69
  ] = None,
69
70
  on_mouse_up: Optional[
70
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
71
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
71
72
  ] = None,
72
73
  on_scroll: Optional[
73
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
74
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
74
75
  ] = None,
75
76
  on_unmount: Optional[
76
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
77
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
77
78
  ] = None,
78
79
  **props,
79
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 import BaseVar, Var
12
12
 
13
13
  class Fragment(Component):
14
14
  @overload
@@ -21,51 +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,
24
+ custom_attrs: Optional[Dict[str, Union[ImmutableVar, str]]] = None,
25
25
  on_blur: Optional[
26
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
26
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
27
27
  ] = None,
28
28
  on_click: Optional[
29
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
29
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
30
30
  ] = None,
31
31
  on_context_menu: Optional[
32
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
32
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
33
33
  ] = None,
34
34
  on_double_click: Optional[
35
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
35
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
36
36
  ] = None,
37
37
  on_focus: Optional[
38
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
38
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
39
39
  ] = None,
40
40
  on_mount: Optional[
41
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
41
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
42
42
  ] = None,
43
43
  on_mouse_down: Optional[
44
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
44
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
45
45
  ] = None,
46
46
  on_mouse_enter: Optional[
47
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
47
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
48
48
  ] = None,
49
49
  on_mouse_leave: Optional[
50
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
50
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
51
51
  ] = None,
52
52
  on_mouse_move: Optional[
53
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
53
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
54
54
  ] = None,
55
55
  on_mouse_out: Optional[
56
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
56
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
57
57
  ] = None,
58
58
  on_mouse_over: Optional[
59
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
59
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
60
60
  ] = None,
61
61
  on_mouse_up: Optional[
62
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
62
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
63
63
  ] = None,
64
64
  on_scroll: Optional[
65
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
65
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
66
66
  ] = None,
67
67
  on_unmount: Optional[
68
- Union[EventHandler, EventSpec, list, Callable, BaseVar]
68
+ Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
69
69
  ] = None,
70
70
  **props,
71
71
  ) -> "Fragment":