reflex 0.6.0a1__py3-none-any.whl → 0.6.0a3__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/custom_components/pyproject.toml.jinja2 +2 -2
- reflex/.templates/jinja/web/pages/_app.js.jinja2 +1 -1
- reflex/.templates/jinja/web/pages/utils.js.jinja2 +2 -2
- reflex/__init__.py +8 -2
- reflex/__init__.pyi +2 -1
- reflex/app.py +10 -4
- reflex/base.py +1 -1
- reflex/compiler/compiler.py +2 -2
- reflex/compiler/utils.py +3 -3
- reflex/components/base/app_wrap.py +2 -2
- reflex/components/base/app_wrap.pyi +17 -27
- reflex/components/base/bare.py +4 -5
- reflex/components/base/body.pyi +17 -27
- reflex/components/base/document.pyi +81 -131
- reflex/components/base/error_boundary.py +6 -7
- reflex/components/base/error_boundary.pyi +20 -33
- reflex/components/base/fragment.pyi +17 -27
- reflex/components/base/head.pyi +33 -53
- reflex/components/base/link.py +1 -1
- reflex/components/base/link.pyi +33 -54
- reflex/components/base/meta.pyi +65 -105
- reflex/components/base/script.py +1 -2
- reflex/components/base/script.pyi +21 -38
- reflex/components/component.py +45 -47
- reflex/components/core/banner.py +23 -27
- reflex/components/core/banner.pyi +134 -171
- reflex/components/core/breakpoints.py +3 -1
- reflex/components/core/client_side_routing.py +2 -3
- reflex/components/core/client_side_routing.pyi +33 -54
- reflex/components/core/clipboard.py +2 -1
- reflex/components/core/clipboard.pyi +20 -33
- reflex/components/core/cond.py +5 -5
- reflex/components/core/debounce.py +5 -5
- reflex/components/core/debounce.pyi +20 -33
- reflex/components/core/foreach.py +3 -4
- reflex/components/core/html.py +1 -1
- reflex/components/core/html.pyi +35 -46
- reflex/components/core/match.py +17 -17
- reflex/components/core/upload.py +17 -23
- reflex/components/core/upload.pyi +78 -124
- reflex/components/datadisplay/code.py +9 -10
- reflex/components/datadisplay/code.pyi +302 -412
- reflex/components/datadisplay/dataeditor.py +8 -10
- reflex/components/datadisplay/dataeditor.pyi +40 -53
- reflex/components/el/element.pyi +17 -27
- reflex/components/el/elements/base.py +1 -1
- reflex/components/el/elements/base.pyi +34 -45
- reflex/components/el/elements/forms.py +16 -16
- reflex/components/el/elements/forms.pyi +554 -707
- reflex/components/el/elements/inline.py +1 -1
- reflex/components/el/elements/inline.pyi +937 -1218
- reflex/components/el/elements/media.py +1 -1
- reflex/components/el/elements/media.pyi +786 -997
- reflex/components/el/elements/metadata.py +3 -6
- reflex/components/el/elements/metadata.pyi +181 -242
- reflex/components/el/elements/other.py +1 -1
- reflex/components/el/elements/other.pyi +235 -306
- reflex/components/el/elements/scripts.py +1 -1
- reflex/components/el/elements/scripts.pyi +109 -140
- reflex/components/el/elements/sectioning.py +0 -2
- reflex/components/el/elements/sectioning.pyi +496 -647
- reflex/components/el/elements/tables.py +1 -1
- reflex/components/el/elements/tables.pyi +351 -452
- reflex/components/el/elements/typography.py +1 -1
- reflex/components/el/elements/typography.pyi +506 -657
- reflex/components/gridjs/datatable.py +6 -9
- reflex/components/gridjs/datatable.pyi +35 -56
- reflex/components/lucide/icon.py +1 -1
- reflex/components/lucide/icon.pyi +33 -54
- reflex/components/markdown/markdown.py +26 -31
- reflex/components/markdown/markdown.pyi +27 -37
- reflex/components/moment/moment.py +13 -12
- reflex/components/moment/moment.pyi +23 -35
- reflex/components/next/base.pyi +17 -27
- reflex/components/next/image.py +1 -1
- reflex/components/next/image.pyi +22 -37
- reflex/components/next/link.py +1 -1
- reflex/components/next/link.pyi +17 -28
- reflex/components/next/video.py +1 -1
- reflex/components/next/video.pyi +17 -28
- reflex/components/plotly/plotly.py +12 -13
- reflex/components/plotly/plotly.pyi +39 -54
- reflex/components/props.py +1 -1
- reflex/components/radix/__init__.pyi +1 -0
- reflex/components/radix/primitives/__init__.pyi +1 -0
- reflex/components/radix/primitives/accordion.py +4 -4
- reflex/components/radix/primitives/accordion.pyi +424 -495
- reflex/components/radix/primitives/base.py +1 -1
- reflex/components/radix/primitives/base.pyi +33 -54
- reflex/components/radix/primitives/drawer.py +1 -1
- reflex/components/radix/primitives/drawer.pyi +172 -273
- reflex/components/radix/primitives/form.py +1 -1
- reflex/components/radix/primitives/form.pyi +257 -364
- reflex/components/radix/primitives/progress.py +1 -1
- reflex/components/radix/primitives/progress.pyi +231 -282
- reflex/components/radix/primitives/slider.py +1 -1
- reflex/components/radix/primitives/slider.pyi +87 -138
- reflex/components/radix/themes/base.py +3 -24
- reflex/components/radix/themes/base.pyi +178 -250
- reflex/components/radix/themes/color_mode.py +5 -5
- reflex/components/radix/themes/color_mode.pyi +187 -220
- reflex/components/radix/themes/components/alert_dialog.py +1 -1
- reflex/components/radix/themes/components/alert_dialog.pyi +136 -207
- reflex/components/radix/themes/components/aspect_ratio.py +1 -1
- reflex/components/radix/themes/components/aspect_ratio.pyi +17 -28
- reflex/components/radix/themes/components/avatar.py +1 -1
- reflex/components/radix/themes/components/avatar.pyi +70 -81
- reflex/components/radix/themes/components/badge.py +1 -1
- reflex/components/radix/themes/components/badge.pyi +88 -99
- reflex/components/radix/themes/components/button.py +1 -1
- reflex/components/radix/themes/components/button.pyi +98 -109
- reflex/components/radix/themes/components/callout.py +1 -1
- reflex/components/radix/themes/components/callout.pyi +322 -373
- reflex/components/radix/themes/components/card.py +1 -1
- reflex/components/radix/themes/components/card.pyi +38 -49
- reflex/components/radix/themes/components/checkbox.py +1 -2
- reflex/components/radix/themes/components/checkbox.pyi +208 -245
- reflex/components/radix/themes/components/checkbox_cards.py +1 -1
- reflex/components/radix/themes/components/checkbox_cards.pyi +94 -115
- reflex/components/radix/themes/components/checkbox_group.py +1 -1
- reflex/components/radix/themes/components/checkbox_group.pyi +86 -107
- reflex/components/radix/themes/components/context_menu.py +1 -1
- reflex/components/radix/themes/components/context_menu.pyi +238 -319
- reflex/components/radix/themes/components/data_list.py +1 -1
- reflex/components/radix/themes/components/data_list.pyi +130 -171
- reflex/components/radix/themes/components/dialog.py +1 -1
- reflex/components/radix/themes/components/dialog.pyi +139 -210
- reflex/components/radix/themes/components/dropdown_menu.py +1 -1
- reflex/components/radix/themes/components/dropdown_menu.pyi +249 -332
- reflex/components/radix/themes/components/hover_card.py +1 -1
- reflex/components/radix/themes/components/hover_card.pyi +90 -131
- reflex/components/radix/themes/components/icon_button.py +2 -3
- reflex/components/radix/themes/components/icon_button.pyi +98 -109
- reflex/components/radix/themes/components/inset.py +1 -1
- reflex/components/radix/themes/components/inset.pyi +47 -58
- reflex/components/radix/themes/components/popover.py +1 -1
- reflex/components/radix/themes/components/popover.pyi +95 -136
- reflex/components/radix/themes/components/progress.py +1 -1
- reflex/components/radix/themes/components/progress.pyi +71 -82
- reflex/components/radix/themes/components/radio.py +1 -1
- reflex/components/radix/themes/components/radio.pyi +69 -80
- reflex/components/radix/themes/components/radio_cards.py +1 -1
- reflex/components/radix/themes/components/radio_cards.pyi +98 -119
- reflex/components/radix/themes/components/radio_group.py +8 -11
- reflex/components/radix/themes/components/radio_group.pyi +228 -271
- reflex/components/radix/themes/components/scroll_area.py +1 -1
- reflex/components/radix/themes/components/scroll_area.pyi +21 -32
- reflex/components/radix/themes/components/segmented_control.py +1 -1
- reflex/components/radix/themes/components/segmented_control.pyi +90 -113
- reflex/components/radix/themes/components/select.py +2 -3
- reflex/components/radix/themes/components/select.pyi +374 -471
- reflex/components/radix/themes/components/separator.py +1 -2
- reflex/components/radix/themes/components/separator.pyi +69 -80
- reflex/components/radix/themes/components/skeleton.py +1 -1
- reflex/components/radix/themes/components/skeleton.pyi +23 -34
- reflex/components/radix/themes/components/slider.py +2 -3
- reflex/components/radix/themes/components/slider.pyi +75 -88
- reflex/components/radix/themes/components/spinner.py +1 -1
- reflex/components/radix/themes/components/spinner.pyi +19 -30
- reflex/components/radix/themes/components/switch.py +1 -1
- reflex/components/radix/themes/components/switch.pyi +71 -84
- reflex/components/radix/themes/components/table.py +1 -1
- reflex/components/radix/themes/components/table.pyi +261 -332
- reflex/components/radix/themes/components/tabs.py +1 -1
- reflex/components/radix/themes/components/tabs.pyi +139 -194
- reflex/components/radix/themes/components/text_area.py +1 -1
- reflex/components/radix/themes/components/text_area.pyi +96 -111
- reflex/components/radix/themes/components/text_field.py +1 -1
- reflex/components/radix/themes/components/text_field.pyi +247 -286
- reflex/components/radix/themes/components/tooltip.py +1 -1
- reflex/components/radix/themes/components/tooltip.pyi +26 -37
- reflex/components/radix/themes/layout/__init__.pyi +1 -0
- reflex/components/radix/themes/layout/base.py +1 -1
- reflex/components/radix/themes/layout/base.pyi +56 -67
- reflex/components/radix/themes/layout/box.pyi +34 -45
- reflex/components/radix/themes/layout/center.pyi +56 -67
- reflex/components/radix/themes/layout/container.py +1 -2
- reflex/components/radix/themes/layout/container.pyi +36 -47
- reflex/components/radix/themes/layout/flex.py +1 -1
- reflex/components/radix/themes/layout/flex.pyi +56 -67
- reflex/components/radix/themes/layout/grid.py +1 -1
- reflex/components/radix/themes/layout/grid.pyi +64 -75
- reflex/components/radix/themes/layout/list.py +5 -6
- reflex/components/radix/themes/layout/list.pyi +193 -244
- reflex/components/radix/themes/layout/section.py +1 -2
- reflex/components/radix/themes/layout/section.pyi +36 -47
- reflex/components/radix/themes/layout/spacer.pyi +56 -67
- reflex/components/radix/themes/layout/stack.py +1 -1
- reflex/components/radix/themes/layout/stack.pyi +128 -159
- reflex/components/radix/themes/typography/blockquote.py +1 -1
- reflex/components/radix/themes/typography/blockquote.pyi +89 -100
- reflex/components/radix/themes/typography/code.py +1 -1
- reflex/components/radix/themes/typography/code.pyi +90 -101
- reflex/components/radix/themes/typography/heading.py +1 -1
- reflex/components/radix/themes/typography/heading.pyi +96 -107
- reflex/components/radix/themes/typography/link.py +1 -1
- reflex/components/radix/themes/typography/link.pyi +102 -113
- reflex/components/radix/themes/typography/text.py +1 -1
- reflex/components/radix/themes/typography/text.pyi +501 -572
- reflex/components/react_player/audio.pyi +33 -60
- reflex/components/react_player/react_player.py +1 -1
- reflex/components/react_player/react_player.pyi +33 -60
- reflex/components/react_player/video.pyi +33 -60
- reflex/components/recharts/cartesian.py +2 -3
- reflex/components/recharts/cartesian.pyi +678 -861
- reflex/components/recharts/charts.py +4 -5
- reflex/components/recharts/charts.pyi +252 -357
- reflex/components/recharts/general.py +1 -2
- reflex/components/recharts/general.pyi +180 -231
- reflex/components/recharts/polar.py +4 -5
- reflex/components/recharts/polar.pyi +144 -181
- reflex/components/recharts/recharts.pyi +33 -53
- reflex/components/sonner/toast.py +16 -17
- reflex/components/sonner/toast.pyi +36 -47
- reflex/components/suneditor/editor.py +2 -3
- reflex/components/suneditor/editor.pyi +55 -78
- reflex/components/tags/cond_tag.py +6 -4
- reflex/components/tags/iter_tag.py +28 -16
- reflex/components/tags/match_tag.py +6 -4
- reflex/components/tags/tag.py +40 -23
- reflex/custom_components/custom_components.py +3 -1
- reflex/event.py +115 -67
- reflex/experimental/client_state.py +18 -18
- reflex/experimental/hooks.py +16 -16
- reflex/experimental/layout.py +5 -5
- reflex/experimental/layout.pyi +136 -187
- reflex/middleware/hydrate_middleware.py +2 -0
- reflex/middleware/middleware.py +3 -3
- reflex/state.py +149 -82
- reflex/style.py +21 -22
- reflex/utils/exceptions.py +20 -0
- reflex/utils/format.py +54 -34
- reflex/utils/imports.py +16 -73
- reflex/utils/prerequisites.py +15 -8
- reflex/utils/pyi_generator.py +13 -8
- reflex/utils/serializers.py +12 -22
- reflex/utils/telemetry.py +3 -2
- reflex/utils/types.py +11 -6
- reflex/{ivars → vars}/__init__.py +6 -2
- reflex/{ivars → vars}/base.py +599 -216
- reflex/{ivars → vars}/function.py +15 -19
- reflex/{ivars → vars}/number.py +41 -20
- reflex/{ivars → vars}/object.py +28 -30
- reflex/{ivars → vars}/sequence.py +53 -42
- {reflex-0.6.0a1.dist-info → reflex-0.6.0a3.dist-info}/METADATA +4 -6
- reflex-0.6.0a3.dist-info/RECORD +382 -0
- reflex/.templates/web/components/reflex/chakra_color_mode_provider.js +0 -36
- reflex/vars.py +0 -501
- reflex-0.6.0a1.dist-info/RECORD +0 -384
- {reflex-0.6.0a1.dist-info → reflex-0.6.0a3.dist-info}/LICENSE +0 -0
- {reflex-0.6.0a1.dist-info → reflex-0.6.0a3.dist-info}/WHEEL +0 -0
- {reflex-0.6.0a1.dist-info → reflex-0.6.0a3.dist-info}/entry_points.txt +0 -0
|
@@ -6,11 +6,10 @@ from typing import Any, Dict, List, Union
|
|
|
6
6
|
|
|
7
7
|
from reflex.components.component import Component
|
|
8
8
|
from reflex.components.tags import Tag
|
|
9
|
-
from reflex.ivars.base import ImmutableVar, LiteralVar, is_computed_var
|
|
10
9
|
from reflex.utils import types
|
|
11
10
|
from reflex.utils.imports import ImportDict
|
|
12
11
|
from reflex.utils.serializers import serialize
|
|
13
|
-
from reflex.vars import Var
|
|
12
|
+
from reflex.vars.base import LiteralVar, Var, is_computed_var
|
|
14
13
|
|
|
15
14
|
|
|
16
15
|
class Gridjs(Component):
|
|
@@ -83,7 +82,7 @@ class DataTable(Gridjs):
|
|
|
83
82
|
# If data is a pandas dataframe and columns are provided throw an error.
|
|
84
83
|
if (
|
|
85
84
|
types.is_dataframe(type(data))
|
|
86
|
-
or (isinstance(data,
|
|
85
|
+
or (isinstance(data, Var) and types.is_dataframe(data._var_type))
|
|
87
86
|
) and columns is not None:
|
|
88
87
|
raise ValueError(
|
|
89
88
|
"Cannot pass in both a pandas dataframe and columns to the data_table component."
|
|
@@ -91,7 +90,7 @@ class DataTable(Gridjs):
|
|
|
91
90
|
|
|
92
91
|
# If data is a list and columns are not provided, throw an error
|
|
93
92
|
if (
|
|
94
|
-
(isinstance(data,
|
|
93
|
+
(isinstance(data, Var) and types._issubclass(data._var_type, List))
|
|
95
94
|
or issubclass(type(data), List)
|
|
96
95
|
) and columns is None:
|
|
97
96
|
raise ValueError(
|
|
@@ -113,15 +112,13 @@ class DataTable(Gridjs):
|
|
|
113
112
|
return {"": "gridjs/dist/theme/mermaid.css"}
|
|
114
113
|
|
|
115
114
|
def _render(self) -> Tag:
|
|
116
|
-
if isinstance(self.data,
|
|
117
|
-
self.data._var_type
|
|
118
|
-
):
|
|
115
|
+
if isinstance(self.data, Var) and types.is_dataframe(self.data._var_type):
|
|
119
116
|
self.columns = self.data._replace(
|
|
120
|
-
|
|
117
|
+
_js_expr=f"{self.data._js_expr}.columns",
|
|
121
118
|
_var_type=List[Any],
|
|
122
119
|
)
|
|
123
120
|
self.data = self.data._replace(
|
|
124
|
-
|
|
121
|
+
_js_expr=f"{self.data._js_expr}.data",
|
|
125
122
|
_var_type=List[List[Any]],
|
|
126
123
|
)
|
|
127
124
|
if types.is_dataframe(type(self.data)):
|
|
@@ -7,10 +7,9 @@ from typing import Any, Callable, Dict, List, Optional, Union, overload
|
|
|
7
7
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
9
|
from reflex.event import EventHandler, EventSpec
|
|
10
|
-
from reflex.ivars.base import ImmutableVar
|
|
11
10
|
from reflex.style import Style
|
|
12
11
|
from reflex.utils.imports import ImportDict
|
|
13
|
-
from reflex.vars import Var
|
|
12
|
+
from reflex.vars.base import Var
|
|
14
13
|
|
|
15
14
|
class Gridjs(Component):
|
|
16
15
|
@overload
|
|
@@ -23,51 +22,41 @@ class Gridjs(Component):
|
|
|
23
22
|
id: Optional[Any] = None,
|
|
24
23
|
class_name: Optional[Any] = None,
|
|
25
24
|
autofocus: Optional[bool] = None,
|
|
26
|
-
custom_attrs: Optional[Dict[str, Union[
|
|
27
|
-
on_blur: Optional[
|
|
28
|
-
|
|
29
|
-
] = None,
|
|
30
|
-
on_click: Optional[
|
|
31
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
32
|
-
] = None,
|
|
25
|
+
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
26
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
27
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
33
28
|
on_context_menu: Optional[
|
|
34
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
29
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
35
30
|
] = None,
|
|
36
31
|
on_double_click: Optional[
|
|
37
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
38
|
-
] = None,
|
|
39
|
-
on_focus: Optional[
|
|
40
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
41
|
-
] = None,
|
|
42
|
-
on_mount: Optional[
|
|
43
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
32
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
44
33
|
] = None,
|
|
34
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
35
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
45
36
|
on_mouse_down: Optional[
|
|
46
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
37
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
47
38
|
] = None,
|
|
48
39
|
on_mouse_enter: Optional[
|
|
49
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
40
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
50
41
|
] = None,
|
|
51
42
|
on_mouse_leave: Optional[
|
|
52
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
43
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
53
44
|
] = None,
|
|
54
45
|
on_mouse_move: Optional[
|
|
55
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
46
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
56
47
|
] = None,
|
|
57
48
|
on_mouse_out: Optional[
|
|
58
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
49
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
59
50
|
] = None,
|
|
60
51
|
on_mouse_over: Optional[
|
|
61
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
52
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
62
53
|
] = None,
|
|
63
54
|
on_mouse_up: Optional[
|
|
64
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
65
|
-
] = None,
|
|
66
|
-
on_scroll: Optional[
|
|
67
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
55
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
68
56
|
] = None,
|
|
57
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
69
58
|
on_unmount: Optional[
|
|
70
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
59
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
71
60
|
] = None,
|
|
72
61
|
**props,
|
|
73
62
|
) -> "Gridjs":
|
|
@@ -95,61 +84,51 @@ class DataTable(Gridjs):
|
|
|
95
84
|
cls,
|
|
96
85
|
*children,
|
|
97
86
|
data: Optional[Any] = None,
|
|
98
|
-
columns: Optional[Union[
|
|
87
|
+
columns: Optional[Union[List, Var[List]]] = None,
|
|
99
88
|
search: Optional[Union[Var[bool], bool]] = None,
|
|
100
89
|
sort: Optional[Union[Var[bool], bool]] = None,
|
|
101
90
|
resizable: Optional[Union[Var[bool], bool]] = None,
|
|
102
|
-
pagination: Optional[Union[Var[Union[Dict, bool]], bool
|
|
91
|
+
pagination: Optional[Union[Dict, Var[Union[Dict, bool]], bool]] = None,
|
|
103
92
|
style: Optional[Style] = None,
|
|
104
93
|
key: Optional[Any] = None,
|
|
105
94
|
id: Optional[Any] = None,
|
|
106
95
|
class_name: Optional[Any] = None,
|
|
107
96
|
autofocus: Optional[bool] = None,
|
|
108
|
-
custom_attrs: Optional[Dict[str, Union[
|
|
109
|
-
on_blur: Optional[
|
|
110
|
-
|
|
111
|
-
] = None,
|
|
112
|
-
on_click: Optional[
|
|
113
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
114
|
-
] = None,
|
|
97
|
+
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
98
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
99
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
115
100
|
on_context_menu: Optional[
|
|
116
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
101
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
117
102
|
] = None,
|
|
118
103
|
on_double_click: Optional[
|
|
119
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
120
|
-
] = None,
|
|
121
|
-
on_focus: Optional[
|
|
122
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
123
|
-
] = None,
|
|
124
|
-
on_mount: Optional[
|
|
125
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
104
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
126
105
|
] = None,
|
|
106
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
107
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
127
108
|
on_mouse_down: Optional[
|
|
128
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
109
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
129
110
|
] = None,
|
|
130
111
|
on_mouse_enter: Optional[
|
|
131
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
112
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
132
113
|
] = None,
|
|
133
114
|
on_mouse_leave: Optional[
|
|
134
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
115
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
135
116
|
] = None,
|
|
136
117
|
on_mouse_move: Optional[
|
|
137
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
118
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
138
119
|
] = None,
|
|
139
120
|
on_mouse_out: Optional[
|
|
140
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
121
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
141
122
|
] = None,
|
|
142
123
|
on_mouse_over: Optional[
|
|
143
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
124
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
144
125
|
] = None,
|
|
145
126
|
on_mouse_up: Optional[
|
|
146
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
147
|
-
] = None,
|
|
148
|
-
on_scroll: Optional[
|
|
149
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
127
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
150
128
|
] = None,
|
|
129
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
151
130
|
on_unmount: Optional[
|
|
152
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
131
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
153
132
|
] = None,
|
|
154
133
|
**props,
|
|
155
134
|
) -> "DataTable":
|
reflex/components/lucide/icon.py
CHANGED
|
@@ -7,9 +7,8 @@ from typing import Any, Callable, Dict, Optional, Union, overload
|
|
|
7
7
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
9
|
from reflex.event import EventHandler, EventSpec
|
|
10
|
-
from reflex.ivars.base import ImmutableVar
|
|
11
10
|
from reflex.style import Style
|
|
12
|
-
from reflex.vars import Var
|
|
11
|
+
from reflex.vars.base import Var
|
|
13
12
|
|
|
14
13
|
class LucideIconComponent(Component):
|
|
15
14
|
@overload
|
|
@@ -22,51 +21,41 @@ class LucideIconComponent(Component):
|
|
|
22
21
|
id: Optional[Any] = None,
|
|
23
22
|
class_name: Optional[Any] = None,
|
|
24
23
|
autofocus: Optional[bool] = None,
|
|
25
|
-
custom_attrs: Optional[Dict[str, Union[
|
|
26
|
-
on_blur: Optional[
|
|
27
|
-
|
|
28
|
-
] = None,
|
|
29
|
-
on_click: Optional[
|
|
30
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
31
|
-
] = None,
|
|
24
|
+
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
25
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
26
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
32
27
|
on_context_menu: Optional[
|
|
33
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
28
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
34
29
|
] = None,
|
|
35
30
|
on_double_click: Optional[
|
|
36
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
37
|
-
] = None,
|
|
38
|
-
on_focus: Optional[
|
|
39
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
40
|
-
] = None,
|
|
41
|
-
on_mount: Optional[
|
|
42
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
31
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
43
32
|
] = None,
|
|
33
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
34
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
44
35
|
on_mouse_down: Optional[
|
|
45
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
36
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
46
37
|
] = None,
|
|
47
38
|
on_mouse_enter: Optional[
|
|
48
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
39
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
49
40
|
] = None,
|
|
50
41
|
on_mouse_leave: Optional[
|
|
51
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
42
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
52
43
|
] = None,
|
|
53
44
|
on_mouse_move: Optional[
|
|
54
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
45
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
55
46
|
] = None,
|
|
56
47
|
on_mouse_out: Optional[
|
|
57
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
48
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
58
49
|
] = None,
|
|
59
50
|
on_mouse_over: Optional[
|
|
60
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
51
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
61
52
|
] = None,
|
|
62
53
|
on_mouse_up: Optional[
|
|
63
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
64
|
-
] = None,
|
|
65
|
-
on_scroll: Optional[
|
|
66
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
54
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
67
55
|
] = None,
|
|
56
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
68
57
|
on_unmount: Optional[
|
|
69
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
58
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
70
59
|
] = None,
|
|
71
60
|
**props,
|
|
72
61
|
) -> "LucideIconComponent":
|
|
@@ -99,51 +88,41 @@ class Icon(LucideIconComponent):
|
|
|
99
88
|
id: Optional[Any] = None,
|
|
100
89
|
class_name: Optional[Any] = None,
|
|
101
90
|
autofocus: Optional[bool] = None,
|
|
102
|
-
custom_attrs: Optional[Dict[str, Union[
|
|
103
|
-
on_blur: Optional[
|
|
104
|
-
|
|
105
|
-
] = None,
|
|
106
|
-
on_click: Optional[
|
|
107
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
108
|
-
] = None,
|
|
91
|
+
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
92
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
93
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
109
94
|
on_context_menu: Optional[
|
|
110
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
95
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
111
96
|
] = None,
|
|
112
97
|
on_double_click: Optional[
|
|
113
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
114
|
-
] = None,
|
|
115
|
-
on_focus: Optional[
|
|
116
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
117
|
-
] = None,
|
|
118
|
-
on_mount: Optional[
|
|
119
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
98
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
120
99
|
] = None,
|
|
100
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
101
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
121
102
|
on_mouse_down: Optional[
|
|
122
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
103
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
123
104
|
] = None,
|
|
124
105
|
on_mouse_enter: Optional[
|
|
125
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
106
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
126
107
|
] = None,
|
|
127
108
|
on_mouse_leave: Optional[
|
|
128
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
109
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
129
110
|
] = None,
|
|
130
111
|
on_mouse_move: Optional[
|
|
131
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
112
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
132
113
|
] = None,
|
|
133
114
|
on_mouse_out: Optional[
|
|
134
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
115
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
135
116
|
] = None,
|
|
136
117
|
on_mouse_over: Optional[
|
|
137
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
118
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
138
119
|
] = None,
|
|
139
120
|
on_mouse_up: Optional[
|
|
140
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
141
|
-
] = None,
|
|
142
|
-
on_scroll: Optional[
|
|
143
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
121
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
144
122
|
] = None,
|
|
123
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
145
124
|
on_unmount: Optional[
|
|
146
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
125
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
147
126
|
] = None,
|
|
148
127
|
**props,
|
|
149
128
|
) -> "Icon":
|
|
@@ -17,25 +17,25 @@ from reflex.components.radix.themes.typography.heading import Heading
|
|
|
17
17
|
from reflex.components.radix.themes.typography.link import Link
|
|
18
18
|
from reflex.components.radix.themes.typography.text import Text
|
|
19
19
|
from reflex.components.tags.tag import Tag
|
|
20
|
-
from reflex.ivars.base import ImmutableVar, LiteralVar
|
|
21
20
|
from reflex.utils import types
|
|
22
21
|
from reflex.utils.imports import ImportDict, ImportVar
|
|
22
|
+
from reflex.vars.base import LiteralVar, Var
|
|
23
23
|
|
|
24
24
|
# Special vars used in the component map.
|
|
25
|
-
_CHILDREN =
|
|
26
|
-
_PROPS =
|
|
27
|
-
_PROPS_IN_TAG =
|
|
28
|
-
_MOCK_ARG =
|
|
25
|
+
_CHILDREN = Var(_js_expr="children", _var_type=str)
|
|
26
|
+
_PROPS = Var(_js_expr="...props")
|
|
27
|
+
_PROPS_IN_TAG = Var(_js_expr="{...props}")
|
|
28
|
+
_MOCK_ARG = Var(_js_expr="", _var_type=str)
|
|
29
29
|
|
|
30
30
|
# Special remark plugins.
|
|
31
|
-
_REMARK_MATH =
|
|
32
|
-
_REMARK_GFM =
|
|
33
|
-
_REMARK_UNWRAP_IMAGES =
|
|
31
|
+
_REMARK_MATH = Var(_js_expr="remarkMath")
|
|
32
|
+
_REMARK_GFM = Var(_js_expr="remarkGfm")
|
|
33
|
+
_REMARK_UNWRAP_IMAGES = Var(_js_expr="remarkUnwrapImages")
|
|
34
34
|
_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES])
|
|
35
35
|
|
|
36
36
|
# Special rehype plugins.
|
|
37
|
-
_REHYPE_KATEX =
|
|
38
|
-
_REHYPE_RAW =
|
|
37
|
+
_REHYPE_KATEX = Var(_js_expr="rehypeKatex")
|
|
38
|
+
_REHYPE_RAW = Var(_js_expr="rehypeRaw")
|
|
39
39
|
_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW])
|
|
40
40
|
|
|
41
41
|
# These tags do NOT get props passed to them
|
|
@@ -99,8 +99,7 @@ class Markdown(Component):
|
|
|
99
99
|
The markdown component.
|
|
100
100
|
"""
|
|
101
101
|
assert (
|
|
102
|
-
len(children) == 1
|
|
103
|
-
and types._isinstance(children[0], Union[str, ImmutableVar])
|
|
102
|
+
len(children) == 1 and types._isinstance(children[0], Union[str, Var])
|
|
104
103
|
), "Markdown component must have exactly one child containing the markdown source."
|
|
105
104
|
|
|
106
105
|
# Update the base component map with the custom component map.
|
|
@@ -155,19 +154,19 @@ class Markdown(Component):
|
|
|
155
154
|
{
|
|
156
155
|
"": "katex/dist/katex.min.css",
|
|
157
156
|
"remark-math@5.1.1": ImportVar(
|
|
158
|
-
tag=_REMARK_MATH.
|
|
157
|
+
tag=_REMARK_MATH._js_expr, is_default=True
|
|
159
158
|
),
|
|
160
159
|
"remark-gfm@3.0.1": ImportVar(
|
|
161
|
-
tag=_REMARK_GFM.
|
|
160
|
+
tag=_REMARK_GFM._js_expr, is_default=True
|
|
162
161
|
),
|
|
163
162
|
"remark-unwrap-images@4.0.0": ImportVar(
|
|
164
|
-
tag=_REMARK_UNWRAP_IMAGES.
|
|
163
|
+
tag=_REMARK_UNWRAP_IMAGES._js_expr, is_default=True
|
|
165
164
|
),
|
|
166
165
|
"rehype-katex@6.0.3": ImportVar(
|
|
167
|
-
tag=_REHYPE_KATEX.
|
|
166
|
+
tag=_REHYPE_KATEX._js_expr, is_default=True
|
|
168
167
|
),
|
|
169
168
|
"rehype-raw@6.1.1": ImportVar(
|
|
170
|
-
tag=_REHYPE_RAW.
|
|
169
|
+
tag=_REHYPE_RAW._js_expr, is_default=True
|
|
171
170
|
),
|
|
172
171
|
},
|
|
173
172
|
*[
|
|
@@ -195,19 +194,17 @@ class Markdown(Component):
|
|
|
195
194
|
if tag not in self.component_map:
|
|
196
195
|
raise ValueError(f"No markdown component found for tag: {tag}.")
|
|
197
196
|
|
|
198
|
-
special_props =
|
|
197
|
+
special_props = [_PROPS_IN_TAG]
|
|
199
198
|
children = [_CHILDREN]
|
|
200
199
|
|
|
201
200
|
# For certain tags, the props from the markdown renderer are not actually valid for the component.
|
|
202
201
|
if tag in NO_PROPS_TAGS:
|
|
203
|
-
special_props =
|
|
202
|
+
special_props = []
|
|
204
203
|
|
|
205
204
|
# If the children are set as a prop, don't pass them as children.
|
|
206
205
|
children_prop = props.pop("children", None)
|
|
207
206
|
if children_prop is not None:
|
|
208
|
-
special_props.
|
|
209
|
-
ImmutableVar.create_safe(f"children={{{str(children_prop)}}}")
|
|
210
|
-
)
|
|
207
|
+
special_props.append(Var(_js_expr=f"children={{{str(children_prop)}}}"))
|
|
211
208
|
children = []
|
|
212
209
|
# Get the component.
|
|
213
210
|
component = self.component_map[tag](*children, **props).set(
|
|
@@ -227,22 +224,22 @@ class Markdown(Component):
|
|
|
227
224
|
"""
|
|
228
225
|
return str(self.get_component(tag, **props)).replace("\n", "")
|
|
229
226
|
|
|
230
|
-
def format_component_map(self) -> dict[str,
|
|
227
|
+
def format_component_map(self) -> dict[str, Var]:
|
|
231
228
|
"""Format the component map for rendering.
|
|
232
229
|
|
|
233
230
|
Returns:
|
|
234
231
|
The formatted component map.
|
|
235
232
|
"""
|
|
236
233
|
components = {
|
|
237
|
-
tag:
|
|
238
|
-
f"(({{node, {_CHILDREN.
|
|
234
|
+
tag: Var(
|
|
235
|
+
_js_expr=f"(({{node, {_CHILDREN._js_expr}, {_PROPS._js_expr}}}) => ({self.format_component(tag)}))"
|
|
239
236
|
)
|
|
240
237
|
for tag in self.component_map
|
|
241
238
|
}
|
|
242
239
|
|
|
243
240
|
# Separate out inline code and code blocks.
|
|
244
|
-
components["code"] =
|
|
245
|
-
f"""(({{node, inline, className, {_CHILDREN.
|
|
241
|
+
components["code"] = Var(
|
|
242
|
+
_js_expr=f"""(({{node, inline, className, {_CHILDREN._js_expr}, {_PROPS._js_expr}}}) => {{
|
|
246
243
|
const match = (className || '').match(/language-(?<lang>.*)/);
|
|
247
244
|
const language = match ? match[1] : '';
|
|
248
245
|
if (language) {{
|
|
@@ -258,7 +255,7 @@ class Markdown(Component):
|
|
|
258
255
|
return inline ? (
|
|
259
256
|
{self.format_component("code")}
|
|
260
257
|
) : (
|
|
261
|
-
{self.format_component("codeblock", language=
|
|
258
|
+
{self.format_component("codeblock", language=Var(_js_expr="language", _var_type=str))}
|
|
262
259
|
);
|
|
263
260
|
}})""".replace("\n", " ")
|
|
264
261
|
)
|
|
@@ -298,9 +295,7 @@ class Markdown(Component):
|
|
|
298
295
|
.add_props(
|
|
299
296
|
remark_plugins=_REMARK_PLUGINS,
|
|
300
297
|
rehype_plugins=_REHYPE_PLUGINS,
|
|
301
|
-
components=
|
|
302
|
-
f"{self._get_component_map_name()}()"
|
|
303
|
-
),
|
|
298
|
+
components=Var(_js_expr=f"{self._get_component_map_name()}()"),
|
|
304
299
|
)
|
|
305
300
|
.remove_props("componentMap", "componentMapHash")
|
|
306
301
|
)
|
|
@@ -8,20 +8,20 @@ from typing import Any, Callable, Dict, Optional, Union, overload
|
|
|
8
8
|
|
|
9
9
|
from reflex.components.component import Component
|
|
10
10
|
from reflex.event import EventHandler, EventSpec
|
|
11
|
-
from reflex.ivars.base import ImmutableVar, LiteralVar
|
|
12
11
|
from reflex.style import Style
|
|
13
12
|
from reflex.utils.imports import ImportDict
|
|
13
|
+
from reflex.vars.base import LiteralVar, Var
|
|
14
14
|
|
|
15
|
-
_CHILDREN =
|
|
16
|
-
_PROPS =
|
|
17
|
-
_PROPS_IN_TAG =
|
|
18
|
-
_MOCK_ARG =
|
|
19
|
-
_REMARK_MATH =
|
|
20
|
-
_REMARK_GFM =
|
|
21
|
-
_REMARK_UNWRAP_IMAGES =
|
|
15
|
+
_CHILDREN = Var(_js_expr="children", _var_type=str)
|
|
16
|
+
_PROPS = Var(_js_expr="...props")
|
|
17
|
+
_PROPS_IN_TAG = Var(_js_expr="{...props}")
|
|
18
|
+
_MOCK_ARG = Var(_js_expr="", _var_type=str)
|
|
19
|
+
_REMARK_MATH = Var(_js_expr="remarkMath")
|
|
20
|
+
_REMARK_GFM = Var(_js_expr="remarkGfm")
|
|
21
|
+
_REMARK_UNWRAP_IMAGES = Var(_js_expr="remarkUnwrapImages")
|
|
22
22
|
_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES])
|
|
23
|
-
_REHYPE_KATEX =
|
|
24
|
-
_REHYPE_RAW =
|
|
23
|
+
_REHYPE_KATEX = Var(_js_expr="rehypeKatex")
|
|
24
|
+
_REHYPE_RAW = Var(_js_expr="rehypeRaw")
|
|
25
25
|
_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW])
|
|
26
26
|
NO_PROPS_TAGS = ("ul", "ol", "li")
|
|
27
27
|
|
|
@@ -41,51 +41,41 @@ class Markdown(Component):
|
|
|
41
41
|
id: Optional[Any] = None,
|
|
42
42
|
class_name: Optional[Any] = None,
|
|
43
43
|
autofocus: Optional[bool] = None,
|
|
44
|
-
custom_attrs: Optional[Dict[str, Union[
|
|
45
|
-
on_blur: Optional[
|
|
46
|
-
|
|
47
|
-
] = None,
|
|
48
|
-
on_click: Optional[
|
|
49
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
50
|
-
] = None,
|
|
44
|
+
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
45
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
46
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
51
47
|
on_context_menu: Optional[
|
|
52
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
48
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
53
49
|
] = None,
|
|
54
50
|
on_double_click: Optional[
|
|
55
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
56
|
-
] = None,
|
|
57
|
-
on_focus: Optional[
|
|
58
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
59
|
-
] = None,
|
|
60
|
-
on_mount: Optional[
|
|
61
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
51
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
62
52
|
] = None,
|
|
53
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
54
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
63
55
|
on_mouse_down: Optional[
|
|
64
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
56
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
65
57
|
] = None,
|
|
66
58
|
on_mouse_enter: Optional[
|
|
67
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
59
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
68
60
|
] = None,
|
|
69
61
|
on_mouse_leave: Optional[
|
|
70
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
62
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
71
63
|
] = None,
|
|
72
64
|
on_mouse_move: Optional[
|
|
73
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
65
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
74
66
|
] = None,
|
|
75
67
|
on_mouse_out: Optional[
|
|
76
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
68
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
77
69
|
] = None,
|
|
78
70
|
on_mouse_over: Optional[
|
|
79
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
71
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
80
72
|
] = None,
|
|
81
73
|
on_mouse_up: Optional[
|
|
82
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
83
|
-
] = None,
|
|
84
|
-
on_scroll: Optional[
|
|
85
|
-
Union[EventHandler, EventSpec, list, Callable, ImmutableVar]
|
|
74
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
86
75
|
] = None,
|
|
76
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
87
77
|
on_unmount: Optional[
|
|
88
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
78
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
89
79
|
] = None,
|
|
90
80
|
**props,
|
|
91
81
|
) -> "Markdown":
|
|
@@ -111,4 +101,4 @@ class Markdown(Component):
|
|
|
111
101
|
def add_imports(self) -> ImportDict | list[ImportDict]: ...
|
|
112
102
|
def get_component(self, tag: str, **props) -> Component: ...
|
|
113
103
|
def format_component(self, tag: str, **props) -> str: ...
|
|
114
|
-
def format_component_map(self) -> dict[str,
|
|
104
|
+
def format_component_map(self) -> dict[str, Var]: ...
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
"""Moment component for humanized date rendering."""
|
|
2
2
|
|
|
3
|
+
import dataclasses
|
|
3
4
|
from typing import List, Optional
|
|
4
5
|
|
|
5
|
-
from reflex.base import Base
|
|
6
6
|
from reflex.components.component import Component, NoSSRComponent
|
|
7
7
|
from reflex.event import EventHandler
|
|
8
8
|
from reflex.utils.imports import ImportDict
|
|
9
|
-
from reflex.vars import Var
|
|
9
|
+
from reflex.vars.base import Var
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
@dataclasses.dataclass(frozen=True)
|
|
13
|
+
class MomentDelta:
|
|
13
14
|
"""A delta used for add/subtract prop in Moment."""
|
|
14
15
|
|
|
15
|
-
years: Optional[int]
|
|
16
|
-
quarters: Optional[int]
|
|
17
|
-
months: Optional[int]
|
|
18
|
-
weeks: Optional[int]
|
|
19
|
-
days: Optional[int]
|
|
20
|
-
hours: Optional[int]
|
|
21
|
-
minutess: Optional[int]
|
|
22
|
-
seconds: Optional[int]
|
|
23
|
-
milliseconds: Optional[int]
|
|
16
|
+
years: Optional[int] = dataclasses.field(default=None)
|
|
17
|
+
quarters: Optional[int] = dataclasses.field(default=None)
|
|
18
|
+
months: Optional[int] = dataclasses.field(default=None)
|
|
19
|
+
weeks: Optional[int] = dataclasses.field(default=None)
|
|
20
|
+
days: Optional[int] = dataclasses.field(default=None)
|
|
21
|
+
hours: Optional[int] = dataclasses.field(default=None)
|
|
22
|
+
minutess: Optional[int] = dataclasses.field(default=None)
|
|
23
|
+
seconds: Optional[int] = dataclasses.field(default=None)
|
|
24
|
+
milliseconds: Optional[int] = dataclasses.field(default=None)
|
|
24
25
|
|
|
25
26
|
|
|
26
27
|
class Moment(NoSSRComponent):
|