reflex 0.7.11__py3-none-any.whl → 0.7.12__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 (142) hide show
  1. reflex/app.py +8 -4
  2. reflex/components/base/app_wrap.pyi +1 -0
  3. reflex/components/base/body.pyi +2 -0
  4. reflex/components/base/document.pyi +10 -0
  5. reflex/components/base/error_boundary.pyi +2 -0
  6. reflex/components/base/fragment.pyi +2 -0
  7. reflex/components/base/head.pyi +4 -0
  8. reflex/components/base/link.pyi +4 -0
  9. reflex/components/base/meta.pyi +8 -0
  10. reflex/components/base/script.pyi +2 -0
  11. reflex/components/base/strict_mode.pyi +2 -0
  12. reflex/components/component.py +39 -63
  13. reflex/components/core/auto_scroll.pyi +2 -0
  14. reflex/components/core/banner.pyi +10 -0
  15. reflex/components/core/client_side_routing.pyi +4 -0
  16. reflex/components/core/clipboard.pyi +2 -0
  17. reflex/components/core/debounce.pyi +1 -0
  18. reflex/components/core/html.pyi +2 -0
  19. reflex/components/core/sticky.pyi +4 -0
  20. reflex/components/core/upload.pyi +10 -0
  21. reflex/components/datadisplay/code.pyi +4 -0
  22. reflex/components/datadisplay/dataeditor.py +3 -3
  23. reflex/components/datadisplay/dataeditor.pyi +2 -0
  24. reflex/components/datadisplay/shiki_code_block.pyi +6 -0
  25. reflex/components/el/element.pyi +2 -0
  26. reflex/components/el/elements/base.pyi +2 -0
  27. reflex/components/el/elements/forms.pyi +34 -0
  28. reflex/components/el/elements/inline.pyi +56 -0
  29. reflex/components/el/elements/media.pyi +50 -0
  30. reflex/components/el/elements/metadata.pyi +12 -0
  31. reflex/components/el/elements/other.pyi +14 -0
  32. reflex/components/el/elements/scripts.pyi +6 -0
  33. reflex/components/el/elements/sectioning.pyi +30 -0
  34. reflex/components/el/elements/tables.pyi +20 -0
  35. reflex/components/el/elements/typography.pyi +30 -0
  36. reflex/components/gridjs/datatable.pyi +4 -0
  37. reflex/components/lucide/icon.py +3 -1
  38. reflex/components/lucide/icon.pyi +8 -0
  39. reflex/components/markdown/markdown.pyi +2 -0
  40. reflex/components/moment/moment.pyi +2 -0
  41. reflex/components/next/base.pyi +2 -0
  42. reflex/components/next/image.pyi +2 -0
  43. reflex/components/next/link.pyi +2 -0
  44. reflex/components/next/video.pyi +2 -0
  45. reflex/components/plotly/plotly.pyi +18 -0
  46. reflex/components/radix/primitives/accordion.py +1 -1
  47. reflex/components/radix/primitives/accordion.pyi +14 -0
  48. reflex/components/radix/primitives/base.py +0 -2
  49. reflex/components/radix/primitives/base.pyi +4 -0
  50. reflex/components/radix/primitives/drawer.py +1 -1
  51. reflex/components/radix/primitives/drawer.pyi +22 -0
  52. reflex/components/radix/primitives/form.py +1 -1
  53. reflex/components/radix/primitives/form.pyi +20 -0
  54. reflex/components/radix/primitives/progress.py +1 -1
  55. reflex/components/radix/primitives/progress.pyi +10 -0
  56. reflex/components/radix/primitives/slider.py +1 -1
  57. reflex/components/radix/primitives/slider.pyi +10 -0
  58. reflex/components/radix/themes/base.py +1 -1
  59. reflex/components/radix/themes/base.pyi +15 -0
  60. reflex/components/radix/themes/color_mode.pyi +5 -0
  61. reflex/components/radix/themes/components/alert_dialog.pyi +11 -0
  62. reflex/components/radix/themes/components/aspect_ratio.pyi +2 -0
  63. reflex/components/radix/themes/components/avatar.pyi +2 -0
  64. reflex/components/radix/themes/components/badge.pyi +2 -0
  65. reflex/components/radix/themes/components/button.pyi +2 -0
  66. reflex/components/radix/themes/components/callout.pyi +10 -0
  67. reflex/components/radix/themes/components/card.pyi +2 -0
  68. reflex/components/radix/themes/components/checkbox.pyi +6 -0
  69. reflex/components/radix/themes/components/checkbox_cards.pyi +4 -0
  70. reflex/components/radix/themes/components/checkbox_group.pyi +4 -0
  71. reflex/components/radix/themes/components/context_menu.pyi +26 -0
  72. reflex/components/radix/themes/components/data_list.pyi +8 -0
  73. reflex/components/radix/themes/components/dialog.pyi +12 -0
  74. reflex/components/radix/themes/components/dropdown_menu.pyi +14 -0
  75. reflex/components/radix/themes/components/hover_card.pyi +7 -0
  76. reflex/components/radix/themes/components/icon_button.pyi +2 -0
  77. reflex/components/radix/themes/components/inset.pyi +2 -0
  78. reflex/components/radix/themes/components/popover.pyi +6 -0
  79. reflex/components/radix/themes/components/progress.pyi +2 -0
  80. reflex/components/radix/themes/components/radio.pyi +2 -0
  81. reflex/components/radix/themes/components/radio_cards.pyi +4 -0
  82. reflex/components/radix/themes/components/radio_group.pyi +8 -0
  83. reflex/components/radix/themes/components/scroll_area.pyi +2 -0
  84. reflex/components/radix/themes/components/segmented_control.pyi +4 -0
  85. reflex/components/radix/themes/components/select.pyi +18 -0
  86. reflex/components/radix/themes/components/separator.pyi +2 -0
  87. reflex/components/radix/themes/components/skeleton.pyi +2 -0
  88. reflex/components/radix/themes/components/slider.pyi +2 -0
  89. reflex/components/radix/themes/components/spinner.pyi +2 -0
  90. reflex/components/radix/themes/components/switch.pyi +2 -0
  91. reflex/components/radix/themes/components/table.pyi +14 -0
  92. reflex/components/radix/themes/components/tabs.pyi +10 -0
  93. reflex/components/radix/themes/components/text_area.pyi +2 -0
  94. reflex/components/radix/themes/components/text_field.pyi +6 -0
  95. reflex/components/radix/themes/components/tooltip.pyi +2 -0
  96. reflex/components/radix/themes/layout/base.pyi +2 -0
  97. reflex/components/radix/themes/layout/box.pyi +2 -0
  98. reflex/components/radix/themes/layout/center.pyi +2 -0
  99. reflex/components/radix/themes/layout/container.pyi +1 -0
  100. reflex/components/radix/themes/layout/flex.pyi +2 -0
  101. reflex/components/radix/themes/layout/grid.pyi +2 -0
  102. reflex/components/radix/themes/layout/list.pyi +10 -0
  103. reflex/components/radix/themes/layout/section.pyi +2 -0
  104. reflex/components/radix/themes/layout/spacer.pyi +2 -0
  105. reflex/components/radix/themes/layout/stack.py +5 -4
  106. reflex/components/radix/themes/layout/stack.pyi +70 -16
  107. reflex/components/radix/themes/typography/blockquote.pyi +2 -0
  108. reflex/components/radix/themes/typography/code.pyi +2 -0
  109. reflex/components/radix/themes/typography/heading.pyi +2 -0
  110. reflex/components/radix/themes/typography/link.pyi +2 -0
  111. reflex/components/radix/themes/typography/text.pyi +14 -0
  112. reflex/components/react_player/audio.pyi +2 -0
  113. reflex/components/react_player/react_player.pyi +2 -0
  114. reflex/components/react_player/video.pyi +2 -0
  115. reflex/components/recharts/cartesian.pyi +38 -0
  116. reflex/components/recharts/charts.pyi +24 -0
  117. reflex/components/recharts/general.pyi +12 -0
  118. reflex/components/recharts/polar.pyi +12 -0
  119. reflex/components/recharts/recharts.pyi +4 -0
  120. reflex/components/sonner/toast.pyi +2 -0
  121. reflex/components/suneditor/editor.pyi +2 -0
  122. reflex/config.py +3 -0
  123. reflex/constants/compiler.py +12 -6
  124. reflex/constants/installer.py +1 -1
  125. reflex/event.py +21 -0
  126. reflex/experimental/layout.pyi +5 -0
  127. reflex/reflex.py +24 -0
  128. reflex/testing.py +2 -1
  129. reflex/utils/exec.py +5 -0
  130. reflex/utils/format.py +4 -11
  131. reflex/utils/net.py +35 -2
  132. reflex/utils/prerequisites.py +10 -4
  133. reflex/utils/pyi_generator.py +7 -1
  134. reflex/utils/types.py +7 -5
  135. reflex/vars/base.py +7 -8
  136. reflex/vars/object.py +9 -2
  137. {reflex-0.7.11.dist-info → reflex-0.7.12.dist-info}/METADATA +4 -4
  138. {reflex-0.7.11.dist-info → reflex-0.7.12.dist-info}/RECORD +142 -141
  139. scripts/hatch_build.py +50 -0
  140. {reflex-0.7.11.dist-info → reflex-0.7.12.dist-info}/WHEEL +0 -0
  141. {reflex-0.7.11.dist-info → reflex-0.7.12.dist-info}/entry_points.txt +0 -0
  142. {reflex-0.7.11.dist-info → reflex-0.7.12.dist-info}/licenses/LICENSE +0 -0
reflex/vars/base.py CHANGED
@@ -40,7 +40,6 @@ from typing import ( # noqa: UP035
40
40
  )
41
41
 
42
42
  from rich.markup import escape
43
- from sqlalchemy.orm import DeclarativeBase
44
43
  from typing_extensions import deprecated, override
45
44
 
46
45
  from reflex import constants
@@ -171,7 +170,8 @@ class VarData:
171
170
  object.__setattr__(self, "components", tuple(components or []))
172
171
 
173
172
  if hooks and any(hooks.values()):
174
- merged_var_data = VarData.merge(self, *hooks.values())
173
+ # Merge our dependencies first, so they can be referenced.
174
+ merged_var_data = VarData.merge(*hooks.values(), self)
175
175
  if merged_var_data is not None:
176
176
  object.__setattr__(self, "state", merged_var_data.state)
177
177
  object.__setattr__(self, "field_name", merged_var_data.field_name)
@@ -3330,18 +3330,17 @@ def dispatch(
3330
3330
  ).guess_type()
3331
3331
 
3332
3332
 
3333
- V = TypeVar("V")
3334
-
3335
- BASE_TYPE = TypeVar("BASE_TYPE", bound=Base | None)
3336
- SQLA_TYPE = TypeVar("SQLA_TYPE", bound=DeclarativeBase | None)
3337
-
3338
3333
  if TYPE_CHECKING:
3339
3334
  from _typeshed import DataclassInstance
3335
+ from sqlalchemy.orm import DeclarativeBase
3340
3336
 
3337
+ SQLA_TYPE = TypeVar("SQLA_TYPE", bound=DeclarativeBase | None)
3338
+ BASE_TYPE = TypeVar("BASE_TYPE", bound=Base | None)
3341
3339
  DATACLASS_TYPE = TypeVar("DATACLASS_TYPE", bound=DataclassInstance | None)
3340
+ MAPPING_TYPE = TypeVar("MAPPING_TYPE", bound=Mapping | None)
3341
+ V = TypeVar("V")
3342
3342
 
3343
3343
  FIELD_TYPE = TypeVar("FIELD_TYPE")
3344
- MAPPING_TYPE = TypeVar("MAPPING_TYPE", bound=Mapping | None)
3345
3344
 
3346
3345
 
3347
3346
  class Field(Generic[FIELD_TYPE]):
reflex/vars/object.py CHANGED
@@ -7,10 +7,17 @@ import dataclasses
7
7
  import typing
8
8
  from collections.abc import Mapping
9
9
  from inspect import isclass
10
- from typing import Any, NoReturn, TypeVar, get_args, get_type_hints, overload
10
+ from typing import (
11
+ Any,
12
+ NoReturn,
13
+ TypeVar,
14
+ get_args,
15
+ get_type_hints,
16
+ is_typeddict,
17
+ overload,
18
+ )
11
19
 
12
20
  from rich.markup import escape
13
- from typing_extensions import is_typeddict
14
21
 
15
22
  from reflex.utils import types
16
23
  from reflex.utils.exceptions import VarAttributeError
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reflex
3
- Version: 0.7.11
3
+ Version: 0.7.12
4
4
  Summary: Web apps in pure Python.
5
5
  Project-URL: homepage, https://reflex.dev
6
6
  Project-URL: repository, https://github.com/reflex-dev/reflex
@@ -180,7 +180,7 @@ app.add_page(index, title="Reflex:DALL-E")
180
180
  ## Let's break this down.
181
181
 
182
182
  <div align="center">
183
- <img src="docs/images/dalle_colored_code_example.png" alt="Explaining the differences between backend and frontend parts of the DALL-E app." width="900" />
183
+ <img src="https://raw.githubusercontent.com/reflex-dev/reflex/main/docs/images/dalle_colored_code_example.png" alt="Explaining the differences between backend and frontend parts of the DALL-E app." width="900" />
184
184
  </div>
185
185
 
186
186
  ### **Reflex UI**
@@ -270,7 +270,7 @@ Reflex launched in December 2022 with the name Pynecone.
270
270
 
271
271
  Beginning in 2025, [Reflex Cloud](https://cloud.reflex.dev) has launched to provide the best hosting experience for Reflex apps. We will continue to develop it and implement more features.
272
272
 
273
- Reflex has new releases and features coming every other week! Make sure to :star: star and :eyes: watch this repository to stay up to date.
273
+ Reflex has new releases and features coming every week! Make sure to :star: star and :eyes: watch this repository to stay up to date.
274
274
 
275
275
  ## Contributing
276
276
 
@@ -290,4 +290,4 @@ We are actively looking for contributors, no matter your skill level or experien
290
290
 
291
291
  ## License
292
292
 
293
- Reflex is open-source and licensed under the [Apache License 2.0](LICENSE).
293
+ Reflex is open-source and licensed under the [Apache License 2.0](https://raw.githubusercontent.com/reflex-dev/reflex/main/LICENSE).