reflex 0.5.10a3__py3-none-any.whl → 0.6.0__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 +4 -4
- reflex/.templates/jinja/web/utils/context.js.jinja2 +1 -1
- reflex/.templates/jinja/web/utils/theme.js.jinja2 +1 -1
- reflex/.templates/web/utils/state.js +3 -1
- reflex/__init__.py +10 -3
- reflex/__init__.pyi +3 -2
- reflex/app.py +47 -11
- reflex/app_module_for_backend.py +1 -1
- reflex/base.py +3 -2
- reflex/compiler/compiler.py +5 -5
- reflex/compiler/utils.py +5 -3
- reflex/components/base/app_wrap.py +2 -4
- reflex/components/base/app_wrap.pyi +16 -26
- reflex/components/base/bare.py +6 -4
- reflex/components/base/body.pyi +16 -26
- reflex/components/base/document.pyi +76 -126
- reflex/components/base/error_boundary.py +9 -8
- reflex/components/base/error_boundary.pyi +18 -30
- reflex/components/base/fragment.pyi +16 -26
- reflex/components/base/head.pyi +31 -51
- reflex/components/base/link.py +1 -1
- reflex/components/base/link.pyi +31 -51
- reflex/components/base/meta.pyi +61 -101
- reflex/components/base/script.py +2 -2
- reflex/components/base/script.pyi +20 -36
- reflex/components/component.py +107 -130
- reflex/components/core/banner.py +61 -66
- reflex/components/core/banner.pyi +129 -230
- reflex/components/core/client_side_routing.py +2 -2
- reflex/components/core/client_side_routing.pyi +31 -51
- reflex/components/core/clipboard.py +4 -3
- reflex/components/core/clipboard.pyi +19 -31
- reflex/components/core/cond.py +21 -44
- reflex/components/core/debounce.py +7 -9
- reflex/components/core/debounce.pyi +19 -31
- reflex/components/core/foreach.py +4 -14
- reflex/components/core/html.py +1 -1
- reflex/components/core/html.pyi +34 -44
- reflex/components/core/match.py +36 -43
- reflex/components/core/upload.py +27 -26
- reflex/components/core/upload.pyi +81 -116
- reflex/components/datadisplay/code.py +55 -29
- reflex/components/datadisplay/code.pyi +303 -410
- reflex/components/datadisplay/dataeditor.py +13 -9
- reflex/components/datadisplay/dataeditor.pyi +39 -51
- reflex/components/el/__init__.py +0 -1
- reflex/components/el/__init__.pyi +0 -11
- reflex/components/el/element.pyi +16 -26
- reflex/components/el/elements/__init__.py +1 -7
- reflex/components/el/elements/__init__.pyi +1 -15
- reflex/components/el/elements/base.py +1 -1
- reflex/components/el/elements/base.pyi +33 -43
- reflex/components/el/elements/forms.py +26 -33
- reflex/components/el/elements/forms.pyi +542 -694
- reflex/components/el/elements/inline.py +1 -1
- reflex/components/el/elements/inline.pyi +909 -1189
- reflex/components/el/elements/media.py +1 -22
- reflex/components/el/elements/media.pyi +765 -975
- reflex/components/el/elements/metadata.py +3 -5
- reflex/components/el/elements/metadata.pyi +175 -235
- reflex/components/el/elements/other.py +1 -1
- reflex/components/el/elements/other.pyi +228 -298
- reflex/components/el/elements/scripts.py +1 -1
- reflex/components/el/elements/scripts.pyi +106 -136
- reflex/components/el/elements/sectioning.py +0 -2
- reflex/components/el/elements/sectioning.pyi +481 -631
- reflex/components/el/elements/tables.py +1 -1
- reflex/components/el/elements/tables.pyi +341 -441
- reflex/components/el/elements/typography.py +1 -1
- reflex/components/el/elements/typography.pyi +491 -641
- reflex/components/gridjs/datatable.py +9 -13
- reflex/components/gridjs/datatable.pyi +33 -53
- reflex/components/lucide/icon.py +3 -127
- reflex/components/lucide/icon.pyi +31 -160
- reflex/components/markdown/markdown.py +32 -42
- reflex/components/markdown/markdown.pyi +28 -41
- reflex/components/moment/moment.py +13 -12
- reflex/components/moment/moment.pyi +22 -33
- reflex/components/next/base.pyi +16 -26
- reflex/components/next/image.py +1 -5
- reflex/components/next/image.pyi +21 -35
- reflex/components/next/link.py +1 -1
- reflex/components/next/link.pyi +16 -26
- reflex/components/next/video.py +1 -1
- reflex/components/next/video.pyi +16 -26
- reflex/components/plotly/plotly.py +17 -30
- reflex/components/plotly/plotly.pyi +38 -52
- reflex/components/props.py +21 -10
- reflex/components/radix/__init__.pyi +2 -1
- reflex/components/radix/primitives/accordion.py +6 -7
- reflex/components/radix/primitives/accordion.pyi +415 -485
- reflex/components/radix/primitives/base.py +1 -1
- reflex/components/radix/primitives/base.pyi +31 -51
- reflex/components/radix/primitives/drawer.py +1 -1
- reflex/components/radix/primitives/drawer.pyi +162 -262
- reflex/components/radix/primitives/form.py +1 -1
- reflex/components/radix/primitives/form.pyi +247 -353
- reflex/components/radix/primitives/progress.py +1 -1
- reflex/components/radix/primitives/progress.pyi +226 -276
- reflex/components/radix/primitives/slider.py +1 -1
- reflex/components/radix/primitives/slider.pyi +82 -132
- reflex/components/radix/themes/base.py +8 -25
- reflex/components/radix/themes/base.pyi +171 -242
- reflex/components/radix/themes/color_mode.py +11 -20
- reflex/components/radix/themes/color_mode.pyi +198 -231
- reflex/components/radix/themes/components/__init__.pyi +1 -0
- reflex/components/radix/themes/components/alert_dialog.py +1 -1
- reflex/components/radix/themes/components/alert_dialog.pyi +129 -199
- reflex/components/radix/themes/components/aspect_ratio.py +1 -1
- reflex/components/radix/themes/components/aspect_ratio.pyi +16 -26
- reflex/components/radix/themes/components/avatar.py +1 -1
- reflex/components/radix/themes/components/avatar.pyi +69 -79
- reflex/components/radix/themes/components/badge.py +1 -1
- reflex/components/radix/themes/components/badge.pyi +87 -97
- reflex/components/radix/themes/components/button.py +1 -1
- reflex/components/radix/themes/components/button.pyi +97 -107
- reflex/components/radix/themes/components/callout.py +1 -1
- reflex/components/radix/themes/components/callout.pyi +317 -367
- reflex/components/radix/themes/components/card.py +1 -1
- reflex/components/radix/themes/components/card.pyi +37 -47
- reflex/components/radix/themes/components/checkbox.py +2 -4
- reflex/components/radix/themes/components/checkbox.pyi +205 -241
- reflex/components/radix/themes/components/checkbox_cards.py +1 -1
- reflex/components/radix/themes/components/checkbox_cards.pyi +92 -112
- reflex/components/radix/themes/components/checkbox_group.py +1 -1
- reflex/components/radix/themes/components/checkbox_group.pyi +84 -104
- reflex/components/radix/themes/components/context_menu.py +1 -1
- reflex/components/radix/themes/components/context_menu.pyi +230 -310
- reflex/components/radix/themes/components/data_list.py +6 -1
- reflex/components/radix/themes/components/data_list.pyi +131 -166
- reflex/components/radix/themes/components/dialog.py +1 -1
- reflex/components/radix/themes/components/dialog.pyi +132 -202
- reflex/components/radix/themes/components/dropdown_menu.py +1 -1
- reflex/components/radix/themes/components/dropdown_menu.pyi +241 -323
- reflex/components/radix/themes/components/hover_card.py +1 -1
- reflex/components/radix/themes/components/hover_card.pyi +86 -126
- reflex/components/radix/themes/components/icon_button.py +1 -1
- reflex/components/radix/themes/components/icon_button.pyi +97 -107
- reflex/components/radix/themes/components/inset.py +1 -1
- reflex/components/radix/themes/components/inset.pyi +46 -56
- reflex/components/radix/themes/components/popover.py +1 -1
- reflex/components/radix/themes/components/popover.pyi +91 -131
- reflex/components/radix/themes/components/progress.py +1 -1
- reflex/components/radix/themes/components/progress.pyi +70 -80
- reflex/components/radix/themes/components/radio.py +1 -1
- reflex/components/radix/themes/components/radio.pyi +68 -78
- reflex/components/radix/themes/components/radio_cards.py +1 -1
- reflex/components/radix/themes/components/radio_cards.pyi +96 -116
- reflex/components/radix/themes/components/radio_group.py +32 -31
- reflex/components/radix/themes/components/radio_group.pyi +230 -266
- reflex/components/radix/themes/components/scroll_area.py +1 -1
- reflex/components/radix/themes/components/scroll_area.pyi +20 -30
- reflex/components/radix/themes/components/segmented_control.py +1 -1
- reflex/components/radix/themes/components/segmented_control.pyi +88 -110
- reflex/components/radix/themes/components/select.py +1 -1
- reflex/components/radix/themes/components/select.pyi +365 -461
- reflex/components/radix/themes/components/separator.py +2 -4
- reflex/components/radix/themes/components/separator.pyi +68 -78
- reflex/components/radix/themes/components/skeleton.py +1 -1
- reflex/components/radix/themes/components/skeleton.pyi +22 -32
- reflex/components/radix/themes/components/slider.py +1 -1
- reflex/components/radix/themes/components/slider.pyi +74 -86
- reflex/components/radix/themes/components/spinner.py +1 -1
- reflex/components/radix/themes/components/spinner.pyi +18 -28
- reflex/components/radix/themes/components/switch.py +1 -1
- reflex/components/radix/themes/components/switch.pyi +70 -82
- reflex/components/radix/themes/components/table.py +1 -1
- reflex/components/radix/themes/components/table.pyi +254 -324
- reflex/components/radix/themes/components/tabs.py +1 -1
- reflex/components/radix/themes/components/tabs.pyi +134 -188
- reflex/components/radix/themes/components/text_area.py +1 -1
- reflex/components/radix/themes/components/text_area.pyi +95 -109
- reflex/components/radix/themes/components/text_field.py +1 -80
- reflex/components/radix/themes/components/text_field.pyi +245 -290
- reflex/components/radix/themes/components/tooltip.py +1 -1
- reflex/components/radix/themes/components/tooltip.pyi +25 -35
- 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 +55 -65
- reflex/components/radix/themes/layout/box.pyi +33 -43
- reflex/components/radix/themes/layout/center.pyi +55 -65
- reflex/components/radix/themes/layout/container.py +2 -4
- reflex/components/radix/themes/layout/container.pyi +35 -45
- reflex/components/radix/themes/layout/flex.py +1 -1
- reflex/components/radix/themes/layout/flex.pyi +55 -65
- reflex/components/radix/themes/layout/grid.py +1 -1
- reflex/components/radix/themes/layout/grid.pyi +63 -73
- reflex/components/radix/themes/layout/list.py +1 -1
- reflex/components/radix/themes/layout/list.pyi +188 -238
- reflex/components/radix/themes/layout/section.py +2 -4
- reflex/components/radix/themes/layout/section.pyi +35 -45
- reflex/components/radix/themes/layout/spacer.pyi +55 -65
- reflex/components/radix/themes/layout/stack.py +1 -1
- reflex/components/radix/themes/layout/stack.pyi +125 -155
- reflex/components/radix/themes/typography/blockquote.py +1 -1
- reflex/components/radix/themes/typography/blockquote.pyi +88 -98
- reflex/components/radix/themes/typography/code.py +1 -1
- reflex/components/radix/themes/typography/code.pyi +89 -99
- reflex/components/radix/themes/typography/heading.py +1 -1
- reflex/components/radix/themes/typography/heading.pyi +95 -105
- reflex/components/radix/themes/typography/link.py +1 -1
- reflex/components/radix/themes/typography/link.pyi +101 -111
- reflex/components/radix/themes/typography/text.py +1 -1
- reflex/components/radix/themes/typography/text.pyi +494 -564
- reflex/components/react_player/audio.pyi +32 -58
- reflex/components/react_player/react_player.py +1 -1
- reflex/components/react_player/react_player.pyi +32 -58
- reflex/components/react_player/video.pyi +32 -58
- reflex/components/recharts/cartesian.py +22 -19
- reflex/components/recharts/cartesian.pyi +658 -840
- reflex/components/recharts/charts.py +3 -3
- reflex/components/recharts/charts.pyi +238 -342
- reflex/components/recharts/general.py +8 -8
- reflex/components/recharts/general.pyi +175 -225
- reflex/components/recharts/polar.py +11 -11
- reflex/components/recharts/polar.pyi +135 -171
- reflex/components/recharts/recharts.pyi +31 -51
- reflex/components/sonner/toast.py +27 -31
- reflex/components/sonner/toast.pyi +36 -45
- reflex/components/suneditor/editor.py +1 -1
- reflex/components/suneditor/editor.pyi +54 -76
- reflex/components/tags/cond_tag.py +6 -4
- reflex/components/tags/iter_tag.py +37 -25
- reflex/components/tags/match_tag.py +6 -4
- reflex/components/tags/tag.py +43 -28
- reflex/constants/base.py +3 -1
- reflex/constants/event.py +1 -0
- reflex/custom_components/custom_components.py +3 -1
- reflex/event.py +166 -108
- reflex/experimental/__init__.py +25 -6
- reflex/experimental/client_state.py +34 -57
- reflex/experimental/hooks.py +12 -17
- reflex/experimental/layout.py +4 -4
- reflex/experimental/layout.pyi +130 -180
- reflex/middleware/hydrate_middleware.py +2 -0
- reflex/middleware/middleware.py +3 -3
- reflex/model.py +22 -0
- reflex/reflex.py +4 -0
- reflex/state.py +491 -110
- reflex/style.py +56 -39
- reflex/testing.py +8 -3
- reflex/utils/exceptions.py +32 -0
- reflex/utils/exec.py +0 -14
- reflex/utils/format.py +80 -209
- reflex/utils/imports.py +16 -73
- reflex/utils/net.py +43 -0
- reflex/utils/path_ops.py +13 -1
- reflex/utils/prerequisites.py +81 -41
- reflex/utils/pyi_generator.py +12 -6
- reflex/utils/serializers.py +13 -41
- reflex/utils/telemetry.py +3 -2
- reflex/utils/types.py +47 -7
- reflex/{experimental/vars → vars}/__init__.py +6 -3
- reflex/vars/base.py +2563 -0
- reflex/vars/function.py +196 -0
- reflex/vars/number.py +1158 -0
- reflex/vars/object.py +562 -0
- reflex/vars/sequence.py +1604 -0
- {reflex-0.5.10a3.dist-info → reflex-0.6.0.dist-info}/METADATA +6 -9
- reflex-0.6.0.dist-info/RECORD +382 -0
- reflex/.templates/apps/demo/.gitignore +0 -4
- reflex/.templates/apps/demo/assets/favicon.ico +0 -0
- reflex/.templates/apps/demo/assets/github.svg +0 -10
- reflex/.templates/apps/demo/assets/icon.svg +0 -37
- reflex/.templates/apps/demo/assets/logo.svg +0 -68
- reflex/.templates/apps/demo/assets/paneleft.svg +0 -13
- reflex/.templates/apps/demo/code/__init__.py +0 -1
- reflex/.templates/apps/demo/code/demo.py +0 -127
- reflex/.templates/apps/demo/code/pages/__init__.py +0 -7
- reflex/.templates/apps/demo/code/pages/chatapp.py +0 -31
- reflex/.templates/apps/demo/code/pages/datatable.py +0 -360
- reflex/.templates/apps/demo/code/pages/forms.py +0 -257
- reflex/.templates/apps/demo/code/pages/graphing.py +0 -253
- reflex/.templates/apps/demo/code/pages/home.py +0 -56
- reflex/.templates/apps/demo/code/sidebar.py +0 -178
- reflex/.templates/apps/demo/code/state.py +0 -22
- reflex/.templates/apps/demo/code/states/form_state.py +0 -40
- reflex/.templates/apps/demo/code/states/pie_state.py +0 -47
- reflex/.templates/apps/demo/code/styles.py +0 -68
- reflex/.templates/apps/demo/code/webui/__init__.py +0 -0
- reflex/.templates/apps/demo/code/webui/components/__init__.py +0 -4
- reflex/.templates/apps/demo/code/webui/components/chat.py +0 -118
- reflex/.templates/apps/demo/code/webui/components/loading_icon.py +0 -19
- reflex/.templates/apps/demo/code/webui/components/modal.py +0 -56
- reflex/.templates/apps/demo/code/webui/components/navbar.py +0 -70
- reflex/.templates/apps/demo/code/webui/components/sidebar.py +0 -66
- reflex/.templates/apps/demo/code/webui/state.py +0 -146
- reflex/.templates/apps/demo/code/webui/styles.py +0 -88
- reflex/.templates/web/components/reflex/chakra_color_mode_provider.js +0 -36
- reflex/experimental/vars/base.py +0 -583
- reflex/experimental/vars/function.py +0 -290
- reflex/experimental/vars/number.py +0 -1458
- reflex/experimental/vars/object.py +0 -804
- reflex/experimental/vars/sequence.py +0 -1764
- reflex/utils/watch.py +0 -96
- reflex/vars.py +0 -2604
- reflex/vars.pyi +0 -218
- reflex-0.5.10a3.dist-info/RECORD +0 -413
- {reflex-0.5.10a3.dist-info → reflex-0.6.0.dist-info}/LICENSE +0 -0
- {reflex-0.5.10a3.dist-info → reflex-0.6.0.dist-info}/WHEEL +0 -0
- {reflex-0.5.10a3.dist-info → reflex-0.6.0.dist-info}/entry_points.txt +0 -0
|
@@ -19,27 +19,24 @@ from reflex.components.radix.themes.typography.text import Text
|
|
|
19
19
|
from reflex.components.tags.tag import Tag
|
|
20
20
|
from reflex.utils import types
|
|
21
21
|
from reflex.utils.imports import ImportDict, ImportVar
|
|
22
|
-
from reflex.vars import Var
|
|
22
|
+
from reflex.vars.base import LiteralVar, Var
|
|
23
23
|
|
|
24
24
|
# Special vars used in the component map.
|
|
25
|
-
_CHILDREN = Var
|
|
26
|
-
_PROPS = Var
|
|
27
|
-
|
|
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)
|
|
28
29
|
|
|
29
30
|
# Special remark plugins.
|
|
30
|
-
_REMARK_MATH = Var
|
|
31
|
-
_REMARK_GFM = Var
|
|
32
|
-
_REMARK_UNWRAP_IMAGES = Var
|
|
33
|
-
|
|
34
|
-
)
|
|
35
|
-
_REMARK_PLUGINS = Var.create_safe([_REMARK_MATH, _REMARK_GFM, _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
|
+
_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES])
|
|
36
35
|
|
|
37
36
|
# Special rehype plugins.
|
|
38
|
-
_REHYPE_KATEX = Var
|
|
39
|
-
|
|
40
|
-
)
|
|
41
|
-
_REHYPE_RAW = Var.create_safe("rehypeRaw", _var_is_local=False, _var_is_string=False)
|
|
42
|
-
_REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW])
|
|
37
|
+
_REHYPE_KATEX = Var(_js_expr="rehypeKatex")
|
|
38
|
+
_REHYPE_RAW = Var(_js_expr="rehypeRaw")
|
|
39
|
+
_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW])
|
|
43
40
|
|
|
44
41
|
# These tags do NOT get props passed to them
|
|
45
42
|
NO_PROPS_TAGS = ("ul", "ol", "li")
|
|
@@ -157,23 +154,23 @@ class Markdown(Component):
|
|
|
157
154
|
{
|
|
158
155
|
"": "katex/dist/katex.min.css",
|
|
159
156
|
"remark-math@5.1.1": ImportVar(
|
|
160
|
-
tag=_REMARK_MATH.
|
|
157
|
+
tag=_REMARK_MATH._js_expr, is_default=True
|
|
161
158
|
),
|
|
162
159
|
"remark-gfm@3.0.1": ImportVar(
|
|
163
|
-
tag=_REMARK_GFM.
|
|
160
|
+
tag=_REMARK_GFM._js_expr, is_default=True
|
|
164
161
|
),
|
|
165
162
|
"remark-unwrap-images@4.0.0": ImportVar(
|
|
166
|
-
tag=_REMARK_UNWRAP_IMAGES.
|
|
163
|
+
tag=_REMARK_UNWRAP_IMAGES._js_expr, is_default=True
|
|
167
164
|
),
|
|
168
165
|
"rehype-katex@6.0.3": ImportVar(
|
|
169
|
-
tag=_REHYPE_KATEX.
|
|
166
|
+
tag=_REHYPE_KATEX._js_expr, is_default=True
|
|
170
167
|
),
|
|
171
168
|
"rehype-raw@6.1.1": ImportVar(
|
|
172
|
-
tag=_REHYPE_RAW.
|
|
169
|
+
tag=_REHYPE_RAW._js_expr, is_default=True
|
|
173
170
|
),
|
|
174
171
|
},
|
|
175
172
|
*[
|
|
176
|
-
component(_MOCK_ARG).
|
|
173
|
+
component(_MOCK_ARG)._get_all_imports() # type: ignore
|
|
177
174
|
for component in self.component_map.values()
|
|
178
175
|
],
|
|
179
176
|
CodeBlock.create(theme="light")._get_imports(), # type: ignore,
|
|
@@ -197,21 +194,18 @@ class Markdown(Component):
|
|
|
197
194
|
if tag not in self.component_map:
|
|
198
195
|
raise ValueError(f"No markdown component found for tag: {tag}.")
|
|
199
196
|
|
|
200
|
-
special_props =
|
|
197
|
+
special_props = [_PROPS_IN_TAG]
|
|
201
198
|
children = [_CHILDREN]
|
|
202
199
|
|
|
203
200
|
# For certain tags, the props from the markdown renderer are not actually valid for the component.
|
|
204
201
|
if tag in NO_PROPS_TAGS:
|
|
205
|
-
special_props =
|
|
202
|
+
special_props = []
|
|
206
203
|
|
|
207
204
|
# If the children are set as a prop, don't pass them as children.
|
|
208
205
|
children_prop = props.pop("children", None)
|
|
209
206
|
if children_prop is not None:
|
|
210
|
-
special_props.
|
|
211
|
-
Var.create_safe(f"children={str(children_prop)}", _var_is_string=False)
|
|
212
|
-
)
|
|
207
|
+
special_props.append(Var(_js_expr=f"children={{{str(children_prop)}}}"))
|
|
213
208
|
children = []
|
|
214
|
-
|
|
215
209
|
# Get the component.
|
|
216
210
|
component = self.component_map[tag](*children, **props).set(
|
|
217
211
|
special_props=special_props
|
|
@@ -230,21 +224,22 @@ class Markdown(Component):
|
|
|
230
224
|
"""
|
|
231
225
|
return str(self.get_component(tag, **props)).replace("\n", "")
|
|
232
226
|
|
|
233
|
-
def format_component_map(self) -> dict[str,
|
|
227
|
+
def format_component_map(self) -> dict[str, Var]:
|
|
234
228
|
"""Format the component map for rendering.
|
|
235
229
|
|
|
236
230
|
Returns:
|
|
237
231
|
The formatted component map.
|
|
238
232
|
"""
|
|
239
233
|
components = {
|
|
240
|
-
tag:
|
|
234
|
+
tag: Var(
|
|
235
|
+
_js_expr=f"(({{node, {_CHILDREN._js_expr}, {_PROPS._js_expr}}}) => ({self.format_component(tag)}))"
|
|
236
|
+
)
|
|
241
237
|
for tag in self.component_map
|
|
242
238
|
}
|
|
243
239
|
|
|
244
240
|
# Separate out inline code and code blocks.
|
|
245
|
-
components[
|
|
246
|
-
"
|
|
247
|
-
] = f"""{{({{node, inline, className, {_CHILDREN._var_name}, {_PROPS._var_name}}}) => {{
|
|
241
|
+
components["code"] = Var(
|
|
242
|
+
_js_expr=f"""(({{node, inline, className, {_CHILDREN._js_expr}, {_PROPS._js_expr}}}) => {{
|
|
248
243
|
const match = (className || '').match(/language-(?<lang>.*)/);
|
|
249
244
|
const language = match ? match[1] : '';
|
|
250
245
|
if (language) {{
|
|
@@ -260,9 +255,10 @@ class Markdown(Component):
|
|
|
260
255
|
return inline ? (
|
|
261
256
|
{self.format_component("code")}
|
|
262
257
|
) : (
|
|
263
|
-
{self.format_component("codeblock", language=Var
|
|
258
|
+
{self.format_component("codeblock", language=Var(_js_expr="language", _var_type=str))}
|
|
264
259
|
);
|
|
265
|
-
}}
|
|
260
|
+
}})""".replace("\n", " ")
|
|
261
|
+
)
|
|
266
262
|
|
|
267
263
|
return components
|
|
268
264
|
|
|
@@ -287,7 +283,7 @@ class Markdown(Component):
|
|
|
287
283
|
function {self._get_component_map_name()} () {{
|
|
288
284
|
{formatted_hooks}
|
|
289
285
|
return (
|
|
290
|
-
{str(
|
|
286
|
+
{str(LiteralVar.create(self.format_component_map()))}
|
|
291
287
|
)
|
|
292
288
|
}}
|
|
293
289
|
"""
|
|
@@ -299,14 +295,8 @@ class Markdown(Component):
|
|
|
299
295
|
.add_props(
|
|
300
296
|
remark_plugins=_REMARK_PLUGINS,
|
|
301
297
|
rehype_plugins=_REHYPE_PLUGINS,
|
|
298
|
+
components=Var(_js_expr=f"{self._get_component_map_name()}()"),
|
|
302
299
|
)
|
|
303
300
|
.remove_props("componentMap", "componentMapHash")
|
|
304
301
|
)
|
|
305
|
-
tag.special_props.add(
|
|
306
|
-
Var.create_safe(
|
|
307
|
-
f"components={{{self._get_component_map_name()}()}}",
|
|
308
|
-
_var_is_local=True,
|
|
309
|
-
_var_is_string=False,
|
|
310
|
-
),
|
|
311
|
-
)
|
|
312
302
|
return tag
|
|
@@ -10,22 +10,19 @@ from reflex.components.component import Component
|
|
|
10
10
|
from reflex.event import EventHandler, EventSpec
|
|
11
11
|
from reflex.style import Style
|
|
12
12
|
from reflex.utils.imports import ImportDict
|
|
13
|
-
from reflex.vars import
|
|
13
|
+
from reflex.vars.base import LiteralVar, Var
|
|
14
14
|
|
|
15
|
-
_CHILDREN = Var
|
|
16
|
-
_PROPS = Var
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
)
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
)
|
|
27
|
-
_REHYPE_RAW = Var.create_safe("rehypeRaw", _var_is_local=False, _var_is_string=False)
|
|
28
|
-
_REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW])
|
|
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
|
+
_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES])
|
|
23
|
+
_REHYPE_KATEX = Var(_js_expr="rehypeKatex")
|
|
24
|
+
_REHYPE_RAW = Var(_js_expr="rehypeRaw")
|
|
25
|
+
_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW])
|
|
29
26
|
NO_PROPS_TAGS = ("ul", "ol", "li")
|
|
30
27
|
|
|
31
28
|
@lru_cache
|
|
@@ -45,50 +42,40 @@ class Markdown(Component):
|
|
|
45
42
|
class_name: Optional[Any] = None,
|
|
46
43
|
autofocus: Optional[bool] = None,
|
|
47
44
|
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
48
|
-
on_blur: Optional[
|
|
49
|
-
|
|
50
|
-
] = None,
|
|
51
|
-
on_click: Optional[
|
|
52
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
53
|
-
] = None,
|
|
45
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
46
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
54
47
|
on_context_menu: Optional[
|
|
55
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
48
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
56
49
|
] = None,
|
|
57
50
|
on_double_click: Optional[
|
|
58
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
59
|
-
] = None,
|
|
60
|
-
on_focus: Optional[
|
|
61
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
62
|
-
] = None,
|
|
63
|
-
on_mount: Optional[
|
|
64
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
51
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
65
52
|
] = None,
|
|
53
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
54
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
66
55
|
on_mouse_down: Optional[
|
|
67
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
56
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
68
57
|
] = None,
|
|
69
58
|
on_mouse_enter: Optional[
|
|
70
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
59
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
71
60
|
] = None,
|
|
72
61
|
on_mouse_leave: Optional[
|
|
73
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
62
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
74
63
|
] = None,
|
|
75
64
|
on_mouse_move: Optional[
|
|
76
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
65
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
77
66
|
] = None,
|
|
78
67
|
on_mouse_out: Optional[
|
|
79
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
68
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
80
69
|
] = None,
|
|
81
70
|
on_mouse_over: Optional[
|
|
82
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
71
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
83
72
|
] = None,
|
|
84
73
|
on_mouse_up: Optional[
|
|
85
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
86
|
-
] = None,
|
|
87
|
-
on_scroll: Optional[
|
|
88
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
74
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
89
75
|
] = None,
|
|
76
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
90
77
|
on_unmount: Optional[
|
|
91
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
78
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
92
79
|
] = None,
|
|
93
80
|
**props,
|
|
94
81
|
) -> "Markdown":
|
|
@@ -114,4 +101,4 @@ class Markdown(Component):
|
|
|
114
101
|
def add_imports(self) -> ImportDict | list[ImportDict]: ...
|
|
115
102
|
def get_component(self, tag: str, **props) -> Component: ...
|
|
116
103
|
def format_component(self, tag: str, **props) -> str: ...
|
|
117
|
-
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):
|
|
@@ -3,16 +3,17 @@
|
|
|
3
3
|
# ------------------- DO NOT EDIT ----------------------
|
|
4
4
|
# This file was generated by `reflex/utils/pyi_generator.py`!
|
|
5
5
|
# ------------------------------------------------------
|
|
6
|
+
import dataclasses
|
|
6
7
|
from typing import Any, Callable, Dict, Optional, Union, overload
|
|
7
8
|
|
|
8
|
-
from reflex.base import Base
|
|
9
9
|
from reflex.components.component import NoSSRComponent
|
|
10
10
|
from reflex.event import EventHandler, EventSpec
|
|
11
11
|
from reflex.style import Style
|
|
12
12
|
from reflex.utils.imports import ImportDict
|
|
13
|
-
from reflex.vars import
|
|
13
|
+
from reflex.vars.base import Var
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
@dataclasses.dataclass(frozen=True)
|
|
16
|
+
class MomentDelta:
|
|
16
17
|
years: Optional[int]
|
|
17
18
|
quarters: Optional[int]
|
|
18
19
|
months: Optional[int]
|
|
@@ -34,8 +35,8 @@ class Moment(NoSSRComponent):
|
|
|
34
35
|
format: Optional[Union[Var[str], str]] = None,
|
|
35
36
|
trim: Optional[Union[Var[bool], bool]] = None,
|
|
36
37
|
parse: Optional[Union[Var[str], str]] = None,
|
|
37
|
-
add: Optional[Union[
|
|
38
|
-
subtract: Optional[Union[
|
|
38
|
+
add: Optional[Union[MomentDelta, Var[MomentDelta]]] = None,
|
|
39
|
+
subtract: Optional[Union[MomentDelta, Var[MomentDelta]]] = None,
|
|
39
40
|
from_now: Optional[Union[Var[bool], bool]] = None,
|
|
40
41
|
from_now_during: Optional[Union[Var[int], int]] = None,
|
|
41
42
|
to_now: Optional[Union[Var[bool], bool]] = None,
|
|
@@ -56,53 +57,41 @@ class Moment(NoSSRComponent):
|
|
|
56
57
|
class_name: Optional[Any] = None,
|
|
57
58
|
autofocus: Optional[bool] = None,
|
|
58
59
|
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
59
|
-
on_blur: Optional[
|
|
60
|
-
|
|
61
|
-
] = None,
|
|
62
|
-
on_change: Optional[
|
|
63
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
64
|
-
] = None,
|
|
65
|
-
on_click: Optional[
|
|
66
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
67
|
-
] = None,
|
|
60
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
61
|
+
on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
62
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
68
63
|
on_context_menu: Optional[
|
|
69
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
64
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
70
65
|
] = None,
|
|
71
66
|
on_double_click: Optional[
|
|
72
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
73
|
-
] = None,
|
|
74
|
-
on_focus: Optional[
|
|
75
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
76
|
-
] = None,
|
|
77
|
-
on_mount: Optional[
|
|
78
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
67
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
79
68
|
] = None,
|
|
69
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
70
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
80
71
|
on_mouse_down: Optional[
|
|
81
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
72
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
82
73
|
] = None,
|
|
83
74
|
on_mouse_enter: Optional[
|
|
84
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
75
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
85
76
|
] = None,
|
|
86
77
|
on_mouse_leave: Optional[
|
|
87
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
78
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
88
79
|
] = None,
|
|
89
80
|
on_mouse_move: Optional[
|
|
90
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
81
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
91
82
|
] = None,
|
|
92
83
|
on_mouse_out: Optional[
|
|
93
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
84
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
94
85
|
] = None,
|
|
95
86
|
on_mouse_over: Optional[
|
|
96
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
87
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
97
88
|
] = None,
|
|
98
89
|
on_mouse_up: Optional[
|
|
99
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
100
|
-
] = None,
|
|
101
|
-
on_scroll: Optional[
|
|
102
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
90
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
103
91
|
] = None,
|
|
92
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
104
93
|
on_unmount: Optional[
|
|
105
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
94
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
106
95
|
] = None,
|
|
107
96
|
**props,
|
|
108
97
|
) -> "Moment":
|
reflex/components/next/base.pyi
CHANGED
|
@@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload
|
|
|
8
8
|
from reflex.components.component import Component
|
|
9
9
|
from reflex.event import EventHandler, EventSpec
|
|
10
10
|
from reflex.style import Style
|
|
11
|
-
from reflex.vars import
|
|
11
|
+
from reflex.vars.base import Var
|
|
12
12
|
|
|
13
13
|
class NextComponent(Component):
|
|
14
14
|
...
|
|
@@ -24,50 +24,40 @@ class NextComponent(Component):
|
|
|
24
24
|
class_name: Optional[Any] = None,
|
|
25
25
|
autofocus: Optional[bool] = None,
|
|
26
26
|
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
27
|
-
on_blur: Optional[
|
|
28
|
-
|
|
29
|
-
] = None,
|
|
30
|
-
on_click: Optional[
|
|
31
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
32
|
-
] = None,
|
|
27
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
28
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
33
29
|
on_context_menu: Optional[
|
|
34
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
30
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
35
31
|
] = None,
|
|
36
32
|
on_double_click: Optional[
|
|
37
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
38
|
-
] = None,
|
|
39
|
-
on_focus: Optional[
|
|
40
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
41
|
-
] = None,
|
|
42
|
-
on_mount: Optional[
|
|
43
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
33
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
44
34
|
] = None,
|
|
35
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
36
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
45
37
|
on_mouse_down: Optional[
|
|
46
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
38
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
47
39
|
] = None,
|
|
48
40
|
on_mouse_enter: Optional[
|
|
49
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
41
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
50
42
|
] = None,
|
|
51
43
|
on_mouse_leave: Optional[
|
|
52
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
44
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
53
45
|
] = None,
|
|
54
46
|
on_mouse_move: Optional[
|
|
55
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
47
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
56
48
|
] = None,
|
|
57
49
|
on_mouse_out: Optional[
|
|
58
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
50
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
59
51
|
] = None,
|
|
60
52
|
on_mouse_over: Optional[
|
|
61
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
53
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
62
54
|
] = None,
|
|
63
55
|
on_mouse_up: Optional[
|
|
64
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
65
|
-
] = None,
|
|
66
|
-
on_scroll: Optional[
|
|
67
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
56
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
68
57
|
] = None,
|
|
58
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
69
59
|
on_unmount: Optional[
|
|
70
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
60
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
71
61
|
] = None,
|
|
72
62
|
**props,
|
|
73
63
|
) -> "NextComponent":
|
reflex/components/next/image.py
CHANGED
|
@@ -4,7 +4,7 @@ from typing import Any, Literal, Optional, Union
|
|
|
4
4
|
|
|
5
5
|
from reflex.event import EventHandler
|
|
6
6
|
from reflex.utils import types
|
|
7
|
-
from reflex.vars import Var
|
|
7
|
+
from reflex.vars.base import Var
|
|
8
8
|
|
|
9
9
|
from .base import NextComponent
|
|
10
10
|
|
|
@@ -102,8 +102,4 @@ class Image(NextComponent):
|
|
|
102
102
|
# mysteriously, following `sizes` prop is needed to avoid blury images.
|
|
103
103
|
props["sizes"] = "100vw"
|
|
104
104
|
|
|
105
|
-
src = props.get("src", None)
|
|
106
|
-
if src is not None and not isinstance(src, (Var)):
|
|
107
|
-
props["src"] = Var.create(value=src, _var_is_string=True)
|
|
108
|
-
|
|
109
105
|
return super().create(*children, **props)
|
reflex/components/next/image.pyi
CHANGED
|
@@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload
|
|
|
7
7
|
|
|
8
8
|
from reflex.event import EventHandler, EventSpec
|
|
9
9
|
from reflex.style import Style
|
|
10
|
-
from reflex.vars import
|
|
10
|
+
from reflex.vars.base import Var
|
|
11
11
|
|
|
12
12
|
from .base import NextComponent
|
|
13
13
|
|
|
@@ -19,16 +19,16 @@ class Image(NextComponent):
|
|
|
19
19
|
*children,
|
|
20
20
|
width: Optional[Union[int, str]] = None,
|
|
21
21
|
height: Optional[Union[int, str]] = None,
|
|
22
|
-
src: Optional[Union[
|
|
22
|
+
src: Optional[Union[Any, Var[Any]]] = None,
|
|
23
23
|
alt: Optional[Union[Var[str], str]] = None,
|
|
24
|
-
loader: Optional[Union[
|
|
24
|
+
loader: Optional[Union[Any, Var[Any]]] = None,
|
|
25
25
|
fill: Optional[Union[Var[bool], bool]] = None,
|
|
26
26
|
sizes: Optional[Union[Var[str], str]] = None,
|
|
27
27
|
quality: Optional[Union[Var[int], int]] = None,
|
|
28
28
|
priority: Optional[Union[Var[bool], bool]] = None,
|
|
29
29
|
placeholder: Optional[Union[Var[str], str]] = None,
|
|
30
30
|
loading: Optional[
|
|
31
|
-
Union[
|
|
31
|
+
Union[Literal["eager", "lazy"], Var[Literal["eager", "lazy"]]]
|
|
32
32
|
] = None,
|
|
33
33
|
blurDataURL: Optional[Union[Var[str], str]] = None,
|
|
34
34
|
style: Optional[Style] = None,
|
|
@@ -37,56 +37,42 @@ class Image(NextComponent):
|
|
|
37
37
|
class_name: Optional[Any] = None,
|
|
38
38
|
autofocus: Optional[bool] = None,
|
|
39
39
|
custom_attrs: Optional[Dict[str, Union[Var, str]]] = None,
|
|
40
|
-
on_blur: Optional[
|
|
41
|
-
|
|
42
|
-
] = None,
|
|
43
|
-
on_click: Optional[
|
|
44
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
45
|
-
] = None,
|
|
40
|
+
on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
41
|
+
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
46
42
|
on_context_menu: Optional[
|
|
47
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
43
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
48
44
|
] = None,
|
|
49
45
|
on_double_click: Optional[
|
|
50
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
51
|
-
] = None,
|
|
52
|
-
on_error: Optional[
|
|
53
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
54
|
-
] = None,
|
|
55
|
-
on_focus: Optional[
|
|
56
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
57
|
-
] = None,
|
|
58
|
-
on_load: Optional[
|
|
59
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
60
|
-
] = None,
|
|
61
|
-
on_mount: Optional[
|
|
62
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
46
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
63
47
|
] = None,
|
|
48
|
+
on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
49
|
+
on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
50
|
+
on_load: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
51
|
+
on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
64
52
|
on_mouse_down: Optional[
|
|
65
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
53
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
66
54
|
] = None,
|
|
67
55
|
on_mouse_enter: Optional[
|
|
68
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
56
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
69
57
|
] = None,
|
|
70
58
|
on_mouse_leave: Optional[
|
|
71
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
59
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
72
60
|
] = None,
|
|
73
61
|
on_mouse_move: Optional[
|
|
74
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
62
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
75
63
|
] = None,
|
|
76
64
|
on_mouse_out: Optional[
|
|
77
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
65
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
78
66
|
] = None,
|
|
79
67
|
on_mouse_over: Optional[
|
|
80
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
68
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
81
69
|
] = None,
|
|
82
70
|
on_mouse_up: Optional[
|
|
83
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
84
|
-
] = None,
|
|
85
|
-
on_scroll: Optional[
|
|
86
|
-
Union[EventHandler, EventSpec, list, Callable, BaseVar]
|
|
71
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
87
72
|
] = None,
|
|
73
|
+
on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
88
74
|
on_unmount: Optional[
|
|
89
|
-
Union[EventHandler, EventSpec, list, Callable,
|
|
75
|
+
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
90
76
|
] = None,
|
|
91
77
|
**props,
|
|
92
78
|
) -> "Image":
|