reflex 0.5.5a2__py3-none-any.whl → 0.5.6__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 (264) hide show
  1. reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -1
  2. reflex/.templates/jinja/web/utils/context.js.jinja2 +2 -0
  3. reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +20 -2
  4. reflex/.templates/web/utils/helpers/paste.js +59 -0
  5. reflex/__init__.py +9 -1
  6. reflex/__init__.pyi +89 -87
  7. reflex/app.py +64 -126
  8. reflex/app_mixins/__init__.py +5 -0
  9. reflex/app_mixins/lifespan.py +57 -0
  10. reflex/app_mixins/middleware.py +93 -0
  11. reflex/app_mixins/mixin.py +14 -0
  12. reflex/compiler/compiler.py +6 -1
  13. reflex/components/__init__.pyi +0 -2
  14. reflex/components/base/__init__.pyi +1 -3
  15. reflex/components/base/app_wrap.pyi +21 -22
  16. reflex/components/base/body.pyi +21 -20
  17. reflex/components/base/document.pyi +85 -85
  18. reflex/components/base/fragment.pyi +21 -20
  19. reflex/components/base/head.pyi +37 -36
  20. reflex/components/base/link.pyi +37 -37
  21. reflex/components/base/meta.pyi +69 -70
  22. reflex/components/base/script.py +6 -2
  23. reflex/components/base/script.pyi +31 -27
  24. reflex/components/chakra/base.pyi +54 -56
  25. reflex/components/chakra/datadisplay/badge.pyi +21 -21
  26. reflex/components/chakra/datadisplay/code.pyi +21 -20
  27. reflex/components/chakra/datadisplay/divider.pyi +21 -22
  28. reflex/components/chakra/datadisplay/keyboard_key.pyi +21 -20
  29. reflex/components/chakra/datadisplay/list.pyi +69 -71
  30. reflex/components/chakra/datadisplay/stat.pyi +101 -102
  31. reflex/components/chakra/datadisplay/table.pyi +149 -153
  32. reflex/components/chakra/datadisplay/tag.pyi +85 -89
  33. reflex/components/chakra/disclosure/accordion.pyi +87 -93
  34. reflex/components/chakra/disclosure/tabs.pyi +85 -90
  35. reflex/components/chakra/disclosure/transition.pyi +104 -105
  36. reflex/components/chakra/disclosure/visuallyhidden.pyi +21 -20
  37. reflex/components/chakra/feedback/alert.pyi +69 -70
  38. reflex/components/chakra/feedback/circularprogress.pyi +38 -40
  39. reflex/components/chakra/feedback/progress.pyi +22 -23
  40. reflex/components/chakra/feedback/skeleton.pyi +53 -53
  41. reflex/components/chakra/feedback/spinner.pyi +21 -21
  42. reflex/components/chakra/forms/button.pyi +37 -42
  43. reflex/components/chakra/forms/checkbox.pyi +38 -39
  44. reflex/components/chakra/forms/colormodeswitch.pyi +72 -71
  45. reflex/components/chakra/forms/date_picker.pyi +24 -24
  46. reflex/components/chakra/forms/date_time_picker.pyi +24 -24
  47. reflex/components/chakra/forms/editable.pyi +73 -74
  48. reflex/components/chakra/forms/email.pyi +24 -24
  49. reflex/components/chakra/forms/form.pyi +112 -141
  50. reflex/components/chakra/forms/iconbutton.pyi +21 -22
  51. reflex/components/chakra/forms/input.pyi +104 -111
  52. reflex/components/chakra/forms/numberinput.pyi +87 -91
  53. reflex/components/chakra/forms/password.pyi +24 -24
  54. reflex/components/chakra/forms/pininput.pyi +39 -45
  55. reflex/components/chakra/forms/radio.pyi +38 -43
  56. reflex/components/chakra/forms/rangeslider.pyi +72 -76
  57. reflex/components/chakra/forms/select.pyi +39 -44
  58. reflex/components/chakra/forms/slider.pyi +88 -91
  59. reflex/components/chakra/forms/switch.pyi +22 -23
  60. reflex/components/chakra/forms/textarea.pyi +24 -27
  61. reflex/components/chakra/forms/time_picker.pyi +24 -24
  62. reflex/components/chakra/layout/aspect_ratio.pyi +21 -21
  63. reflex/components/chakra/layout/box.pyi +21 -22
  64. reflex/components/chakra/layout/card.pyi +69 -73
  65. reflex/components/chakra/layout/center.pyi +53 -52
  66. reflex/components/chakra/layout/container.pyi +21 -21
  67. reflex/components/chakra/layout/flex.pyi +23 -26
  68. reflex/components/chakra/layout/grid.pyi +53 -54
  69. reflex/components/chakra/layout/spacer.pyi +21 -20
  70. reflex/components/chakra/layout/stack.pyi +62 -60
  71. reflex/components/chakra/layout/wrap.pyi +37 -38
  72. reflex/components/chakra/media/avatar.pyi +54 -55
  73. reflex/components/chakra/media/icon.pyi +37 -38
  74. reflex/components/chakra/media/image.pyi +24 -26
  75. reflex/components/chakra/navigation/breadcrumb.pyi +69 -71
  76. reflex/components/chakra/navigation/link.pyi +20 -21
  77. reflex/components/chakra/navigation/linkoverlay.pyi +37 -37
  78. reflex/components/chakra/navigation/stepper.pyi +149 -151
  79. reflex/components/chakra/overlay/alertdialog.pyi +121 -124
  80. reflex/components/chakra/overlay/drawer.pyi +121 -126
  81. reflex/components/chakra/overlay/menu.pyi +135 -141
  82. reflex/components/chakra/overlay/modal.pyi +121 -124
  83. reflex/components/chakra/overlay/popover.pyi +151 -156
  84. reflex/components/chakra/overlay/tooltip.pyi +23 -24
  85. reflex/components/chakra/typography/heading.pyi +21 -21
  86. reflex/components/chakra/typography/highlight.pyi +21 -23
  87. reflex/components/chakra/typography/span.pyi +21 -21
  88. reflex/components/chakra/typography/text.pyi +21 -21
  89. reflex/components/component.py +6 -2
  90. reflex/components/core/__init__.py +2 -0
  91. reflex/components/core/__init__.pyi +9 -7
  92. reflex/components/core/banner.pyi +118 -146
  93. reflex/components/core/breakpoints.py +95 -0
  94. reflex/components/core/client_side_routing.pyi +37 -39
  95. reflex/components/core/clipboard.py +95 -0
  96. reflex/components/core/clipboard.pyi +102 -0
  97. reflex/components/core/debounce.pyi +23 -28
  98. reflex/components/core/foreach.py +3 -2
  99. reflex/components/core/html.pyi +38 -55
  100. reflex/components/core/upload.py +1 -1
  101. reflex/components/core/upload.pyi +74 -91
  102. reflex/components/datadisplay/__init__.pyi +2 -3
  103. reflex/components/datadisplay/code.py +3 -3
  104. reflex/components/datadisplay/code.pyi +22 -31
  105. reflex/components/datadisplay/dataeditor.pyi +41 -45
  106. reflex/components/el/__init__.pyi +131 -135
  107. reflex/components/el/element.pyi +21 -20
  108. reflex/components/el/elements/__init__.pyi +131 -132
  109. reflex/components/el/elements/base.pyi +38 -55
  110. reflex/components/el/elements/forms.pyi +558 -878
  111. reflex/components/el/elements/inline.pyi +941 -1403
  112. reflex/components/el/elements/media.pyi +645 -994
  113. reflex/components/el/elements/metadata.pyi +186 -268
  114. reflex/components/el/elements/other.pyi +239 -353
  115. reflex/components/el/elements/scripts.pyi +113 -171
  116. reflex/components/el/elements/sectioning.pyi +500 -739
  117. reflex/components/el/elements/tables.pyi +355 -551
  118. reflex/components/el/elements/typography.pyi +510 -760
  119. reflex/components/gridjs/datatable.pyi +38 -42
  120. reflex/components/lucide/icon.pyi +37 -38
  121. reflex/components/markdown/markdown.pyi +23 -36
  122. reflex/components/moment/moment.pyi +23 -25
  123. reflex/components/next/base.pyi +21 -20
  124. reflex/components/next/image.pyi +25 -27
  125. reflex/components/next/link.pyi +21 -21
  126. reflex/components/next/video.pyi +22 -22
  127. reflex/components/plotly/plotly.pyi +42 -45
  128. reflex/components/radix/__init__.pyi +26 -30
  129. reflex/components/radix/primitives/__init__.pyi +0 -2
  130. reflex/components/radix/primitives/accordion.pyi +119 -127
  131. reflex/components/radix/primitives/base.pyi +37 -40
  132. reflex/components/radix/primitives/drawer.pyi +175 -179
  133. reflex/components/radix/primitives/form.pyi +250 -336
  134. reflex/components/radix/primitives/progress.pyi +92 -96
  135. reflex/components/radix/primitives/slider.pyi +87 -89
  136. reflex/components/radix/themes/__init__.pyi +0 -2
  137. reflex/components/radix/themes/base.pyi +118 -121
  138. reflex/components/radix/themes/color_mode.pyi +103 -117
  139. reflex/components/radix/themes/components/__init__.pyi +12 -14
  140. reflex/components/radix/themes/components/alert_dialog.py +2 -1
  141. reflex/components/radix/themes/components/alert_dialog.pyi +150 -157
  142. reflex/components/radix/themes/components/aspect_ratio.pyi +22 -22
  143. reflex/components/radix/themes/components/avatar.py +2 -1
  144. reflex/components/radix/themes/components/avatar.pyi +32 -23
  145. reflex/components/radix/themes/components/badge.py +2 -1
  146. reflex/components/radix/themes/components/badge.pyi +50 -57
  147. reflex/components/radix/themes/components/button.py +2 -1
  148. reflex/components/radix/themes/components/button.pyi +60 -79
  149. reflex/components/radix/themes/components/callout.py +2 -1
  150. reflex/components/radix/themes/components/callout.pyi +201 -258
  151. reflex/components/radix/themes/components/card.py +2 -1
  152. reflex/components/radix/themes/components/card.pyi +48 -56
  153. reflex/components/radix/themes/components/checkbox.py +2 -1
  154. reflex/components/radix/themes/components/checkbox.pyi +68 -62
  155. reflex/components/radix/themes/components/checkbox_cards.py +8 -3
  156. reflex/components/radix/themes/components/checkbox_cards.pyi +87 -44
  157. reflex/components/radix/themes/components/checkbox_group.py +2 -1
  158. reflex/components/radix/themes/components/checkbox_group.pyi +49 -40
  159. reflex/components/radix/themes/components/context_menu.py +2 -1
  160. reflex/components/radix/themes/components/context_menu.pyi +153 -147
  161. reflex/components/radix/themes/components/data_list.py +8 -7
  162. reflex/components/radix/themes/components/data_list.pyi +116 -78
  163. reflex/components/radix/themes/components/dialog.py +2 -1
  164. reflex/components/radix/themes/components/dialog.pyi +154 -161
  165. reflex/components/radix/themes/components/dropdown_menu.py +2 -1
  166. reflex/components/radix/themes/components/dropdown_menu.pyi +169 -163
  167. reflex/components/radix/themes/components/hover_card.py +2 -1
  168. reflex/components/radix/themes/components/hover_card.pyi +97 -107
  169. reflex/components/radix/themes/components/icon_button.py +2 -1
  170. reflex/components/radix/themes/components/icon_button.pyi +59 -82
  171. reflex/components/radix/themes/components/inset.py +10 -9
  172. reflex/components/radix/themes/components/inset.pyi +109 -61
  173. reflex/components/radix/themes/components/popover.py +2 -1
  174. reflex/components/radix/themes/components/popover.pyi +105 -112
  175. reflex/components/radix/themes/components/progress.py +2 -1
  176. reflex/components/radix/themes/components/progress.pyi +32 -24
  177. reflex/components/radix/themes/components/radio.py +2 -1
  178. reflex/components/radix/themes/components/radio.pyi +32 -23
  179. reflex/components/radix/themes/components/radio_cards.py +51 -3
  180. reflex/components/radix/themes/components/radio_cards.pyi +120 -44
  181. reflex/components/radix/themes/components/radio_group.py +5 -2
  182. reflex/components/radix/themes/components/radio_group.pyi +82 -77
  183. reflex/components/radix/themes/components/scroll_area.pyi +21 -21
  184. reflex/components/radix/themes/components/segmented_control.py +2 -1
  185. reflex/components/radix/themes/components/segmented_control.pyi +52 -46
  186. reflex/components/radix/themes/components/select.py +2 -1
  187. reflex/components/radix/themes/components/select.pyi +188 -164
  188. reflex/components/radix/themes/components/separator.py +5 -2
  189. reflex/components/radix/themes/components/separator.pyi +40 -24
  190. reflex/components/radix/themes/components/skeleton.py +7 -6
  191. reflex/components/radix/themes/components/skeleton.pyi +40 -26
  192. reflex/components/radix/themes/components/slider.py +2 -1
  193. reflex/components/radix/themes/components/slider.pyi +40 -31
  194. reflex/components/radix/themes/components/spinner.py +2 -1
  195. reflex/components/radix/themes/components/spinner.pyi +31 -22
  196. reflex/components/radix/themes/components/switch.py +2 -1
  197. reflex/components/radix/themes/components/switch.pyi +33 -25
  198. reflex/components/radix/themes/components/table.py +2 -1
  199. reflex/components/radix/themes/components/table.pyi +265 -404
  200. reflex/components/radix/themes/components/tabs.py +14 -1
  201. reflex/components/radix/themes/components/tabs.pyi +113 -92
  202. reflex/components/radix/themes/components/text_area.py +3 -2
  203. reflex/components/radix/themes/components/text_area.pyi +64 -66
  204. reflex/components/radix/themes/components/text_field.py +2 -1
  205. reflex/components/radix/themes/components/text_field.pyi +116 -140
  206. reflex/components/radix/themes/components/tooltip.pyi +32 -37
  207. reflex/components/radix/themes/layout/__init__.pyi +4 -7
  208. reflex/components/radix/themes/layout/base.py +10 -9
  209. reflex/components/radix/themes/layout/base.pyi +121 -31
  210. reflex/components/radix/themes/layout/box.pyi +39 -53
  211. reflex/components/radix/themes/layout/center.pyi +89 -58
  212. reflex/components/radix/themes/layout/container.py +4 -1
  213. reflex/components/radix/themes/layout/container.pyi +51 -58
  214. reflex/components/radix/themes/layout/flex.py +6 -5
  215. reflex/components/radix/themes/layout/flex.pyi +91 -61
  216. reflex/components/radix/themes/layout/grid.py +9 -8
  217. reflex/components/radix/themes/layout/grid.pyi +116 -64
  218. reflex/components/radix/themes/layout/list.pyi +173 -233
  219. reflex/components/radix/themes/layout/section.py +4 -1
  220. reflex/components/radix/themes/layout/section.pyi +50 -57
  221. reflex/components/radix/themes/layout/spacer.pyi +89 -58
  222. reflex/components/radix/themes/layout/stack.pyi +160 -160
  223. reflex/components/radix/themes/typography/__init__.pyi +0 -2
  224. reflex/components/radix/themes/typography/blockquote.py +3 -2
  225. reflex/components/radix/themes/typography/blockquote.pyi +58 -59
  226. reflex/components/radix/themes/typography/code.py +3 -2
  227. reflex/components/radix/themes/typography/code.pyi +57 -58
  228. reflex/components/radix/themes/typography/heading.py +5 -4
  229. reflex/components/radix/themes/typography/heading.pyi +71 -60
  230. reflex/components/radix/themes/typography/link.py +4 -3
  231. reflex/components/radix/themes/typography/link.pyi +74 -82
  232. reflex/components/radix/themes/typography/text.py +5 -4
  233. reflex/components/radix/themes/typography/text.pyi +330 -364
  234. reflex/components/react_player/audio.pyi +37 -36
  235. reflex/components/react_player/react_player.pyi +37 -38
  236. reflex/components/react_player/video.pyi +37 -36
  237. reflex/components/recharts/__init__.pyi +41 -42
  238. reflex/components/recharts/cartesian.pyi +384 -400
  239. reflex/components/recharts/charts.pyi +224 -231
  240. reflex/components/recharts/general.pyi +89 -96
  241. reflex/components/recharts/polar.pyi +97 -104
  242. reflex/components/recharts/recharts.pyi +37 -37
  243. reflex/components/sonner/toast.pyi +22 -27
  244. reflex/components/suneditor/editor.pyi +53 -58
  245. reflex/config.py +6 -0
  246. reflex/constants/event.py +1 -0
  247. reflex/experimental/layout.pyi +140 -194
  248. reflex/model.py +14 -2
  249. reflex/state.py +55 -45
  250. reflex/style.py +24 -13
  251. reflex/utils/codespaces.py +94 -0
  252. reflex/utils/compat.py +21 -0
  253. reflex/utils/exceptions.py +4 -0
  254. reflex/utils/format.py +25 -4
  255. reflex/utils/prerequisites.py +0 -13
  256. reflex/utils/pyi_generator.py +88 -61
  257. reflex/utils/types.py +83 -5
  258. reflex/vars.py +62 -5
  259. reflex/vars.pyi +23 -11
  260. {reflex-0.5.5a2.dist-info → reflex-0.5.6.dist-info}/METADATA +4 -5
  261. {reflex-0.5.5a2.dist-info → reflex-0.5.6.dist-info}/RECORD +264 -255
  262. {reflex-0.5.5a2.dist-info → reflex-0.5.6.dist-info}/LICENSE +0 -0
  263. {reflex-0.5.5a2.dist-info → reflex-0.5.6.dist-info}/WHEEL +0 -0
  264. {reflex-0.5.5a2.dist-info → reflex-0.5.6.dist-info}/entry_points.txt +0 -0
@@ -1,16 +1,14 @@
1
1
  """Stub file for reflex/components/core/client_side_routing.py"""
2
+
2
3
  # ------------------- DO NOT EDIT ----------------------
3
4
  # This file was generated by `reflex/utils/pyi_generator.py`!
4
5
  # ------------------------------------------------------
6
+ from typing import Any, Callable, Dict, Optional, Union, overload
5
7
 
6
- from typing import Any, Dict, Literal, Optional, Union, overload
7
- from reflex.vars import Var, BaseVar, ComputedVar
8
- from reflex.event import EventChain, EventHandler, EventSpec
9
- from reflex.style import Style
10
- from reflex import constants
11
8
  from reflex.components.component import Component
12
- from reflex.components.core.cond import cond
13
- from reflex.vars import Var
9
+ from reflex.event import EventHandler, EventSpec
10
+ from reflex.style import Style
11
+ from reflex.vars import BaseVar, Var
14
12
 
15
13
  route_not_found: Var
16
14
 
@@ -29,51 +27,51 @@ class ClientSideRouting(Component):
29
27
  autofocus: Optional[bool] = None,
30
28
  custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
31
29
  on_blur: Optional[
32
- Union[EventHandler, EventSpec, list, function, BaseVar]
30
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
33
31
  ] = None,
34
32
  on_click: Optional[
35
- Union[EventHandler, EventSpec, list, function, BaseVar]
33
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
36
34
  ] = None,
37
35
  on_context_menu: Optional[
38
- Union[EventHandler, EventSpec, list, function, BaseVar]
36
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
39
37
  ] = None,
40
38
  on_double_click: Optional[
41
- Union[EventHandler, EventSpec, list, function, BaseVar]
39
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
42
40
  ] = None,
43
41
  on_focus: Optional[
44
- Union[EventHandler, EventSpec, list, function, BaseVar]
42
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
45
43
  ] = None,
46
44
  on_mount: Optional[
47
- Union[EventHandler, EventSpec, list, function, BaseVar]
45
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
48
46
  ] = None,
49
47
  on_mouse_down: Optional[
50
- Union[EventHandler, EventSpec, list, function, BaseVar]
48
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
51
49
  ] = None,
52
50
  on_mouse_enter: Optional[
53
- Union[EventHandler, EventSpec, list, function, BaseVar]
51
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
54
52
  ] = None,
55
53
  on_mouse_leave: Optional[
56
- Union[EventHandler, EventSpec, list, function, BaseVar]
54
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
57
55
  ] = None,
58
56
  on_mouse_move: Optional[
59
- Union[EventHandler, EventSpec, list, function, BaseVar]
57
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
60
58
  ] = None,
61
59
  on_mouse_out: Optional[
62
- Union[EventHandler, EventSpec, list, function, BaseVar]
60
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
63
61
  ] = None,
64
62
  on_mouse_over: Optional[
65
- Union[EventHandler, EventSpec, list, function, BaseVar]
63
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
66
64
  ] = None,
67
65
  on_mouse_up: Optional[
68
- Union[EventHandler, EventSpec, list, function, BaseVar]
66
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
69
67
  ] = None,
70
68
  on_scroll: Optional[
71
- Union[EventHandler, EventSpec, list, function, BaseVar]
69
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
72
70
  ] = None,
73
71
  on_unmount: Optional[
74
- Union[EventHandler, EventSpec, list, function, BaseVar]
72
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
75
73
  ] = None,
76
- **props
74
+ **props,
77
75
  ) -> "ClientSideRouting":
78
76
  """Create the component.
79
77
 
@@ -108,51 +106,51 @@ class Default404Page(Component):
108
106
  autofocus: Optional[bool] = None,
109
107
  custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
110
108
  on_blur: Optional[
111
- Union[EventHandler, EventSpec, list, function, BaseVar]
109
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
112
110
  ] = None,
113
111
  on_click: Optional[
114
- Union[EventHandler, EventSpec, list, function, BaseVar]
112
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
115
113
  ] = None,
116
114
  on_context_menu: Optional[
117
- Union[EventHandler, EventSpec, list, function, BaseVar]
115
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
118
116
  ] = None,
119
117
  on_double_click: Optional[
120
- Union[EventHandler, EventSpec, list, function, BaseVar]
118
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
121
119
  ] = None,
122
120
  on_focus: Optional[
123
- Union[EventHandler, EventSpec, list, function, BaseVar]
121
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
124
122
  ] = None,
125
123
  on_mount: Optional[
126
- Union[EventHandler, EventSpec, list, function, BaseVar]
124
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
127
125
  ] = None,
128
126
  on_mouse_down: Optional[
129
- Union[EventHandler, EventSpec, list, function, BaseVar]
127
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
130
128
  ] = None,
131
129
  on_mouse_enter: Optional[
132
- Union[EventHandler, EventSpec, list, function, BaseVar]
130
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
133
131
  ] = None,
134
132
  on_mouse_leave: Optional[
135
- Union[EventHandler, EventSpec, list, function, BaseVar]
133
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
136
134
  ] = None,
137
135
  on_mouse_move: Optional[
138
- Union[EventHandler, EventSpec, list, function, BaseVar]
136
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
139
137
  ] = None,
140
138
  on_mouse_out: Optional[
141
- Union[EventHandler, EventSpec, list, function, BaseVar]
139
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
142
140
  ] = None,
143
141
  on_mouse_over: Optional[
144
- Union[EventHandler, EventSpec, list, function, BaseVar]
142
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
145
143
  ] = None,
146
144
  on_mouse_up: Optional[
147
- Union[EventHandler, EventSpec, list, function, BaseVar]
145
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
148
146
  ] = None,
149
147
  on_scroll: Optional[
150
- Union[EventHandler, EventSpec, list, function, BaseVar]
148
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
151
149
  ] = None,
152
150
  on_unmount: Optional[
153
- Union[EventHandler, EventSpec, list, function, BaseVar]
151
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
154
152
  ] = None,
155
- **props
153
+ **props,
156
154
  ) -> "Default404Page":
157
155
  """Create the component.
158
156
 
@@ -0,0 +1,95 @@
1
+ """Global on_paste handling for Reflex app."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict, List, Union
6
+
7
+ from reflex.components.base.fragment import Fragment
8
+ from reflex.components.tags.tag import Tag
9
+ from reflex.event import EventChain, EventHandler
10
+ from reflex.utils.format import format_prop, wrap
11
+ from reflex.utils.imports import ImportVar
12
+ from reflex.vars import Var, get_unique_variable_name
13
+
14
+
15
+ class Clipboard(Fragment):
16
+ """Clipboard component."""
17
+
18
+ # The element ids to attach the event listener to. Defaults to all child components or the document.
19
+ targets: Var[List[str]]
20
+
21
+ # Called when the user pastes data into the document. Data is a list of tuples of (mime_type, data). Binary types will be base64 encoded as a data uri.
22
+ on_paste: EventHandler[lambda data: [data]]
23
+
24
+ # Save the original event actions for the on_paste event.
25
+ on_paste_event_actions: Var[Dict[str, Union[bool, int]]]
26
+
27
+ @classmethod
28
+ def create(cls, *children, **props):
29
+ """Create a Clipboard component.
30
+
31
+ Args:
32
+ *children: The children of the component.
33
+ **props: The properties of the component.
34
+
35
+ Returns:
36
+ The Clipboard Component.
37
+ """
38
+ if "targets" not in props:
39
+ # Add all children as targets if not specified.
40
+ targets = props.setdefault("targets", [])
41
+ for c in children:
42
+ if c.id is None:
43
+ c.id = f"clipboard_{get_unique_variable_name()}"
44
+ targets.append(c.id)
45
+
46
+ if "on_paste" in props:
47
+ # Capture the event actions for the on_paste handler if not specified.
48
+ props.setdefault("on_paste_event_actions", props["on_paste"].event_actions)
49
+
50
+ return super().create(*children, **props)
51
+
52
+ def _exclude_props(self) -> list[str]:
53
+ return super()._exclude_props() + ["on_paste", "on_paste_event_actions"]
54
+
55
+ def _render(self) -> Tag:
56
+ tag = super()._render()
57
+ tag.remove_props("targets")
58
+ # Ensure a different Fragment component is created whenever targets differ
59
+ tag.add_props(key=self.targets)
60
+ return tag
61
+
62
+ def add_imports(self) -> dict[str, ImportVar]:
63
+ """Add the imports for the Clipboard component.
64
+
65
+ Returns:
66
+ The import dict for the component.
67
+ """
68
+ return {
69
+ "/utils/helpers/paste.js": ImportVar(
70
+ tag="usePasteHandler", is_default=True
71
+ ),
72
+ }
73
+
74
+ def add_hooks(self) -> list[str]:
75
+ """Add hook to register paste event listener.
76
+
77
+ Returns:
78
+ The hooks to add to the component.
79
+ """
80
+ on_paste = self.event_triggers["on_paste"]
81
+ if on_paste is None:
82
+ return []
83
+ if isinstance(on_paste, EventChain):
84
+ on_paste = wrap(str(format_prop(on_paste)).strip("{}"), "(")
85
+ return [
86
+ "usePasteHandler(%s, %s, %s)"
87
+ % (
88
+ self.targets._var_name_unwrapped,
89
+ self.on_paste_event_actions._var_name_unwrapped,
90
+ on_paste,
91
+ )
92
+ ]
93
+
94
+
95
+ clipboard = Clipboard.create
@@ -0,0 +1,102 @@
1
+ """Stub file for reflex/components/core/clipboard.py"""
2
+
3
+ # ------------------- DO NOT EDIT ----------------------
4
+ # This file was generated by `reflex/utils/pyi_generator.py`!
5
+ # ------------------------------------------------------
6
+ from typing import Any, Callable, Dict, List, Optional, Union, overload
7
+
8
+ from reflex.components.base.fragment import Fragment
9
+ from reflex.event import EventHandler, EventSpec
10
+ from reflex.style import Style
11
+ from reflex.utils.imports import ImportVar
12
+ from reflex.vars import BaseVar, Var
13
+
14
+ class Clipboard(Fragment):
15
+ @overload
16
+ @classmethod
17
+ def create( # type: ignore
18
+ cls,
19
+ *children,
20
+ targets: Optional[Union[Var[List[str]], List[str]]] = None,
21
+ on_paste_event_actions: Optional[
22
+ Union[Var[Dict[str, Union[bool, int]]], Dict[str, Union[bool, int]]]
23
+ ] = None,
24
+ style: Optional[Style] = None,
25
+ key: Optional[Any] = None,
26
+ id: Optional[Any] = None,
27
+ class_name: Optional[Any] = None,
28
+ autofocus: Optional[bool] = None,
29
+ custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
30
+ on_blur: Optional[
31
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
32
+ ] = None,
33
+ on_click: Optional[
34
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
35
+ ] = None,
36
+ on_context_menu: Optional[
37
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
38
+ ] = None,
39
+ on_double_click: Optional[
40
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
41
+ ] = None,
42
+ on_focus: Optional[
43
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
44
+ ] = None,
45
+ on_mount: Optional[
46
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
47
+ ] = None,
48
+ on_mouse_down: Optional[
49
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
50
+ ] = None,
51
+ on_mouse_enter: Optional[
52
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
53
+ ] = None,
54
+ on_mouse_leave: Optional[
55
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
56
+ ] = None,
57
+ on_mouse_move: Optional[
58
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
59
+ ] = None,
60
+ on_mouse_out: Optional[
61
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
62
+ ] = None,
63
+ on_mouse_over: Optional[
64
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
65
+ ] = None,
66
+ on_mouse_up: Optional[
67
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
68
+ ] = None,
69
+ on_paste: Optional[
70
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
71
+ ] = None,
72
+ on_scroll: Optional[
73
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
74
+ ] = None,
75
+ on_unmount: Optional[
76
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
77
+ ] = None,
78
+ **props,
79
+ ) -> "Clipboard":
80
+ """Create a Clipboard component.
81
+
82
+ Args:
83
+ *children: The children of the component.
84
+ targets: The element ids to attach the event listener to. Defaults to all child components or the document.
85
+ on_paste_event_actions: Save the original event actions for the on_paste event.
86
+ style: The style of the component.
87
+ key: A unique key for the component.
88
+ id: The id for the component.
89
+ class_name: The class name for the component.
90
+ autofocus: Whether the component should take the focus once the page is loaded
91
+ custom_attrs: custom attribute
92
+ **props: The properties of the component.
93
+
94
+ Returns:
95
+ The Clipboard Component.
96
+ """
97
+ ...
98
+
99
+ def add_imports(self) -> dict[str, ImportVar]: ...
100
+ def add_hooks(self) -> list[str]: ...
101
+
102
+ clipboard = Clipboard.create
@@ -1,17 +1,14 @@
1
1
  """Stub file for reflex/components/core/debounce.py"""
2
+
2
3
  # ------------------- DO NOT EDIT ----------------------
3
4
  # This file was generated by `reflex/utils/pyi_generator.py`!
4
5
  # ------------------------------------------------------
6
+ from typing import Any, Callable, Dict, Optional, Type, Union, overload
5
7
 
6
- from typing import Any, Dict, Literal, Optional, Union, overload
7
- from reflex.vars import Var, BaseVar, ComputedVar
8
- from reflex.event import EventChain, EventHandler, EventSpec
9
- from reflex.style import Style
10
- from typing import Any, Type, Union
11
8
  from reflex.components.component import Component
12
- from reflex.constants import EventTriggers
13
- from reflex.event import EventHandler
14
- from reflex.vars import Var, VarData
9
+ from reflex.event import EventHandler, EventSpec
10
+ from reflex.style import Style
11
+ from reflex.vars import BaseVar, Var
15
12
 
16
13
  DEFAULT_DEBOUNCE_TIMEOUT = 300
17
14
 
@@ -25,9 +22,7 @@ class DebounceInput(Component):
25
22
  debounce_timeout: Optional[Union[Var[int], int]] = None,
26
23
  force_notify_by_enter: Optional[Union[Var[bool], bool]] = None,
27
24
  force_notify_on_blur: Optional[Union[Var[bool], bool]] = None,
28
- value: Optional[
29
- Union[Var[Union[str, int, float]], Union[str, int, float]]
30
- ] = None,
25
+ value: Optional[Union[Var[Union[float, int, str]], str, int, float]] = None,
31
26
  input_ref: Optional[Union[Var[str], str]] = None,
32
27
  element: Optional[Union[Var[Type[Component]], Type[Component]]] = None,
33
28
  style: Optional[Style] = None,
@@ -37,54 +32,54 @@ class DebounceInput(Component):
37
32
  autofocus: Optional[bool] = None,
38
33
  custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
39
34
  on_blur: Optional[
40
- Union[EventHandler, EventSpec, list, function, BaseVar]
35
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
41
36
  ] = None,
42
37
  on_change: Optional[
43
- Union[EventHandler, EventSpec, list, function, BaseVar]
38
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
44
39
  ] = None,
45
40
  on_click: Optional[
46
- Union[EventHandler, EventSpec, list, function, BaseVar]
41
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
47
42
  ] = None,
48
43
  on_context_menu: Optional[
49
- Union[EventHandler, EventSpec, list, function, BaseVar]
44
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
50
45
  ] = None,
51
46
  on_double_click: Optional[
52
- Union[EventHandler, EventSpec, list, function, BaseVar]
47
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
53
48
  ] = None,
54
49
  on_focus: Optional[
55
- Union[EventHandler, EventSpec, list, function, BaseVar]
50
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
56
51
  ] = None,
57
52
  on_mount: Optional[
58
- Union[EventHandler, EventSpec, list, function, BaseVar]
53
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
59
54
  ] = None,
60
55
  on_mouse_down: Optional[
61
- Union[EventHandler, EventSpec, list, function, BaseVar]
56
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
62
57
  ] = None,
63
58
  on_mouse_enter: Optional[
64
- Union[EventHandler, EventSpec, list, function, BaseVar]
59
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
65
60
  ] = None,
66
61
  on_mouse_leave: Optional[
67
- Union[EventHandler, EventSpec, list, function, BaseVar]
62
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
68
63
  ] = None,
69
64
  on_mouse_move: Optional[
70
- Union[EventHandler, EventSpec, list, function, BaseVar]
65
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
71
66
  ] = None,
72
67
  on_mouse_out: Optional[
73
- Union[EventHandler, EventSpec, list, function, BaseVar]
68
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
74
69
  ] = None,
75
70
  on_mouse_over: Optional[
76
- Union[EventHandler, EventSpec, list, function, BaseVar]
71
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
77
72
  ] = None,
78
73
  on_mouse_up: Optional[
79
- Union[EventHandler, EventSpec, list, function, BaseVar]
74
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
80
75
  ] = None,
81
76
  on_scroll: Optional[
82
- Union[EventHandler, EventSpec, list, function, BaseVar]
77
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
83
78
  ] = None,
84
79
  on_unmount: Optional[
85
- Union[EventHandler, EventSpec, list, function, BaseVar]
80
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
86
81
  ] = None,
87
- **props
82
+ **props,
88
83
  ) -> "DebounceInput":
89
84
  """Create a DebounceInput component.
90
85
 
@@ -66,7 +66,7 @@ class Foreach(Component):
66
66
  raise ForeachVarError(
67
67
  f"Could not foreach over var `{iterable._var_full_name}` of type Any. "
68
68
  "(If you are trying to foreach over a state var, add a type annotation to the var). "
69
- "See https://reflex.dev/docs/library/layout/foreach/"
69
+ "See https://reflex.dev/docs/library/dynamic-rendering/foreach/"
70
70
  )
71
71
 
72
72
  if (
@@ -95,7 +95,8 @@ class Foreach(Component):
95
95
  if len(params) == 0 or len(params) > 2:
96
96
  raise ForeachRenderError(
97
97
  "Expected 1 or 2 parameters in foreach render function, got "
98
- f"{[p.name for p in params]}. See https://reflex.dev/docs/library/layout/foreach/"
98
+ f"{[p.name for p in params]}. See "
99
+ "https://reflex.dev/docs/library/dynamic-rendering/foreach/"
99
100
  )
100
101
 
101
102
  if len(params) >= 1:
@@ -1,15 +1,14 @@
1
1
  """Stub file for reflex/components/core/html.py"""
2
+
2
3
  # ------------------- DO NOT EDIT ----------------------
3
4
  # This file was generated by `reflex/utils/pyi_generator.py`!
4
5
  # ------------------------------------------------------
6
+ from typing import Any, Callable, Dict, Optional, Union, overload
5
7
 
6
- from typing import Any, Dict, Literal, Optional, Union, overload
7
- from reflex.vars import Var, BaseVar, ComputedVar
8
- from reflex.event import EventChain, EventHandler, EventSpec
9
- from reflex.style import Style
10
- from typing import Dict
11
8
  from reflex.components.el.elements.typography import Div
12
- from reflex.vars import Var
9
+ from reflex.event import EventHandler, EventSpec
10
+ from reflex.style import Style
11
+ from reflex.vars import BaseVar, Var
13
12
 
14
13
  class Html(Div):
15
14
  @overload
@@ -20,46 +19,30 @@ class Html(Div):
20
19
  dangerouslySetInnerHTML: Optional[
21
20
  Union[Var[Dict[str, str]], Dict[str, str]]
22
21
  ] = None,
23
- access_key: Optional[
24
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
25
- ] = None,
22
+ access_key: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
26
23
  auto_capitalize: Optional[
27
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
24
+ Union[Var[Union[bool, int, str]], str, int, bool]
28
25
  ] = None,
29
26
  content_editable: Optional[
30
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
27
+ Union[Var[Union[bool, int, str]], str, int, bool]
31
28
  ] = None,
32
29
  context_menu: Optional[
33
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
34
- ] = None,
35
- dir: Optional[Union[Var[Union[str, int, bool]], Union[str, int, bool]]] = None,
36
- draggable: Optional[
37
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
30
+ Union[Var[Union[bool, int, str]], str, int, bool]
38
31
  ] = None,
32
+ dir: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
33
+ draggable: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
39
34
  enter_key_hint: Optional[
40
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
41
- ] = None,
42
- hidden: Optional[
43
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
44
- ] = None,
45
- input_mode: Optional[
46
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
47
- ] = None,
48
- item_prop: Optional[
49
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
50
- ] = None,
51
- lang: Optional[Union[Var[Union[str, int, bool]], Union[str, int, bool]]] = None,
52
- role: Optional[Union[Var[Union[str, int, bool]], Union[str, int, bool]]] = None,
53
- slot: Optional[Union[Var[Union[str, int, bool]], Union[str, int, bool]]] = None,
54
- spell_check: Optional[
55
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
56
- ] = None,
57
- tab_index: Optional[
58
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
59
- ] = None,
60
- title: Optional[
61
- Union[Var[Union[str, int, bool]], Union[str, int, bool]]
62
- ] = None,
35
+ Union[Var[Union[bool, int, str]], str, int, bool]
36
+ ] = None,
37
+ hidden: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
38
+ input_mode: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
39
+ item_prop: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
40
+ lang: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
41
+ role: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
42
+ slot: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
43
+ spell_check: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
44
+ tab_index: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
45
+ title: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
63
46
  style: Optional[Style] = None,
64
47
  key: Optional[Any] = None,
65
48
  id: Optional[Any] = None,
@@ -67,51 +50,51 @@ class Html(Div):
67
50
  autofocus: Optional[bool] = None,
68
51
  custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
69
52
  on_blur: Optional[
70
- Union[EventHandler, EventSpec, list, function, BaseVar]
53
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
71
54
  ] = None,
72
55
  on_click: Optional[
73
- Union[EventHandler, EventSpec, list, function, BaseVar]
56
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
74
57
  ] = None,
75
58
  on_context_menu: Optional[
76
- Union[EventHandler, EventSpec, list, function, BaseVar]
59
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
77
60
  ] = None,
78
61
  on_double_click: Optional[
79
- Union[EventHandler, EventSpec, list, function, BaseVar]
62
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
80
63
  ] = None,
81
64
  on_focus: Optional[
82
- Union[EventHandler, EventSpec, list, function, BaseVar]
65
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
83
66
  ] = None,
84
67
  on_mount: Optional[
85
- Union[EventHandler, EventSpec, list, function, BaseVar]
68
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
86
69
  ] = None,
87
70
  on_mouse_down: Optional[
88
- Union[EventHandler, EventSpec, list, function, BaseVar]
71
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
89
72
  ] = None,
90
73
  on_mouse_enter: Optional[
91
- Union[EventHandler, EventSpec, list, function, BaseVar]
74
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
92
75
  ] = None,
93
76
  on_mouse_leave: Optional[
94
- Union[EventHandler, EventSpec, list, function, BaseVar]
77
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
95
78
  ] = None,
96
79
  on_mouse_move: Optional[
97
- Union[EventHandler, EventSpec, list, function, BaseVar]
80
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
98
81
  ] = None,
99
82
  on_mouse_out: Optional[
100
- Union[EventHandler, EventSpec, list, function, BaseVar]
83
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
101
84
  ] = None,
102
85
  on_mouse_over: Optional[
103
- Union[EventHandler, EventSpec, list, function, BaseVar]
86
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
104
87
  ] = None,
105
88
  on_mouse_up: Optional[
106
- Union[EventHandler, EventSpec, list, function, BaseVar]
89
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
107
90
  ] = None,
108
91
  on_scroll: Optional[
109
- Union[EventHandler, EventSpec, list, function, BaseVar]
92
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
110
93
  ] = None,
111
94
  on_unmount: Optional[
112
- Union[EventHandler, EventSpec, list, function, BaseVar]
95
+ Union[EventHandler, EventSpec, list, Callable, BaseVar]
113
96
  ] = None,
114
- **props
97
+ **props,
115
98
  ) -> "Html":
116
99
  """Create a html component.
117
100
 
@@ -107,7 +107,7 @@ def cancel_upload(upload_id: str) -> EventSpec:
107
107
  An event spec that cancels the upload when triggered.
108
108
  """
109
109
  return call_script(
110
- f"upload_controllers[{Var.create_safe(upload_id, _var_is_string=True)._var_name_unwrapped!r}]?.abort()"
110
+ f"upload_controllers[{Var.create_safe(upload_id, _var_is_string=True)._var_name_unwrapped}]?.abort()"
111
111
  )
112
112
 
113
113