reflex 0.7.7a2__py3-none-any.whl → 0.7.7.post1__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 (116) hide show
  1. reflex/components/base/app_wrap.pyi +18 -17
  2. reflex/components/base/body.pyi +18 -17
  3. reflex/components/base/document.pyi +82 -81
  4. reflex/components/base/error_boundary.pyi +19 -18
  5. reflex/components/base/fragment.pyi +18 -17
  6. reflex/components/base/head.pyi +34 -33
  7. reflex/components/base/link.pyi +34 -33
  8. reflex/components/base/meta.pyi +66 -65
  9. reflex/components/base/script.pyi +21 -20
  10. reflex/components/base/strict_mode.pyi +18 -17
  11. reflex/components/core/auto_scroll.pyi +18 -17
  12. reflex/components/core/banner.pyi +98 -97
  13. reflex/components/core/client_side_routing.pyi +34 -33
  14. reflex/components/core/clipboard.pyi +19 -18
  15. reflex/components/core/debounce.pyi +20 -19
  16. reflex/components/core/html.pyi +18 -17
  17. reflex/components/core/sticky.pyi +66 -65
  18. reflex/components/core/upload.pyi +86 -85
  19. reflex/components/datadisplay/code.pyi +34 -33
  20. reflex/components/datadisplay/dataeditor.pyi +35 -68
  21. reflex/components/datadisplay/shiki_code_block.pyi +50 -49
  22. reflex/components/el/element.pyi +18 -17
  23. reflex/components/el/elements/base.pyi +18 -17
  24. reflex/components/el/elements/forms.pyi +290 -332
  25. reflex/components/el/elements/inline.pyi +450 -449
  26. reflex/components/el/elements/media.pyi +402 -401
  27. reflex/components/el/elements/metadata.pyi +98 -97
  28. reflex/components/el/elements/other.pyi +114 -113
  29. reflex/components/el/elements/scripts.pyi +50 -49
  30. reflex/components/el/elements/sectioning.pyi +242 -241
  31. reflex/components/el/elements/tables.pyi +162 -161
  32. reflex/components/el/elements/typography.pyi +242 -241
  33. reflex/components/gridjs/datatable.pyi +35 -34
  34. reflex/components/lucide/icon.pyi +50 -49
  35. reflex/components/markdown/markdown.pyi +18 -17
  36. reflex/components/moment/moment.pyi +19 -18
  37. reflex/components/next/base.pyi +18 -17
  38. reflex/components/next/image.pyi +20 -19
  39. reflex/components/next/link.pyi +18 -17
  40. reflex/components/next/video.pyi +18 -17
  41. reflex/components/plotly/plotly.pyi +326 -325
  42. reflex/components/radix/primitives/accordion.pyi +115 -114
  43. reflex/components/radix/primitives/base.pyi +34 -33
  44. reflex/components/radix/primitives/drawer.pyi +187 -186
  45. reflex/components/radix/primitives/form.pyi +168 -182
  46. reflex/components/radix/primitives/progress.pyi +82 -81
  47. reflex/components/radix/primitives/slider.pyi +84 -83
  48. reflex/components/radix/themes/base.pyi +130 -129
  49. reflex/components/radix/themes/color_mode.pyi +51 -50
  50. reflex/components/radix/themes/components/alert_dialog.pyi +118 -117
  51. reflex/components/radix/themes/components/aspect_ratio.pyi +18 -17
  52. reflex/components/radix/themes/components/avatar.pyi +18 -17
  53. reflex/components/radix/themes/components/badge.pyi +18 -17
  54. reflex/components/radix/themes/components/button.pyi +18 -17
  55. reflex/components/radix/themes/components/callout.pyi +82 -81
  56. reflex/components/radix/themes/components/card.pyi +18 -17
  57. reflex/components/radix/themes/components/checkbox.pyi +53 -52
  58. reflex/components/radix/themes/components/checkbox_cards.pyi +34 -33
  59. reflex/components/radix/themes/components/checkbox_group.pyi +34 -33
  60. reflex/components/radix/themes/components/context_menu.pyi +225 -224
  61. reflex/components/radix/themes/components/data_list.pyi +66 -65
  62. reflex/components/radix/themes/components/dialog.pyi +121 -120
  63. reflex/components/radix/themes/components/dropdown_menu.pyi +142 -141
  64. reflex/components/radix/themes/components/hover_card.pyi +68 -67
  65. reflex/components/radix/themes/components/icon_button.pyi +18 -17
  66. reflex/components/radix/themes/components/inset.pyi +18 -17
  67. reflex/components/radix/themes/components/popover.pyi +73 -72
  68. reflex/components/radix/themes/components/progress.pyi +18 -17
  69. reflex/components/radix/themes/components/radio.pyi +18 -17
  70. reflex/components/radix/themes/components/radio_cards.pyi +35 -34
  71. reflex/components/radix/themes/components/radio_group.pyi +67 -66
  72. reflex/components/radix/themes/components/scroll_area.pyi +18 -17
  73. reflex/components/radix/themes/components/segmented_control.pyi +35 -34
  74. reflex/components/radix/themes/components/select.pyi +155 -154
  75. reflex/components/radix/themes/components/separator.pyi +18 -17
  76. reflex/components/radix/themes/components/skeleton.pyi +18 -17
  77. reflex/components/radix/themes/components/slider.pyi +20 -31
  78. reflex/components/radix/themes/components/spinner.pyi +18 -17
  79. reflex/components/radix/themes/components/switch.pyi +19 -18
  80. reflex/components/radix/themes/components/table.pyi +114 -113
  81. reflex/components/radix/themes/components/tabs.pyi +84 -83
  82. reflex/components/radix/themes/components/text_area.pyi +21 -24
  83. reflex/components/radix/themes/components/text_field.pyi +56 -63
  84. reflex/components/radix/themes/components/tooltip.pyi +21 -20
  85. reflex/components/radix/themes/layout/base.pyi +18 -17
  86. reflex/components/radix/themes/layout/box.pyi +18 -17
  87. reflex/components/radix/themes/layout/center.pyi +18 -17
  88. reflex/components/radix/themes/layout/container.pyi +18 -17
  89. reflex/components/radix/themes/layout/flex.pyi +18 -17
  90. reflex/components/radix/themes/layout/grid.pyi +18 -17
  91. reflex/components/radix/themes/layout/list.pyi +82 -81
  92. reflex/components/radix/themes/layout/section.pyi +18 -17
  93. reflex/components/radix/themes/layout/spacer.pyi +18 -17
  94. reflex/components/radix/themes/layout/stack.pyi +50 -49
  95. reflex/components/radix/themes/typography/blockquote.pyi +18 -17
  96. reflex/components/radix/themes/typography/code.pyi +18 -17
  97. reflex/components/radix/themes/typography/heading.pyi +18 -17
  98. reflex/components/radix/themes/typography/link.pyi +18 -17
  99. reflex/components/radix/themes/typography/text.pyi +114 -113
  100. reflex/components/react_player/audio.pyi +34 -36
  101. reflex/components/react_player/react_player.pyi +34 -33
  102. reflex/components/react_player/video.pyi +34 -36
  103. reflex/components/recharts/cartesian.pyi +302 -301
  104. reflex/components/recharts/charts.pyi +177 -176
  105. reflex/components/recharts/general.pyi +99 -98
  106. reflex/components/recharts/polar.pyi +62 -61
  107. reflex/components/recharts/recharts.pyi +34 -33
  108. reflex/components/sonner/toast.pyi +19 -18
  109. reflex/components/suneditor/editor.pyi +27 -28
  110. reflex/experimental/layout.pyi +84 -83
  111. reflex/state.py +27 -6
  112. {reflex-0.7.7a2.dist-info → reflex-0.7.7.post1.dist-info}/METADATA +1 -1
  113. {reflex-0.7.7a2.dist-info → reflex-0.7.7.post1.dist-info}/RECORD +116 -116
  114. {reflex-0.7.7a2.dist-info → reflex-0.7.7.post1.dist-info}/WHEEL +0 -0
  115. {reflex-0.7.7a2.dist-info → reflex-0.7.7.post1.dist-info}/entry_points.txt +0 -0
  116. {reflex-0.7.7a2.dist-info → reflex-0.7.7.post1.dist-info}/licenses/LICENSE +0 -0
@@ -4,7 +4,8 @@
4
4
  # This file was generated by `reflex/utils/pyi_generator.py`!
5
5
  # ------------------------------------------------------
6
6
  import enum
7
- from typing import Any, Dict, Literal, Mapping, Optional, Sequence, overload
7
+ from collections.abc import Mapping, Sequence
8
+ from typing import Any, Literal, overload
8
9
 
9
10
  from reflex.base import Base
10
11
  from reflex.components.component import NoSSRComponent
@@ -107,7 +108,7 @@ class Editor(NoSSRComponent):
107
108
  height: Var[str] | str | None = None,
108
109
  placeholder: Var[str] | str | None = None,
109
110
  auto_focus: Var[bool] | bool | None = None,
110
- set_options: Dict | Var[Dict] | None = None,
111
+ set_options: Var[dict] | dict | None = None,
111
112
  set_all_plugins: Var[bool] | bool | None = None,
112
113
  set_contents: Var[str] | str | None = None,
113
114
  append_contents: Var[str] | str | None = None,
@@ -126,33 +127,31 @@ class Editor(NoSSRComponent):
126
127
  class_name: Any | None = None,
127
128
  autofocus: bool | None = None,
128
129
  custom_attrs: dict[str, Var | Any] | None = None,
129
- on_blur: Optional[EventType[()] | EventType[str]] = None,
130
- on_change: Optional[EventType[()] | EventType[str]] = None,
131
- on_click: Optional[EventType[()]] = None,
132
- on_context_menu: Optional[EventType[()]] = None,
133
- on_copy: Optional[EventType[()]] = None,
134
- on_cut: Optional[EventType[()]] = None,
135
- on_double_click: Optional[EventType[()]] = None,
136
- on_focus: Optional[EventType[()]] = None,
137
- on_input: Optional[EventType[()]] = None,
138
- on_load: Optional[EventType[()] | EventType[bool]] = None,
139
- on_mount: Optional[EventType[()]] = None,
140
- on_mouse_down: Optional[EventType[()]] = None,
141
- on_mouse_enter: Optional[EventType[()]] = None,
142
- on_mouse_leave: Optional[EventType[()]] = None,
143
- on_mouse_move: Optional[EventType[()]] = None,
144
- on_mouse_out: Optional[EventType[()]] = None,
145
- on_mouse_over: Optional[EventType[()]] = None,
146
- on_mouse_up: Optional[EventType[()]] = None,
147
- on_paste: Optional[
148
- EventType[()] | EventType[str] | EventType[str, bool]
149
- ] = None,
150
- on_scroll: Optional[EventType[()]] = None,
151
- on_unmount: Optional[EventType[()]] = None,
152
- toggle_code_view: Optional[EventType[()] | EventType[bool]] = None,
153
- toggle_full_screen: Optional[EventType[()] | EventType[bool]] = None,
130
+ on_blur: EventType[()] | EventType[str] | None = None,
131
+ on_change: EventType[()] | EventType[str] | None = None,
132
+ on_click: EventType[()] | None = None,
133
+ on_context_menu: EventType[()] | None = None,
134
+ on_copy: EventType[()] | None = None,
135
+ on_cut: EventType[()] | None = None,
136
+ on_double_click: EventType[()] | None = None,
137
+ on_focus: EventType[()] | None = None,
138
+ on_input: EventType[()] | None = None,
139
+ on_load: EventType[()] | EventType[bool] | None = None,
140
+ on_mount: EventType[()] | None = None,
141
+ on_mouse_down: EventType[()] | None = None,
142
+ on_mouse_enter: EventType[()] | None = None,
143
+ on_mouse_leave: EventType[()] | None = None,
144
+ on_mouse_move: EventType[()] | None = None,
145
+ on_mouse_out: EventType[()] | None = None,
146
+ on_mouse_over: EventType[()] | None = None,
147
+ on_mouse_up: EventType[()] | None = None,
148
+ on_paste: EventType[()] | EventType[str] | EventType[str, bool] | None = None,
149
+ on_scroll: EventType[()] | None = None,
150
+ on_unmount: EventType[()] | None = None,
151
+ toggle_code_view: EventType[()] | EventType[bool] | None = None,
152
+ toggle_full_screen: EventType[()] | EventType[bool] | None = None,
154
153
  **props,
155
- ) -> "Editor":
154
+ ) -> Editor:
156
155
  """Create an instance of Editor. No children allowed.
157
156
 
158
157
  Args:
@@ -3,7 +3,8 @@
3
3
  # ------------------- DO NOT EDIT ----------------------
4
4
  # This file was generated by `reflex/utils/pyi_generator.py`!
5
5
  # ------------------------------------------------------
6
- from typing import Any, Literal, Mapping, Optional, Sequence, overload
6
+ from collections.abc import Mapping, Sequence
7
+ from typing import Any, Literal, overload
7
8
 
8
9
  from reflex import color
9
10
  from reflex.components.base.fragment import Fragment
@@ -209,23 +210,23 @@ class Sidebar(Box, MemoizationLeaf):
209
210
  class_name: Any | None = None,
210
211
  autofocus: bool | None = None,
211
212
  custom_attrs: dict[str, Var | Any] | None = None,
212
- on_blur: Optional[EventType[()]] = None,
213
- on_click: Optional[EventType[()]] = None,
214
- on_context_menu: Optional[EventType[()]] = None,
215
- on_double_click: Optional[EventType[()]] = None,
216
- on_focus: Optional[EventType[()]] = None,
217
- on_mount: Optional[EventType[()]] = None,
218
- on_mouse_down: Optional[EventType[()]] = None,
219
- on_mouse_enter: Optional[EventType[()]] = None,
220
- on_mouse_leave: Optional[EventType[()]] = None,
221
- on_mouse_move: Optional[EventType[()]] = None,
222
- on_mouse_out: Optional[EventType[()]] = None,
223
- on_mouse_over: Optional[EventType[()]] = None,
224
- on_mouse_up: Optional[EventType[()]] = None,
225
- on_scroll: Optional[EventType[()]] = None,
226
- on_unmount: Optional[EventType[()]] = None,
213
+ on_blur: EventType[()] | None = None,
214
+ on_click: EventType[()] | None = None,
215
+ on_context_menu: EventType[()] | None = None,
216
+ on_double_click: EventType[()] | None = None,
217
+ on_focus: EventType[()] | None = None,
218
+ on_mount: EventType[()] | None = None,
219
+ on_mouse_down: EventType[()] | None = None,
220
+ on_mouse_enter: EventType[()] | None = None,
221
+ on_mouse_leave: EventType[()] | None = None,
222
+ on_mouse_move: EventType[()] | None = None,
223
+ on_mouse_out: EventType[()] | None = None,
224
+ on_mouse_over: EventType[()] | None = None,
225
+ on_mouse_up: EventType[()] | None = None,
226
+ on_scroll: EventType[()] | None = None,
227
+ on_unmount: EventType[()] | None = None,
227
228
  **props,
228
- ) -> "Sidebar":
229
+ ) -> Sidebar:
229
230
  """Create the sidebar component.
230
231
 
231
232
  Args:
@@ -278,25 +279,25 @@ class DrawerSidebar(DrawerRoot):
278
279
  class_name: Any | None = None,
279
280
  autofocus: bool | None = None,
280
281
  custom_attrs: dict[str, Var | Any] | None = None,
281
- on_animation_end: Optional[EventType[()] | EventType[bool]] = None,
282
- on_blur: Optional[EventType[()]] = None,
283
- on_click: Optional[EventType[()]] = None,
284
- on_context_menu: Optional[EventType[()]] = None,
285
- on_double_click: Optional[EventType[()]] = None,
286
- on_focus: Optional[EventType[()]] = None,
287
- on_mount: Optional[EventType[()]] = None,
288
- on_mouse_down: Optional[EventType[()]] = None,
289
- on_mouse_enter: Optional[EventType[()]] = None,
290
- on_mouse_leave: Optional[EventType[()]] = None,
291
- on_mouse_move: Optional[EventType[()]] = None,
292
- on_mouse_out: Optional[EventType[()]] = None,
293
- on_mouse_over: Optional[EventType[()]] = None,
294
- on_mouse_up: Optional[EventType[()]] = None,
295
- on_open_change: Optional[EventType[()] | EventType[bool]] = None,
296
- on_scroll: Optional[EventType[()]] = None,
297
- on_unmount: Optional[EventType[()]] = None,
282
+ on_animation_end: EventType[()] | EventType[bool] | None = None,
283
+ on_blur: EventType[()] | None = None,
284
+ on_click: EventType[()] | None = None,
285
+ on_context_menu: EventType[()] | None = None,
286
+ on_double_click: EventType[()] | None = None,
287
+ on_focus: EventType[()] | None = None,
288
+ on_mount: EventType[()] | None = None,
289
+ on_mouse_down: EventType[()] | None = None,
290
+ on_mouse_enter: EventType[()] | None = None,
291
+ on_mouse_leave: EventType[()] | None = None,
292
+ on_mouse_move: EventType[()] | None = None,
293
+ on_mouse_out: EventType[()] | None = None,
294
+ on_mouse_over: EventType[()] | None = None,
295
+ on_mouse_up: EventType[()] | None = None,
296
+ on_open_change: EventType[()] | EventType[bool] | None = None,
297
+ on_scroll: EventType[()] | None = None,
298
+ on_unmount: EventType[()] | None = None,
298
299
  **props,
299
- ) -> "DrawerSidebar":
300
+ ) -> DrawerSidebar:
300
301
  """Create the sidebar component.
301
302
 
302
303
  Args:
@@ -332,23 +333,23 @@ class SidebarTrigger(Fragment):
332
333
  class_name: Any | None = None,
333
334
  autofocus: bool | None = None,
334
335
  custom_attrs: dict[str, Var | Any] | None = None,
335
- on_blur: Optional[EventType[()]] = None,
336
- on_click: Optional[EventType[()]] = None,
337
- on_context_menu: Optional[EventType[()]] = None,
338
- on_double_click: Optional[EventType[()]] = None,
339
- on_focus: Optional[EventType[()]] = None,
340
- on_mount: Optional[EventType[()]] = None,
341
- on_mouse_down: Optional[EventType[()]] = None,
342
- on_mouse_enter: Optional[EventType[()]] = None,
343
- on_mouse_leave: Optional[EventType[()]] = None,
344
- on_mouse_move: Optional[EventType[()]] = None,
345
- on_mouse_out: Optional[EventType[()]] = None,
346
- on_mouse_over: Optional[EventType[()]] = None,
347
- on_mouse_up: Optional[EventType[()]] = None,
348
- on_scroll: Optional[EventType[()]] = None,
349
- on_unmount: Optional[EventType[()]] = None,
336
+ on_blur: EventType[()] | None = None,
337
+ on_click: EventType[()] | None = None,
338
+ on_context_menu: EventType[()] | None = None,
339
+ on_double_click: EventType[()] | None = None,
340
+ on_focus: EventType[()] | None = None,
341
+ on_mount: EventType[()] | None = None,
342
+ on_mouse_down: EventType[()] | None = None,
343
+ on_mouse_enter: EventType[()] | None = None,
344
+ on_mouse_leave: EventType[()] | None = None,
345
+ on_mouse_move: EventType[()] | None = None,
346
+ on_mouse_out: EventType[()] | None = None,
347
+ on_mouse_over: EventType[()] | None = None,
348
+ on_mouse_up: EventType[()] | None = None,
349
+ on_scroll: EventType[()] | None = None,
350
+ on_unmount: EventType[()] | None = None,
350
351
  **props,
351
- ) -> "SidebarTrigger":
352
+ ) -> SidebarTrigger:
352
353
  """Create the sidebar trigger component.
353
354
 
354
355
  Args:
@@ -555,23 +556,23 @@ class Layout(Box):
555
556
  class_name: Any | None = None,
556
557
  autofocus: bool | None = None,
557
558
  custom_attrs: dict[str, Var | Any] | None = None,
558
- on_blur: Optional[EventType[()]] = None,
559
- on_click: Optional[EventType[()]] = None,
560
- on_context_menu: Optional[EventType[()]] = None,
561
- on_double_click: Optional[EventType[()]] = None,
562
- on_focus: Optional[EventType[()]] = None,
563
- on_mount: Optional[EventType[()]] = None,
564
- on_mouse_down: Optional[EventType[()]] = None,
565
- on_mouse_enter: Optional[EventType[()]] = None,
566
- on_mouse_leave: Optional[EventType[()]] = None,
567
- on_mouse_move: Optional[EventType[()]] = None,
568
- on_mouse_out: Optional[EventType[()]] = None,
569
- on_mouse_over: Optional[EventType[()]] = None,
570
- on_mouse_up: Optional[EventType[()]] = None,
571
- on_scroll: Optional[EventType[()]] = None,
572
- on_unmount: Optional[EventType[()]] = None,
559
+ 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,
563
+ on_focus: EventType[()] | None = None,
564
+ on_mount: EventType[()] | None = None,
565
+ on_mouse_down: EventType[()] | None = None,
566
+ on_mouse_enter: EventType[()] | None = None,
567
+ on_mouse_leave: EventType[()] | None = None,
568
+ on_mouse_move: EventType[()] | None = None,
569
+ on_mouse_out: EventType[()] | None = None,
570
+ on_mouse_over: EventType[()] | None = None,
571
+ on_mouse_up: EventType[()] | None = None,
572
+ on_scroll: EventType[()] | None = None,
573
+ on_unmount: EventType[()] | None = None,
573
574
  **props,
574
- ) -> "Layout":
575
+ ) -> Layout:
575
576
  """Create the layout component.
576
577
 
577
578
  Args:
@@ -781,23 +782,23 @@ class LayoutNamespace(ComponentNamespace):
781
782
  class_name: Any | None = None,
782
783
  autofocus: bool | None = None,
783
784
  custom_attrs: dict[str, Var | Any] | None = None,
784
- on_blur: Optional[EventType[()]] = None,
785
- on_click: Optional[EventType[()]] = None,
786
- on_context_menu: Optional[EventType[()]] = None,
787
- on_double_click: Optional[EventType[()]] = None,
788
- on_focus: Optional[EventType[()]] = None,
789
- on_mount: Optional[EventType[()]] = None,
790
- on_mouse_down: Optional[EventType[()]] = None,
791
- on_mouse_enter: Optional[EventType[()]] = None,
792
- on_mouse_leave: Optional[EventType[()]] = None,
793
- on_mouse_move: Optional[EventType[()]] = None,
794
- on_mouse_out: Optional[EventType[()]] = None,
795
- on_mouse_over: Optional[EventType[()]] = None,
796
- on_mouse_up: Optional[EventType[()]] = None,
797
- on_scroll: Optional[EventType[()]] = None,
798
- on_unmount: Optional[EventType[()]] = None,
785
+ on_blur: EventType[()] | None = None,
786
+ on_click: EventType[()] | None = None,
787
+ on_context_menu: EventType[()] | None = None,
788
+ on_double_click: EventType[()] | None = None,
789
+ on_focus: EventType[()] | None = None,
790
+ on_mount: EventType[()] | None = None,
791
+ on_mouse_down: EventType[()] | None = None,
792
+ on_mouse_enter: EventType[()] | None = None,
793
+ on_mouse_leave: EventType[()] | None = None,
794
+ on_mouse_move: EventType[()] | None = None,
795
+ on_mouse_out: EventType[()] | None = None,
796
+ on_mouse_over: EventType[()] | None = None,
797
+ on_mouse_up: EventType[()] | None = None,
798
+ on_scroll: EventType[()] | None = None,
799
+ on_unmount: EventType[()] | None = None,
799
800
  **props,
800
- ) -> "Layout":
801
+ ) -> Layout:
801
802
  """Create the layout component.
802
803
 
803
804
  Args:
reflex/state.py CHANGED
@@ -1404,6 +1404,29 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow):
1404
1404
  for substate in self.substates.values():
1405
1405
  substate.reset()
1406
1406
 
1407
+ @classmethod
1408
+ @functools.lru_cache
1409
+ def _is_client_storage(cls, prop_name_or_field: str | ModelField) -> bool:
1410
+ """Check if the var is a client storage var.
1411
+
1412
+ Args:
1413
+ prop_name_or_field: The name of the var or the field itself.
1414
+
1415
+ Returns:
1416
+ Whether the var is a client storage var.
1417
+ """
1418
+ if isinstance(prop_name_or_field, str):
1419
+ field = cls.get_fields().get(prop_name_or_field)
1420
+ else:
1421
+ field = prop_name_or_field
1422
+ return field is not None and (
1423
+ isinstance(field.default, ClientStorageBase)
1424
+ or (
1425
+ isinstance(field.type_, type)
1426
+ and issubclass(field.type_, ClientStorageBase)
1427
+ )
1428
+ )
1429
+
1407
1430
  def _reset_client_storage(self):
1408
1431
  """Reset client storage base vars to their default values."""
1409
1432
  # Client-side storage is reset during hydrate so that clearing cookies
@@ -1411,10 +1434,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow):
1411
1434
  fields = self.get_fields()
1412
1435
  for prop_name in self.base_vars:
1413
1436
  field = fields[prop_name]
1414
- if isinstance(field.default, ClientStorageBase) or (
1415
- isinstance(field.type_, type)
1416
- and issubclass(field.type_, ClientStorageBase)
1417
- ):
1437
+ if self._is_client_storage(field):
1418
1438
  setattr(self, prop_name, copy.deepcopy(field.default))
1419
1439
 
1420
1440
  # Recursively reset the substate client storage.
@@ -2361,8 +2381,9 @@ class UpdateVarsInternalState(State):
2361
2381
  for var, value in vars.items():
2362
2382
  state_name, _, var_name = var.rpartition(".")
2363
2383
  var_state_cls = State.get_class_substate(state_name)
2364
- var_state = await self.get_state(var_state_cls)
2365
- setattr(var_state, var_name, value)
2384
+ if var_state_cls._is_client_storage(var_name):
2385
+ var_state = await self.get_state(var_state_cls)
2386
+ setattr(var_state, var_name, value)
2366
2387
 
2367
2388
 
2368
2389
  class OnLoadInternalState(State):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reflex
3
- Version: 0.7.7a2
3
+ Version: 0.7.7.post1
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