reflex 0.6.4a3__py3-none-any.whl → 0.6.5a1__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.
Files changed (228) hide show
  1. reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -14
  2. reflex/.templates/jinja/web/pages/utils.js.jinja2 +4 -8
  3. reflex/.templates/web/components/shiki/code.js +16 -11
  4. reflex/.templates/web/utils/state.js +29 -21
  5. reflex/__init__.py +4 -0
  6. reflex/__init__.pyi +4 -0
  7. reflex/app.py +148 -154
  8. reflex/app_mixins/lifespan.py +5 -1
  9. reflex/app_mixins/middleware.py +3 -1
  10. reflex/app_mixins/mixin.py +3 -2
  11. reflex/base.py +2 -4
  12. reflex/compiler/compiler.py +111 -37
  13. reflex/components/base/app_wrap.pyi +17 -17
  14. reflex/components/base/bare.py +72 -3
  15. reflex/components/base/body.pyi +17 -17
  16. reflex/components/base/document.pyi +81 -81
  17. reflex/components/base/error_boundary.pyi +25 -18
  18. reflex/components/base/fragment.pyi +17 -17
  19. reflex/components/base/head.pyi +33 -33
  20. reflex/components/base/link.pyi +33 -33
  21. reflex/components/base/meta.pyi +65 -65
  22. reflex/components/base/script.py +4 -4
  23. reflex/components/base/script.pyi +23 -20
  24. reflex/components/component.py +250 -31
  25. reflex/components/core/banner.py +1 -1
  26. reflex/components/core/banner.pyi +81 -81
  27. reflex/components/core/client_side_routing.pyi +33 -33
  28. reflex/components/core/clipboard.py +2 -2
  29. reflex/components/core/clipboard.pyi +24 -18
  30. reflex/components/core/debounce.py +2 -2
  31. reflex/components/core/debounce.pyi +18 -18
  32. reflex/components/core/html.pyi +17 -17
  33. reflex/components/core/upload.py +82 -28
  34. reflex/components/core/upload.pyi +77 -72
  35. reflex/components/datadisplay/code.py +55 -40
  36. reflex/components/datadisplay/code.pyi +46 -44
  37. reflex/components/datadisplay/dataeditor.py +21 -20
  38. reflex/components/datadisplay/dataeditor.pyi +103 -35
  39. reflex/components/datadisplay/shiki_code_block.py +60 -27
  40. reflex/components/datadisplay/shiki_code_block.pyi +86 -65
  41. reflex/components/dynamic.py +9 -5
  42. reflex/components/el/element.pyi +17 -17
  43. reflex/components/el/elements/base.pyi +17 -17
  44. reflex/components/el/elements/forms.py +12 -3
  45. reflex/components/el/elements/forms.pyi +293 -233
  46. reflex/components/el/elements/inline.pyi +449 -449
  47. reflex/components/el/elements/media.pyi +401 -401
  48. reflex/components/el/elements/metadata.pyi +97 -97
  49. reflex/components/el/elements/other.pyi +113 -113
  50. reflex/components/el/elements/scripts.pyi +49 -49
  51. reflex/components/el/elements/sectioning.pyi +241 -241
  52. reflex/components/el/elements/tables.pyi +161 -161
  53. reflex/components/el/elements/typography.pyi +241 -241
  54. reflex/components/gridjs/datatable.pyi +33 -33
  55. reflex/components/lucide/icon.py +1 -1
  56. reflex/components/lucide/icon.pyi +33 -33
  57. reflex/components/markdown/markdown.py +180 -49
  58. reflex/components/markdown/markdown.pyi +36 -19
  59. reflex/components/moment/moment.py +17 -21
  60. reflex/components/moment/moment.pyi +26 -21
  61. reflex/components/next/base.pyi +17 -17
  62. reflex/components/next/image.py +3 -3
  63. reflex/components/next/image.pyi +21 -19
  64. reflex/components/next/link.pyi +17 -17
  65. reflex/components/next/video.pyi +17 -17
  66. reflex/components/plotly/plotly.py +79 -78
  67. reflex/components/plotly/plotly.pyi +91 -41
  68. reflex/components/props.py +34 -0
  69. reflex/components/radix/primitives/accordion.py +15 -8
  70. reflex/components/radix/primitives/accordion.pyi +121 -118
  71. reflex/components/radix/primitives/base.pyi +33 -33
  72. reflex/components/radix/primitives/drawer.py +41 -20
  73. reflex/components/radix/primitives/drawer.pyi +279 -190
  74. reflex/components/radix/primitives/form.py +2 -2
  75. reflex/components/radix/primitives/form.pyi +200 -167
  76. reflex/components/radix/primitives/progress.pyi +81 -81
  77. reflex/components/radix/primitives/slider.pyi +89 -83
  78. reflex/components/radix/themes/base.py +27 -1
  79. reflex/components/radix/themes/base.pyi +286 -113
  80. reflex/components/radix/themes/color_mode.py +17 -9
  81. reflex/components/radix/themes/color_mode.pyi +68 -56
  82. reflex/components/radix/themes/components/alert_dialog.py +8 -5
  83. reflex/components/radix/themes/components/alert_dialog.pyi +125 -117
  84. reflex/components/radix/themes/components/aspect_ratio.pyi +17 -17
  85. reflex/components/radix/themes/components/avatar.py +1 -5
  86. reflex/components/radix/themes/components/avatar.pyi +17 -17
  87. reflex/components/radix/themes/components/badge.py +1 -5
  88. reflex/components/radix/themes/components/badge.pyi +17 -17
  89. reflex/components/radix/themes/components/button.pyi +18 -21
  90. reflex/components/radix/themes/components/callout.py +1 -4
  91. reflex/components/radix/themes/components/callout.pyi +81 -81
  92. reflex/components/radix/themes/components/card.py +1 -3
  93. reflex/components/radix/themes/components/card.pyi +17 -17
  94. reflex/components/radix/themes/components/checkbox.py +4 -8
  95. reflex/components/radix/themes/components/checkbox.pyi +61 -52
  96. reflex/components/radix/themes/components/checkbox_cards.pyi +33 -33
  97. reflex/components/radix/themes/components/checkbox_group.pyi +33 -33
  98. reflex/components/radix/themes/components/context_menu.py +121 -28
  99. reflex/components/radix/themes/components/context_menu.pyi +250 -147
  100. reflex/components/radix/themes/components/data_list.pyi +65 -65
  101. reflex/components/radix/themes/components/dialog.py +11 -11
  102. reflex/components/radix/themes/components/dialog.pyi +135 -120
  103. reflex/components/radix/themes/components/dropdown_menu.py +14 -25
  104. reflex/components/radix/themes/components/dropdown_menu.pyi +157 -145
  105. reflex/components/radix/themes/components/hover_card.py +19 -7
  106. reflex/components/radix/themes/components/hover_card.pyi +102 -67
  107. reflex/components/radix/themes/components/icon_button.pyi +18 -21
  108. reflex/components/radix/themes/components/inset.py +1 -3
  109. reflex/components/radix/themes/components/inset.pyi +17 -17
  110. reflex/components/radix/themes/components/popover.py +22 -13
  111. reflex/components/radix/themes/components/popover.pyi +98 -72
  112. reflex/components/radix/themes/components/progress.pyi +17 -17
  113. reflex/components/radix/themes/components/radio.pyi +17 -17
  114. reflex/components/radix/themes/components/radio_cards.py +2 -2
  115. reflex/components/radix/themes/components/radio_cards.pyi +37 -34
  116. reflex/components/radix/themes/components/radio_group.py +3 -7
  117. reflex/components/radix/themes/components/radio_group.pyi +69 -66
  118. reflex/components/radix/themes/components/scroll_area.py +1 -3
  119. reflex/components/radix/themes/components/scroll_area.pyi +17 -17
  120. reflex/components/radix/themes/components/segmented_control.pyi +37 -34
  121. reflex/components/radix/themes/components/select.py +7 -11
  122. reflex/components/radix/themes/components/select.pyi +175 -154
  123. reflex/components/radix/themes/components/separator.py +1 -4
  124. reflex/components/radix/themes/components/separator.pyi +17 -17
  125. reflex/components/radix/themes/components/skeleton.pyi +17 -17
  126. reflex/components/radix/themes/components/slider.py +12 -21
  127. reflex/components/radix/themes/components/slider.pyi +47 -25
  128. reflex/components/radix/themes/components/spinner.py +1 -4
  129. reflex/components/radix/themes/components/spinner.pyi +17 -17
  130. reflex/components/radix/themes/components/switch.py +3 -6
  131. reflex/components/radix/themes/components/switch.pyi +21 -18
  132. reflex/components/radix/themes/components/table.py +21 -5
  133. reflex/components/radix/themes/components/table.pyi +392 -116
  134. reflex/components/radix/themes/components/tabs.py +3 -6
  135. reflex/components/radix/themes/components/tabs.pyi +89 -83
  136. reflex/components/radix/themes/components/text_area.py +1 -5
  137. reflex/components/radix/themes/components/text_area.pyi +43 -20
  138. reflex/components/radix/themes/components/text_field.py +1 -5
  139. reflex/components/radix/themes/components/text_field.pyi +101 -55
  140. reflex/components/radix/themes/components/tooltip.py +5 -7
  141. reflex/components/radix/themes/components/tooltip.pyi +25 -22
  142. reflex/components/radix/themes/layout/base.py +2 -27
  143. reflex/components/radix/themes/layout/base.pyi +82 -82
  144. reflex/components/radix/themes/layout/box.pyi +17 -17
  145. reflex/components/radix/themes/layout/center.pyi +17 -17
  146. reflex/components/radix/themes/layout/container.pyi +17 -17
  147. reflex/components/radix/themes/layout/flex.py +1 -6
  148. reflex/components/radix/themes/layout/flex.pyi +17 -17
  149. reflex/components/radix/themes/layout/grid.py +1 -6
  150. reflex/components/radix/themes/layout/grid.pyi +17 -17
  151. reflex/components/radix/themes/layout/list.py +20 -15
  152. reflex/components/radix/themes/layout/list.pyi +175 -92
  153. reflex/components/radix/themes/layout/section.pyi +17 -17
  154. reflex/components/radix/themes/layout/spacer.pyi +17 -17
  155. reflex/components/radix/themes/layout/stack.py +6 -6
  156. reflex/components/radix/themes/layout/stack.pyi +91 -62
  157. reflex/components/radix/themes/typography/blockquote.py +2 -8
  158. reflex/components/radix/themes/typography/blockquote.pyi +17 -17
  159. reflex/components/radix/themes/typography/code.py +4 -10
  160. reflex/components/radix/themes/typography/code.pyi +19 -18
  161. reflex/components/radix/themes/typography/heading.py +4 -11
  162. reflex/components/radix/themes/typography/heading.pyi +19 -18
  163. reflex/components/radix/themes/typography/link.py +4 -10
  164. reflex/components/radix/themes/typography/link.pyi +19 -18
  165. reflex/components/radix/themes/typography/text.py +4 -11
  166. reflex/components/radix/themes/typography/text.pyi +115 -114
  167. reflex/components/react_player/audio.pyi +58 -33
  168. reflex/components/react_player/react_player.py +17 -17
  169. reflex/components/react_player/react_player.pyi +55 -33
  170. reflex/components/react_player/video.pyi +58 -33
  171. reflex/components/recharts/cartesian.py +45 -45
  172. reflex/components/recharts/cartesian.pyi +389 -304
  173. reflex/components/recharts/charts.py +22 -22
  174. reflex/components/recharts/charts.pyi +226 -179
  175. reflex/components/recharts/general.py +26 -27
  176. reflex/components/recharts/general.pyi +106 -99
  177. reflex/components/recharts/polar.py +33 -33
  178. reflex/components/recharts/polar.pyi +70 -64
  179. reflex/components/recharts/recharts.pyi +33 -33
  180. reflex/components/sonner/toast.py +9 -36
  181. reflex/components/sonner/toast.pyi +20 -24
  182. reflex/components/suneditor/editor.py +8 -8
  183. reflex/components/suneditor/editor.pyi +50 -25
  184. reflex/components/tags/iter_tag.py +1 -10
  185. reflex/components/tags/tag.py +1 -4
  186. reflex/config.py +198 -35
  187. reflex/constants/__init__.py +4 -16
  188. reflex/constants/base.py +7 -14
  189. reflex/constants/colors.py +0 -1
  190. reflex/constants/installer.py +12 -7
  191. reflex/constants/state.py +4 -0
  192. reflex/custom_components/custom_components.py +6 -6
  193. reflex/event.py +486 -241
  194. reflex/experimental/client_state.py +9 -9
  195. reflex/experimental/layout.py +2 -2
  196. reflex/experimental/layout.pyi +95 -87
  197. reflex/experimental/misc.py +1 -1
  198. reflex/istate/__init__.py +1 -0
  199. reflex/istate/proxy.py +33 -0
  200. reflex/istate/wrappers.py +27 -0
  201. reflex/model.py +7 -7
  202. reflex/page.py +2 -1
  203. reflex/reflex.py +142 -8
  204. reflex/state.py +127 -46
  205. reflex/testing.py +9 -7
  206. reflex/utils/console.py +0 -1
  207. reflex/utils/exceptions.py +31 -3
  208. reflex/utils/exec.py +33 -14
  209. reflex/utils/format.py +15 -12
  210. reflex/utils/net.py +1 -1
  211. reflex/utils/path_ops.py +2 -2
  212. reflex/utils/prerequisites.py +82 -46
  213. reflex/utils/pyi_generator.py +63 -20
  214. reflex/utils/registry.py +1 -1
  215. reflex/utils/serializers.py +75 -36
  216. reflex/utils/telemetry.py +3 -2
  217. reflex/utils/types.py +125 -10
  218. reflex/vars/base.py +131 -119
  219. reflex/vars/function.py +59 -12
  220. reflex/vars/number.py +3 -1
  221. reflex/vars/object.py +30 -24
  222. reflex/vars/sequence.py +7 -7
  223. {reflex-0.6.4a3.dist-info → reflex-0.6.5a1.dist-info}/METADATA +3 -3
  224. reflex-0.6.5a1.dist-info/RECORD +394 -0
  225. reflex-0.6.4a3.dist-info/RECORD +0 -391
  226. {reflex-0.6.4a3.dist-info → reflex-0.6.5a1.dist-info}/LICENSE +0 -0
  227. {reflex-0.6.4a3.dist-info → reflex-0.6.5a1.dist-info}/WHEEL +0 -0
  228. {reflex-0.6.4a3.dist-info → reflex-0.6.5a1.dist-info}/entry_points.txt +0 -0
@@ -8,7 +8,7 @@ from typing import Any, Dict, Literal, Optional, Union, overload
8
8
  from reflex.components.component import ComponentNamespace
9
9
  from reflex.components.core.breakpoints import Breakpoints
10
10
  from reflex.components.el import elements
11
- from reflex.event import EventType
11
+ from reflex.event import BASE_STATE, EventType
12
12
  from reflex.style import Style
13
13
  from reflex.vars.base import Var
14
14
 
@@ -22,28 +22,31 @@ class PopoverRoot(RadixThemesComponent):
22
22
  *children,
23
23
  open: Optional[Union[Var[bool], bool]] = None,
24
24
  modal: Optional[Union[Var[bool], bool]] = None,
25
+ default_open: Optional[Union[Var[bool], bool]] = None,
25
26
  style: Optional[Style] = None,
26
27
  key: Optional[Any] = None,
27
28
  id: Optional[Any] = None,
28
29
  class_name: Optional[Any] = None,
29
30
  autofocus: Optional[bool] = None,
30
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
31
- on_blur: Optional[EventType[[]]] = None,
32
- on_click: Optional[EventType[[]]] = None,
33
- on_context_menu: Optional[EventType[[]]] = None,
34
- on_double_click: Optional[EventType[[]]] = None,
35
- on_focus: Optional[EventType[[]]] = None,
36
- on_mount: Optional[EventType[[]]] = None,
37
- on_mouse_down: Optional[EventType[[]]] = None,
38
- on_mouse_enter: Optional[EventType[[]]] = None,
39
- on_mouse_leave: Optional[EventType[[]]] = None,
40
- on_mouse_move: Optional[EventType[[]]] = None,
41
- on_mouse_out: Optional[EventType[[]]] = None,
42
- on_mouse_over: Optional[EventType[[]]] = None,
43
- on_mouse_up: Optional[EventType[[]]] = None,
44
- on_open_change: Optional[EventType[bool]] = None,
45
- on_scroll: Optional[EventType[[]]] = None,
46
- on_unmount: Optional[EventType[[]]] = None,
31
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
32
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
33
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
34
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
35
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
36
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
37
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
38
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
39
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
40
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
41
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
42
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
43
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
44
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
45
+ on_open_change: Optional[
46
+ Union[EventType[[], BASE_STATE], EventType[[bool], BASE_STATE]]
47
+ ] = None,
48
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
49
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
47
50
  **props,
48
51
  ) -> "PopoverRoot":
49
52
  """Create a new component instance.
@@ -55,6 +58,8 @@ class PopoverRoot(RadixThemesComponent):
55
58
  *children: Child components.
56
59
  open: The controlled open state of the popover.
57
60
  modal: The modality of the popover. When set to true, interaction with outside elements will be disabled and only popover content will be visible to screen readers.
61
+ on_open_change: Fired when the open state changes.
62
+ default_open: The open state of the popover when it is initially rendered. Use when you do not need to control its open state.
58
63
  style: The style of the component.
59
64
  key: A unique key for the component.
60
65
  id: The id for the component.
@@ -79,22 +84,22 @@ class PopoverTrigger(RadixThemesTriggerComponent):
79
84
  id: Optional[Any] = None,
80
85
  class_name: Optional[Any] = None,
81
86
  autofocus: Optional[bool] = None,
82
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
83
- on_blur: Optional[EventType[[]]] = None,
84
- on_click: Optional[EventType[[]]] = None,
85
- on_context_menu: Optional[EventType[[]]] = None,
86
- on_double_click: Optional[EventType[[]]] = None,
87
- on_focus: Optional[EventType[[]]] = None,
88
- on_mount: Optional[EventType[[]]] = None,
89
- on_mouse_down: Optional[EventType[[]]] = None,
90
- on_mouse_enter: Optional[EventType[[]]] = None,
91
- on_mouse_leave: Optional[EventType[[]]] = None,
92
- on_mouse_move: Optional[EventType[[]]] = None,
93
- on_mouse_out: Optional[EventType[[]]] = None,
94
- on_mouse_over: Optional[EventType[[]]] = None,
95
- on_mouse_up: Optional[EventType[[]]] = None,
96
- on_scroll: Optional[EventType[[]]] = None,
97
- on_unmount: Optional[EventType[[]]] = None,
87
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
88
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
89
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
90
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
91
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
92
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
93
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
94
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
95
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
96
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
97
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
98
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
99
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
100
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
101
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
102
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
98
103
  **props,
99
104
  ) -> "PopoverTrigger":
100
105
  """Create a new RadixThemesTriggerComponent instance.
@@ -141,6 +146,18 @@ class PopoverContent(elements.Div, RadixThemesComponent):
141
146
  ] = None,
142
147
  align_offset: Optional[Union[Var[int], int]] = None,
143
148
  avoid_collisions: Optional[Union[Var[bool], bool]] = None,
149
+ collision_padding: Optional[
150
+ Union[
151
+ Dict[str, Union[float, int]],
152
+ Var[Union[Dict[str, Union[float, int]], float, int]],
153
+ float,
154
+ int,
155
+ ]
156
+ ] = None,
157
+ sticky: Optional[
158
+ Union[Literal["always", "partial"], Var[Literal["always", "partial"]]]
159
+ ] = None,
160
+ hide_when_detached: Optional[Union[Var[bool], bool]] = None,
144
161
  access_key: Optional[Union[Var[Union[bool, int, str]], bool, int, str]] = None,
145
162
  auto_capitalize: Optional[
146
163
  Union[Var[Union[bool, int, str]], bool, int, str]
@@ -170,28 +187,28 @@ class PopoverContent(elements.Div, RadixThemesComponent):
170
187
  id: Optional[Any] = None,
171
188
  class_name: Optional[Any] = None,
172
189
  autofocus: Optional[bool] = None,
173
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
174
- on_blur: Optional[EventType[[]]] = None,
175
- on_click: Optional[EventType[[]]] = None,
176
- on_close_auto_focus: Optional[EventType[[]]] = None,
177
- on_context_menu: Optional[EventType[[]]] = None,
178
- on_double_click: Optional[EventType[[]]] = None,
179
- on_escape_key_down: Optional[EventType[[]]] = None,
180
- on_focus: Optional[EventType[[]]] = None,
181
- on_focus_outside: Optional[EventType[[]]] = None,
182
- on_interact_outside: Optional[EventType[[]]] = None,
183
- on_mount: Optional[EventType[[]]] = None,
184
- on_mouse_down: Optional[EventType[[]]] = None,
185
- on_mouse_enter: Optional[EventType[[]]] = None,
186
- on_mouse_leave: Optional[EventType[[]]] = None,
187
- on_mouse_move: Optional[EventType[[]]] = None,
188
- on_mouse_out: Optional[EventType[[]]] = None,
189
- on_mouse_over: Optional[EventType[[]]] = None,
190
- on_mouse_up: Optional[EventType[[]]] = None,
191
- on_open_auto_focus: Optional[EventType[[]]] = None,
192
- on_pointer_down_outside: Optional[EventType[[]]] = None,
193
- on_scroll: Optional[EventType[[]]] = None,
194
- on_unmount: Optional[EventType[[]]] = None,
190
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
191
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
192
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
193
+ on_close_auto_focus: Optional[EventType[[], BASE_STATE]] = None,
194
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
195
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
196
+ on_escape_key_down: Optional[EventType[[], BASE_STATE]] = None,
197
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
198
+ on_focus_outside: Optional[EventType[[], BASE_STATE]] = None,
199
+ on_interact_outside: Optional[EventType[[], BASE_STATE]] = None,
200
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
201
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
202
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
203
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
204
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
205
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
206
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
207
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
208
+ on_open_auto_focus: Optional[EventType[[], BASE_STATE]] = None,
209
+ on_pointer_down_outside: Optional[EventType[[], BASE_STATE]] = None,
210
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
211
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
195
212
  **props,
196
213
  ) -> "PopoverContent":
197
214
  """Create a new component instance.
@@ -207,6 +224,15 @@ class PopoverContent(elements.Div, RadixThemesComponent):
207
224
  align: The preferred alignment against the anchor. May change when collisions occur.
208
225
  align_offset: The vertical distance in pixels from the anchor.
209
226
  avoid_collisions: When true, overrides the side andalign preferences to prevent collisions with boundary edges.
227
+ collision_padding: The distance in pixels from the boundary edges where collision detection should occur. Accepts a number (same for all sides), or a partial padding object, for example: { "top": 20, "left": 20 }. Defaults to 0.
228
+ sticky: The sticky behavior on the align axis. "partial" will keep the content in the boundary as long as the trigger is at least partially in the boundary whilst "always" will keep the content in the boundary regardless. Defaults to "partial".
229
+ hide_when_detached: Whether to hide the content when the trigger becomes fully occluded. Defaults to False.
230
+ on_open_auto_focus: Fired when the dialog is opened.
231
+ on_close_auto_focus: Fired when the dialog is closed.
232
+ on_escape_key_down: Fired when the escape key is pressed.
233
+ on_pointer_down_outside: Fired when the pointer is down outside the dialog.
234
+ on_focus_outside: Fired when focus moves outside the dialog.
235
+ on_interact_outside: Fired when the pointer interacts outside the dialog.
210
236
  access_key: Provides a hint for generating a keyboard shortcut for the current element.
211
237
  auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
212
238
  content_editable: Indicates whether the element's content is editable.
@@ -247,22 +273,22 @@ class PopoverClose(RadixThemesTriggerComponent):
247
273
  id: Optional[Any] = None,
248
274
  class_name: Optional[Any] = None,
249
275
  autofocus: Optional[bool] = None,
250
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
251
- on_blur: Optional[EventType[[]]] = None,
252
- on_click: Optional[EventType[[]]] = None,
253
- on_context_menu: Optional[EventType[[]]] = None,
254
- on_double_click: Optional[EventType[[]]] = None,
255
- on_focus: Optional[EventType[[]]] = None,
256
- on_mount: Optional[EventType[[]]] = None,
257
- on_mouse_down: Optional[EventType[[]]] = None,
258
- on_mouse_enter: Optional[EventType[[]]] = None,
259
- on_mouse_leave: Optional[EventType[[]]] = None,
260
- on_mouse_move: Optional[EventType[[]]] = None,
261
- on_mouse_out: Optional[EventType[[]]] = None,
262
- on_mouse_over: Optional[EventType[[]]] = None,
263
- on_mouse_up: Optional[EventType[[]]] = None,
264
- on_scroll: Optional[EventType[[]]] = None,
265
- on_unmount: Optional[EventType[[]]] = None,
276
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
277
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
278
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
279
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
280
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
281
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
282
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
283
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
284
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
285
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
286
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
287
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
288
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
289
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
290
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
291
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
266
292
  **props,
267
293
  ) -> "PopoverClose":
268
294
  """Create a new RadixThemesTriggerComponent instance.
@@ -6,7 +6,7 @@
6
6
  from typing import Any, Dict, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.core.breakpoints import Breakpoints
9
- from reflex.event import EventType
9
+ from reflex.event import BASE_STATE, EventType
10
10
  from reflex.style import Style
11
11
  from reflex.vars.base import Var
12
12
 
@@ -113,22 +113,22 @@ class Progress(RadixThemesComponent):
113
113
  id: Optional[Any] = None,
114
114
  class_name: Optional[Any] = None,
115
115
  autofocus: Optional[bool] = None,
116
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
117
- on_blur: Optional[EventType[[]]] = None,
118
- on_click: Optional[EventType[[]]] = None,
119
- on_context_menu: Optional[EventType[[]]] = None,
120
- on_double_click: Optional[EventType[[]]] = None,
121
- on_focus: Optional[EventType[[]]] = None,
122
- on_mount: Optional[EventType[[]]] = None,
123
- on_mouse_down: Optional[EventType[[]]] = None,
124
- on_mouse_enter: Optional[EventType[[]]] = None,
125
- on_mouse_leave: Optional[EventType[[]]] = None,
126
- on_mouse_move: Optional[EventType[[]]] = None,
127
- on_mouse_out: Optional[EventType[[]]] = None,
128
- on_mouse_over: Optional[EventType[[]]] = None,
129
- on_mouse_up: Optional[EventType[[]]] = None,
130
- on_scroll: Optional[EventType[[]]] = None,
131
- on_unmount: Optional[EventType[[]]] = None,
116
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
117
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
118
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
119
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
120
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
121
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
122
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
123
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
124
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
125
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
126
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
127
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
128
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
129
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
130
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
131
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
132
132
  **props,
133
133
  ) -> "Progress":
134
134
  """Create a Progress component.
@@ -6,7 +6,7 @@
6
6
  from typing import Any, Dict, Literal, Optional, Union, overload
7
7
 
8
8
  from reflex.components.core.breakpoints import Breakpoints
9
- from reflex.event import EventType
9
+ from reflex.event import BASE_STATE, EventType
10
10
  from reflex.style import Style
11
11
  from reflex.vars.base import Var
12
12
 
@@ -103,22 +103,22 @@ class Radio(RadixThemesComponent):
103
103
  id: Optional[Any] = None,
104
104
  class_name: Optional[Any] = None,
105
105
  autofocus: Optional[bool] = None,
106
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
107
- on_blur: Optional[EventType[[]]] = None,
108
- on_click: Optional[EventType[[]]] = None,
109
- on_context_menu: Optional[EventType[[]]] = None,
110
- on_double_click: Optional[EventType[[]]] = None,
111
- on_focus: Optional[EventType[[]]] = None,
112
- on_mount: Optional[EventType[[]]] = None,
113
- on_mouse_down: Optional[EventType[[]]] = None,
114
- on_mouse_enter: Optional[EventType[[]]] = None,
115
- on_mouse_leave: Optional[EventType[[]]] = None,
116
- on_mouse_move: Optional[EventType[[]]] = None,
117
- on_mouse_out: Optional[EventType[[]]] = None,
118
- on_mouse_over: Optional[EventType[[]]] = None,
119
- on_mouse_up: Optional[EventType[[]]] = None,
120
- on_scroll: Optional[EventType[[]]] = None,
121
- on_unmount: Optional[EventType[[]]] = None,
106
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
107
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
108
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
109
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
110
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
111
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
112
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
113
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
114
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
115
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
116
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
117
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
118
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
119
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
120
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
121
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
122
122
  **props,
123
123
  ) -> "Radio":
124
124
  """Create a new component instance.
@@ -4,7 +4,7 @@ from types import SimpleNamespace
4
4
  from typing import Literal, Union
5
5
 
6
6
  from reflex.components.core.breakpoints import Responsive
7
- from reflex.event import EventHandler, identity_event
7
+ from reflex.event import EventHandler, passthrough_event_spec
8
8
  from reflex.vars.base import Var
9
9
 
10
10
  from ..base import LiteralAccentColor, RadixThemesComponent
@@ -65,7 +65,7 @@ class RadioCardsRoot(RadixThemesComponent):
65
65
  loop: Var[bool]
66
66
 
67
67
  # Event handler called when the value changes.
68
- on_value_change: EventHandler[identity_event(str)]
68
+ on_value_change: EventHandler[passthrough_event_spec(str)]
69
69
 
70
70
 
71
71
  class RadioCardsItem(RadixThemesComponent):
@@ -7,7 +7,7 @@ from types import SimpleNamespace
7
7
  from typing import Any, Dict, Literal, Optional, Union, overload
8
8
 
9
9
  from reflex.components.core.breakpoints import Breakpoints
10
- from reflex.event import EventType
10
+ from reflex.event import BASE_STATE, EventType
11
11
  from reflex.style import Style
12
12
  from reflex.vars.base import Var
13
13
 
@@ -161,23 +161,25 @@ class RadioCardsRoot(RadixThemesComponent):
161
161
  id: Optional[Any] = None,
162
162
  class_name: Optional[Any] = None,
163
163
  autofocus: Optional[bool] = None,
164
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
165
- on_blur: Optional[EventType[[]]] = None,
166
- on_click: Optional[EventType[[]]] = None,
167
- on_context_menu: Optional[EventType[[]]] = None,
168
- on_double_click: Optional[EventType[[]]] = None,
169
- on_focus: Optional[EventType[[]]] = None,
170
- on_mount: Optional[EventType[[]]] = None,
171
- on_mouse_down: Optional[EventType[[]]] = None,
172
- on_mouse_enter: Optional[EventType[[]]] = None,
173
- on_mouse_leave: Optional[EventType[[]]] = None,
174
- on_mouse_move: Optional[EventType[[]]] = None,
175
- on_mouse_out: Optional[EventType[[]]] = None,
176
- on_mouse_over: Optional[EventType[[]]] = None,
177
- on_mouse_up: Optional[EventType[[]]] = None,
178
- on_scroll: Optional[EventType[[]]] = None,
179
- on_unmount: Optional[EventType[[]]] = None,
180
- on_value_change: Optional[EventType[str]] = None,
164
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
165
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
166
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
167
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
168
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
169
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
170
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
171
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
172
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
173
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
174
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
175
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
176
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
177
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
178
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
179
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
180
+ on_value_change: Optional[
181
+ Union[EventType[[], BASE_STATE], EventType[[str], BASE_STATE]]
182
+ ] = None,
181
183
  **props,
182
184
  ) -> "RadioCardsRoot":
183
185
  """Create a new component instance.
@@ -201,6 +203,7 @@ class RadioCardsRoot(RadixThemesComponent):
201
203
  orientation: The orientation of the component.
202
204
  dir: The reading direction of the radio group. If omitted, inherits globally from DirectionProvider or assumes LTR (left-to-right) reading mode.
203
205
  loop: When true, keyboard navigation will loop from last item to first, and vice versa.
206
+ on_value_change: Event handler called when the value changes.
204
207
  style: The style of the component.
205
208
  key: A unique key for the component.
206
209
  id: The id for the component.
@@ -229,22 +232,22 @@ class RadioCardsItem(RadixThemesComponent):
229
232
  id: Optional[Any] = None,
230
233
  class_name: Optional[Any] = None,
231
234
  autofocus: Optional[bool] = None,
232
- custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
233
- on_blur: Optional[EventType[[]]] = None,
234
- on_click: Optional[EventType[[]]] = None,
235
- on_context_menu: Optional[EventType[[]]] = None,
236
- on_double_click: Optional[EventType[[]]] = None,
237
- on_focus: Optional[EventType[[]]] = None,
238
- on_mount: Optional[EventType[[]]] = None,
239
- on_mouse_down: Optional[EventType[[]]] = None,
240
- on_mouse_enter: Optional[EventType[[]]] = None,
241
- on_mouse_leave: Optional[EventType[[]]] = None,
242
- on_mouse_move: Optional[EventType[[]]] = None,
243
- on_mouse_out: Optional[EventType[[]]] = None,
244
- on_mouse_over: Optional[EventType[[]]] = None,
245
- on_mouse_up: Optional[EventType[[]]] = None,
246
- on_scroll: Optional[EventType[[]]] = None,
247
- on_unmount: Optional[EventType[[]]] = None,
235
+ custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
236
+ on_blur: Optional[EventType[[], BASE_STATE]] = None,
237
+ on_click: Optional[EventType[[], BASE_STATE]] = None,
238
+ on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
239
+ on_double_click: Optional[EventType[[], BASE_STATE]] = None,
240
+ on_focus: Optional[EventType[[], BASE_STATE]] = None,
241
+ on_mount: Optional[EventType[[], BASE_STATE]] = None,
242
+ on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
243
+ on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
244
+ on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
245
+ on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
246
+ on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
247
+ on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
248
+ on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
249
+ on_scroll: Optional[EventType[[], BASE_STATE]] = None,
250
+ on_unmount: Optional[EventType[[], BASE_STATE]] = None,
248
251
  **props,
249
252
  ) -> "RadioCardsItem":
250
253
  """Create a new component instance.
@@ -9,16 +9,12 @@ from reflex.components.component import Component, ComponentNamespace
9
9
  from reflex.components.core.breakpoints import Responsive
10
10
  from reflex.components.radix.themes.layout.flex import Flex
11
11
  from reflex.components.radix.themes.typography.text import Text
12
- from reflex.event import EventHandler, identity_event
12
+ from reflex.event import EventHandler, passthrough_event_spec
13
13
  from reflex.utils import types
14
14
  from reflex.vars.base import LiteralVar, Var
15
15
  from reflex.vars.sequence import StringVar
16
16
 
17
- from ..base import (
18
- LiteralAccentColor,
19
- LiteralSpacing,
20
- RadixThemesComponent,
21
- )
17
+ from ..base import LiteralAccentColor, LiteralSpacing, RadixThemesComponent
22
18
 
23
19
  LiteralFlexDirection = Literal["row", "column", "row-reverse", "column-reverse"]
24
20
 
@@ -59,7 +55,7 @@ class RadioGroupRoot(RadixThemesComponent):
59
55
  _rename_props = {"onChange": "onValueChange"}
60
56
 
61
57
  # Fired when the value of the radio group changes.
62
- on_change: EventHandler[identity_event(str)]
58
+ on_change: EventHandler[passthrough_event_spec(str)]
63
59
 
64
60
 
65
61
  class RadioGroupItem(RadixThemesComponent):