reflex 0.3.5a2__tar.gz → 0.3.5a3__tar.gz
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-0.3.5a2 → reflex-0.3.5a3}/PKG-INFO +1 -1
- {reflex-0.3.5a2 → reflex-0.3.5a3}/pyproject.toml +1 -1
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/app.py +6 -5
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/head.py +2 -2
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/head.pyi +4 -7
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/component.py +52 -10
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/charts.pyi +2 -5
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/general.py +2 -1
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/general.pyi +4 -6
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/recharts.py +4 -4
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/recharts.pyi +4 -7
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/cond.py +2 -2
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/markdown.py +19 -5
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/markdown.pyi +4 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/compiler.py +2 -1
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/vars.py +23 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/LICENSE +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/README.md +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/blank/assets/favicon.ico +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/blank/code/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/blank/code/blank.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/.gitignore +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/assets/favicon.ico +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/assets/github.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/assets/icon.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/assets/logo.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/assets/paneleft.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/demo.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/chatapp.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/datatable.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/forms.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/graphing.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/pages/home.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/sidebar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/states/form_state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/states/pie_state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/styles.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/chat.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/loading_icon.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/modal.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/navbar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/sidebar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/styles.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/README.md +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/assets/favicon.ico +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/assets/github.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/assets/icon.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/assets/logo.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/assets/paneleft.svg +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/components/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/components/sidebar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/pages/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/pages/dashboard.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/pages/index.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/pages/settings.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/sidebar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/styles.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/templates/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/templates/template.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/package.json.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/index.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/tailwind.config.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/utils/context.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/.gitignore +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/components/reflex/chakra_color_mode_provider.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/jsconfig.json +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/next.config.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/postcss.config.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/styles/tailwind.css +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/utils/client_side_routing.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/utils/helpers/dataeditor.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/utils/helpers/range.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/web/utils/state.js +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/__init__.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/__main__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/admin.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/app.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/base.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/compiler/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/compiler/compiler.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/compiler/templates.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/compiler/utils.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/app_wrap.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/app_wrap.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/bare.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/body.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/body.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/document.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/document.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/link.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/link.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/meta.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/meta.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/script.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/base/script.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/badge.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/badge.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/code.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/code.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/dataeditor.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/dataeditor.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/datatable.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/datatable.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/divider.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/divider.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/keyboard_key.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/keyboard_key.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/list.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/list.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/moment.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/moment.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/stat.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/stat.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/table.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/table.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/tag.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/datadisplay/tag.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/accordion.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/accordion.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/tabs.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/tabs.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/transition.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/transition.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/visuallyhidden.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/disclosure/visuallyhidden.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/constants/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/constants/html.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/constants/react.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/constants/reflex.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/element.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/element.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/base.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/base.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/forms.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/forms.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/inline.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/inline.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/media.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/media.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/metadata.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/metadata.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/other.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/other.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/scripts.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/scripts.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/sectioning.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/sectioning.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/tables.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/tables.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/typography.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/el/elements/typography.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/alert.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/alert.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/circularprogress.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/circularprogress.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/progress.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/progress.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/skeleton.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/skeleton.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/spinner.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/feedback/spinner.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/button.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/button.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/checkbox.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/checkbox.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/colormodeswitch.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/colormodeswitch.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/date_picker.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/date_picker.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/date_time_picker.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/date_time_picker.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/debounce.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/debounce.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/editable.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/editable.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/editor.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/editor.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/email.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/email.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/form.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/form.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/iconbutton.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/iconbutton.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/input.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/input.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/multiselect.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/numberinput.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/numberinput.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/password.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/password.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/pininput.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/pininput.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/radio.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/radio.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/rangeslider.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/rangeslider.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/select.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/select.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/slider.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/slider.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/switch.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/switch.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/textarea.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/textarea.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/upload.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/forms/upload.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/plotly.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/plotly.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/cartesian.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/cartesian.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/charts.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/polar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/graphing/recharts/polar.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/aspect_ratio.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/aspect_ratio.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/box.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/box.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/card.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/card.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/center.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/center.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/container.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/container.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/flex.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/flex.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/foreach.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/fragment.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/fragment.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/grid.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/grid.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/html.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/html.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/responsive.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/spacer.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/spacer.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/stack.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/stack.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/wrap.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/layout/wrap.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/libs/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/libs/chakra.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/libs/chakra.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/libs/react_player.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/libs/react_player.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/literals.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/audio.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/audio.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/avatar.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/avatar.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/icon.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/icon.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/image.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/image.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/video.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/media/video.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/breadcrumb.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/breadcrumb.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/client_side_routing.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/client_side_routing.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/link.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/link.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/linkoverlay.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/linkoverlay.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/nextlink.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/nextlink.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/stepper.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/navigation/stepper.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/alertdialog.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/alertdialog.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/banner.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/banner.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/drawer.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/drawer.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/menu.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/menu.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/modal.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/modal.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/popover.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/popover.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/tooltip.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/overlay/tooltip.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/base.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/base.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/components.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/components.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/layout.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/layout.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/typography.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/radix/themes/typography.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/tags/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/tags/cond_tag.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/tags/iter_tag.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/tags/tag.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/tags/tagless.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/heading.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/heading.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/highlight.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/highlight.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/span.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/span.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/text.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/components/typography/text.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/config.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/config.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/base.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/config.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/event.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/installer.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/route.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/constants/style.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/event.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/middleware/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/middleware/hydrate_middleware.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/middleware/middleware.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/model.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/page.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/page.pyi +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/reflex.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/route.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/state.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/style.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/testing.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/__init__.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/build.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/console.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/exceptions.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/exec.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/export.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/format.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/imports.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/path_ops.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/prerequisites.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/processes.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/serializers.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/telemetry.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/types.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/utils/watch.py +0 -0
- {reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/vars.pyi +0 -0
|
@@ -161,11 +161,12 @@ class App(Base):
|
|
|
161
161
|
"rx.BaseState cannot be subclassed multiple times. use rx.State instead"
|
|
162
162
|
)
|
|
163
163
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
164
|
+
if "state" in kwargs:
|
|
165
|
+
console.deprecate(
|
|
166
|
+
feature_name="`state` argument for App()",
|
|
167
|
+
reason="due to all `rx.State` subclasses being inferred.",
|
|
168
|
+
deprecation_version="0.3.5",
|
|
169
|
+
removal_version="0.4.0",
|
|
169
170
|
)
|
|
170
171
|
self.state = State
|
|
171
172
|
# Get the config
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""The head component."""
|
|
2
2
|
|
|
3
|
-
from reflex.components.component import Component
|
|
3
|
+
from reflex.components.component import Component, MemoizationLeaf
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class NextHeadLib(Component):
|
|
@@ -9,7 +9,7 @@ class NextHeadLib(Component):
|
|
|
9
9
|
library = "next/head"
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
class Head(NextHeadLib):
|
|
12
|
+
class Head(NextHeadLib, MemoizationLeaf):
|
|
13
13
|
"""Head Component."""
|
|
14
14
|
|
|
15
15
|
tag = "NextHead"
|
|
@@ -7,7 +7,7 @@ from typing import Any, Dict, Literal, Optional, Union, overload
|
|
|
7
7
|
from reflex.vars import Var, BaseVar, ComputedVar
|
|
8
8
|
from reflex.event import EventChain, EventHandler, EventSpec
|
|
9
9
|
from reflex.style import Style
|
|
10
|
-
from reflex.components.component import Component
|
|
10
|
+
from reflex.components.component import Component, MemoizationLeaf
|
|
11
11
|
|
|
12
12
|
class NextHeadLib(Component):
|
|
13
13
|
@overload
|
|
@@ -88,7 +88,7 @@ class NextHeadLib(Component):
|
|
|
88
88
|
"""
|
|
89
89
|
...
|
|
90
90
|
|
|
91
|
-
class Head(NextHeadLib):
|
|
91
|
+
class Head(NextHeadLib, MemoizationLeaf):
|
|
92
92
|
@overload
|
|
93
93
|
@classmethod
|
|
94
94
|
def create( # type: ignore
|
|
@@ -147,7 +147,7 @@ class Head(NextHeadLib):
|
|
|
147
147
|
] = None,
|
|
148
148
|
**props
|
|
149
149
|
) -> "Head":
|
|
150
|
-
"""Create
|
|
150
|
+
"""Create a new memoization leaf component.
|
|
151
151
|
|
|
152
152
|
Args:
|
|
153
153
|
*children: The children of the component.
|
|
@@ -160,9 +160,6 @@ class Head(NextHeadLib):
|
|
|
160
160
|
**props: The props of the component.
|
|
161
161
|
|
|
162
162
|
Returns:
|
|
163
|
-
The
|
|
164
|
-
|
|
165
|
-
Raises:
|
|
166
|
-
TypeError: If an invalid child is passed.
|
|
163
|
+
The memoization leaf
|
|
167
164
|
"""
|
|
168
165
|
...
|
|
@@ -28,6 +28,7 @@ from reflex.constants import (
|
|
|
28
28
|
EventTriggers,
|
|
29
29
|
Hooks,
|
|
30
30
|
Imports,
|
|
31
|
+
MemoizationDisposition,
|
|
31
32
|
MemoizationMode,
|
|
32
33
|
PageNames,
|
|
33
34
|
)
|
|
@@ -1363,20 +1364,29 @@ class StatefulComponent(BaseComponent):
|
|
|
1363
1364
|
"""
|
|
1364
1365
|
from reflex.components.layout.foreach import Foreach
|
|
1365
1366
|
|
|
1367
|
+
if component._memoization_mode.disposition == MemoizationDisposition.NEVER:
|
|
1368
|
+
# Never memoize this component.
|
|
1369
|
+
return None
|
|
1370
|
+
|
|
1366
1371
|
if component.tag is None:
|
|
1367
1372
|
# Only memoize components with a tag.
|
|
1368
1373
|
return None
|
|
1369
1374
|
|
|
1370
1375
|
# If _var_data is found in this component, it is a candidate for auto-memoization.
|
|
1371
|
-
|
|
1376
|
+
should_memoize = False
|
|
1377
|
+
|
|
1378
|
+
# If the component requests to be memoized, then ignore other checks.
|
|
1379
|
+
if component._memoization_mode.disposition == MemoizationDisposition.ALWAYS:
|
|
1380
|
+
should_memoize = True
|
|
1372
1381
|
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1382
|
+
if not should_memoize:
|
|
1383
|
+
# Determine if any Vars have associated data.
|
|
1384
|
+
for prop_var in component._get_vars():
|
|
1385
|
+
if prop_var._var_data:
|
|
1386
|
+
should_memoize = True
|
|
1387
|
+
break
|
|
1378
1388
|
|
|
1379
|
-
if not
|
|
1389
|
+
if not should_memoize:
|
|
1380
1390
|
# Check for special-cases in child components.
|
|
1381
1391
|
for child in component.children:
|
|
1382
1392
|
# Skip BaseComponent and StatefulComponent children.
|
|
@@ -1384,14 +1394,14 @@ class StatefulComponent(BaseComponent):
|
|
|
1384
1394
|
continue
|
|
1385
1395
|
# Always consider Foreach something that must be memoized by the parent.
|
|
1386
1396
|
if isinstance(child, Foreach):
|
|
1387
|
-
|
|
1397
|
+
should_memoize = True
|
|
1388
1398
|
break
|
|
1389
1399
|
child = cls._child_var(child)
|
|
1390
1400
|
if isinstance(child, Var) and child._var_data:
|
|
1391
|
-
|
|
1401
|
+
should_memoize = True
|
|
1392
1402
|
break
|
|
1393
1403
|
|
|
1394
|
-
if
|
|
1404
|
+
if should_memoize or component.event_triggers:
|
|
1395
1405
|
# Render the component to determine tag+hash based on component code.
|
|
1396
1406
|
tag_name = cls._get_tag_name(component)
|
|
1397
1407
|
if tag_name is None:
|
|
@@ -1664,3 +1674,35 @@ class StatefulComponent(BaseComponent):
|
|
|
1664
1674
|
if stateful_component is not None:
|
|
1665
1675
|
return stateful_component
|
|
1666
1676
|
return component
|
|
1677
|
+
|
|
1678
|
+
|
|
1679
|
+
class MemoizationLeaf(Component):
|
|
1680
|
+
"""A component that does not separately memoize its children.
|
|
1681
|
+
|
|
1682
|
+
Any component which depends on finding the exact names of children
|
|
1683
|
+
components within it, should be a memoization leaf so the compiler
|
|
1684
|
+
does not replace the provided child tags with memoized tags.
|
|
1685
|
+
|
|
1686
|
+
During creation, a memoization leaf will mark itself as wanting to be
|
|
1687
|
+
memoized if any of its children return any hooks.
|
|
1688
|
+
"""
|
|
1689
|
+
|
|
1690
|
+
_memoization_mode = MemoizationMode(recursive=False)
|
|
1691
|
+
|
|
1692
|
+
@classmethod
|
|
1693
|
+
def create(cls, *children, **props) -> Component:
|
|
1694
|
+
"""Create a new memoization leaf component.
|
|
1695
|
+
|
|
1696
|
+
Args:
|
|
1697
|
+
*children: The children of the component.
|
|
1698
|
+
**props: The props of the component.
|
|
1699
|
+
|
|
1700
|
+
Returns:
|
|
1701
|
+
The memoization leaf
|
|
1702
|
+
"""
|
|
1703
|
+
comp = super().create(*children, **props)
|
|
1704
|
+
if comp.get_hooks():
|
|
1705
|
+
comp._memoization_mode = cls._memoization_mode.copy(
|
|
1706
|
+
update={"disposition": MemoizationDisposition.ALWAYS}
|
|
1707
|
+
)
|
|
1708
|
+
return comp
|
|
@@ -770,7 +770,7 @@ class FunnelChart(RechartsCharts):
|
|
|
770
770
|
] = None,
|
|
771
771
|
**props
|
|
772
772
|
) -> "FunnelChart":
|
|
773
|
-
"""Create
|
|
773
|
+
"""Create a new memoization leaf component.
|
|
774
774
|
|
|
775
775
|
Args:
|
|
776
776
|
*children: The children of the component.
|
|
@@ -791,10 +791,7 @@ class FunnelChart(RechartsCharts):
|
|
|
791
791
|
**props: The props of the component.
|
|
792
792
|
|
|
793
793
|
Returns:
|
|
794
|
-
The
|
|
795
|
-
|
|
796
|
-
Raises:
|
|
797
|
-
TypeError: If an invalid child is passed.
|
|
794
|
+
The memoization leaf
|
|
798
795
|
"""
|
|
799
796
|
...
|
|
800
797
|
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
from typing import Any, Dict, List, Union
|
|
5
5
|
|
|
6
|
+
from reflex.components.component import MemoizationLeaf
|
|
6
7
|
from reflex.constants import EventTriggers
|
|
7
8
|
from reflex.vars import Var
|
|
8
9
|
|
|
@@ -16,7 +17,7 @@ from .recharts import (
|
|
|
16
17
|
)
|
|
17
18
|
|
|
18
19
|
|
|
19
|
-
class ResponsiveContainer(Recharts):
|
|
20
|
+
class ResponsiveContainer(Recharts, MemoizationLeaf):
|
|
20
21
|
"""A base class for responsive containers in Recharts."""
|
|
21
22
|
|
|
22
23
|
tag = "ResponsiveContainer"
|
|
@@ -8,6 +8,7 @@ from reflex.vars import Var, BaseVar, ComputedVar
|
|
|
8
8
|
from reflex.event import EventChain, EventHandler, EventSpec
|
|
9
9
|
from reflex.style import Style
|
|
10
10
|
from typing import Any, Dict, List, Union
|
|
11
|
+
from reflex.components.component import MemoizationLeaf
|
|
11
12
|
from reflex.constants import EventTriggers
|
|
12
13
|
from reflex.vars import Var
|
|
13
14
|
from .recharts import (
|
|
@@ -19,7 +20,7 @@ from .recharts import (
|
|
|
19
20
|
Recharts,
|
|
20
21
|
)
|
|
21
22
|
|
|
22
|
-
class ResponsiveContainer(Recharts):
|
|
23
|
+
class ResponsiveContainer(Recharts, MemoizationLeaf):
|
|
23
24
|
@overload
|
|
24
25
|
@classmethod
|
|
25
26
|
def create( # type: ignore
|
|
@@ -84,7 +85,7 @@ class ResponsiveContainer(Recharts):
|
|
|
84
85
|
] = None,
|
|
85
86
|
**props
|
|
86
87
|
) -> "ResponsiveContainer":
|
|
87
|
-
"""Create
|
|
88
|
+
"""Create a new memoization leaf component.
|
|
88
89
|
|
|
89
90
|
Args:
|
|
90
91
|
*children: The children of the component.
|
|
@@ -103,10 +104,7 @@ class ResponsiveContainer(Recharts):
|
|
|
103
104
|
**props: The props of the component.
|
|
104
105
|
|
|
105
106
|
Returns:
|
|
106
|
-
The
|
|
107
|
-
|
|
108
|
-
Raises:
|
|
109
|
-
TypeError: If an invalid child is passed.
|
|
107
|
+
The memoization leaf
|
|
110
108
|
"""
|
|
111
109
|
...
|
|
112
110
|
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
"""A component that wraps a recharts lib."""
|
|
2
2
|
from typing import Literal
|
|
3
3
|
|
|
4
|
-
from reflex.components.component import Component, NoSSRComponent
|
|
4
|
+
from reflex.components.component import Component, MemoizationLeaf, NoSSRComponent
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
class Recharts(Component):
|
|
8
|
-
"""A component that wraps a
|
|
8
|
+
"""A component that wraps a recharts lib."""
|
|
9
9
|
|
|
10
10
|
library = "recharts@2.8.0"
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
class RechartsCharts(NoSSRComponent):
|
|
14
|
-
"""A component that wraps a
|
|
13
|
+
class RechartsCharts(NoSSRComponent, MemoizationLeaf):
|
|
14
|
+
"""A component that wraps a recharts lib."""
|
|
15
15
|
|
|
16
16
|
library = "recharts@2.8.0"
|
|
17
17
|
|
|
@@ -8,7 +8,7 @@ from reflex.vars import Var, BaseVar, ComputedVar
|
|
|
8
8
|
from reflex.event import EventChain, EventHandler, EventSpec
|
|
9
9
|
from reflex.style import Style
|
|
10
10
|
from typing import Literal
|
|
11
|
-
from reflex.components.component import Component, NoSSRComponent
|
|
11
|
+
from reflex.components.component import Component, MemoizationLeaf, NoSSRComponent
|
|
12
12
|
|
|
13
13
|
class Recharts(Component):
|
|
14
14
|
@overload
|
|
@@ -89,7 +89,7 @@ class Recharts(Component):
|
|
|
89
89
|
"""
|
|
90
90
|
...
|
|
91
91
|
|
|
92
|
-
class RechartsCharts(NoSSRComponent):
|
|
92
|
+
class RechartsCharts(NoSSRComponent, MemoizationLeaf):
|
|
93
93
|
@overload
|
|
94
94
|
@classmethod
|
|
95
95
|
def create( # type: ignore
|
|
@@ -148,7 +148,7 @@ class RechartsCharts(NoSSRComponent):
|
|
|
148
148
|
] = None,
|
|
149
149
|
**props
|
|
150
150
|
) -> "RechartsCharts":
|
|
151
|
-
"""Create
|
|
151
|
+
"""Create a new memoization leaf component.
|
|
152
152
|
|
|
153
153
|
Args:
|
|
154
154
|
*children: The children of the component.
|
|
@@ -161,10 +161,7 @@ class RechartsCharts(NoSSRComponent):
|
|
|
161
161
|
**props: The props of the component.
|
|
162
162
|
|
|
163
163
|
Returns:
|
|
164
|
-
The
|
|
165
|
-
|
|
166
|
-
Raises:
|
|
167
|
-
TypeError: If an invalid child is passed.
|
|
164
|
+
The memoization leaf
|
|
168
165
|
"""
|
|
169
166
|
...
|
|
170
167
|
|
|
@@ -3,7 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
|
|
4
4
|
from typing import Any, Dict, Optional, overload
|
|
5
5
|
|
|
6
|
-
from reflex.components.component import BaseComponent, Component
|
|
6
|
+
from reflex.components.component import BaseComponent, Component, MemoizationLeaf
|
|
7
7
|
from reflex.components.layout.fragment import Fragment
|
|
8
8
|
from reflex.components.tags import CondTag, Tag
|
|
9
9
|
from reflex.constants import Dirs
|
|
@@ -15,7 +15,7 @@ _IS_TRUE_IMPORT = {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
class Cond(
|
|
18
|
+
class Cond(MemoizationLeaf):
|
|
19
19
|
"""Render one of two components based on a condition."""
|
|
20
20
|
|
|
21
21
|
# The cond to determine which component to render.
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import textwrap
|
|
6
|
+
from functools import lru_cache
|
|
6
7
|
from hashlib import md5
|
|
7
8
|
from typing import Any, Callable, Dict, Union
|
|
8
9
|
|
|
@@ -35,6 +36,7 @@ _REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW])
|
|
|
35
36
|
|
|
36
37
|
|
|
37
38
|
# Component Mapping
|
|
39
|
+
@lru_cache
|
|
38
40
|
def get_base_component_map() -> dict[str, Callable]:
|
|
39
41
|
"""Get the base component map.
|
|
40
42
|
|
|
@@ -89,6 +91,9 @@ class Markdown(Component):
|
|
|
89
91
|
# Custom styles for the markdown (deprecated in v0.2.9).
|
|
90
92
|
custom_styles: Dict[str, Any] = {}
|
|
91
93
|
|
|
94
|
+
# The hash of the component map, generated at create() time.
|
|
95
|
+
component_map_hash: str = ""
|
|
96
|
+
|
|
92
97
|
@classmethod
|
|
93
98
|
def create(cls, *children, **props) -> Component:
|
|
94
99
|
"""Create a markdown component.
|
|
@@ -124,7 +129,12 @@ class Markdown(Component):
|
|
|
124
129
|
src = textwrap.dedent(src)
|
|
125
130
|
|
|
126
131
|
# Create the component.
|
|
127
|
-
return super().create(
|
|
132
|
+
return super().create(
|
|
133
|
+
src,
|
|
134
|
+
component_map=component_map,
|
|
135
|
+
component_map_hash=cls._component_map_hash(component_map),
|
|
136
|
+
**props,
|
|
137
|
+
)
|
|
128
138
|
|
|
129
139
|
def get_custom_components(
|
|
130
140
|
self, seen: set[str] | None = None
|
|
@@ -264,11 +274,15 @@ class Markdown(Component):
|
|
|
264
274
|
|
|
265
275
|
return components
|
|
266
276
|
|
|
267
|
-
|
|
268
|
-
|
|
277
|
+
@staticmethod
|
|
278
|
+
def _component_map_hash(component_map) -> str:
|
|
279
|
+
inp = str(
|
|
280
|
+
{tag: component(_MOCK_ARG) for tag, component in component_map.items()}
|
|
281
|
+
).encode()
|
|
282
|
+
return md5(inp).hexdigest()
|
|
269
283
|
|
|
270
284
|
def _get_component_map_name(self) -> str:
|
|
271
|
-
return f"ComponentMap_{self.
|
|
285
|
+
return f"ComponentMap_{self.component_map_hash}"
|
|
272
286
|
|
|
273
287
|
def _get_custom_code(self) -> str | None:
|
|
274
288
|
hooks = set()
|
|
@@ -292,7 +306,7 @@ class Markdown(Component):
|
|
|
292
306
|
remark_plugins=_REMARK_PLUGINS,
|
|
293
307
|
rehype_plugins=_REHYPE_PLUGINS,
|
|
294
308
|
)
|
|
295
|
-
.remove_props("componentMap")
|
|
309
|
+
.remove_props("componentMap", "componentMapHash")
|
|
296
310
|
)
|
|
297
311
|
tag.special_props.add(
|
|
298
312
|
Var.create_safe(
|
|
@@ -8,6 +8,7 @@ from reflex.vars import Var, BaseVar, ComputedVar
|
|
|
8
8
|
from reflex.event import EventChain, EventHandler, EventSpec
|
|
9
9
|
from reflex.style import Style
|
|
10
10
|
import textwrap
|
|
11
|
+
from functools import lru_cache
|
|
11
12
|
from hashlib import md5
|
|
12
13
|
from typing import Any, Callable, Dict, Union
|
|
13
14
|
from reflex.compiler import utils
|
|
@@ -32,6 +33,7 @@ _REHYPE_KATEX = Var.create_safe("rehypeKatex", _var_is_local=False)
|
|
|
32
33
|
_REHYPE_RAW = Var.create_safe("rehypeRaw", _var_is_local=False)
|
|
33
34
|
_REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW])
|
|
34
35
|
|
|
36
|
+
@lru_cache
|
|
35
37
|
def get_base_component_map() -> dict[str, Callable]: ...
|
|
36
38
|
|
|
37
39
|
class Markdown(Component):
|
|
@@ -42,6 +44,7 @@ class Markdown(Component):
|
|
|
42
44
|
*children,
|
|
43
45
|
component_map: Optional[Dict[str, Any]] = None,
|
|
44
46
|
custom_styles: Optional[Dict[str, Any]] = None,
|
|
47
|
+
component_map_hash: Optional[str] = None,
|
|
45
48
|
style: Optional[Style] = None,
|
|
46
49
|
key: Optional[Any] = None,
|
|
47
50
|
id: Optional[Any] = None,
|
|
@@ -101,6 +104,7 @@ class Markdown(Component):
|
|
|
101
104
|
*children: The children of the component.
|
|
102
105
|
component_map: The component map from a tag to a lambda that creates a component.
|
|
103
106
|
custom_styles: Custom styles for the markdown (deprecated in v0.2.9).
|
|
107
|
+
component_map_hash: The hash of the component map, generated at create() time.
|
|
104
108
|
style: The style of the component.
|
|
105
109
|
key: A unique key for the component.
|
|
106
110
|
id: The id for the component.
|
|
@@ -115,7 +115,8 @@ class MemoizationDisposition(enum.Enum):
|
|
|
115
115
|
|
|
116
116
|
# If the component uses state or events, it should be memoized.
|
|
117
117
|
STATEFUL = "stateful"
|
|
118
|
-
|
|
118
|
+
ALWAYS = "always"
|
|
119
|
+
NEVER = "never"
|
|
119
120
|
|
|
120
121
|
|
|
121
122
|
class MemoizationMode(Base):
|
|
@@ -1284,6 +1284,29 @@ class Var:
|
|
|
1284
1284
|
_var_type=str,
|
|
1285
1285
|
)
|
|
1286
1286
|
|
|
1287
|
+
def strip(self, other: str | Var[str] = " ") -> Var:
|
|
1288
|
+
"""Strip a string var.
|
|
1289
|
+
|
|
1290
|
+
Args:
|
|
1291
|
+
other: The string to strip the var with.
|
|
1292
|
+
|
|
1293
|
+
Returns:
|
|
1294
|
+
A var with the stripped string.
|
|
1295
|
+
|
|
1296
|
+
Raises:
|
|
1297
|
+
TypeError: If the var is not a string.
|
|
1298
|
+
"""
|
|
1299
|
+
if not types._issubclass(self._var_type, str):
|
|
1300
|
+
raise TypeError(f"Cannot strip non-string var {self._var_full_name}.")
|
|
1301
|
+
|
|
1302
|
+
other = Var.create_safe(json.dumps(other)) if isinstance(other, str) else other
|
|
1303
|
+
|
|
1304
|
+
return self._replace(
|
|
1305
|
+
_var_name=f"{self._var_name}.replace(/^${other._var_full_name}|${other._var_full_name}$/g, '')",
|
|
1306
|
+
_var_is_string=False,
|
|
1307
|
+
merge_var_data=other._var_data,
|
|
1308
|
+
)
|
|
1309
|
+
|
|
1287
1310
|
def split(self, other: str | Var[str] = " ") -> Var:
|
|
1288
1311
|
"""Split a string var into a list.
|
|
1289
1312
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/loading_icon.py
RENAMED
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/modal.py
RENAMED
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/navbar.py
RENAMED
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/demo/code/webui/components/sidebar.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/apps/sidebar/code/components/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2
RENAMED
|
File without changes
|
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2
RENAMED
|
File without changes
|
{reflex-0.3.5a2 → reflex-0.3.5a3}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2
RENAMED
|
File without changes
|