reflex 0.7.14a6__py3-none-any.whl → 0.8.0a2__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 (211) hide show
  1. reflex/.templates/jinja/app/rxconfig.py.jinja2 +4 -1
  2. reflex/.templates/jinja/web/package.json.jinja2 +1 -1
  3. reflex/.templates/jinja/web/pages/_app.js.jinja2 +16 -10
  4. reflex/.templates/jinja/web/pages/_document.js.jinja2 +1 -1
  5. reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -1
  6. reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +4 -0
  7. reflex/.templates/jinja/web/utils/context.js.jinja2 +25 -8
  8. reflex/.templates/web/app/entry.client.js +8 -0
  9. reflex/.templates/web/app/routes.js +10 -0
  10. reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +12 -37
  11. reflex/.templates/web/postcss.config.js +1 -1
  12. reflex/.templates/web/react-router.config.js +6 -0
  13. reflex/.templates/web/utils/client_side_routing.js +21 -19
  14. reflex/.templates/web/utils/react-theme.js +92 -0
  15. reflex/.templates/web/utils/state.js +160 -67
  16. reflex/.templates/web/vite.config.js +32 -0
  17. reflex/__init__.py +1 -6
  18. reflex/__init__.pyi +0 -4
  19. reflex/app.py +53 -116
  20. reflex/base.py +1 -87
  21. reflex/compiler/compiler.py +41 -8
  22. reflex/compiler/templates.py +3 -3
  23. reflex/compiler/utils.py +73 -33
  24. reflex/components/__init__.py +0 -2
  25. reflex/components/__init__.pyi +0 -3
  26. reflex/components/base/__init__.py +1 -5
  27. reflex/components/base/__init__.pyi +4 -6
  28. reflex/components/base/app_wrap.pyi +5 -4
  29. reflex/components/base/body.pyi +5 -4
  30. reflex/components/base/document.py +18 -14
  31. reflex/components/base/document.pyi +83 -27
  32. reflex/components/base/error_boundary.pyi +5 -4
  33. reflex/components/base/fragment.pyi +5 -4
  34. reflex/components/base/link.pyi +9 -7
  35. reflex/components/base/meta.pyi +17 -13
  36. reflex/components/base/script.py +60 -58
  37. reflex/components/base/script.pyi +246 -31
  38. reflex/components/base/strict_mode.pyi +5 -4
  39. reflex/components/component.py +146 -217
  40. reflex/components/core/__init__.py +1 -0
  41. reflex/components/core/__init__.pyi +1 -0
  42. reflex/components/core/auto_scroll.pyi +5 -4
  43. reflex/components/core/banner.pyi +25 -19
  44. reflex/components/core/client_side_routing.py +7 -6
  45. reflex/components/core/client_side_routing.pyi +6 -56
  46. reflex/components/core/clipboard.pyi +5 -4
  47. reflex/components/core/debounce.py +1 -0
  48. reflex/components/core/debounce.pyi +5 -4
  49. reflex/components/core/foreach.py +3 -2
  50. reflex/components/core/helmet.py +14 -0
  51. reflex/components/{next/base.pyi → core/helmet.pyi} +10 -7
  52. reflex/components/core/html.pyi +5 -4
  53. reflex/components/core/sticky.pyi +17 -13
  54. reflex/components/core/upload.py +2 -1
  55. reflex/components/core/upload.pyi +21 -16
  56. reflex/components/datadisplay/code.py +2 -72
  57. reflex/components/datadisplay/code.pyi +9 -10
  58. reflex/components/datadisplay/dataeditor.pyi +11 -6
  59. reflex/components/datadisplay/shiki_code_block.pyi +13 -10
  60. reflex/components/dynamic.py +5 -5
  61. reflex/components/el/element.pyi +5 -4
  62. reflex/components/el/elements/base.pyi +5 -4
  63. reflex/components/el/elements/forms.pyi +69 -52
  64. reflex/components/el/elements/inline.pyi +113 -85
  65. reflex/components/el/elements/media.pyi +105 -79
  66. reflex/components/el/elements/metadata.pyi +25 -19
  67. reflex/components/el/elements/other.pyi +29 -22
  68. reflex/components/el/elements/scripts.pyi +13 -10
  69. reflex/components/el/elements/sectioning.pyi +61 -46
  70. reflex/components/el/elements/tables.pyi +41 -31
  71. reflex/components/el/elements/typography.pyi +61 -46
  72. reflex/components/field.py +175 -0
  73. reflex/components/gridjs/datatable.py +2 -2
  74. reflex/components/gridjs/datatable.pyi +11 -9
  75. reflex/components/lucide/icon.py +6 -2
  76. reflex/components/lucide/icon.pyi +15 -10
  77. reflex/components/markdown/markdown.pyi +5 -4
  78. reflex/components/moment/moment.pyi +5 -4
  79. reflex/components/plotly/plotly.pyi +19 -10
  80. reflex/components/props.py +376 -27
  81. reflex/components/radix/primitives/accordion.py +8 -1
  82. reflex/components/radix/primitives/accordion.pyi +29 -22
  83. reflex/components/radix/primitives/base.pyi +9 -7
  84. reflex/components/radix/primitives/drawer.pyi +45 -34
  85. reflex/components/radix/primitives/form.pyi +41 -31
  86. reflex/components/radix/primitives/progress.pyi +21 -16
  87. reflex/components/radix/primitives/slider.pyi +21 -16
  88. reflex/components/radix/themes/base.py +3 -3
  89. reflex/components/radix/themes/base.pyi +33 -25
  90. reflex/components/radix/themes/color_mode.pyi +13 -10
  91. reflex/components/radix/themes/components/alert_dialog.pyi +29 -22
  92. reflex/components/radix/themes/components/aspect_ratio.pyi +5 -4
  93. reflex/components/radix/themes/components/avatar.pyi +5 -4
  94. reflex/components/radix/themes/components/badge.pyi +5 -4
  95. reflex/components/radix/themes/components/button.pyi +5 -4
  96. reflex/components/radix/themes/components/callout.pyi +21 -16
  97. reflex/components/radix/themes/components/card.pyi +5 -4
  98. reflex/components/radix/themes/components/checkbox.pyi +13 -10
  99. reflex/components/radix/themes/components/checkbox_cards.pyi +9 -7
  100. reflex/components/radix/themes/components/checkbox_group.pyi +9 -7
  101. reflex/components/radix/themes/components/context_menu.pyi +53 -40
  102. reflex/components/radix/themes/components/data_list.pyi +17 -13
  103. reflex/components/radix/themes/components/dialog.pyi +29 -22
  104. reflex/components/radix/themes/components/dropdown_menu.pyi +33 -25
  105. reflex/components/radix/themes/components/hover_card.pyi +17 -13
  106. reflex/components/radix/themes/components/icon_button.pyi +5 -4
  107. reflex/components/radix/themes/components/inset.pyi +5 -4
  108. reflex/components/radix/themes/components/popover.pyi +17 -13
  109. reflex/components/radix/themes/components/progress.pyi +5 -4
  110. reflex/components/radix/themes/components/radio.pyi +5 -4
  111. reflex/components/radix/themes/components/radio_cards.pyi +9 -7
  112. reflex/components/radix/themes/components/radio_group.pyi +17 -13
  113. reflex/components/radix/themes/components/scroll_area.pyi +5 -4
  114. reflex/components/radix/themes/components/segmented_control.pyi +9 -7
  115. reflex/components/radix/themes/components/select.pyi +37 -28
  116. reflex/components/radix/themes/components/separator.pyi +5 -4
  117. reflex/components/radix/themes/components/skeleton.pyi +5 -4
  118. reflex/components/radix/themes/components/slider.pyi +5 -4
  119. reflex/components/radix/themes/components/spinner.pyi +5 -4
  120. reflex/components/radix/themes/components/switch.pyi +5 -4
  121. reflex/components/radix/themes/components/table.pyi +29 -22
  122. reflex/components/radix/themes/components/tabs.pyi +21 -16
  123. reflex/components/radix/themes/components/text_area.pyi +5 -4
  124. reflex/components/radix/themes/components/text_field.pyi +13 -10
  125. reflex/components/radix/themes/components/tooltip.pyi +5 -4
  126. reflex/components/radix/themes/layout/base.pyi +5 -4
  127. reflex/components/radix/themes/layout/box.pyi +5 -4
  128. reflex/components/radix/themes/layout/center.pyi +5 -4
  129. reflex/components/radix/themes/layout/container.pyi +5 -4
  130. reflex/components/radix/themes/layout/flex.pyi +5 -4
  131. reflex/components/radix/themes/layout/grid.pyi +5 -4
  132. reflex/components/radix/themes/layout/list.pyi +21 -16
  133. reflex/components/radix/themes/layout/section.pyi +5 -4
  134. reflex/components/radix/themes/layout/spacer.pyi +5 -4
  135. reflex/components/radix/themes/layout/stack.pyi +13 -10
  136. reflex/components/radix/themes/typography/blockquote.pyi +5 -4
  137. reflex/components/radix/themes/typography/code.pyi +5 -4
  138. reflex/components/radix/themes/typography/heading.pyi +5 -4
  139. reflex/components/radix/themes/typography/link.py +46 -11
  140. reflex/components/radix/themes/typography/link.pyi +311 -6
  141. reflex/components/radix/themes/typography/text.pyi +29 -22
  142. reflex/components/react_player/audio.pyi +5 -4
  143. reflex/components/react_player/react_player.pyi +5 -4
  144. reflex/components/react_player/video.pyi +5 -4
  145. reflex/components/recharts/cartesian.py +2 -1
  146. reflex/components/recharts/cartesian.pyi +65 -46
  147. reflex/components/recharts/charts.py +4 -2
  148. reflex/components/recharts/charts.pyi +36 -24
  149. reflex/components/recharts/general.pyi +24 -18
  150. reflex/components/recharts/polar.py +8 -4
  151. reflex/components/recharts/polar.pyi +16 -10
  152. reflex/components/recharts/recharts.pyi +9 -7
  153. reflex/components/sonner/toast.py +2 -2
  154. reflex/components/sonner/toast.pyi +10 -8
  155. reflex/config.py +3 -77
  156. reflex/constants/__init__.py +2 -2
  157. reflex/constants/base.py +28 -11
  158. reflex/constants/compiler.py +5 -3
  159. reflex/constants/event.py +1 -0
  160. reflex/constants/installer.py +22 -16
  161. reflex/constants/route.py +19 -7
  162. reflex/constants/state.py +2 -0
  163. reflex/custom_components/custom_components.py +0 -14
  164. reflex/environment.py +1 -1
  165. reflex/event.py +178 -81
  166. reflex/experimental/__init__.py +0 -30
  167. reflex/istate/proxy.py +5 -3
  168. reflex/page.py +0 -27
  169. reflex/plugins/__init__.py +3 -2
  170. reflex/plugins/base.py +5 -1
  171. reflex/plugins/shared_tailwind.py +158 -0
  172. reflex/plugins/sitemap.py +206 -0
  173. reflex/plugins/tailwind_v3.py +13 -106
  174. reflex/plugins/tailwind_v4.py +15 -108
  175. reflex/reflex.py +1 -0
  176. reflex/route.py +15 -21
  177. reflex/state.py +134 -140
  178. reflex/testing.py +58 -10
  179. reflex/utils/build.py +38 -82
  180. reflex/utils/exec.py +59 -161
  181. reflex/utils/export.py +2 -2
  182. reflex/utils/imports.py +0 -4
  183. reflex/utils/misc.py +28 -0
  184. reflex/utils/prerequisites.py +65 -62
  185. reflex/utils/processes.py +8 -7
  186. reflex/utils/pyi_generator.py +21 -9
  187. reflex/utils/serializers.py +14 -1
  188. reflex/utils/types.py +196 -61
  189. reflex/vars/__init__.py +2 -0
  190. reflex/vars/base.py +367 -134
  191. {reflex-0.7.14a6.dist-info → reflex-0.8.0a2.dist-info}/METADATA +12 -5
  192. {reflex-0.7.14a6.dist-info → reflex-0.8.0a2.dist-info}/RECORD +195 -202
  193. reflex/.templates/web/next.config.js +0 -7
  194. reflex/components/base/head.py +0 -20
  195. reflex/components/base/head.pyi +0 -116
  196. reflex/components/next/__init__.py +0 -10
  197. reflex/components/next/base.py +0 -7
  198. reflex/components/next/image.py +0 -117
  199. reflex/components/next/image.pyi +0 -94
  200. reflex/components/next/link.py +0 -20
  201. reflex/components/next/link.pyi +0 -67
  202. reflex/components/next/video.py +0 -38
  203. reflex/components/next/video.pyi +0 -68
  204. reflex/components/suneditor/__init__.py +0 -5
  205. reflex/components/suneditor/editor.py +0 -269
  206. reflex/components/suneditor/editor.pyi +0 -199
  207. reflex/experimental/layout.py +0 -254
  208. reflex/experimental/layout.pyi +0 -814
  209. {reflex-0.7.14a6.dist-info → reflex-0.8.0a2.dist-info}/WHEEL +0 -0
  210. {reflex-0.7.14a6.dist-info → reflex-0.8.0a2.dist-info}/entry_points.txt +0 -0
  211. {reflex-0.7.14a6.dist-info → reflex-0.8.0a2.dist-info}/licenses/LICENSE +0 -0
@@ -10,7 +10,7 @@ from jinja2 import Environment
10
10
 
11
11
  from reflex.components.core.breakpoints import Breakpoints
12
12
  from reflex.components.el.element import Element
13
- from reflex.event import EventType, KeyInputInfo
13
+ from reflex.event import EventType, KeyInputInfo, PointerEventInfo
14
14
  from reflex.utils.imports import ImportDict
15
15
  from reflex.vars.base import Var
16
16
 
@@ -231,9 +231,9 @@ class Button(BaseHTML):
231
231
  autofocus: bool | None = None,
232
232
  custom_attrs: dict[str, Var | Any] | None = None,
233
233
  on_blur: EventType[()] | None = None,
234
- on_click: EventType[()] | None = None,
235
- on_context_menu: EventType[()] | None = None,
236
- on_double_click: EventType[()] | None = None,
234
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
235
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
236
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
237
237
  on_focus: EventType[()] | None = None,
238
238
  on_mount: EventType[()] | None = None,
239
239
  on_mouse_down: EventType[()] | None = None,
@@ -244,6 +244,7 @@ class Button(BaseHTML):
244
244
  on_mouse_over: EventType[()] | None = None,
245
245
  on_mouse_up: EventType[()] | None = None,
246
246
  on_scroll: EventType[()] | None = None,
247
+ on_scroll_end: EventType[()] | None = None,
247
248
  on_unmount: EventType[()] | None = None,
248
249
  **props,
249
250
  ) -> Button:
@@ -487,9 +488,9 @@ class Datalist(BaseHTML):
487
488
  autofocus: bool | None = None,
488
489
  custom_attrs: dict[str, Var | Any] | None = None,
489
490
  on_blur: EventType[()] | None = None,
490
- on_click: EventType[()] | None = None,
491
- on_context_menu: EventType[()] | None = None,
492
- on_double_click: EventType[()] | None = None,
491
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
492
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
493
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
493
494
  on_focus: EventType[()] | None = None,
494
495
  on_mount: EventType[()] | None = None,
495
496
  on_mouse_down: EventType[()] | None = None,
@@ -500,6 +501,7 @@ class Datalist(BaseHTML):
500
501
  on_mouse_over: EventType[()] | None = None,
501
502
  on_mouse_up: EventType[()] | None = None,
502
503
  on_scroll: EventType[()] | None = None,
504
+ on_scroll_end: EventType[()] | None = None,
503
505
  on_unmount: EventType[()] | None = None,
504
506
  **props,
505
507
  ) -> Datalist:
@@ -557,9 +559,9 @@ class Fieldset(Element):
557
559
  autofocus: bool | None = None,
558
560
  custom_attrs: dict[str, Var | Any] | None = None,
559
561
  on_blur: EventType[()] | None = None,
560
- on_click: EventType[()] | None = None,
561
- on_context_menu: EventType[()] | None = None,
562
- on_double_click: EventType[()] | None = None,
562
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
563
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
564
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
563
565
  on_focus: EventType[()] | None = None,
564
566
  on_mount: EventType[()] | None = None,
565
567
  on_mouse_down: EventType[()] | None = None,
@@ -570,6 +572,7 @@ class Fieldset(Element):
570
572
  on_mouse_over: EventType[()] | None = None,
571
573
  on_mouse_up: EventType[()] | None = None,
572
574
  on_scroll: EventType[()] | None = None,
575
+ on_scroll_end: EventType[()] | None = None,
573
576
  on_unmount: EventType[()] | None = None,
574
577
  **props,
575
578
  ) -> Fieldset:
@@ -803,9 +806,9 @@ class Form(BaseHTML):
803
806
  autofocus: bool | None = None,
804
807
  custom_attrs: dict[str, Var | Any] | None = None,
805
808
  on_blur: EventType[()] | None = None,
806
- on_click: EventType[()] | None = None,
807
- on_context_menu: EventType[()] | None = None,
808
- on_double_click: EventType[()] | None = None,
809
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
810
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
811
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
809
812
  on_focus: EventType[()] | None = None,
810
813
  on_mount: EventType[()] | None = None,
811
814
  on_mouse_down: EventType[()] | None = None,
@@ -816,6 +819,7 @@ class Form(BaseHTML):
816
819
  on_mouse_over: EventType[()] | None = None,
817
820
  on_mouse_up: EventType[()] | None = None,
818
821
  on_scroll: EventType[()] | None = None,
822
+ on_scroll_end: EventType[()] | None = None,
819
823
  on_submit: EventType[()] | EventType[dict[str, Any]] | (EventType[()] | EventType[dict[str, str]]) | None = None,
820
824
  on_unmount: EventType[()] | None = None,
821
825
  **props,
@@ -1172,9 +1176,9 @@ class BaseInput(BaseHTML):
1172
1176
  autofocus: bool | None = None,
1173
1177
  custom_attrs: dict[str, Var | Any] | None = None,
1174
1178
  on_blur: EventType[()] | None = None,
1175
- on_click: EventType[()] | None = None,
1176
- on_context_menu: EventType[()] | None = None,
1177
- on_double_click: EventType[()] | None = None,
1179
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1180
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
1181
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1178
1182
  on_focus: EventType[()] | None = None,
1179
1183
  on_key_down: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
1180
1184
  on_key_up: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
@@ -1187,6 +1191,7 @@ class BaseInput(BaseHTML):
1187
1191
  on_mouse_over: EventType[()] | None = None,
1188
1192
  on_mouse_up: EventType[()] | None = None,
1189
1193
  on_scroll: EventType[()] | None = None,
1194
+ on_scroll_end: EventType[()] | None = None,
1190
1195
  on_unmount: EventType[()] | None = None,
1191
1196
  **props,
1192
1197
  ) -> BaseInput:
@@ -1536,9 +1541,9 @@ class CheckboxInput(BaseInput):
1536
1541
  custom_attrs: dict[str, Var | Any] | None = None,
1537
1542
  on_blur: EventType[()] | EventType[bool] | None = None,
1538
1543
  on_change: EventType[()] | EventType[bool] | None = None,
1539
- on_click: EventType[()] | None = None,
1540
- on_context_menu: EventType[()] | None = None,
1541
- on_double_click: EventType[()] | None = None,
1544
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1545
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
1546
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1542
1547
  on_focus: EventType[()] | EventType[bool] | None = None,
1543
1548
  on_key_down: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
1544
1549
  on_key_up: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
@@ -1551,6 +1556,7 @@ class CheckboxInput(BaseInput):
1551
1556
  on_mouse_over: EventType[()] | None = None,
1552
1557
  on_mouse_up: EventType[()] | None = None,
1553
1558
  on_scroll: EventType[()] | None = None,
1559
+ on_scroll_end: EventType[()] | None = None,
1554
1560
  on_unmount: EventType[()] | None = None,
1555
1561
  **props,
1556
1562
  ) -> CheckboxInput:
@@ -1903,9 +1909,9 @@ class ValueNumberInput(BaseInput):
1903
1909
  custom_attrs: dict[str, Var | Any] | None = None,
1904
1910
  on_blur: EventType[()] | EventType[float] | (EventType[()] | EventType[int]) | (EventType[()] | EventType[str]) | None = None,
1905
1911
  on_change: EventType[()] | EventType[float] | (EventType[()] | EventType[int]) | (EventType[()] | EventType[str]) | None = None,
1906
- on_click: EventType[()] | None = None,
1907
- on_context_menu: EventType[()] | None = None,
1908
- on_double_click: EventType[()] | None = None,
1912
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1913
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
1914
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
1909
1915
  on_focus: EventType[()] | EventType[float] | (EventType[()] | EventType[int]) | (EventType[()] | EventType[str]) | None = None,
1910
1916
  on_key_down: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
1911
1917
  on_key_up: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
@@ -1918,6 +1924,7 @@ class ValueNumberInput(BaseInput):
1918
1924
  on_mouse_over: EventType[()] | None = None,
1919
1925
  on_mouse_up: EventType[()] | None = None,
1920
1926
  on_scroll: EventType[()] | None = None,
1927
+ on_scroll_end: EventType[()] | None = None,
1921
1928
  on_unmount: EventType[()] | None = None,
1922
1929
  **props,
1923
1930
  ) -> ValueNumberInput:
@@ -2270,9 +2277,9 @@ class Input(BaseInput):
2270
2277
  custom_attrs: dict[str, Var | Any] | None = None,
2271
2278
  on_blur: EventType[()] | EventType[str] | None = None,
2272
2279
  on_change: EventType[()] | EventType[str] | None = None,
2273
- on_click: EventType[()] | None = None,
2274
- on_context_menu: EventType[()] | None = None,
2275
- on_double_click: EventType[()] | None = None,
2280
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2281
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
2282
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2276
2283
  on_focus: EventType[()] | EventType[str] | None = None,
2277
2284
  on_key_down: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
2278
2285
  on_key_up: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
@@ -2285,6 +2292,7 @@ class Input(BaseInput):
2285
2292
  on_mouse_over: EventType[()] | None = None,
2286
2293
  on_mouse_up: EventType[()] | None = None,
2287
2294
  on_scroll: EventType[()] | None = None,
2295
+ on_scroll_end: EventType[()] | None = None,
2288
2296
  on_unmount: EventType[()] | None = None,
2289
2297
  **props,
2290
2298
  ) -> Input:
@@ -2555,9 +2563,9 @@ class Label(BaseHTML):
2555
2563
  autofocus: bool | None = None,
2556
2564
  custom_attrs: dict[str, Var | Any] | None = None,
2557
2565
  on_blur: EventType[()] | None = None,
2558
- on_click: EventType[()] | None = None,
2559
- on_context_menu: EventType[()] | None = None,
2560
- on_double_click: EventType[()] | None = None,
2566
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2567
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
2568
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2561
2569
  on_focus: EventType[()] | None = None,
2562
2570
  on_mount: EventType[()] | None = None,
2563
2571
  on_mouse_down: EventType[()] | None = None,
@@ -2568,6 +2576,7 @@ class Label(BaseHTML):
2568
2576
  on_mouse_over: EventType[()] | None = None,
2569
2577
  on_mouse_up: EventType[()] | None = None,
2570
2578
  on_scroll: EventType[()] | None = None,
2579
+ on_scroll_end: EventType[()] | None = None,
2571
2580
  on_unmount: EventType[()] | None = None,
2572
2581
  **props,
2573
2582
  ) -> Label:
@@ -2802,9 +2811,9 @@ class Legend(BaseHTML):
2802
2811
  autofocus: bool | None = None,
2803
2812
  custom_attrs: dict[str, Var | Any] | None = None,
2804
2813
  on_blur: EventType[()] | None = None,
2805
- on_click: EventType[()] | None = None,
2806
- on_context_menu: EventType[()] | None = None,
2807
- on_double_click: EventType[()] | None = None,
2814
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2815
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
2816
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
2808
2817
  on_focus: EventType[()] | None = None,
2809
2818
  on_mount: EventType[()] | None = None,
2810
2819
  on_mouse_down: EventType[()] | None = None,
@@ -2815,6 +2824,7 @@ class Legend(BaseHTML):
2815
2824
  on_mouse_over: EventType[()] | None = None,
2816
2825
  on_mouse_up: EventType[()] | None = None,
2817
2826
  on_scroll: EventType[()] | None = None,
2827
+ on_scroll_end: EventType[()] | None = None,
2818
2828
  on_unmount: EventType[()] | None = None,
2819
2829
  **props,
2820
2830
  ) -> Legend:
@@ -3054,9 +3064,9 @@ class Meter(BaseHTML):
3054
3064
  autofocus: bool | None = None,
3055
3065
  custom_attrs: dict[str, Var | Any] | None = None,
3056
3066
  on_blur: EventType[()] | None = None,
3057
- on_click: EventType[()] | None = None,
3058
- on_context_menu: EventType[()] | None = None,
3059
- on_double_click: EventType[()] | None = None,
3067
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3068
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
3069
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3060
3070
  on_focus: EventType[()] | None = None,
3061
3071
  on_mount: EventType[()] | None = None,
3062
3072
  on_mouse_down: EventType[()] | None = None,
@@ -3067,6 +3077,7 @@ class Meter(BaseHTML):
3067
3077
  on_mouse_over: EventType[()] | None = None,
3068
3078
  on_mouse_up: EventType[()] | None = None,
3069
3079
  on_scroll: EventType[()] | None = None,
3080
+ on_scroll_end: EventType[()] | None = None,
3070
3081
  on_unmount: EventType[()] | None = None,
3071
3082
  **props,
3072
3083
  ) -> Meter:
@@ -3308,9 +3319,9 @@ class Optgroup(BaseHTML):
3308
3319
  autofocus: bool | None = None,
3309
3320
  custom_attrs: dict[str, Var | Any] | None = None,
3310
3321
  on_blur: EventType[()] | None = None,
3311
- on_click: EventType[()] | None = None,
3312
- on_context_menu: EventType[()] | None = None,
3313
- on_double_click: EventType[()] | None = None,
3322
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3323
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
3324
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3314
3325
  on_focus: EventType[()] | None = None,
3315
3326
  on_mount: EventType[()] | None = None,
3316
3327
  on_mouse_down: EventType[()] | None = None,
@@ -3321,6 +3332,7 @@ class Optgroup(BaseHTML):
3321
3332
  on_mouse_over: EventType[()] | None = None,
3322
3333
  on_mouse_up: EventType[()] | None = None,
3323
3334
  on_scroll: EventType[()] | None = None,
3335
+ on_scroll_end: EventType[()] | None = None,
3324
3336
  on_unmount: EventType[()] | None = None,
3325
3337
  **props,
3326
3338
  ) -> Optgroup:
@@ -3559,9 +3571,9 @@ class Option(BaseHTML):
3559
3571
  autofocus: bool | None = None,
3560
3572
  custom_attrs: dict[str, Var | Any] | None = None,
3561
3573
  on_blur: EventType[()] | None = None,
3562
- on_click: EventType[()] | None = None,
3563
- on_context_menu: EventType[()] | None = None,
3564
- on_double_click: EventType[()] | None = None,
3574
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3575
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
3576
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3565
3577
  on_focus: EventType[()] | None = None,
3566
3578
  on_mount: EventType[()] | None = None,
3567
3579
  on_mouse_down: EventType[()] | None = None,
@@ -3572,6 +3584,7 @@ class Option(BaseHTML):
3572
3584
  on_mouse_over: EventType[()] | None = None,
3573
3585
  on_mouse_up: EventType[()] | None = None,
3574
3586
  on_scroll: EventType[()] | None = None,
3587
+ on_scroll_end: EventType[()] | None = None,
3575
3588
  on_unmount: EventType[()] | None = None,
3576
3589
  **props,
3577
3590
  ) -> Option:
@@ -3811,9 +3824,9 @@ class Output(BaseHTML):
3811
3824
  autofocus: bool | None = None,
3812
3825
  custom_attrs: dict[str, Var | Any] | None = None,
3813
3826
  on_blur: EventType[()] | None = None,
3814
- on_click: EventType[()] | None = None,
3815
- on_context_menu: EventType[()] | None = None,
3816
- on_double_click: EventType[()] | None = None,
3827
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3828
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
3829
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
3817
3830
  on_focus: EventType[()] | None = None,
3818
3831
  on_mount: EventType[()] | None = None,
3819
3832
  on_mouse_down: EventType[()] | None = None,
@@ -3824,6 +3837,7 @@ class Output(BaseHTML):
3824
3837
  on_mouse_over: EventType[()] | None = None,
3825
3838
  on_mouse_up: EventType[()] | None = None,
3826
3839
  on_scroll: EventType[()] | None = None,
3840
+ on_scroll_end: EventType[()] | None = None,
3827
3841
  on_unmount: EventType[()] | None = None,
3828
3842
  **props,
3829
3843
  ) -> Output:
@@ -4062,9 +4076,9 @@ class Progress(BaseHTML):
4062
4076
  autofocus: bool | None = None,
4063
4077
  custom_attrs: dict[str, Var | Any] | None = None,
4064
4078
  on_blur: EventType[()] | None = None,
4065
- on_click: EventType[()] | None = None,
4066
- on_context_menu: EventType[()] | None = None,
4067
- on_double_click: EventType[()] | None = None,
4079
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4080
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
4081
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4068
4082
  on_focus: EventType[()] | None = None,
4069
4083
  on_mount: EventType[()] | None = None,
4070
4084
  on_mouse_down: EventType[()] | None = None,
@@ -4075,6 +4089,7 @@ class Progress(BaseHTML):
4075
4089
  on_mouse_over: EventType[()] | None = None,
4076
4090
  on_mouse_up: EventType[()] | None = None,
4077
4091
  on_scroll: EventType[()] | None = None,
4092
+ on_scroll_end: EventType[()] | None = None,
4078
4093
  on_unmount: EventType[()] | None = None,
4079
4094
  **props,
4080
4095
  ) -> Progress:
@@ -4321,9 +4336,9 @@ class Select(BaseHTML):
4321
4336
  custom_attrs: dict[str, Var | Any] | None = None,
4322
4337
  on_blur: EventType[()] | None = None,
4323
4338
  on_change: EventType[()] | EventType[str] | None = None,
4324
- on_click: EventType[()] | None = None,
4325
- on_context_menu: EventType[()] | None = None,
4326
- on_double_click: EventType[()] | None = None,
4339
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4340
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
4341
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4327
4342
  on_focus: EventType[()] | None = None,
4328
4343
  on_mount: EventType[()] | None = None,
4329
4344
  on_mouse_down: EventType[()] | None = None,
@@ -4334,6 +4349,7 @@ class Select(BaseHTML):
4334
4349
  on_mouse_over: EventType[()] | None = None,
4335
4350
  on_mouse_up: EventType[()] | None = None,
4336
4351
  on_scroll: EventType[()] | None = None,
4352
+ on_scroll_end: EventType[()] | None = None,
4337
4353
  on_unmount: EventType[()] | None = None,
4338
4354
  **props,
4339
4355
  ) -> Select:
@@ -4599,9 +4615,9 @@ class Textarea(BaseHTML):
4599
4615
  custom_attrs: dict[str, Var | Any] | None = None,
4600
4616
  on_blur: EventType[()] | EventType[str] | None = None,
4601
4617
  on_change: EventType[()] | EventType[str] | None = None,
4602
- on_click: EventType[()] | None = None,
4603
- on_context_menu: EventType[()] | None = None,
4604
- on_double_click: EventType[()] | None = None,
4618
+ on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4619
+ on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
4620
+ on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
4605
4621
  on_focus: EventType[()] | EventType[str] | None = None,
4606
4622
  on_key_down: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
4607
4623
  on_key_up: EventType[()] | EventType[str] | EventType[str, KeyInputInfo] | None = None,
@@ -4614,6 +4630,7 @@ class Textarea(BaseHTML):
4614
4630
  on_mouse_over: EventType[()] | None = None,
4615
4631
  on_mouse_up: EventType[()] | None = None,
4616
4632
  on_scroll: EventType[()] | None = None,
4633
+ on_scroll_end: EventType[()] | None = None,
4617
4634
  on_unmount: EventType[()] | None = None,
4618
4635
  **props,
4619
4636
  ) -> Textarea: