reflex 0.5.9.dev1__tar.gz → 0.5.10__tar.gz

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 (556) hide show
  1. {reflex-0.5.9.dev1 → reflex-0.5.10}/PKG-INFO +2 -1
  2. {reflex-0.5.9.dev1 → reflex-0.5.10}/pyproject.toml +2 -1
  3. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/client_side_routing.js +6 -1
  4. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/__init__.py +21 -2
  5. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/__init__.pyi +0 -1
  6. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app.py +1 -1
  7. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/__init__.py +0 -1
  8. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/__init__.pyi +0 -1
  9. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/markdown/markdown.py +1 -1
  10. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/cartesian.py +3 -0
  11. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/cartesian.pyi +2 -0
  12. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/sonner/toast.py +27 -1
  13. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/sonner/toast.pyi +5 -0
  14. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/base.py +2 -0
  15. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/installer.py +2 -0
  16. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/hooks.py +1 -1
  17. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/reflex.py +0 -15
  18. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/state.py +22 -22
  19. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/testing.py +8 -3
  20. reflex-0.5.10/reflex/utils/net.py +43 -0
  21. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/prerequisites.py +27 -126
  22. reflex-0.5.10/reflex/utils/registry.py +48 -0
  23. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/types.py +1 -1
  24. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/vars.py +4 -2
  25. reflex-0.5.9.dev1/reflex/components/chakra/__init__.py +0 -204
  26. reflex-0.5.9.dev1/reflex/components/chakra/base.py +0 -210
  27. reflex-0.5.9.dev1/reflex/components/chakra/base.pyi +0 -319
  28. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/__init__.py +0 -10
  29. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/badge.py +0 -16
  30. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/badge.pyi +0 -96
  31. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/code.py +0 -11
  32. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/code.pyi +0 -87
  33. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/divider.py +0 -20
  34. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/divider.pyi +0 -100
  35. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/keyboard_key.py +0 -9
  36. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/keyboard_key.pyi +0 -87
  37. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/list.py +0 -60
  38. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/list.pyi +0 -339
  39. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/stat.py +0 -80
  40. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/stat.pyi +0 -477
  41. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/table.py +0 -305
  42. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/table.pyi +0 -737
  43. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/tag.py +0 -85
  44. reflex-0.5.9.dev1/reflex/components/chakra/datadisplay/tag.pyi +0 -433
  45. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/__init__.py +0 -14
  46. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/accordion.py +0 -110
  47. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/accordion.pyi +0 -411
  48. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/tabs.py +0 -117
  49. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/tabs.pyi +0 -496
  50. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/transition.py +0 -73
  51. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/transition.pyi +0 -509
  52. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/visuallyhidden.py +0 -9
  53. reflex-0.5.9.dev1/reflex/components/chakra/disclosure/visuallyhidden.pyi +0 -87
  54. reflex-0.5.9.dev1/reflex/components/chakra/feedback/__init__.py +0 -7
  55. reflex-0.5.9.dev1/reflex/components/chakra/feedback/alert.py +0 -68
  56. reflex-0.5.9.dev1/reflex/components/chakra/feedback/alert.pyi +0 -335
  57. reflex-0.5.9.dev1/reflex/components/chakra/feedback/circularprogress.py +0 -68
  58. reflex-0.5.9.dev1/reflex/components/chakra/feedback/circularprogress.pyi +0 -185
  59. reflex-0.5.9.dev1/reflex/components/chakra/feedback/progress.py +0 -33
  60. reflex-0.5.9.dev1/reflex/components/chakra/feedback/progress.pyi +0 -101
  61. reflex-0.5.9.dev1/reflex/components/chakra/feedback/skeleton.py +0 -70
  62. reflex-0.5.9.dev1/reflex/components/chakra/feedback/skeleton.pyi +0 -271
  63. reflex-0.5.9.dev1/reflex/components/chakra/feedback/spinner.py +0 -25
  64. reflex-0.5.9.dev1/reflex/components/chakra/feedback/spinner.pyi +0 -102
  65. reflex-0.5.9.dev1/reflex/components/chakra/forms/__init__.py +0 -49
  66. reflex-0.5.9.dev1/reflex/components/chakra/forms/button.py +0 -83
  67. reflex-0.5.9.dev1/reflex/components/chakra/forms/button.pyi +0 -262
  68. reflex-0.5.9.dev1/reflex/components/chakra/forms/checkbox.py +0 -77
  69. reflex-0.5.9.dev1/reflex/components/chakra/forms/checkbox.pyi +0 -247
  70. reflex-0.5.9.dev1/reflex/components/chakra/forms/colormodeswitch.py +0 -104
  71. reflex-0.5.9.dev1/reflex/components/chakra/forms/colormodeswitch.pyi +0 -473
  72. reflex-0.5.9.dev1/reflex/components/chakra/forms/date_picker.py +0 -11
  73. reflex-0.5.9.dev1/reflex/components/chakra/forms/date_picker.pyi +0 -129
  74. reflex-0.5.9.dev1/reflex/components/chakra/forms/date_time_picker.py +0 -11
  75. reflex-0.5.9.dev1/reflex/components/chakra/forms/date_time_picker.pyi +0 -129
  76. reflex-0.5.9.dev1/reflex/components/chakra/forms/editable.py +0 -67
  77. reflex-0.5.9.dev1/reflex/components/chakra/forms/editable.pyi +0 -343
  78. reflex-0.5.9.dev1/reflex/components/chakra/forms/email.py +0 -11
  79. reflex-0.5.9.dev1/reflex/components/chakra/forms/email.pyi +0 -129
  80. reflex-0.5.9.dev1/reflex/components/chakra/forms/form.py +0 -103
  81. reflex-0.5.9.dev1/reflex/components/chakra/forms/form.pyi +0 -484
  82. reflex-0.5.9.dev1/reflex/components/chakra/forms/iconbutton.py +0 -38
  83. reflex-0.5.9.dev1/reflex/components/chakra/forms/iconbutton.pyi +0 -108
  84. reflex-0.5.9.dev1/reflex/components/chakra/forms/input.py +0 -130
  85. reflex-0.5.9.dev1/reflex/components/chakra/forms/input.pyi +0 -566
  86. reflex-0.5.9.dev1/reflex/components/chakra/forms/multiselect.py +0 -355
  87. reflex-0.5.9.dev1/reflex/components/chakra/forms/numberinput.py +0 -128
  88. reflex-0.5.9.dev1/reflex/components/chakra/forms/numberinput.pyi +0 -442
  89. reflex-0.5.9.dev1/reflex/components/chakra/forms/password.py +0 -11
  90. reflex-0.5.9.dev1/reflex/components/chakra/forms/password.pyi +0 -129
  91. reflex-0.5.9.dev1/reflex/components/chakra/forms/pininput.py +0 -201
  92. reflex-0.5.9.dev1/reflex/components/chakra/forms/pininput.pyi +0 -215
  93. reflex-0.5.9.dev1/reflex/components/chakra/forms/radio.py +0 -101
  94. reflex-0.5.9.dev1/reflex/components/chakra/forms/radio.pyi +0 -197
  95. reflex-0.5.9.dev1/reflex/components/chakra/forms/rangeslider.py +0 -149
  96. reflex-0.5.9.dev1/reflex/components/chakra/forms/rangeslider.pyi +0 -354
  97. reflex-0.5.9.dev1/reflex/components/chakra/forms/select.py +0 -103
  98. reflex-0.5.9.dev1/reflex/components/chakra/forms/select.pyi +0 -204
  99. reflex-0.5.9.dev1/reflex/components/chakra/forms/slider.py +0 -130
  100. reflex-0.5.9.dev1/reflex/components/chakra/forms/slider.pyi +0 -449
  101. reflex-0.5.9.dev1/reflex/components/chakra/forms/switch.py +0 -49
  102. reflex-0.5.9.dev1/reflex/components/chakra/forms/switch.pyi +0 -159
  103. reflex-0.5.9.dev1/reflex/components/chakra/forms/textarea.py +0 -79
  104. reflex-0.5.9.dev1/reflex/components/chakra/forms/textarea.pyi +0 -123
  105. reflex-0.5.9.dev1/reflex/components/chakra/forms/time_picker.py +0 -11
  106. reflex-0.5.9.dev1/reflex/components/chakra/forms/time_picker.pyi +0 -129
  107. reflex-0.5.9.dev1/reflex/components/chakra/layout/__init__.py +0 -14
  108. reflex-0.5.9.dev1/reflex/components/chakra/layout/aspect_ratio.py +0 -13
  109. reflex-0.5.9.dev1/reflex/components/chakra/layout/aspect_ratio.pyi +0 -89
  110. reflex-0.5.9.dev1/reflex/components/chakra/layout/box.py +0 -31
  111. reflex-0.5.9.dev1/reflex/components/chakra/layout/box.pyi +0 -93
  112. reflex-0.5.9.dev1/reflex/components/chakra/layout/card.py +0 -100
  113. reflex-0.5.9.dev1/reflex/components/chakra/layout/card.pyi +0 -379
  114. reflex-0.5.9.dev1/reflex/components/chakra/layout/center.py +0 -21
  115. reflex-0.5.9.dev1/reflex/components/chakra/layout/center.pyi +0 -239
  116. reflex-0.5.9.dev1/reflex/components/chakra/layout/container.py +0 -13
  117. reflex-0.5.9.dev1/reflex/components/chakra/layout/container.pyi +0 -89
  118. reflex-0.5.9.dev1/reflex/components/chakra/layout/flex.py +0 -33
  119. reflex-0.5.9.dev1/reflex/components/chakra/layout/flex.pyi +0 -101
  120. reflex-0.5.9.dev1/reflex/components/chakra/layout/grid.py +0 -125
  121. reflex-0.5.9.dev1/reflex/components/chakra/layout/grid.pyi +0 -293
  122. reflex-0.5.9.dev1/reflex/components/chakra/layout/spacer.py +0 -9
  123. reflex-0.5.9.dev1/reflex/components/chakra/layout/spacer.pyi +0 -87
  124. reflex-0.5.9.dev1/reflex/components/chakra/layout/stack.py +0 -48
  125. reflex-0.5.9.dev1/reflex/components/chakra/layout/stack.pyi +0 -305
  126. reflex-0.5.9.dev1/reflex/components/chakra/layout/wrap.py +0 -57
  127. reflex-0.5.9.dev1/reflex/components/chakra/layout/wrap.pyi +0 -179
  128. reflex-0.5.9.dev1/reflex/components/chakra/media/__init__.py +0 -7
  129. reflex-0.5.9.dev1/reflex/components/chakra/media/avatar.py +0 -58
  130. reflex-0.5.9.dev1/reflex/components/chakra/media/avatar.pyi +0 -267
  131. reflex-0.5.9.dev1/reflex/components/chakra/media/icon.py +0 -111
  132. reflex-0.5.9.dev1/reflex/components/chakra/media/icon.pyi +0 -171
  133. reflex-0.5.9.dev1/reflex/components/chakra/media/image.py +0 -74
  134. reflex-0.5.9.dev1/reflex/components/chakra/media/image.pyi +0 -118
  135. reflex-0.5.9.dev1/reflex/components/chakra/navigation/__init__.py +0 -18
  136. reflex-0.5.9.dev1/reflex/components/chakra/navigation/breadcrumb.py +0 -98
  137. reflex-0.5.9.dev1/reflex/components/chakra/navigation/breadcrumb.pyi +0 -351
  138. reflex-0.5.9.dev1/reflex/components/chakra/navigation/link.py +0 -62
  139. reflex-0.5.9.dev1/reflex/components/chakra/navigation/link.pyi +0 -105
  140. reflex-0.5.9.dev1/reflex/components/chakra/navigation/linkoverlay.py +0 -22
  141. reflex-0.5.9.dev1/reflex/components/chakra/navigation/linkoverlay.pyi +0 -167
  142. reflex-0.5.9.dev1/reflex/components/chakra/navigation/stepper.py +0 -113
  143. reflex-0.5.9.dev1/reflex/components/chakra/navigation/stepper.pyi +0 -762
  144. reflex-0.5.9.dev1/reflex/components/chakra/overlay/__init__.py +0 -50
  145. reflex-0.5.9.dev1/reflex/components/chakra/overlay/alertdialog.py +0 -153
  146. reflex-0.5.9.dev1/reflex/components/chakra/overlay/alertdialog.pyi +0 -612
  147. reflex-0.5.9.dev1/reflex/components/chakra/overlay/drawer.py +0 -168
  148. reflex-0.5.9.dev1/reflex/components/chakra/overlay/drawer.pyi +0 -652
  149. reflex-0.5.9.dev1/reflex/components/chakra/overlay/menu.py +0 -225
  150. reflex-0.5.9.dev1/reflex/components/chakra/overlay/menu.pyi +0 -708
  151. reflex-0.5.9.dev1/reflex/components/chakra/overlay/modal.py +0 -166
  152. reflex-0.5.9.dev1/reflex/components/chakra/overlay/modal.pyi +0 -600
  153. reflex-0.5.9.dev1/reflex/components/chakra/overlay/popover.py +0 -183
  154. reflex-0.5.9.dev1/reflex/components/chakra/overlay/popover.pyi +0 -757
  155. reflex-0.5.9.dev1/reflex/components/chakra/overlay/tooltip.py +0 -70
  156. reflex-0.5.9.dev1/reflex/components/chakra/overlay/tooltip.pyi +0 -129
  157. reflex-0.5.9.dev1/reflex/components/chakra/typography/__init__.py +0 -10
  158. reflex-0.5.9.dev1/reflex/components/chakra/typography/heading.py +0 -16
  159. reflex-0.5.9.dev1/reflex/components/chakra/typography/heading.pyi +0 -96
  160. reflex-0.5.9.dev1/reflex/components/chakra/typography/highlight.py +0 -23
  161. reflex-0.5.9.dev1/reflex/components/chakra/typography/highlight.pyi +0 -91
  162. reflex-0.5.9.dev1/reflex/components/chakra/typography/span.py +0 -15
  163. reflex-0.5.9.dev1/reflex/components/chakra/typography/span.pyi +0 -89
  164. reflex-0.5.9.dev1/reflex/components/chakra/typography/text.py +0 -18
  165. reflex-0.5.9.dev1/reflex/components/chakra/typography/text.pyi +0 -91
  166. reflex-0.5.9.dev1/reflex/components/media/__init__.py +0 -1
  167. reflex-0.5.9.dev1/reflex/components/media/icon.py +0 -3
  168. {reflex-0.5.9.dev1 → reflex-0.5.10}/LICENSE +0 -0
  169. {reflex-0.5.9.dev1 → reflex-0.5.10}/README.md +0 -0
  170. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/blank/assets/favicon.ico +0 -0
  171. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/blank/code/__init__.py +0 -0
  172. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/blank/code/blank.py +0 -0
  173. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/.gitignore +0 -0
  174. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/assets/favicon.ico +0 -0
  175. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/assets/github.svg +0 -0
  176. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/assets/icon.svg +0 -0
  177. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/assets/logo.svg +0 -0
  178. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/assets/paneleft.svg +0 -0
  179. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/__init__.py +0 -0
  180. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/demo.py +0 -0
  181. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/__init__.py +0 -0
  182. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/chatapp.py +0 -0
  183. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/datatable.py +0 -0
  184. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/forms.py +0 -0
  185. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/graphing.py +0 -0
  186. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/pages/home.py +0 -0
  187. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/sidebar.py +0 -0
  188. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/state.py +0 -0
  189. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/states/form_state.py +0 -0
  190. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/states/pie_state.py +0 -0
  191. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/styles.py +0 -0
  192. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/__init__.py +0 -0
  193. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/__init__.py +0 -0
  194. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/chat.py +0 -0
  195. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/loading_icon.py +0 -0
  196. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/modal.py +0 -0
  197. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/navbar.py +0 -0
  198. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/components/sidebar.py +0 -0
  199. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/state.py +0 -0
  200. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/apps/demo/code/webui/styles.py +0 -0
  201. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -0
  202. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/custom_components/README.md.jinja2 +0 -0
  203. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/custom_components/__init__.py.jinja2 +0 -0
  204. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/custom_components/demo_app.py.jinja2 +0 -0
  205. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +0 -0
  206. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/custom_components/src.py.jinja2 +0 -0
  207. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/package.json.jinja2 +0 -0
  208. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -0
  209. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -0
  210. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -0
  211. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -0
  212. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -0
  213. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/index.js.jinja2 +0 -0
  214. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -0
  215. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -0
  216. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -0
  217. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -0
  218. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/tailwind.config.js.jinja2 +0 -0
  219. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/utils/context.js.jinja2 +0 -0
  220. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -0
  221. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/.gitignore +0 -0
  222. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/components/reflex/chakra_color_mode_provider.js +0 -0
  223. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +0 -0
  224. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/jsconfig.json +0 -0
  225. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/next.config.js +0 -0
  226. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/postcss.config.js +0 -0
  227. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/styles/tailwind.css +0 -0
  228. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/helpers/dataeditor.js +0 -0
  229. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/helpers/debounce.js +0 -0
  230. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/helpers/paste.js +0 -0
  231. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/helpers/range.js +0 -0
  232. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/helpers/throttle.js +0 -0
  233. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/.templates/web/utils/state.js +0 -0
  234. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/__main__.py +0 -0
  235. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/admin.py +0 -0
  236. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app_mixins/__init__.py +0 -0
  237. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app_mixins/lifespan.py +0 -0
  238. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app_mixins/middleware.py +0 -0
  239. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app_mixins/mixin.py +0 -0
  240. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/app_module_for_backend.py +0 -0
  241. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/base.py +0 -0
  242. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/compiler/__init__.py +0 -0
  243. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/compiler/compiler.py +0 -0
  244. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/compiler/templates.py +0 -0
  245. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/compiler/utils.py +0 -0
  246. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/__init__.py +0 -0
  247. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/__init__.pyi +0 -0
  248. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/app_wrap.py +0 -0
  249. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/app_wrap.pyi +0 -0
  250. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/bare.py +0 -0
  251. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/body.py +0 -0
  252. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/body.pyi +0 -0
  253. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/document.py +0 -0
  254. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/document.pyi +0 -0
  255. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/error_boundary.py +0 -0
  256. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/error_boundary.pyi +0 -0
  257. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/fragment.py +0 -0
  258. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/fragment.pyi +0 -0
  259. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/head.py +0 -0
  260. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/head.pyi +0 -0
  261. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/link.py +0 -0
  262. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/link.pyi +0 -0
  263. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/meta.py +0 -0
  264. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/meta.pyi +0 -0
  265. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/script.py +0 -0
  266. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/base/script.pyi +0 -0
  267. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/component.py +0 -0
  268. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/__init__.py +0 -0
  269. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/__init__.pyi +0 -0
  270. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/banner.py +0 -0
  271. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/banner.pyi +0 -0
  272. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/breakpoints.py +0 -0
  273. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/client_side_routing.py +0 -0
  274. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/client_side_routing.pyi +0 -0
  275. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/clipboard.py +0 -0
  276. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/clipboard.pyi +0 -0
  277. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/colors.py +0 -0
  278. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/cond.py +0 -0
  279. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/debounce.py +0 -0
  280. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/debounce.pyi +0 -0
  281. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/foreach.py +0 -0
  282. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/html.py +0 -0
  283. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/html.pyi +0 -0
  284. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/layout/__init__.py +0 -0
  285. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/match.py +0 -0
  286. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/responsive.py +0 -0
  287. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/upload.py +0 -0
  288. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/core/upload.pyi +0 -0
  289. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/__init__.py +0 -0
  290. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/__init__.pyi +0 -0
  291. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/code.py +0 -0
  292. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/code.pyi +0 -0
  293. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/dataeditor.py +0 -0
  294. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/dataeditor.pyi +0 -0
  295. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/datadisplay/logo.py +0 -0
  296. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/__init__.py +0 -0
  297. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/__init__.pyi +0 -0
  298. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/constants/__init__.py +0 -0
  299. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/constants/html.py +0 -0
  300. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/constants/react.py +0 -0
  301. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/constants/reflex.py +0 -0
  302. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/element.py +0 -0
  303. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/element.pyi +0 -0
  304. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/__init__.py +0 -0
  305. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/__init__.pyi +0 -0
  306. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/base.py +0 -0
  307. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/base.pyi +0 -0
  308. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/forms.py +0 -0
  309. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/forms.pyi +0 -0
  310. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/inline.py +0 -0
  311. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/inline.pyi +0 -0
  312. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/media.py +0 -0
  313. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/media.pyi +0 -0
  314. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/metadata.py +0 -0
  315. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/metadata.pyi +0 -0
  316. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/other.py +0 -0
  317. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/other.pyi +0 -0
  318. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/scripts.py +0 -0
  319. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/scripts.pyi +0 -0
  320. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/sectioning.py +0 -0
  321. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/sectioning.pyi +0 -0
  322. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/tables.py +0 -0
  323. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/tables.pyi +0 -0
  324. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/typography.py +0 -0
  325. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/el/elements/typography.pyi +0 -0
  326. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/gridjs/__init__.py +0 -0
  327. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/gridjs/datatable.py +0 -0
  328. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/gridjs/datatable.pyi +0 -0
  329. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/literals.py +0 -0
  330. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/lucide/__init__.py +0 -0
  331. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/lucide/icon.py +0 -0
  332. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/lucide/icon.pyi +0 -0
  333. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/markdown/__init__.py +0 -0
  334. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/markdown/markdown.pyi +0 -0
  335. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/moment/__init__.py +0 -0
  336. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/moment/moment.py +0 -0
  337. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/moment/moment.pyi +0 -0
  338. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/__init__.py +0 -0
  339. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/base.py +0 -0
  340. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/base.pyi +0 -0
  341. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/image.py +0 -0
  342. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/image.pyi +0 -0
  343. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/link.py +0 -0
  344. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/link.pyi +0 -0
  345. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/video.py +0 -0
  346. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/next/video.pyi +0 -0
  347. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/plotly/__init__.py +0 -0
  348. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/plotly/plotly.py +0 -0
  349. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/plotly/plotly.pyi +0 -0
  350. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/props.py +0 -0
  351. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/__init__.py +0 -0
  352. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/__init__.pyi +0 -0
  353. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/__init__.py +0 -0
  354. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/__init__.pyi +0 -0
  355. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/accordion.py +0 -0
  356. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/accordion.pyi +0 -0
  357. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/base.py +0 -0
  358. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/base.pyi +0 -0
  359. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/drawer.py +0 -0
  360. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/drawer.pyi +0 -0
  361. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/form.py +0 -0
  362. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/form.pyi +0 -0
  363. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/progress.py +0 -0
  364. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/progress.pyi +0 -0
  365. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/slider.py +0 -0
  366. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/primitives/slider.pyi +0 -0
  367. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/__init__.py +0 -0
  368. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/__init__.pyi +0 -0
  369. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/base.py +0 -0
  370. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/base.pyi +0 -0
  371. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/color_mode.py +0 -0
  372. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/color_mode.pyi +0 -0
  373. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/__init__.py +0 -0
  374. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/__init__.pyi +0 -0
  375. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/alert_dialog.py +0 -0
  376. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/alert_dialog.pyi +0 -0
  377. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/aspect_ratio.py +0 -0
  378. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/aspect_ratio.pyi +0 -0
  379. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/avatar.py +0 -0
  380. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/avatar.pyi +0 -0
  381. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/badge.py +0 -0
  382. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/badge.pyi +0 -0
  383. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/button.py +0 -0
  384. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/button.pyi +0 -0
  385. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/callout.py +0 -0
  386. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/callout.pyi +0 -0
  387. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/card.py +0 -0
  388. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/card.pyi +0 -0
  389. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox.py +0 -0
  390. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox.pyi +0 -0
  391. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox_cards.py +0 -0
  392. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox_cards.pyi +0 -0
  393. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox_group.py +0 -0
  394. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/checkbox_group.pyi +0 -0
  395. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/context_menu.py +0 -0
  396. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/context_menu.pyi +0 -0
  397. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/data_list.py +0 -0
  398. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/data_list.pyi +0 -0
  399. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/dialog.py +0 -0
  400. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/dialog.pyi +0 -0
  401. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/dropdown_menu.py +0 -0
  402. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/dropdown_menu.pyi +0 -0
  403. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/hover_card.py +0 -0
  404. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/hover_card.pyi +0 -0
  405. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/icon_button.py +0 -0
  406. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/icon_button.pyi +0 -0
  407. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/inset.py +0 -0
  408. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/inset.pyi +0 -0
  409. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/popover.py +0 -0
  410. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/popover.pyi +0 -0
  411. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/progress.py +0 -0
  412. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/progress.pyi +0 -0
  413. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio.py +0 -0
  414. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio.pyi +0 -0
  415. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio_cards.py +0 -0
  416. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio_cards.pyi +0 -0
  417. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio_group.py +0 -0
  418. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/radio_group.pyi +0 -0
  419. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/scroll_area.py +0 -0
  420. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/scroll_area.pyi +0 -0
  421. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/segmented_control.py +0 -0
  422. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/segmented_control.pyi +0 -0
  423. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/select.py +0 -0
  424. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/select.pyi +0 -0
  425. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/separator.py +0 -0
  426. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/separator.pyi +0 -0
  427. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/skeleton.py +0 -0
  428. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/skeleton.pyi +0 -0
  429. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/slider.py +0 -0
  430. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/slider.pyi +0 -0
  431. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/spinner.py +0 -0
  432. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/spinner.pyi +0 -0
  433. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/switch.py +0 -0
  434. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/switch.pyi +0 -0
  435. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/table.py +0 -0
  436. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/table.pyi +0 -0
  437. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/tabs.py +0 -0
  438. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/tabs.pyi +0 -0
  439. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/text_area.py +0 -0
  440. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/text_area.pyi +0 -0
  441. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/text_field.py +0 -0
  442. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/text_field.pyi +0 -0
  443. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/tooltip.py +0 -0
  444. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/components/tooltip.pyi +0 -0
  445. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/__init__.py +0 -0
  446. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/__init__.pyi +0 -0
  447. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/base.py +0 -0
  448. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/base.pyi +0 -0
  449. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/box.py +0 -0
  450. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/box.pyi +0 -0
  451. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/center.py +0 -0
  452. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/center.pyi +0 -0
  453. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/container.py +0 -0
  454. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/container.pyi +0 -0
  455. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/flex.py +0 -0
  456. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/flex.pyi +0 -0
  457. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/grid.py +0 -0
  458. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/grid.pyi +0 -0
  459. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/list.py +0 -0
  460. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/list.pyi +0 -0
  461. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/section.py +0 -0
  462. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/section.pyi +0 -0
  463. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/spacer.py +0 -0
  464. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/spacer.pyi +0 -0
  465. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/stack.py +0 -0
  466. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/layout/stack.pyi +0 -0
  467. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/__init__.py +0 -0
  468. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/__init__.pyi +0 -0
  469. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/base.py +0 -0
  470. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/blockquote.py +0 -0
  471. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/blockquote.pyi +0 -0
  472. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/code.py +0 -0
  473. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/code.pyi +0 -0
  474. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/heading.py +0 -0
  475. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/heading.pyi +0 -0
  476. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/link.py +0 -0
  477. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/link.pyi +0 -0
  478. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/text.py +0 -0
  479. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/radix/themes/typography/text.pyi +0 -0
  480. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/__init__.py +0 -0
  481. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/audio.py +0 -0
  482. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/audio.pyi +0 -0
  483. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/react_player.py +0 -0
  484. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/react_player.pyi +0 -0
  485. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/video.py +0 -0
  486. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/react_player/video.pyi +0 -0
  487. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/__init__.py +0 -0
  488. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/__init__.pyi +0 -0
  489. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/charts.py +0 -0
  490. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/charts.pyi +0 -0
  491. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/general.py +0 -0
  492. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/general.pyi +0 -0
  493. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/polar.py +0 -0
  494. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/polar.pyi +0 -0
  495. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/recharts.py +0 -0
  496. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/recharts/recharts.pyi +0 -0
  497. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/sonner/__init__.py +0 -0
  498. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/suneditor/__init__.py +0 -0
  499. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/suneditor/editor.py +0 -0
  500. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/suneditor/editor.pyi +0 -0
  501. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/__init__.py +0 -0
  502. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/cond_tag.py +0 -0
  503. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/iter_tag.py +0 -0
  504. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/match_tag.py +0 -0
  505. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/tag.py +0 -0
  506. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/components/tags/tagless.py +0 -0
  507. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/config.py +0 -0
  508. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/__init__.py +0 -0
  509. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/colors.py +0 -0
  510. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/compiler.py +0 -0
  511. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/config.py +0 -0
  512. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/custom_components.py +0 -0
  513. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/event.py +0 -0
  514. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/route.py +0 -0
  515. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/constants/style.py +0 -0
  516. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/custom_components/__init__.py +0 -0
  517. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/custom_components/custom_components.py +0 -0
  518. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/event.py +0 -0
  519. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/__init__.py +0 -0
  520. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/assets.py +0 -0
  521. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/client_state.py +0 -0
  522. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/layout.py +0 -0
  523. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/layout.pyi +0 -0
  524. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/misc.py +0 -0
  525. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/__init__.py +0 -0
  526. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/base.py +0 -0
  527. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/function.py +0 -0
  528. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/number.py +0 -0
  529. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/object.py +0 -0
  530. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/experimental/vars/sequence.py +0 -0
  531. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/middleware/__init__.py +0 -0
  532. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/middleware/hydrate_middleware.py +0 -0
  533. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/middleware/middleware.py +0 -0
  534. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/model.py +0 -0
  535. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/page.py +0 -0
  536. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/route.py +0 -0
  537. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/style.py +0 -0
  538. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/__init__.py +0 -0
  539. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/build.py +0 -0
  540. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/codespaces.py +0 -0
  541. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/compat.py +0 -0
  542. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/console.py +0 -0
  543. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/exceptions.py +0 -0
  544. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/exec.py +0 -0
  545. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/export.py +0 -0
  546. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/format.py +0 -0
  547. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/imports.py +0 -0
  548. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/lazy_loader.py +0 -0
  549. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/path_ops.py +0 -0
  550. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/processes.py +0 -0
  551. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/pyi_generator.py +0 -0
  552. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/redir.py +0 -0
  553. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/serializers.py +0 -0
  554. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/telemetry.py +0 -0
  555. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/utils/watch.py +0 -0
  556. {reflex-0.5.9.dev1 → reflex-0.5.10}/reflex/vars.pyi +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: reflex
3
- Version: 0.5.9.dev1
3
+ Version: 0.5.10
4
4
  Summary: Web apps in pure Python.
5
5
  Home-page: https://reflex.dev
6
6
  License: Apache-2.0
@@ -34,6 +34,7 @@ Requires-Dist: python-engineio (!=4.6.0)
34
34
  Requires-Dist: python-multipart (>=0.0.5,<0.1)
35
35
  Requires-Dist: python-socketio (>=5.7.0,<6.0)
36
36
  Requires-Dist: redis (>=4.3.5,<6.0)
37
+ Requires-Dist: reflex-chakra (>=0.1.1a1,<0.6)
37
38
  Requires-Dist: reflex-hosting-cli (>=0.1.2,<2.0)
38
39
  Requires-Dist: rich (>=13.0.0,<14.0)
39
40
  Requires-Dist: setuptools (>=69.1.1,<70.2)
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "reflex"
3
- version = "0.5.9.dev1"
3
+ version = "0.5.10"
4
4
  description = "Web apps in pure Python."
5
5
  license = "Apache-2.0"
6
6
  authors = [
@@ -61,6 +61,7 @@ httpx = ">=0.25.1,<1.0"
61
61
  twine = ">=4.0.0,<6.0"
62
62
  tomlkit = ">=0.12.4,<1.0"
63
63
  lazy_loader = ">=0.4"
64
+ reflex-chakra = ">=0.1.1a1,<0.6"
64
65
 
65
66
  [tool.poetry.group.dev.dependencies]
66
67
  pytest = ">=7.1.2,<8.0"
@@ -23,7 +23,12 @@ export const useClientSideRouting = () => {
23
23
  router.replace({
24
24
  pathname: window.location.pathname,
25
25
  query: window.location.search.slice(1),
26
- })
26
+ }).then(()=>{
27
+ // Check if the current route is /404
28
+ if (router.pathname === '/404') {
29
+ setRouteNotFound(true); // Mark as an actual 404
30
+ }
31
+ })
27
32
  .catch((e) => {
28
33
  setRouteNotFound(true) // navigation failed, so this is a real 404
29
34
  })
@@ -270,7 +270,7 @@ _MAPPING: dict = {
270
270
  "EditorButtonList",
271
271
  "EditorOptions",
272
272
  ],
273
- "components": ["el", "chakra", "radix", "lucide", "recharts", "next"],
273
+ "components": ["el", "radix", "lucide", "recharts", "next"],
274
274
  "components.markdown": ["markdown"],
275
275
  **RADIX_MAPPING,
276
276
  "components.plotly": ["plotly"],
@@ -342,8 +342,27 @@ _SUBMODULES: set[str] = {
342
342
  "compiler",
343
343
  }
344
344
  _SUBMOD_ATTRS: dict = _MAPPING
345
- __getattr__, __dir__, __all__ = lazy_loader.attach(
345
+ getattr, __dir__, __all__ = lazy_loader.attach(
346
346
  __name__,
347
347
  submodules=_SUBMODULES,
348
348
  submod_attrs=_SUBMOD_ATTRS,
349
349
  )
350
+
351
+
352
+ def __getattr__(name):
353
+ if name == "chakra":
354
+ from reflex.utils import console
355
+
356
+ console.deprecate(
357
+ "rx.chakra",
358
+ reason="and moved to a separate package. "
359
+ "To continue using Chakra UI components, install the `reflex-chakra` package via `pip install "
360
+ "reflex-chakra`.",
361
+ deprecation_version="0.6.0",
362
+ removal_version="0.7.0",
363
+ dedupe=True,
364
+ )
365
+ import reflex_chakra as rc
366
+
367
+ return rc
368
+ return getattr(name)
@@ -21,7 +21,6 @@ from .admin import AdminDash as AdminDash
21
21
  from .app import App as App
22
22
  from .app import UploadFile as UploadFile
23
23
  from .base import Base as Base
24
- from .components import chakra as chakra
25
24
  from .components import el as el
26
25
  from .components import lucide as lucide
27
26
  from .components import next as next
@@ -125,8 +125,8 @@ def default_backend_exception_handler(exception: Exception) -> EventSpec:
125
125
  )
126
126
  if Toaster.is_used:
127
127
  return toast(
128
+ "An error occurred.",
128
129
  level="error",
129
- title="An error occurred.",
130
130
  description="<br/>".join(error_message),
131
131
  position="top-center",
132
132
  id="backend_error",
@@ -16,7 +16,6 @@ _SUBMODULES: set[str] = {
16
16
  "react_player",
17
17
  "sonner",
18
18
  "suneditor",
19
- "chakra",
20
19
  "el",
21
20
  "base",
22
21
  "recharts",
@@ -4,7 +4,6 @@
4
4
  # ------------------------------------------------------
5
5
 
6
6
  from . import base as base
7
- from . import chakra as chakra
8
7
  from . import core as core
9
8
  from . import datadisplay as datadisplay
10
9
  from . import el as el
@@ -70,7 +70,7 @@ def get_base_component_map() -> dict[str, Callable]:
70
70
  "a": lambda value: Link.create(value),
71
71
  "code": lambda value: Code.create(value),
72
72
  "codeblock": lambda value, **props: CodeBlock.create(
73
- value, margin_y="1em", **props
73
+ value, margin_y="1em", wrap_long_lines=True, **props
74
74
  ),
75
75
  }
76
76
 
@@ -138,6 +138,9 @@ class XAxis(Axis):
138
138
  # Ensures that all datapoints within a chart contribute to its domain calculation, even when they are hidden
139
139
  include_hidden: Var[bool] = Var.create_safe(False)
140
140
 
141
+ # The range of the axis. Work best in conjuction with allow_data_overflow.
142
+ domain: Var[List]
143
+
141
144
 
142
145
  class YAxis(Axis):
143
146
  """A YAxis component in Recharts."""
@@ -192,6 +192,7 @@ class XAxis(Axis):
192
192
  ] = None,
193
193
  x_axis_id: Optional[Union[Var[Union[int, str]], str, int]] = None,
194
194
  include_hidden: Optional[Union[Var[bool], bool]] = None,
195
+ domain: Optional[Union[Var[List], List]] = None,
195
196
  data_key: Optional[Union[Var[Union[int, str]], str, int]] = None,
196
197
  hide: Optional[Union[Var[bool], bool]] = None,
197
198
  width: Optional[Union[Var[Union[int, str]], str, int]] = None,
@@ -320,6 +321,7 @@ class XAxis(Axis):
320
321
  orientation: The orientation of axis 'top' | 'bottom'
321
322
  x_axis_id: The id of x-axis which is corresponding to the data.
322
323
  include_hidden: Ensures that all datapoints within a chart contribute to its domain calculation, even when they are hidden
324
+ domain: The range of the axis. Work best in conjuction with allow_data_overflow.
323
325
  data_key: The key of data displayed in the axis.
324
326
  hide: If set true, the axis do not display in the chart.
325
327
  width: The width of axis which is usually calculated internally.
@@ -4,6 +4,8 @@ from __future__ import annotations
4
4
 
5
5
  from typing import Any, ClassVar, Literal, Optional, Union
6
6
 
7
+ from pydantic import ValidationError
8
+
7
9
  from reflex.base import Base
8
10
  from reflex.components.component import Component, ComponentNamespace
9
11
  from reflex.components.lucide.icon import Icon
@@ -27,7 +29,6 @@ LiteralPosition = Literal[
27
29
  "bottom-right",
28
30
  ]
29
31
 
30
-
31
32
  toast_ref = Var.create_safe("refs['__toast']", _var_is_string=False)
32
33
 
33
34
 
@@ -128,6 +129,24 @@ class ToastProps(PropsBase):
128
129
  # Function that gets called when the toast disappears automatically after it's timeout (duration` prop).
129
130
  on_auto_close: Optional[Any]
130
131
 
132
+ def __init__(self, **kwargs):
133
+ """Initialize the props.
134
+
135
+ Args:
136
+ kwargs: Kwargs to initialize the props.
137
+
138
+ Raises:
139
+ ValueError: If invalid props are passed on instantiation.
140
+ """
141
+ try:
142
+ super().__init__(**kwargs)
143
+ except ValidationError as e:
144
+ invalid_fields = ", ".join([error["loc"][0] for error in e.errors()]) # type: ignore
145
+ supported_props_str = ", ".join(f'"{field}"' for field in self.get_fields())
146
+ raise ValueError(
147
+ f"Invalid prop(s) {invalid_fields} for rx.toast. Supported props are {supported_props_str}"
148
+ ) from None
149
+
131
150
  def dict(self, *args, **kwargs) -> dict[str, Any]:
132
151
  """Convert the object to a dictionary.
133
152
 
@@ -159,6 +178,13 @@ class ToastProps(PropsBase):
159
178
  )
160
179
  return d
161
180
 
181
+ class Config:
182
+ """Pydantic config."""
183
+
184
+ arbitrary_types_allowed = True
185
+ use_enum_values = True
186
+ extra = "forbid"
187
+
162
188
 
163
189
  class Toaster(Component):
164
190
  """A Toaster Component for displaying toast notifications."""
@@ -51,6 +51,11 @@ class ToastProps(PropsBase):
51
51
 
52
52
  def dict(self, *args, **kwargs) -> dict[str, Any]: ...
53
53
 
54
+ class Config:
55
+ arbitrary_types_allowed = True
56
+ use_enum_values = True
57
+ extra = "forbid"
58
+
54
59
  class Toaster(Component):
55
60
  is_used: ClassVar[bool] = False
56
61
 
@@ -77,6 +77,8 @@ class Reflex(SimpleNamespace):
77
77
  os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
78
78
  )
79
79
 
80
+ RELEASES_URL = f"https://api.github.com/repos/reflex-dev/templates/releases"
81
+
80
82
 
81
83
  class ReflexHostingCLI(SimpleNamespace):
82
84
  """Base constants concerning Reflex Hosting CLI."""
@@ -51,6 +51,8 @@ class Bun(SimpleNamespace):
51
51
  WINDOWS_INSTALL_URL = (
52
52
  "https://raw.githubusercontent.com/reflex-dev/reflex/main/scripts/install.ps1"
53
53
  )
54
+ # Path of the bunfig file
55
+ CONFIG_PATH = "bunfig.toml"
54
56
 
55
57
 
56
58
  # FNM config.
@@ -7,7 +7,7 @@ from reflex.vars import Var, VarData
7
7
 
8
8
 
9
9
  def _compose_react_imports(tags: list[str]) -> dict[str, list[ImportVar]]:
10
- return {"react": [ImportVar(tag=tag, install=False) for tag in tags]}
10
+ return {"react": [ImportVar(tag=tag) for tag in tags]}
11
11
 
12
12
 
13
13
  def const(name, value) -> Var:
@@ -85,10 +85,6 @@ def _init(
85
85
  prerequisites.initialize_reflex_user_directory()
86
86
  prerequisites.ensure_reflex_installation_id()
87
87
 
88
- # When upgrading to 0.4, show migration instructions.
89
- if prerequisites.should_show_rx_chakra_migration_instructions():
90
- prerequisites.show_rx_chakra_migration_instructions()
91
-
92
88
  # Set up the web project.
93
89
  prerequisites.initialize_frontend_dependencies()
94
90
 
@@ -458,17 +454,6 @@ def makemigrations(
458
454
  )
459
455
 
460
456
 
461
- @script_cli.command(
462
- name="keep-chakra",
463
- help="Change all rx.<component> references to rx.chakra.<component>, to preserve Chakra UI usage.",
464
- )
465
- def keep_chakra():
466
- """Change all rx.<component> references to rx.chakra.<component>, to preserve Chakra UI usage."""
467
- from reflex.utils import prerequisites
468
-
469
- prerequisites.migrate_to_rx_chakra()
470
-
471
-
472
457
  @cli.command()
473
458
  def deploy(
474
459
  key: Optional[str] = typer.Option(
@@ -55,6 +55,7 @@ from reflex.utils import console, format, prerequisites, types
55
55
  from reflex.utils.exceptions import ImmutableStateError, LockExpiredError
56
56
  from reflex.utils.exec import is_testing_env
57
57
  from reflex.utils.serializers import SerializedType, serialize, serializer
58
+ from reflex.utils.types import override
58
59
  from reflex.vars import BaseVar, ComputedVar, Var, computed_var
59
60
 
60
61
  if TYPE_CHECKING:
@@ -1232,6 +1233,17 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow):
1232
1233
  parent_states_with_name.append((parent_state.get_full_name(), parent_state))
1233
1234
  return parent_states_with_name
1234
1235
 
1236
+ def _get_root_state(self) -> BaseState:
1237
+ """Get the root state of the state tree.
1238
+
1239
+ Returns:
1240
+ The root state of the state tree.
1241
+ """
1242
+ parent_state = self
1243
+ while parent_state.parent_state is not None:
1244
+ parent_state = parent_state.parent_state
1245
+ return parent_state
1246
+
1235
1247
  async def _populate_parent_states(self, target_state_cls: Type[BaseState]):
1236
1248
  """Populate substates in the tree between the target_state_cls and common ancestor of this state.
1237
1249
 
@@ -1291,10 +1303,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow):
1291
1303
  Returns:
1292
1304
  The instance of state_cls associated with this state's client_token.
1293
1305
  """
1294
- if self.parent_state is None:
1295
- root_state = self
1296
- else:
1297
- root_state = self._get_parent_states()[-1][1]
1306
+ root_state = self._get_root_state()
1298
1307
  return root_state.get_substate(state_cls.get_full_name().split("."))
1299
1308
 
1300
1309
  async def _get_state_from_redis(self, state_cls: Type[BaseState]) -> BaseState:
@@ -1445,9 +1454,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow):
1445
1454
  The valid StateUpdate containing the events and final flag.
1446
1455
  """
1447
1456
  # get the delta from the root of the state tree
1448
- state = self
1449
- while state.parent_state is not None:
1450
- state = state.parent_state
1457
+ state = self._get_root_state()
1451
1458
 
1452
1459
  token = self.router.session.client_token
1453
1460
 
@@ -2368,6 +2375,7 @@ class StateManagerMemory(StateManager):
2368
2375
  "_states_locks": {"exclude": True},
2369
2376
  }
2370
2377
 
2378
+ @override
2371
2379
  async def get_state(self, token: str) -> BaseState:
2372
2380
  """Get the state for a token.
2373
2381
 
@@ -2383,6 +2391,7 @@ class StateManagerMemory(StateManager):
2383
2391
  self.states[token] = self.state(_reflex_internal_init=True)
2384
2392
  return self.states[token]
2385
2393
 
2394
+ @override
2386
2395
  async def set_state(self, token: str, state: BaseState):
2387
2396
  """Set the state for a token.
2388
2397
 
@@ -2392,6 +2401,7 @@ class StateManagerMemory(StateManager):
2392
2401
  """
2393
2402
  pass
2394
2403
 
2404
+ @override
2395
2405
  @contextlib.asynccontextmanager
2396
2406
  async def modify_state(self, token: str) -> AsyncIterator[BaseState]:
2397
2407
  """Modify the state for a token while holding exclusive lock.
@@ -2483,19 +2493,6 @@ class StateManagerRedis(StateManager):
2483
2493
  # Only warn about each state class size once.
2484
2494
  _warned_about_state_size: ClassVar[Set[str]] = set()
2485
2495
 
2486
- def _get_root_state(self, state: BaseState) -> BaseState:
2487
- """Chase parent_state pointers to find an instance of the top-level state.
2488
-
2489
- Args:
2490
- state: The state to start from.
2491
-
2492
- Returns:
2493
- An instance of the top-level state (self.state).
2494
- """
2495
- while type(state) != self.state and state.parent_state is not None:
2496
- state = state.parent_state
2497
- return state
2498
-
2499
2496
  async def _get_parent_state(self, token: str) -> BaseState | None:
2500
2497
  """Get the parent state for the state requested in the token.
2501
2498
 
@@ -2558,6 +2555,7 @@ class StateManagerRedis(StateManager):
2558
2555
  for substate_name, substate_task in tasks.items():
2559
2556
  state.substates[substate_name] = await substate_task
2560
2557
 
2558
+ @override
2561
2559
  async def get_state(
2562
2560
  self,
2563
2561
  token: str,
@@ -2609,7 +2607,7 @@ class StateManagerRedis(StateManager):
2609
2607
  # To retain compatibility with previous implementation, by default, we return
2610
2608
  # the top-level state by chasing `parent_state` pointers up the tree.
2611
2609
  if top_level:
2612
- return self._get_root_state(state)
2610
+ return state._get_root_state()
2613
2611
  return state
2614
2612
 
2615
2613
  # TODO: dedupe the following logic with the above block
@@ -2631,7 +2629,7 @@ class StateManagerRedis(StateManager):
2631
2629
  # To retain compatibility with previous implementation, by default, we return
2632
2630
  # the top-level state by chasing `parent_state` pointers up the tree.
2633
2631
  if top_level:
2634
- return self._get_root_state(state)
2632
+ return state._get_root_state()
2635
2633
  return state
2636
2634
 
2637
2635
  def _warn_if_too_large(
@@ -2657,6 +2655,7 @@ class StateManagerRedis(StateManager):
2657
2655
  )
2658
2656
  self._warned_about_state_size.add(state_full_name)
2659
2657
 
2658
+ @override
2660
2659
  async def set_state(
2661
2660
  self,
2662
2661
  token: str,
@@ -2717,6 +2716,7 @@ class StateManagerRedis(StateManager):
2717
2716
  for t in tasks:
2718
2717
  await t
2719
2718
 
2719
+ @override
2720
2720
  @contextlib.asynccontextmanager
2721
2721
  async def modify_state(self, token: str) -> AsyncIterator[BaseState]:
2722
2722
  """Modify the state for a token while holding exclusive lock.
@@ -115,7 +115,7 @@ class AppHarness:
115
115
 
116
116
  app_name: str
117
117
  app_source: Optional[
118
- types.FunctionType | types.ModuleType | str | functools.partial
118
+ types.FunctionType | types.ModuleType | str | functools.partial[Any]
119
119
  ]
120
120
  app_path: pathlib.Path
121
121
  app_module_path: pathlib.Path
@@ -134,7 +134,9 @@ class AppHarness:
134
134
  def create(
135
135
  cls,
136
136
  root: pathlib.Path,
137
- app_source: Optional[types.FunctionType | types.ModuleType | str] = None,
137
+ app_source: Optional[
138
+ types.FunctionType | types.ModuleType | str | functools.partial[Any]
139
+ ] = None,
138
140
  app_name: Optional[str] = None,
139
141
  ) -> "AppHarness":
140
142
  """Create an AppHarness instance at root.
@@ -274,7 +276,10 @@ class AppHarness:
274
276
  before_decorated_pages = reflex.app.DECORATED_PAGES[self.app_name].copy()
275
277
  # Ensure the AppHarness test does not skip State assignment due to running via pytest
276
278
  os.environ.pop(reflex.constants.PYTEST_CURRENT_TEST, None)
277
- self.app_module = reflex.utils.prerequisites.get_compiled_app(reload=True)
279
+ self.app_module = reflex.utils.prerequisites.get_compiled_app(
280
+ # Do not reload the module for pre-existing apps (only apps generated from source)
281
+ reload=self.app_source is not None
282
+ )
278
283
  # Save the pages that were added during testing
279
284
  self._decorated_pages = [
280
285
  p
@@ -0,0 +1,43 @@
1
+ """Helpers for downloading files from the network."""
2
+
3
+ import os
4
+
5
+ import httpx
6
+
7
+ from . import console
8
+
9
+
10
+ def _httpx_verify_kwarg() -> bool:
11
+ """Get the value of the HTTPX verify keyword argument.
12
+
13
+ Returns:
14
+ True if SSL verification is enabled, False otherwise
15
+ """
16
+ ssl_no_verify = os.environ.get("SSL_NO_VERIFY", "").lower() in ["true", "1", "yes"]
17
+ return not ssl_no_verify
18
+
19
+
20
+ def get(url: str, **kwargs) -> httpx.Response:
21
+ """Make an HTTP GET request.
22
+
23
+ Args:
24
+ url: The URL to request.
25
+ **kwargs: Additional keyword arguments to pass to httpx.get.
26
+
27
+ Returns:
28
+ The response object.
29
+
30
+ Raises:
31
+ httpx.ConnectError: If the connection cannot be established.
32
+ """
33
+ kwargs.setdefault("verify", _httpx_verify_kwarg())
34
+ try:
35
+ return httpx.get(url, **kwargs)
36
+ except httpx.ConnectError as err:
37
+ if "CERTIFICATE_VERIFY_FAILED" in str(err):
38
+ # If the error is a certificate verification error, recommend mitigating steps.
39
+ console.error(
40
+ f"Certificate verification failed for {url}. Set environment variable SSL_CERT_FILE to the "
41
+ "path of the certificate file or SSL_NO_VERIFY=1 to disable verification."
42
+ )
43
+ raise