reflex 0.6.0a3__tar.gz → 0.6.0a4__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.6.0a3 → reflex-0.6.0a4}/PKG-INFO +4 -3
- {reflex-0.6.0a3 → reflex-0.6.0a4}/README.md +1 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/pyproject.toml +3 -3
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +1 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/state.js +3 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app.py +2 -6
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app_module_for_backend.py +1 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/component.py +9 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/breakpoints.py +1 -3
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/event.py +2 -2
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/client_state.py +7 -6
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/state.py +0 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/prerequisites.py +20 -7
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/telemetry.py +1 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/types.py +1 -1
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/sequence.py +0 -8
- {reflex-0.6.0a3 → reflex-0.6.0a4}/LICENSE +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/apps/blank/assets/favicon.ico +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/apps/blank/code/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/apps/blank/code/blank.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/README.md.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/__init__.py.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/demo_app.py.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/src.py.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/package.json.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/index.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/tailwind.config.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/utils/context.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/.gitignore +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/jsconfig.json +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/next.config.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/postcss.config.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/styles/tailwind.css +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/client_side_routing.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/helpers/dataeditor.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/helpers/debounce.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/helpers/paste.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/helpers/range.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/web/utils/helpers/throttle.js +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/__main__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/admin.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app_mixins/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app_mixins/lifespan.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app_mixins/middleware.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/app_mixins/mixin.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/compiler/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/compiler/compiler.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/compiler/templates.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/compiler/utils.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/app_wrap.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/app_wrap.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/bare.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/body.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/body.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/document.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/document.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/error_boundary.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/error_boundary.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/fragment.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/fragment.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/head.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/head.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/link.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/link.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/meta.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/meta.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/script.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/base/script.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/banner.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/banner.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/client_side_routing.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/client_side_routing.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/clipboard.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/clipboard.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/colors.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/cond.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/debounce.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/debounce.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/foreach.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/html.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/html.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/layout/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/match.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/responsive.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/upload.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/core/upload.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/code.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/code.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/dataeditor.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/dataeditor.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/datadisplay/logo.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/constants/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/constants/html.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/constants/react.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/constants/reflex.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/element.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/element.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/base.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/forms.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/forms.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/inline.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/inline.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/media.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/media.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/metadata.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/metadata.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/other.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/other.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/scripts.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/scripts.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/sectioning.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/sectioning.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/tables.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/tables.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/typography.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/el/elements/typography.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/gridjs/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/gridjs/datatable.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/gridjs/datatable.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/literals.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/lucide/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/lucide/icon.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/lucide/icon.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/markdown/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/markdown/markdown.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/markdown/markdown.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/moment/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/moment/moment.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/moment/moment.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/base.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/image.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/image.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/link.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/link.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/video.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/next/video.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/plotly/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/plotly/plotly.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/plotly/plotly.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/props.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/accordion.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/accordion.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/base.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/drawer.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/drawer.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/form.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/form.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/progress.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/progress.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/slider.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/primitives/slider.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/base.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/color_mode.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/color_mode.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/alert_dialog.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/alert_dialog.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/aspect_ratio.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/aspect_ratio.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/avatar.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/avatar.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/badge.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/badge.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/button.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/button.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/callout.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/callout.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/card.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/card.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox_cards.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox_cards.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox_group.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/checkbox_group.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/context_menu.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/context_menu.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/data_list.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/data_list.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/dialog.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/dialog.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/dropdown_menu.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/dropdown_menu.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/hover_card.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/hover_card.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/icon_button.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/icon_button.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/inset.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/inset.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/popover.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/popover.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/progress.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/progress.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio_cards.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio_cards.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio_group.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/radio_group.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/scroll_area.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/scroll_area.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/segmented_control.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/segmented_control.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/select.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/select.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/separator.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/separator.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/skeleton.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/skeleton.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/slider.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/slider.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/spinner.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/spinner.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/switch.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/switch.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/table.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/table.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/tabs.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/tabs.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/text_area.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/text_area.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/text_field.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/text_field.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/tooltip.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/components/tooltip.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/base.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/box.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/box.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/center.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/center.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/container.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/container.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/flex.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/flex.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/grid.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/grid.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/list.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/list.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/section.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/section.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/spacer.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/spacer.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/stack.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/layout/stack.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/blockquote.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/blockquote.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/code.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/code.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/heading.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/heading.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/link.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/link.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/text.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/radix/themes/typography/text.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/audio.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/audio.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/react_player.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/react_player.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/video.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/react_player/video.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/__init__.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/cartesian.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/cartesian.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/charts.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/charts.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/general.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/general.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/polar.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/polar.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/recharts.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/recharts/recharts.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/sonner/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/sonner/toast.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/sonner/toast.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/suneditor/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/suneditor/editor.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/suneditor/editor.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/cond_tag.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/iter_tag.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/match_tag.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/tag.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/components/tags/tagless.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/config.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/colors.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/compiler.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/config.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/custom_components.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/event.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/installer.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/route.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/constants/style.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/custom_components/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/custom_components/custom_components.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/assets.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/hooks.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/layout.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/layout.pyi +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/experimental/misc.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/middleware/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/middleware/hydrate_middleware.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/middleware/middleware.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/model.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/page.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/reflex.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/route.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/style.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/testing.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/build.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/codespaces.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/compat.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/console.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/exceptions.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/exec.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/export.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/format.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/imports.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/lazy_loader.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/net.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/path_ops.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/processes.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/pyi_generator.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/redir.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/registry.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/utils/serializers.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/__init__.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/base.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/function.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/number.py +0 -0
- {reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/vars/object.py +0 -0
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: reflex
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.0a4
|
|
4
4
|
Summary: Web apps in pure Python.
|
|
5
5
|
Home-page: https://reflex.dev
|
|
6
6
|
License: Apache-2.0
|
|
7
7
|
Keywords: web,framework
|
|
8
8
|
Author: Nikhil Rao
|
|
9
9
|
Author-email: nikhil@reflex.dev
|
|
10
|
-
Requires-Python: >=3.
|
|
10
|
+
Requires-Python: >=3.9,<4.0
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
12
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
13
|
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
14
15
|
Classifier: Programming Language :: Python :: 3.10
|
|
15
16
|
Classifier: Programming Language :: Python :: 3.11
|
|
16
17
|
Classifier: Programming Language :: Python :: 3.12
|
|
@@ -86,7 +87,7 @@ See our [architecture page](https://reflex.dev/blog/2024-03-21-reflex-architectu
|
|
|
86
87
|
|
|
87
88
|
## ⚙️ Installation
|
|
88
89
|
|
|
89
|
-
Open a terminal and run (Requires Python 3.
|
|
90
|
+
Open a terminal and run (Requires Python 3.9+):
|
|
90
91
|
|
|
91
92
|
```bash
|
|
92
93
|
pip install reflex
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "reflex"
|
|
3
|
-
version = "0.6.
|
|
3
|
+
version = "0.6.0a4"
|
|
4
4
|
description = "Web apps in pure Python."
|
|
5
5
|
license = "Apache-2.0"
|
|
6
6
|
authors = [
|
|
@@ -26,7 +26,7 @@ packages = [
|
|
|
26
26
|
]
|
|
27
27
|
|
|
28
28
|
[tool.poetry.dependencies]
|
|
29
|
-
python = "^3.
|
|
29
|
+
python = "^3.9"
|
|
30
30
|
dill = ">=0.3.8,<0.4"
|
|
31
31
|
fastapi = ">=0.96.0,!=0.111.0,!=0.111.1"
|
|
32
32
|
gunicorn = ">=20.1.0,<24.0"
|
|
@@ -88,7 +88,7 @@ build-backend = "poetry.core.masonry.api"
|
|
|
88
88
|
[tool.pyright]
|
|
89
89
|
|
|
90
90
|
[tool.ruff]
|
|
91
|
-
target-version = "
|
|
91
|
+
target-version = "py39"
|
|
92
92
|
lint.select = ["B", "D", "E", "F", "I", "SIM", "W"]
|
|
93
93
|
lint.ignore = ["B008", "D203", "D205", "D213", "D401", "D406", "D407", "E501", "F403", "F405", "F541"]
|
|
94
94
|
lint.pydocstyle.convention = "google"
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/pyproject.toml.jinja2
RENAMED
|
@@ -8,7 +8,7 @@ version = "0.0.1"
|
|
|
8
8
|
description = "Reflex custom component {{ module_name }}"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "Apache-2.0" }
|
|
11
|
-
requires-python = ">=3.
|
|
11
|
+
requires-python = ">=3.9"
|
|
12
12
|
authors = [{ name = "", email = "YOUREMAIL@domain.com" }]
|
|
13
13
|
keywords = ["reflex","reflex-custom-components"]
|
|
14
14
|
|
|
@@ -805,7 +805,9 @@ export const useEventLoop = (
|
|
|
805
805
|
* @returns True if the value is truthy, false otherwise.
|
|
806
806
|
*/
|
|
807
807
|
export const isTrue = (val) => {
|
|
808
|
-
|
|
808
|
+
if (Array.isArray(val)) return val.length > 0;
|
|
809
|
+
if (val === Object(val)) return Object.keys(val).length > 0;
|
|
810
|
+
return Boolean(val);
|
|
809
811
|
};
|
|
810
812
|
|
|
811
813
|
/**
|
|
@@ -606,10 +606,7 @@ class App(MiddlewareMixin, LifespanMixin, Base):
|
|
|
606
606
|
for route in self.pages:
|
|
607
607
|
replaced_route = replace_brackets_with_keywords(route)
|
|
608
608
|
for rw, r, nr in zip(
|
|
609
|
-
replaced_route.split("/"),
|
|
610
|
-
route.split("/"),
|
|
611
|
-
new_route.split("/"),
|
|
612
|
-
strict=False,
|
|
609
|
+
replaced_route.split("/"), route.split("/"), new_route.split("/")
|
|
613
610
|
):
|
|
614
611
|
if rw in segments and r != nr:
|
|
615
612
|
# If the slugs in the segments of both routes are not the same, then the route is invalid
|
|
@@ -958,7 +955,7 @@ class App(MiddlewareMixin, LifespanMixin, Base):
|
|
|
958
955
|
|
|
959
956
|
# Prepopulate the global ExecutorSafeFunctions class with input data required by the compile functions.
|
|
960
957
|
# This is required for multiprocessing to work, in presence of non-picklable inputs.
|
|
961
|
-
for route, component in zip(self.pages, page_components
|
|
958
|
+
for route, component in zip(self.pages, page_components):
|
|
962
959
|
ExecutorSafeFunctions.COMPILE_PAGE_ARGS_BY_ROUTE[route] = (
|
|
963
960
|
route,
|
|
964
961
|
component,
|
|
@@ -1172,7 +1169,6 @@ class App(MiddlewareMixin, LifespanMixin, Base):
|
|
|
1172
1169
|
FRONTEND_ARG_SPEC,
|
|
1173
1170
|
BACKEND_ARG_SPEC,
|
|
1174
1171
|
],
|
|
1175
|
-
strict=False,
|
|
1176
1172
|
):
|
|
1177
1173
|
if hasattr(handler_fn, "__name__"):
|
|
1178
1174
|
_fn_name = handler_fn.__name__
|
|
@@ -15,7 +15,7 @@ if constants.CompileVars.APP != "app":
|
|
|
15
15
|
telemetry.send("compile")
|
|
16
16
|
app_module = get_app(reload=False)
|
|
17
17
|
app = getattr(app_module, constants.CompileVars.APP)
|
|
18
|
-
# For py3.
|
|
18
|
+
# For py3.9 compatibility when redis is used, we MUST add any decorator pages
|
|
19
19
|
# before compiling the app in a thread to avoid event loop error (REF-2172).
|
|
20
20
|
app._apply_decorated_pages()
|
|
21
21
|
compile_future = ThreadPoolExecutor(max_workers=1).submit(app._compile)
|
|
@@ -448,8 +448,16 @@ class Component(BaseComponent, ABC):
|
|
|
448
448
|
and not types._issubclass(passed_type, expected_type, value)
|
|
449
449
|
):
|
|
450
450
|
value_name = value._js_expr if isinstance(value, Var) else value
|
|
451
|
+
|
|
452
|
+
additional_info = (
|
|
453
|
+
" You can call `.bool()` on the value to convert it to a boolean."
|
|
454
|
+
if expected_type is bool and isinstance(value, Var)
|
|
455
|
+
else ""
|
|
456
|
+
)
|
|
457
|
+
|
|
451
458
|
raise TypeError(
|
|
452
|
-
f"Invalid var passed for prop {type(self).__name__}.{key}, expected type {expected_type}, got value {value_name} of type {
|
|
459
|
+
f"Invalid var passed for prop {type(self).__name__}.{key}, expected type {expected_type}, got value {value_name} of type {passed_type}."
|
|
460
|
+
+ additional_info
|
|
453
461
|
)
|
|
454
462
|
# Check if the key is an event trigger.
|
|
455
463
|
if key in component_specific_triggers:
|
|
@@ -217,7 +217,7 @@ class EventHandler(EventActionsMixin):
|
|
|
217
217
|
raise EventHandlerTypeError(
|
|
218
218
|
f"Arguments to event handlers must be Vars or JSON-serializable. Got {arg} of type {type(arg)}."
|
|
219
219
|
) from e
|
|
220
|
-
payload = tuple(zip(fn_args, values
|
|
220
|
+
payload = tuple(zip(fn_args, values))
|
|
221
221
|
|
|
222
222
|
# Return the event spec.
|
|
223
223
|
return EventSpec(
|
|
@@ -310,7 +310,7 @@ class EventSpec(EventActionsMixin):
|
|
|
310
310
|
raise EventHandlerTypeError(
|
|
311
311
|
f"Arguments to event handlers must be Vars or JSON-serializable. Got {arg} of type {type(arg)}."
|
|
312
312
|
) from e
|
|
313
|
-
new_payload = tuple(zip(fn_args, values
|
|
313
|
+
new_payload = tuple(zip(fn_args, values))
|
|
314
314
|
return self.with_args(self.args + new_payload)
|
|
315
315
|
|
|
316
316
|
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
5
|
import dataclasses
|
|
6
|
+
import re
|
|
6
7
|
import sys
|
|
7
8
|
from typing import Any, Callable, Union
|
|
8
9
|
|
|
@@ -174,15 +175,15 @@ class ClientStateVar(Var):
|
|
|
174
175
|
else self._setter_name
|
|
175
176
|
)
|
|
176
177
|
if value is not NoValue:
|
|
177
|
-
import re
|
|
178
|
-
|
|
179
178
|
# This is a hack to make it work like an EventSpec taking an arg
|
|
180
179
|
value_str = str(LiteralVar.create(value))
|
|
181
180
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
181
|
+
if value_str.startswith("_"):
|
|
182
|
+
# remove patterns of ["*"] from the value_str using regex
|
|
183
|
+
arg = re.sub(r"\[\".*\"\]", "", value_str)
|
|
184
|
+
setter = f"(({arg}) => {setter}({value_str}))"
|
|
185
|
+
else:
|
|
186
|
+
setter = f"(() => {setter}({value_str}))"
|
|
186
187
|
return Var(
|
|
187
188
|
_js_expr=setter,
|
|
188
189
|
_var_data=VarData(imports=_refs_import if self._global_ref else {}),
|
|
@@ -73,6 +73,18 @@ def get_web_dir() -> Path:
|
|
|
73
73
|
return workdir
|
|
74
74
|
|
|
75
75
|
|
|
76
|
+
def _python_version_check():
|
|
77
|
+
"""Emit deprecation warning for deprecated python versions."""
|
|
78
|
+
# Check for end-of-life python versions.
|
|
79
|
+
if sys.version_info < (3, 10):
|
|
80
|
+
console.deprecate(
|
|
81
|
+
feature_name="Support for Python 3.9 and older",
|
|
82
|
+
reason="please upgrade to Python 3.10 or newer",
|
|
83
|
+
deprecation_version="0.6.0",
|
|
84
|
+
removal_version="0.7.0",
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
|
|
76
88
|
def check_latest_package_version(package_name: str):
|
|
77
89
|
"""Check if the latest version of the package is installed.
|
|
78
90
|
|
|
@@ -85,15 +97,16 @@ def check_latest_package_version(package_name: str):
|
|
|
85
97
|
url = f"https://pypi.org/pypi/{package_name}/json"
|
|
86
98
|
response = net.get(url)
|
|
87
99
|
latest_version = response.json()["info"]["version"]
|
|
88
|
-
if (
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
):
|
|
92
|
-
#
|
|
93
|
-
# the last_version_check_datetime is not set in reflex.json
|
|
100
|
+
if get_or_set_last_reflex_version_check_datetime():
|
|
101
|
+
# Versions were already checked and saved in reflex.json, no need to warn again
|
|
102
|
+
return
|
|
103
|
+
if version.parse(current_version) < version.parse(latest_version):
|
|
104
|
+
# Show a warning when the host version is older than PyPI version
|
|
94
105
|
console.warn(
|
|
95
106
|
f"Your version ({current_version}) of {package_name} is out of date. Upgrade to {latest_version} with 'pip install {package_name} --upgrade'"
|
|
96
107
|
)
|
|
108
|
+
# Check for depreacted python versions
|
|
109
|
+
_python_version_check()
|
|
97
110
|
except Exception:
|
|
98
111
|
pass
|
|
99
112
|
|
|
@@ -290,7 +303,7 @@ def get_compiled_app(reload: bool = False, export: bool = False) -> ModuleType:
|
|
|
290
303
|
"""
|
|
291
304
|
app_module = get_app(reload=reload)
|
|
292
305
|
app = getattr(app_module, constants.CompileVars.APP)
|
|
293
|
-
# For py3.
|
|
306
|
+
# For py3.9 compatibility when redis is used, we MUST add any decorator pages
|
|
294
307
|
# before compiling the app in a thread to avoid event loop error (REF-2172).
|
|
295
308
|
app._apply_decorated_pages()
|
|
296
309
|
app._compile(export=export)
|
|
@@ -632,7 +632,7 @@ def validate_parameter_literals(func):
|
|
|
632
632
|
annotations = {param[0]: param[1].annotation for param in func_params}
|
|
633
633
|
|
|
634
634
|
# validate args
|
|
635
|
-
for param, arg in zip(annotations, args
|
|
635
|
+
for param, arg in zip(annotations, args):
|
|
636
636
|
if annotations[param] is inspect.Parameter.empty:
|
|
637
637
|
continue
|
|
638
638
|
validate_literal(param, arg, annotations[param], func.__name__)
|
|
@@ -194,14 +194,6 @@ class StringVar(Var[str]):
|
|
|
194
194
|
"""
|
|
195
195
|
return string_strip_operation(self)
|
|
196
196
|
|
|
197
|
-
def bool(self):
|
|
198
|
-
"""Boolean conversion.
|
|
199
|
-
|
|
200
|
-
Returns:
|
|
201
|
-
The boolean value of the string.
|
|
202
|
-
"""
|
|
203
|
-
return self.length() != 0
|
|
204
|
-
|
|
205
197
|
def reversed(self) -> StringVar:
|
|
206
198
|
"""Reverse the string.
|
|
207
199
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/README.md.jinja2
RENAMED
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/__init__.py.jinja2
RENAMED
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/custom_components/demo_app.py.jinja2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2
RENAMED
|
File without changes
|
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2
RENAMED
|
File without changes
|
{reflex-0.6.0a3 → reflex-0.6.0a4}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2
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
|
|
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
|
|
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
|
|
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
|
|
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
|