reflex 0.6.4a2__py3-none-any.whl → 0.6.5__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.
- reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -14
- reflex/.templates/jinja/web/pages/utils.js.jinja2 +4 -8
- reflex/.templates/web/components/shiki/code.js +16 -11
- reflex/.templates/web/utils/state.js +29 -21
- reflex/__init__.py +4 -0
- reflex/__init__.pyi +4 -0
- reflex/app.py +148 -154
- reflex/app_mixins/lifespan.py +5 -1
- reflex/app_mixins/middleware.py +3 -1
- reflex/app_mixins/mixin.py +3 -2
- reflex/base.py +2 -4
- reflex/compiler/compiler.py +111 -37
- reflex/components/base/app_wrap.pyi +17 -17
- reflex/components/base/bare.py +72 -3
- reflex/components/base/body.pyi +17 -17
- reflex/components/base/document.pyi +81 -81
- reflex/components/base/error_boundary.pyi +25 -18
- reflex/components/base/fragment.pyi +17 -17
- reflex/components/base/head.pyi +33 -33
- reflex/components/base/link.pyi +33 -33
- reflex/components/base/meta.pyi +65 -65
- reflex/components/base/script.py +4 -4
- reflex/components/base/script.pyi +23 -20
- reflex/components/component.py +250 -31
- reflex/components/core/banner.py +1 -1
- reflex/components/core/banner.pyi +81 -81
- reflex/components/core/client_side_routing.pyi +33 -33
- reflex/components/core/clipboard.py +2 -2
- reflex/components/core/clipboard.pyi +24 -18
- reflex/components/core/debounce.py +2 -2
- reflex/components/core/debounce.pyi +18 -18
- reflex/components/core/html.pyi +17 -17
- reflex/components/core/upload.py +90 -28
- reflex/components/core/upload.pyi +128 -72
- reflex/components/datadisplay/code.py +55 -40
- reflex/components/datadisplay/code.pyi +46 -44
- reflex/components/datadisplay/dataeditor.py +21 -20
- reflex/components/datadisplay/dataeditor.pyi +103 -35
- reflex/components/datadisplay/shiki_code_block.py +60 -27
- reflex/components/datadisplay/shiki_code_block.pyi +86 -65
- reflex/components/dynamic.py +9 -5
- reflex/components/el/element.pyi +17 -17
- reflex/components/el/elements/base.pyi +17 -17
- reflex/components/el/elements/forms.py +12 -3
- reflex/components/el/elements/forms.pyi +293 -233
- reflex/components/el/elements/inline.pyi +449 -449
- reflex/components/el/elements/media.pyi +401 -401
- reflex/components/el/elements/metadata.pyi +97 -97
- reflex/components/el/elements/other.pyi +113 -113
- reflex/components/el/elements/scripts.pyi +49 -49
- reflex/components/el/elements/sectioning.pyi +241 -241
- reflex/components/el/elements/tables.pyi +161 -161
- reflex/components/el/elements/typography.pyi +241 -241
- reflex/components/gridjs/datatable.pyi +33 -33
- reflex/components/lucide/icon.py +1 -1
- reflex/components/lucide/icon.pyi +33 -33
- reflex/components/markdown/markdown.py +180 -49
- reflex/components/markdown/markdown.pyi +36 -19
- reflex/components/moment/moment.py +17 -21
- reflex/components/moment/moment.pyi +26 -21
- reflex/components/next/base.pyi +17 -17
- reflex/components/next/image.py +3 -3
- reflex/components/next/image.pyi +21 -19
- reflex/components/next/link.pyi +17 -17
- reflex/components/next/video.pyi +17 -17
- reflex/components/plotly/plotly.py +79 -78
- reflex/components/plotly/plotly.pyi +91 -41
- reflex/components/props.py +34 -0
- reflex/components/radix/primitives/accordion.py +15 -8
- reflex/components/radix/primitives/accordion.pyi +121 -118
- reflex/components/radix/primitives/base.pyi +33 -33
- reflex/components/radix/primitives/drawer.py +41 -20
- reflex/components/radix/primitives/drawer.pyi +279 -190
- reflex/components/radix/primitives/form.py +2 -2
- reflex/components/radix/primitives/form.pyi +200 -167
- reflex/components/radix/primitives/progress.pyi +81 -81
- reflex/components/radix/primitives/slider.pyi +89 -83
- reflex/components/radix/themes/base.py +30 -1
- reflex/components/radix/themes/base.pyi +286 -113
- reflex/components/radix/themes/color_mode.py +17 -9
- reflex/components/radix/themes/color_mode.pyi +68 -56
- reflex/components/radix/themes/components/alert_dialog.py +8 -5
- reflex/components/radix/themes/components/alert_dialog.pyi +125 -117
- reflex/components/radix/themes/components/aspect_ratio.pyi +17 -17
- reflex/components/radix/themes/components/avatar.py +1 -5
- reflex/components/radix/themes/components/avatar.pyi +17 -17
- reflex/components/radix/themes/components/badge.py +1 -5
- reflex/components/radix/themes/components/badge.pyi +17 -17
- reflex/components/radix/themes/components/button.pyi +18 -21
- reflex/components/radix/themes/components/callout.py +1 -4
- reflex/components/radix/themes/components/callout.pyi +81 -81
- reflex/components/radix/themes/components/card.py +1 -3
- reflex/components/radix/themes/components/card.pyi +17 -17
- reflex/components/radix/themes/components/checkbox.py +4 -8
- reflex/components/radix/themes/components/checkbox.pyi +61 -52
- reflex/components/radix/themes/components/checkbox_cards.pyi +33 -33
- reflex/components/radix/themes/components/checkbox_group.pyi +33 -33
- reflex/components/radix/themes/components/context_menu.py +121 -28
- reflex/components/radix/themes/components/context_menu.pyi +250 -147
- reflex/components/radix/themes/components/data_list.pyi +65 -65
- reflex/components/radix/themes/components/dialog.py +11 -11
- reflex/components/radix/themes/components/dialog.pyi +135 -120
- reflex/components/radix/themes/components/dropdown_menu.py +14 -25
- reflex/components/radix/themes/components/dropdown_menu.pyi +157 -145
- reflex/components/radix/themes/components/hover_card.py +19 -7
- reflex/components/radix/themes/components/hover_card.pyi +102 -67
- reflex/components/radix/themes/components/icon_button.pyi +18 -21
- reflex/components/radix/themes/components/inset.py +1 -3
- reflex/components/radix/themes/components/inset.pyi +17 -17
- reflex/components/radix/themes/components/popover.py +22 -13
- reflex/components/radix/themes/components/popover.pyi +98 -72
- reflex/components/radix/themes/components/progress.pyi +17 -17
- reflex/components/radix/themes/components/radio.pyi +17 -17
- reflex/components/radix/themes/components/radio_cards.py +2 -2
- reflex/components/radix/themes/components/radio_cards.pyi +37 -34
- reflex/components/radix/themes/components/radio_group.py +3 -7
- reflex/components/radix/themes/components/radio_group.pyi +69 -66
- reflex/components/radix/themes/components/scroll_area.py +1 -3
- reflex/components/radix/themes/components/scroll_area.pyi +17 -17
- reflex/components/radix/themes/components/segmented_control.pyi +37 -34
- reflex/components/radix/themes/components/select.py +7 -11
- reflex/components/radix/themes/components/select.pyi +175 -154
- reflex/components/radix/themes/components/separator.py +1 -4
- reflex/components/radix/themes/components/separator.pyi +17 -17
- reflex/components/radix/themes/components/skeleton.pyi +17 -17
- reflex/components/radix/themes/components/slider.py +12 -21
- reflex/components/radix/themes/components/slider.pyi +47 -25
- reflex/components/radix/themes/components/spinner.py +1 -4
- reflex/components/radix/themes/components/spinner.pyi +17 -17
- reflex/components/radix/themes/components/switch.py +3 -6
- reflex/components/radix/themes/components/switch.pyi +21 -18
- reflex/components/radix/themes/components/table.py +21 -5
- reflex/components/radix/themes/components/table.pyi +392 -116
- reflex/components/radix/themes/components/tabs.py +3 -6
- reflex/components/radix/themes/components/tabs.pyi +89 -83
- reflex/components/radix/themes/components/text_area.py +1 -5
- reflex/components/radix/themes/components/text_area.pyi +43 -20
- reflex/components/radix/themes/components/text_field.py +1 -5
- reflex/components/radix/themes/components/text_field.pyi +101 -55
- reflex/components/radix/themes/components/tooltip.py +5 -7
- reflex/components/radix/themes/components/tooltip.pyi +25 -22
- reflex/components/radix/themes/layout/base.py +2 -27
- reflex/components/radix/themes/layout/base.pyi +82 -82
- reflex/components/radix/themes/layout/box.pyi +17 -17
- reflex/components/radix/themes/layout/center.pyi +17 -17
- reflex/components/radix/themes/layout/container.pyi +17 -17
- reflex/components/radix/themes/layout/flex.py +1 -6
- reflex/components/radix/themes/layout/flex.pyi +17 -17
- reflex/components/radix/themes/layout/grid.py +1 -6
- reflex/components/radix/themes/layout/grid.pyi +17 -17
- reflex/components/radix/themes/layout/list.py +20 -15
- reflex/components/radix/themes/layout/list.pyi +175 -92
- reflex/components/radix/themes/layout/section.pyi +17 -17
- reflex/components/radix/themes/layout/spacer.pyi +17 -17
- reflex/components/radix/themes/layout/stack.py +6 -6
- reflex/components/radix/themes/layout/stack.pyi +91 -62
- reflex/components/radix/themes/typography/blockquote.py +2 -8
- reflex/components/radix/themes/typography/blockquote.pyi +17 -17
- reflex/components/radix/themes/typography/code.py +4 -10
- reflex/components/radix/themes/typography/code.pyi +19 -18
- reflex/components/radix/themes/typography/heading.py +4 -11
- reflex/components/radix/themes/typography/heading.pyi +19 -18
- reflex/components/radix/themes/typography/link.py +4 -10
- reflex/components/radix/themes/typography/link.pyi +19 -18
- reflex/components/radix/themes/typography/text.py +4 -11
- reflex/components/radix/themes/typography/text.pyi +115 -114
- reflex/components/react_player/audio.pyi +58 -33
- reflex/components/react_player/react_player.py +17 -17
- reflex/components/react_player/react_player.pyi +55 -33
- reflex/components/react_player/video.pyi +58 -33
- reflex/components/recharts/cartesian.py +45 -45
- reflex/components/recharts/cartesian.pyi +389 -304
- reflex/components/recharts/charts.py +22 -22
- reflex/components/recharts/charts.pyi +226 -179
- reflex/components/recharts/general.py +26 -27
- reflex/components/recharts/general.pyi +106 -99
- reflex/components/recharts/polar.py +33 -33
- reflex/components/recharts/polar.pyi +70 -64
- reflex/components/recharts/recharts.pyi +33 -33
- reflex/components/sonner/toast.py +9 -36
- reflex/components/sonner/toast.pyi +20 -24
- reflex/components/suneditor/editor.py +8 -8
- reflex/components/suneditor/editor.pyi +50 -25
- reflex/components/tags/iter_tag.py +1 -10
- reflex/components/tags/tag.py +1 -4
- reflex/config.py +252 -41
- reflex/constants/__init__.py +4 -16
- reflex/constants/base.py +7 -14
- reflex/constants/colors.py +0 -1
- reflex/constants/installer.py +12 -7
- reflex/constants/state.py +4 -0
- reflex/custom_components/custom_components.py +6 -6
- reflex/event.py +486 -241
- reflex/experimental/client_state.py +9 -9
- reflex/experimental/layout.py +2 -2
- reflex/experimental/layout.pyi +95 -87
- reflex/experimental/misc.py +1 -1
- reflex/istate/__init__.py +1 -0
- reflex/istate/proxy.py +33 -0
- reflex/istate/wrappers.py +27 -0
- reflex/model.py +7 -7
- reflex/page.py +2 -1
- reflex/reflex.py +142 -8
- reflex/state.py +133 -46
- reflex/testing.py +9 -7
- reflex/utils/console.py +0 -1
- reflex/utils/exceptions.py +31 -3
- reflex/utils/exec.py +33 -14
- reflex/utils/format.py +15 -12
- reflex/utils/net.py +1 -1
- reflex/utils/path_ops.py +2 -2
- reflex/utils/prerequisites.py +82 -46
- reflex/utils/pyi_generator.py +63 -20
- reflex/utils/registry.py +1 -1
- reflex/utils/serializers.py +75 -36
- reflex/utils/telemetry.py +3 -2
- reflex/utils/types.py +125 -10
- reflex/vars/base.py +131 -119
- reflex/vars/function.py +59 -12
- reflex/vars/number.py +3 -1
- reflex/vars/object.py +30 -24
- reflex/vars/sequence.py +7 -7
- {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/METADATA +3 -3
- reflex-0.6.5.dist-info/RECORD +394 -0
- reflex-0.6.4a2.dist-info/RECORD +0 -391
- {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/LICENSE +0 -0
- {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/WHEEL +0 -0
- {reflex-0.6.4a2.dist-info → reflex-0.6.5.dist-info}/entry_points.txt +0 -0
|
@@ -7,7 +7,7 @@ import dataclasses
|
|
|
7
7
|
from typing import Any, Dict, Optional, Union, overload
|
|
8
8
|
|
|
9
9
|
from reflex.components.component import NoSSRComponent
|
|
10
|
-
from reflex.event import EventType
|
|
10
|
+
from reflex.event import BASE_STATE, EventType
|
|
11
11
|
from reflex.style import Style
|
|
12
12
|
from reflex.utils.imports import ImportDict
|
|
13
13
|
from reflex.vars.base import Var
|
|
@@ -51,31 +51,34 @@ class Moment(NoSSRComponent):
|
|
|
51
51
|
unix: Optional[Union[Var[bool], bool]] = None,
|
|
52
52
|
local: Optional[Union[Var[bool], bool]] = None,
|
|
53
53
|
tz: Optional[Union[Var[str], str]] = None,
|
|
54
|
+
locale: Optional[Union[Var[str], str]] = None,
|
|
54
55
|
style: Optional[Style] = None,
|
|
55
56
|
key: Optional[Any] = None,
|
|
56
57
|
id: Optional[Any] = None,
|
|
57
58
|
class_name: Optional[Any] = None,
|
|
58
59
|
autofocus: Optional[bool] = None,
|
|
59
|
-
custom_attrs: Optional[Dict[str, Union[Var,
|
|
60
|
-
on_blur: Optional[EventType[[]]] = None,
|
|
61
|
-
on_change: Optional[
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
60
|
+
custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
|
|
61
|
+
on_blur: Optional[EventType[[], BASE_STATE]] = None,
|
|
62
|
+
on_change: Optional[
|
|
63
|
+
Union[EventType[[], BASE_STATE], EventType[[str], BASE_STATE]]
|
|
64
|
+
] = None,
|
|
65
|
+
on_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
66
|
+
on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
|
|
67
|
+
on_double_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
68
|
+
on_focus: Optional[EventType[[], BASE_STATE]] = None,
|
|
69
|
+
on_mount: Optional[EventType[[], BASE_STATE]] = None,
|
|
70
|
+
on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
|
|
71
|
+
on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
|
|
72
|
+
on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
|
|
73
|
+
on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
|
|
74
|
+
on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
|
|
75
|
+
on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
|
|
76
|
+
on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
|
|
77
|
+
on_scroll: Optional[EventType[[], BASE_STATE]] = None,
|
|
78
|
+
on_unmount: Optional[EventType[[], BASE_STATE]] = None,
|
|
76
79
|
**props,
|
|
77
80
|
) -> "Moment":
|
|
78
|
-
"""Create
|
|
81
|
+
"""Create the component.
|
|
79
82
|
|
|
80
83
|
Args:
|
|
81
84
|
*children: The children of the component.
|
|
@@ -99,15 +102,17 @@ class Moment(NoSSRComponent):
|
|
|
99
102
|
unix: Tells Moment to parse the given date value as a unix timestamp.
|
|
100
103
|
local: Outputs the result in local time.
|
|
101
104
|
tz: Display the date in the given timezone.
|
|
105
|
+
locale: The locale to use when rendering.
|
|
106
|
+
on_change: Fires when the date changes.
|
|
102
107
|
style: The style of the component.
|
|
103
108
|
key: A unique key for the component.
|
|
104
109
|
id: The id for the component.
|
|
105
110
|
class_name: The class name for the component.
|
|
106
111
|
autofocus: Whether the component should take the focus once the page is loaded
|
|
107
112
|
custom_attrs: custom attribute
|
|
108
|
-
**props: The
|
|
113
|
+
**props: The props of the component.
|
|
109
114
|
|
|
110
115
|
Returns:
|
|
111
|
-
The
|
|
116
|
+
The component.
|
|
112
117
|
"""
|
|
113
118
|
...
|
reflex/components/next/base.pyi
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
from typing import Any, Dict, Optional, Union, overload
|
|
7
7
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
|
-
from reflex.event import EventType
|
|
9
|
+
from reflex.event import BASE_STATE, EventType
|
|
10
10
|
from reflex.style import Style
|
|
11
11
|
from reflex.vars.base import Var
|
|
12
12
|
|
|
@@ -23,22 +23,22 @@ class NextComponent(Component):
|
|
|
23
23
|
id: Optional[Any] = None,
|
|
24
24
|
class_name: Optional[Any] = None,
|
|
25
25
|
autofocus: Optional[bool] = None,
|
|
26
|
-
custom_attrs: Optional[Dict[str, Union[Var,
|
|
27
|
-
on_blur: Optional[EventType[[]]] = None,
|
|
28
|
-
on_click: Optional[EventType[[]]] = None,
|
|
29
|
-
on_context_menu: Optional[EventType[[]]] = None,
|
|
30
|
-
on_double_click: Optional[EventType[[]]] = None,
|
|
31
|
-
on_focus: Optional[EventType[[]]] = None,
|
|
32
|
-
on_mount: Optional[EventType[[]]] = None,
|
|
33
|
-
on_mouse_down: Optional[EventType[[]]] = None,
|
|
34
|
-
on_mouse_enter: Optional[EventType[[]]] = None,
|
|
35
|
-
on_mouse_leave: Optional[EventType[[]]] = None,
|
|
36
|
-
on_mouse_move: Optional[EventType[[]]] = None,
|
|
37
|
-
on_mouse_out: Optional[EventType[[]]] = None,
|
|
38
|
-
on_mouse_over: Optional[EventType[[]]] = None,
|
|
39
|
-
on_mouse_up: Optional[EventType[[]]] = None,
|
|
40
|
-
on_scroll: Optional[EventType[[]]] = None,
|
|
41
|
-
on_unmount: Optional[EventType[[]]] = None,
|
|
26
|
+
custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
|
|
27
|
+
on_blur: Optional[EventType[[], BASE_STATE]] = None,
|
|
28
|
+
on_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
29
|
+
on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
|
|
30
|
+
on_double_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
31
|
+
on_focus: Optional[EventType[[], BASE_STATE]] = None,
|
|
32
|
+
on_mount: Optional[EventType[[], BASE_STATE]] = None,
|
|
33
|
+
on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
|
|
34
|
+
on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
|
|
35
|
+
on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
|
|
36
|
+
on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
|
|
37
|
+
on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
|
|
38
|
+
on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
|
|
39
|
+
on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
|
|
40
|
+
on_scroll: Optional[EventType[[], BASE_STATE]] = None,
|
|
41
|
+
on_unmount: Optional[EventType[[], BASE_STATE]] = None,
|
|
42
42
|
**props,
|
|
43
43
|
) -> "NextComponent":
|
|
44
44
|
"""Create the component.
|
reflex/components/next/image.py
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from typing import Any, Literal, Optional, Union
|
|
4
4
|
|
|
5
|
-
from reflex.event import EventHandler,
|
|
5
|
+
from reflex.event import EventHandler, no_args_event_spec
|
|
6
6
|
from reflex.utils import types
|
|
7
7
|
from reflex.vars.base import Var
|
|
8
8
|
|
|
@@ -56,10 +56,10 @@ class Image(NextComponent):
|
|
|
56
56
|
blurDataURL: Var[str]
|
|
57
57
|
|
|
58
58
|
# Fires when the image has loaded.
|
|
59
|
-
on_load: EventHandler[
|
|
59
|
+
on_load: EventHandler[no_args_event_spec]
|
|
60
60
|
|
|
61
61
|
# Fires when the image has an error.
|
|
62
|
-
on_error: EventHandler[
|
|
62
|
+
on_error: EventHandler[no_args_event_spec]
|
|
63
63
|
|
|
64
64
|
@classmethod
|
|
65
65
|
def create(
|
reflex/components/next/image.pyi
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
# ------------------------------------------------------
|
|
6
6
|
from typing import Any, Dict, Literal, Optional, Union, overload
|
|
7
7
|
|
|
8
|
-
from reflex.event import EventType
|
|
8
|
+
from reflex.event import BASE_STATE, EventType
|
|
9
9
|
from reflex.style import Style
|
|
10
10
|
from reflex.vars.base import Var
|
|
11
11
|
|
|
@@ -36,24 +36,24 @@ class Image(NextComponent):
|
|
|
36
36
|
id: Optional[Any] = None,
|
|
37
37
|
class_name: Optional[Any] = None,
|
|
38
38
|
autofocus: Optional[bool] = None,
|
|
39
|
-
custom_attrs: Optional[Dict[str, Union[Var,
|
|
40
|
-
on_blur: Optional[EventType[[]]] = None,
|
|
41
|
-
on_click: Optional[EventType[[]]] = None,
|
|
42
|
-
on_context_menu: Optional[EventType[[]]] = None,
|
|
43
|
-
on_double_click: Optional[EventType[[]]] = None,
|
|
44
|
-
on_error: Optional[EventType[[]]] = None,
|
|
45
|
-
on_focus: Optional[EventType[[]]] = None,
|
|
46
|
-
on_load: Optional[EventType[[]]] = None,
|
|
47
|
-
on_mount: Optional[EventType[[]]] = None,
|
|
48
|
-
on_mouse_down: Optional[EventType[[]]] = None,
|
|
49
|
-
on_mouse_enter: Optional[EventType[[]]] = None,
|
|
50
|
-
on_mouse_leave: Optional[EventType[[]]] = None,
|
|
51
|
-
on_mouse_move: Optional[EventType[[]]] = None,
|
|
52
|
-
on_mouse_out: Optional[EventType[[]]] = None,
|
|
53
|
-
on_mouse_over: Optional[EventType[[]]] = None,
|
|
54
|
-
on_mouse_up: Optional[EventType[[]]] = None,
|
|
55
|
-
on_scroll: Optional[EventType[[]]] = None,
|
|
56
|
-
on_unmount: Optional[EventType[[]]] = None,
|
|
39
|
+
custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
|
|
40
|
+
on_blur: Optional[EventType[[], BASE_STATE]] = None,
|
|
41
|
+
on_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
42
|
+
on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
|
|
43
|
+
on_double_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
44
|
+
on_error: Optional[EventType[[], BASE_STATE]] = None,
|
|
45
|
+
on_focus: Optional[EventType[[], BASE_STATE]] = None,
|
|
46
|
+
on_load: Optional[EventType[[], BASE_STATE]] = None,
|
|
47
|
+
on_mount: Optional[EventType[[], BASE_STATE]] = None,
|
|
48
|
+
on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
|
|
49
|
+
on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
|
|
50
|
+
on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
|
|
51
|
+
on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
|
|
52
|
+
on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
|
|
53
|
+
on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
|
|
54
|
+
on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
|
|
55
|
+
on_scroll: Optional[EventType[[], BASE_STATE]] = None,
|
|
56
|
+
on_unmount: Optional[EventType[[], BASE_STATE]] = None,
|
|
57
57
|
**props,
|
|
58
58
|
) -> "Image":
|
|
59
59
|
"""Create an Image component from next/image.
|
|
@@ -72,6 +72,8 @@ class Image(NextComponent):
|
|
|
72
72
|
placeholder: A placeholder to use while the image is loading. Possible values are blur, empty, or data:image/.... Defaults to empty.
|
|
73
73
|
loading: Allows passing CSS styles to the underlying image element. style: Var[Any] The loading behavior of the image. Defaults to lazy. Can hurt performance, recommended to use `priority` instead.
|
|
74
74
|
blurDataURL: A Data URL to be used as a placeholder image before the src image successfully loads. Only takes effect when combined with placeholder="blur".
|
|
75
|
+
on_load: Fires when the image has loaded.
|
|
76
|
+
on_error: Fires when the image has an error.
|
|
75
77
|
style: The style of the component.
|
|
76
78
|
key: A unique key for the component.
|
|
77
79
|
id: The id for the component.
|
reflex/components/next/link.pyi
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
from typing import Any, Dict, Optional, Union, overload
|
|
7
7
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
|
-
from reflex.event import EventType
|
|
9
|
+
from reflex.event import BASE_STATE, EventType
|
|
10
10
|
from reflex.style import Style
|
|
11
11
|
from reflex.vars.base import Var
|
|
12
12
|
|
|
@@ -23,22 +23,22 @@ class NextLink(Component):
|
|
|
23
23
|
id: Optional[Any] = None,
|
|
24
24
|
class_name: Optional[Any] = None,
|
|
25
25
|
autofocus: Optional[bool] = None,
|
|
26
|
-
custom_attrs: Optional[Dict[str, Union[Var,
|
|
27
|
-
on_blur: Optional[EventType[[]]] = None,
|
|
28
|
-
on_click: Optional[EventType[[]]] = None,
|
|
29
|
-
on_context_menu: Optional[EventType[[]]] = None,
|
|
30
|
-
on_double_click: Optional[EventType[[]]] = None,
|
|
31
|
-
on_focus: Optional[EventType[[]]] = None,
|
|
32
|
-
on_mount: Optional[EventType[[]]] = None,
|
|
33
|
-
on_mouse_down: Optional[EventType[[]]] = None,
|
|
34
|
-
on_mouse_enter: Optional[EventType[[]]] = None,
|
|
35
|
-
on_mouse_leave: Optional[EventType[[]]] = None,
|
|
36
|
-
on_mouse_move: Optional[EventType[[]]] = None,
|
|
37
|
-
on_mouse_out: Optional[EventType[[]]] = None,
|
|
38
|
-
on_mouse_over: Optional[EventType[[]]] = None,
|
|
39
|
-
on_mouse_up: Optional[EventType[[]]] = None,
|
|
40
|
-
on_scroll: Optional[EventType[[]]] = None,
|
|
41
|
-
on_unmount: Optional[EventType[[]]] = None,
|
|
26
|
+
custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
|
|
27
|
+
on_blur: Optional[EventType[[], BASE_STATE]] = None,
|
|
28
|
+
on_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
29
|
+
on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
|
|
30
|
+
on_double_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
31
|
+
on_focus: Optional[EventType[[], BASE_STATE]] = None,
|
|
32
|
+
on_mount: Optional[EventType[[], BASE_STATE]] = None,
|
|
33
|
+
on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
|
|
34
|
+
on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
|
|
35
|
+
on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
|
|
36
|
+
on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
|
|
37
|
+
on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
|
|
38
|
+
on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
|
|
39
|
+
on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
|
|
40
|
+
on_scroll: Optional[EventType[[], BASE_STATE]] = None,
|
|
41
|
+
on_unmount: Optional[EventType[[], BASE_STATE]] = None,
|
|
42
42
|
**props,
|
|
43
43
|
) -> "NextLink":
|
|
44
44
|
"""Create the component.
|
reflex/components/next/video.pyi
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
from typing import Any, Dict, Optional, Union, overload
|
|
7
7
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
|
-
from reflex.event import EventType
|
|
9
|
+
from reflex.event import BASE_STATE, EventType
|
|
10
10
|
from reflex.style import Style
|
|
11
11
|
from reflex.vars.base import Var
|
|
12
12
|
|
|
@@ -25,22 +25,22 @@ class Video(NextComponent):
|
|
|
25
25
|
id: Optional[Any] = None,
|
|
26
26
|
class_name: Optional[Any] = None,
|
|
27
27
|
autofocus: Optional[bool] = None,
|
|
28
|
-
custom_attrs: Optional[Dict[str, Union[Var,
|
|
29
|
-
on_blur: Optional[EventType[[]]] = None,
|
|
30
|
-
on_click: Optional[EventType[[]]] = None,
|
|
31
|
-
on_context_menu: Optional[EventType[[]]] = None,
|
|
32
|
-
on_double_click: Optional[EventType[[]]] = None,
|
|
33
|
-
on_focus: Optional[EventType[[]]] = None,
|
|
34
|
-
on_mount: Optional[EventType[[]]] = None,
|
|
35
|
-
on_mouse_down: Optional[EventType[[]]] = None,
|
|
36
|
-
on_mouse_enter: Optional[EventType[[]]] = None,
|
|
37
|
-
on_mouse_leave: Optional[EventType[[]]] = None,
|
|
38
|
-
on_mouse_move: Optional[EventType[[]]] = None,
|
|
39
|
-
on_mouse_out: Optional[EventType[[]]] = None,
|
|
40
|
-
on_mouse_over: Optional[EventType[[]]] = None,
|
|
41
|
-
on_mouse_up: Optional[EventType[[]]] = None,
|
|
42
|
-
on_scroll: Optional[EventType[[]]] = None,
|
|
43
|
-
on_unmount: Optional[EventType[[]]] = None,
|
|
28
|
+
custom_attrs: Optional[Dict[str, Union[Var, Any]]] = None,
|
|
29
|
+
on_blur: Optional[EventType[[], BASE_STATE]] = None,
|
|
30
|
+
on_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
31
|
+
on_context_menu: Optional[EventType[[], BASE_STATE]] = None,
|
|
32
|
+
on_double_click: Optional[EventType[[], BASE_STATE]] = None,
|
|
33
|
+
on_focus: Optional[EventType[[], BASE_STATE]] = None,
|
|
34
|
+
on_mount: Optional[EventType[[], BASE_STATE]] = None,
|
|
35
|
+
on_mouse_down: Optional[EventType[[], BASE_STATE]] = None,
|
|
36
|
+
on_mouse_enter: Optional[EventType[[], BASE_STATE]] = None,
|
|
37
|
+
on_mouse_leave: Optional[EventType[[], BASE_STATE]] = None,
|
|
38
|
+
on_mouse_move: Optional[EventType[[], BASE_STATE]] = None,
|
|
39
|
+
on_mouse_out: Optional[EventType[[], BASE_STATE]] = None,
|
|
40
|
+
on_mouse_over: Optional[EventType[[], BASE_STATE]] = None,
|
|
41
|
+
on_mouse_up: Optional[EventType[[], BASE_STATE]] = None,
|
|
42
|
+
on_scroll: Optional[EventType[[], BASE_STATE]] = None,
|
|
43
|
+
on_unmount: Optional[EventType[[], BASE_STATE]] = None,
|
|
44
44
|
**props,
|
|
45
45
|
) -> "Video":
|
|
46
46
|
"""Create a Video component.
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Any, Dict, List
|
|
5
|
+
from typing import Any, Dict, List, Tuple, Union
|
|
6
|
+
|
|
7
|
+
from typing_extensions import TypedDict, TypeVar
|
|
6
8
|
|
|
7
|
-
from reflex.base import Base
|
|
8
9
|
from reflex.components.component import Component, NoSSRComponent
|
|
9
10
|
from reflex.components.core.cond import color_mode_cond
|
|
10
|
-
from reflex.event import EventHandler
|
|
11
|
+
from reflex.event import EventHandler, no_args_event_spec
|
|
11
12
|
from reflex.utils import console
|
|
12
13
|
from reflex.vars.base import LiteralVar, Var
|
|
13
14
|
|
|
@@ -21,19 +22,7 @@ except ImportError:
|
|
|
21
22
|
Template = Any # type: ignore
|
|
22
23
|
|
|
23
24
|
|
|
24
|
-
def
|
|
25
|
-
"""For plotly events with event data and no points.
|
|
26
|
-
|
|
27
|
-
Args:
|
|
28
|
-
e0: The event data.
|
|
29
|
-
|
|
30
|
-
Returns:
|
|
31
|
-
The event key extracted from the event data (if defined).
|
|
32
|
-
"""
|
|
33
|
-
return [Var(_js_expr=f"{e0}?.event")]
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
def _event_points_data_signature(e0: Var) -> List[Any]:
|
|
25
|
+
def _event_points_data_signature(e0: Var) -> Tuple[Var[List[Point]]]:
|
|
37
26
|
"""For plotly events with event data containing a point array.
|
|
38
27
|
|
|
39
28
|
Args:
|
|
@@ -42,51 +31,63 @@ def _event_points_data_signature(e0: Var) -> List[Any]:
|
|
|
42
31
|
Returns:
|
|
43
32
|
The event data and the extracted points.
|
|
44
33
|
"""
|
|
45
|
-
return
|
|
46
|
-
|
|
47
|
-
|
|
34
|
+
return (Var(_js_expr=f"extractPoints({e0}?.points)"),)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
T = TypeVar("T")
|
|
38
|
+
|
|
39
|
+
ItemOrList = Union[T, List[T]]
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class BBox(TypedDict):
|
|
43
|
+
"""Bounding box for a point in a plotly graph."""
|
|
44
|
+
|
|
45
|
+
x0: Union[float, int, None]
|
|
46
|
+
x1: Union[float, int, None]
|
|
47
|
+
y0: Union[float, int, None]
|
|
48
|
+
y1: Union[float, int, None]
|
|
49
|
+
z0: Union[float, int, None]
|
|
50
|
+
z1: Union[float, int, None]
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
class Point(TypedDict):
|
|
54
|
+
"""A point in a plotly graph."""
|
|
55
|
+
|
|
56
|
+
x: Union[float, int, None]
|
|
57
|
+
y: Union[float, int, None]
|
|
58
|
+
z: Union[float, int, None]
|
|
59
|
+
lat: Union[float, int, None]
|
|
60
|
+
lon: Union[float, int, None]
|
|
61
|
+
curveNumber: Union[int, None]
|
|
62
|
+
pointNumber: Union[int, None]
|
|
63
|
+
pointNumbers: Union[List[int], None]
|
|
64
|
+
pointIndex: Union[int, None]
|
|
65
|
+
markerColor: Union[
|
|
66
|
+
ItemOrList[
|
|
67
|
+
ItemOrList[
|
|
68
|
+
Union[
|
|
69
|
+
float,
|
|
70
|
+
int,
|
|
71
|
+
str,
|
|
72
|
+
None,
|
|
73
|
+
]
|
|
74
|
+
]
|
|
75
|
+
],
|
|
76
|
+
None,
|
|
48
77
|
]
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
Args:
|
|
63
|
-
e0: The button click data.
|
|
64
|
-
|
|
65
|
-
Returns:
|
|
66
|
-
The menu, button, and active state.
|
|
67
|
-
"""
|
|
68
|
-
return [e0.menu, e0.button, e0.active]
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
def _passthrough_signature(e0: Var) -> List[Any]:
|
|
72
|
-
"""For plotly events with arbitrary serializable data, passed through directly.
|
|
73
|
-
|
|
74
|
-
Args:
|
|
75
|
-
e0: The event data.
|
|
76
|
-
|
|
77
|
-
Returns:
|
|
78
|
-
The event data.
|
|
79
|
-
"""
|
|
80
|
-
return [e0]
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
def _null_signature() -> List[Any]:
|
|
84
|
-
"""For plotly events with no data or non-serializable data. Nothing passed through.
|
|
85
|
-
|
|
86
|
-
Returns:
|
|
87
|
-
An empty list (nothing passed through).
|
|
88
|
-
"""
|
|
89
|
-
return []
|
|
78
|
+
markerSize: Union[
|
|
79
|
+
ItemOrList[
|
|
80
|
+
ItemOrList[
|
|
81
|
+
Union[
|
|
82
|
+
float,
|
|
83
|
+
int,
|
|
84
|
+
None,
|
|
85
|
+
]
|
|
86
|
+
]
|
|
87
|
+
],
|
|
88
|
+
None,
|
|
89
|
+
]
|
|
90
|
+
bbox: Union[BBox, None]
|
|
90
91
|
|
|
91
92
|
|
|
92
93
|
class Plotly(NoSSRComponent):
|
|
@@ -116,49 +117,49 @@ class Plotly(NoSSRComponent):
|
|
|
116
117
|
use_resize_handler: Var[bool] = LiteralVar.create(True)
|
|
117
118
|
|
|
118
119
|
# Fired after the plot is redrawn.
|
|
119
|
-
on_after_plot: EventHandler[
|
|
120
|
+
on_after_plot: EventHandler[no_args_event_spec]
|
|
120
121
|
|
|
121
122
|
# Fired after the plot was animated.
|
|
122
|
-
on_animated: EventHandler[
|
|
123
|
+
on_animated: EventHandler[no_args_event_spec]
|
|
123
124
|
|
|
124
125
|
# Fired while animating a single frame (does not currently pass data through).
|
|
125
|
-
on_animating_frame: EventHandler[
|
|
126
|
+
on_animating_frame: EventHandler[no_args_event_spec]
|
|
126
127
|
|
|
127
128
|
# Fired when an animation is interrupted (to start a new animation for example).
|
|
128
|
-
on_animation_interrupted: EventHandler[
|
|
129
|
+
on_animation_interrupted: EventHandler[no_args_event_spec]
|
|
129
130
|
|
|
130
131
|
# Fired when the plot is responsively sized.
|
|
131
|
-
on_autosize: EventHandler[
|
|
132
|
+
on_autosize: EventHandler[no_args_event_spec]
|
|
132
133
|
|
|
133
134
|
# Fired whenever mouse moves over a plot.
|
|
134
|
-
on_before_hover: EventHandler[
|
|
135
|
+
on_before_hover: EventHandler[no_args_event_spec]
|
|
135
136
|
|
|
136
137
|
# Fired when a plotly UI button is clicked.
|
|
137
|
-
on_button_clicked: EventHandler[
|
|
138
|
+
on_button_clicked: EventHandler[no_args_event_spec]
|
|
138
139
|
|
|
139
140
|
# Fired when the plot is clicked.
|
|
140
141
|
on_click: EventHandler[_event_points_data_signature]
|
|
141
142
|
|
|
142
143
|
# Fired when a selection is cleared (via double click).
|
|
143
|
-
on_deselect: EventHandler[
|
|
144
|
+
on_deselect: EventHandler[no_args_event_spec]
|
|
144
145
|
|
|
145
146
|
# Fired when the plot is double clicked.
|
|
146
|
-
on_double_click: EventHandler[
|
|
147
|
+
on_double_click: EventHandler[no_args_event_spec]
|
|
147
148
|
|
|
148
149
|
# Fired when a plot element is hovered over.
|
|
149
150
|
on_hover: EventHandler[_event_points_data_signature]
|
|
150
151
|
|
|
151
152
|
# Fired after the plot is layed out (zoom, pan, etc).
|
|
152
|
-
on_relayout: EventHandler[
|
|
153
|
+
on_relayout: EventHandler[no_args_event_spec]
|
|
153
154
|
|
|
154
155
|
# Fired while the plot is being layed out.
|
|
155
|
-
on_relayouting: EventHandler[
|
|
156
|
+
on_relayouting: EventHandler[no_args_event_spec]
|
|
156
157
|
|
|
157
158
|
# Fired after the plot style is changed.
|
|
158
|
-
on_restyle: EventHandler[
|
|
159
|
+
on_restyle: EventHandler[no_args_event_spec]
|
|
159
160
|
|
|
160
161
|
# Fired after the plot is redrawn.
|
|
161
|
-
on_redraw: EventHandler[
|
|
162
|
+
on_redraw: EventHandler[no_args_event_spec]
|
|
162
163
|
|
|
163
164
|
# Fired after selecting plot elements.
|
|
164
165
|
on_selected: EventHandler[_event_points_data_signature]
|
|
@@ -167,10 +168,10 @@ class Plotly(NoSSRComponent):
|
|
|
167
168
|
on_selecting: EventHandler[_event_points_data_signature]
|
|
168
169
|
|
|
169
170
|
# Fired while an animation is occuring.
|
|
170
|
-
on_transitioning: EventHandler[
|
|
171
|
+
on_transitioning: EventHandler[no_args_event_spec]
|
|
171
172
|
|
|
172
173
|
# Fired when a transition is stopped early.
|
|
173
|
-
on_transition_interrupted: EventHandler[
|
|
174
|
+
on_transition_interrupted: EventHandler[no_args_event_spec]
|
|
174
175
|
|
|
175
176
|
# Fired when a hovered element is no longer hovered.
|
|
176
177
|
on_unhover: EventHandler[_event_points_data_signature]
|
|
@@ -216,8 +217,8 @@ const extractPoints = (points) => {
|
|
|
216
217
|
pointNumber: point.pointNumber,
|
|
217
218
|
pointNumbers: point.pointNumbers,
|
|
218
219
|
pointIndex: point.pointIndex,
|
|
219
|
-
|
|
220
|
-
|
|
220
|
+
markerColor: point['marker.color'],
|
|
221
|
+
markerSize: point['marker.size'],
|
|
221
222
|
bbox: bbox,
|
|
222
223
|
})
|
|
223
224
|
})
|
|
@@ -264,7 +265,7 @@ const extractPoints = (points) => {
|
|
|
264
265
|
merge_dicts.append(layout_dict)
|
|
265
266
|
if self.template is not None:
|
|
266
267
|
template_dict = LiteralVar.create({"layout": {"template": self.template}})
|
|
267
|
-
merge_dicts.append(template_dict.
|
|
268
|
+
merge_dicts.append(template_dict._without_data())
|
|
268
269
|
if merge_dicts:
|
|
269
270
|
tag.special_props.append(
|
|
270
271
|
# Merge all dictionaries and spread the result over props.
|