reflex 0.6.7a1__tar.gz → 0.6.8__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.7a1 → reflex-0.6.8}/PKG-INFO +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/README.md +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/pyproject.toml +7 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/_app.js.jinja2 +2 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +3 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/index.js.jinja2 +2 -3
- reflex-0.6.8/reflex/.templates/jinja/web/pages/macros.js.jinja2 +38 -0
- reflex-0.6.8/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +11 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/utils/context.js.jinja2 +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/state.js +9 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app.py +12 -10
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/compiler/compiler.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/compiler/templates.py +41 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/compiler/utils.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/bare.py +7 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/component.py +78 -116
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/banner.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/breakpoints.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/code.py +14 -10
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/dataeditor.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/dataeditor.pyi +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/forms.py +7 -5
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/metadata.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/lucide/icon.py +142 -19
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/lucide/icon.pyi +141 -18
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/markdown/markdown.py +3 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/plotly/plotly.py +3 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/plotly/plotly.pyi +3 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/slider.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/center.pyi +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/flex.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/flex.pyi +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/grid.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/grid.pyi +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/spacer.pyi +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/stack.pyi +3 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/link.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/cartesian.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/cartesian.pyi +6 -6
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/charts.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/polar.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/polar.pyi +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/sonner/toast.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/base.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/compiler.py +1 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/event.py +96 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/client_state.py +42 -20
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/data.py +3 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/model.py +4 -5
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/page.py +1 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/reflex.py +8 -1
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/state.py +116 -12
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/testing.py +3 -3
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/exceptions.py +4 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/prerequisites.py +37 -20
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/processes.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/pyi_generator.py +2 -2
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/telemetry.py +6 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/base.py +15 -4
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/sequence.py +37 -0
- reflex-0.6.7a1/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -23
- {reflex-0.6.7a1 → reflex-0.6.8}/LICENSE +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/apps/blank/assets/favicon.ico +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/apps/blank/code/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/apps/blank/code/blank.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/custom_components/README.md.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/custom_components/__init__.py.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/custom_components/demo_app.py.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/custom_components/src.py.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/package.json.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/tailwind.config.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/.gitignore +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/components/shiki/code.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/jsconfig.json +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/next.config.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/postcss.config.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/styles/tailwind.css +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/client_side_routing.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/helpers/dataeditor.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/helpers/debounce.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/helpers/paste.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/helpers/range.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/web/utils/helpers/throttle.js +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/__main__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/admin.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app_mixins/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app_mixins/lifespan.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app_mixins/middleware.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app_mixins/mixin.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/app_module_for_backend.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/assets.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/compiler/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/app_wrap.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/app_wrap.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/body.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/body.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/document.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/document.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/error_boundary.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/error_boundary.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/fragment.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/fragment.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/head.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/head.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/link.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/link.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/meta.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/meta.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/script.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/base/script.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/banner.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/client_side_routing.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/client_side_routing.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/clipboard.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/clipboard.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/colors.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/cond.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/debounce.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/debounce.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/foreach.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/html.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/html.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/layout/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/match.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/responsive.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/upload.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/core/upload.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/code.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/logo.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/shiki_code_block.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/datadisplay/shiki_code_block.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/dynamic.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/constants/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/constants/html.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/constants/react.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/constants/reflex.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/element.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/element.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/base.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/forms.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/inline.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/inline.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/media.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/media.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/metadata.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/other.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/other.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/scripts.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/scripts.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/sectioning.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/sectioning.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/tables.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/tables.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/typography.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/el/elements/typography.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/gridjs/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/gridjs/datatable.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/gridjs/datatable.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/literals.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/lucide/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/markdown/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/markdown/markdown.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/moment/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/moment/moment.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/moment/moment.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/base.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/image.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/image.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/link.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/link.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/video.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/next/video.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/plotly/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/props.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/accordion.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/accordion.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/base.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/drawer.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/drawer.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/form.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/form.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/progress.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/progress.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/primitives/slider.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/base.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/color_mode.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/color_mode.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/alert_dialog.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/alert_dialog.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/aspect_ratio.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/aspect_ratio.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/avatar.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/avatar.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/badge.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/badge.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/button.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/button.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/callout.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/callout.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/card.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/card.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox_cards.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox_cards.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox_group.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/checkbox_group.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/context_menu.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/context_menu.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/data_list.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/data_list.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/dialog.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/dialog.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/dropdown_menu.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/dropdown_menu.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/hover_card.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/hover_card.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/icon_button.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/icon_button.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/inset.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/inset.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/popover.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/popover.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/progress.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/progress.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio_cards.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio_cards.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio_group.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/radio_group.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/scroll_area.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/scroll_area.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/segmented_control.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/segmented_control.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/select.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/select.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/separator.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/separator.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/skeleton.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/skeleton.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/slider.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/slider.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/spinner.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/spinner.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/switch.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/switch.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/table.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/table.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/tabs.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/tabs.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/text_area.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/text_area.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/text_field.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/text_field.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/tooltip.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/components/tooltip.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/base.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/box.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/box.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/center.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/container.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/container.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/list.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/list.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/section.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/section.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/spacer.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/layout/stack.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/base.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/blockquote.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/blockquote.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/code.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/code.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/heading.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/heading.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/link.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/text.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/radix/themes/typography/text.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/audio.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/audio.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/react_player.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/react_player.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/video.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/react_player/video.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/__init__.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/charts.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/general.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/general.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/recharts.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/recharts/recharts.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/sonner/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/sonner/toast.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/suneditor/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/suneditor/editor.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/suneditor/editor.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/cond_tag.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/iter_tag.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/match_tag.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/tag.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/components/tags/tagless.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/config.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/colors.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/config.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/custom_components.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/event.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/installer.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/route.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/state.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/style.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/constants/utils.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/custom_components/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/custom_components/custom_components.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/assets.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/hooks.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/layout.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/layout.pyi +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/experimental/misc.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/dynamic.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/proxy.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/storage.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/istate/wrappers.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/middleware/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/middleware/hydrate_middleware.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/middleware/middleware.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/route.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/style.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/build.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/codespaces.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/compat.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/console.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/exec.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/export.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/format.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/imports.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/lazy_loader.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/net.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/path_ops.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/redir.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/registry.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/serializers.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/utils/types.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/__init__.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/datetime.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/function.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/number.py +0 -0
- {reflex-0.6.7a1 → reflex-0.6.8}/reflex/vars/object.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: reflex
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.8
|
|
4
4
|
Summary: Web apps in pure Python.
|
|
5
5
|
Home-page: https://reflex.dev
|
|
6
6
|
License: Apache-2.0
|
|
@@ -301,7 +301,7 @@ We welcome contributions of any size! Below are some good ways to get started in
|
|
|
301
301
|
- **GitHub Discussions**: A great way to talk about features you want added or things that are confusing/need clarification.
|
|
302
302
|
- **GitHub Issues**: [Issues](https://github.com/reflex-dev/reflex/issues) are an excellent way to report bugs. Additionally, you can try and solve an existing issue and submit a PR.
|
|
303
303
|
|
|
304
|
-
We are actively looking for contributors, no matter your skill level or experience. To contribute check out [
|
|
304
|
+
We are actively looking for contributors, no matter your skill level or experience. To contribute check out [CONTRIBUTING.md](https://github.com/reflex-dev/reflex/blob/main/CONTRIBUTING.md)
|
|
305
305
|
|
|
306
306
|
|
|
307
307
|
## All Thanks To Our Contributors:
|
|
@@ -249,7 +249,7 @@ We welcome contributions of any size! Below are some good ways to get started in
|
|
|
249
249
|
- **GitHub Discussions**: A great way to talk about features you want added or things that are confusing/need clarification.
|
|
250
250
|
- **GitHub Issues**: [Issues](https://github.com/reflex-dev/reflex/issues) are an excellent way to report bugs. Additionally, you can try and solve an existing issue and submit a PR.
|
|
251
251
|
|
|
252
|
-
We are actively looking for contributors, no matter your skill level or experience. To contribute check out [
|
|
252
|
+
We are actively looking for contributors, no matter your skill level or experience. To contribute check out [CONTRIBUTING.md](https://github.com/reflex-dev/reflex/blob/main/CONTRIBUTING.md)
|
|
253
253
|
|
|
254
254
|
|
|
255
255
|
## All Thanks To Our Contributors:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "reflex"
|
|
3
|
-
version = "0.6.
|
|
3
|
+
version = "0.6.8"
|
|
4
4
|
description = "Web apps in pure Python."
|
|
5
5
|
license = "Apache-2.0"
|
|
6
6
|
authors = [
|
|
@@ -16,7 +16,6 @@ repository = "https://github.com/reflex-dev/reflex"
|
|
|
16
16
|
documentation = "https://reflex.dev/docs/getting-started/introduction"
|
|
17
17
|
keywords = ["web", "framework"]
|
|
18
18
|
classifiers = ["Development Status :: 4 - Beta"]
|
|
19
|
-
packages = [{ include = "reflex" }]
|
|
20
19
|
|
|
21
20
|
[tool.poetry.dependencies]
|
|
22
21
|
python = "^3.9"
|
|
@@ -87,13 +86,13 @@ build-backend = "poetry.core.masonry.api"
|
|
|
87
86
|
target-version = "py39"
|
|
88
87
|
output-format = "concise"
|
|
89
88
|
lint.isort.split-on-trailing-comma = false
|
|
90
|
-
lint.select = ["B", "C4", "D", "E", "ERA", "F", "FURB", "I", "PERF", "PTH", "RUF", "SIM", "W"]
|
|
89
|
+
lint.select = ["B", "C4", "D", "E", "ERA", "F", "FURB", "I", "PERF", "PTH", "RUF", "SIM", "T", "W"]
|
|
91
90
|
lint.ignore = ["B008", "D205", "E501", "F403", "SIM115", "RUF006", "RUF012"]
|
|
92
91
|
lint.pydocstyle.convention = "google"
|
|
93
92
|
|
|
94
93
|
[tool.ruff.lint.per-file-ignores]
|
|
95
94
|
"__init__.py" = ["F401"]
|
|
96
|
-
"tests/*.py" = ["D100", "D103", "D104", "B018", "PERF"]
|
|
95
|
+
"tests/*.py" = ["D100", "D103", "D104", "B018", "PERF", "T"]
|
|
97
96
|
"reflex/.templates/*.py" = ["D100", "D103", "D104"]
|
|
98
97
|
"*.pyi" = ["D301", "D415", "D417", "D418", "E742"]
|
|
99
98
|
"*/blank.py" = ["I001"]
|
|
@@ -101,3 +100,7 @@ lint.pydocstyle.convention = "google"
|
|
|
101
100
|
[tool.pytest.ini_options]
|
|
102
101
|
asyncio_default_fixture_loop_scope = "function"
|
|
103
102
|
asyncio_mode = "auto"
|
|
103
|
+
|
|
104
|
+
[tool.codespell]
|
|
105
|
+
skip = "docs/*,*.html,examples/*, *.pyi"
|
|
106
|
+
ignore-words-list = "te, TreeE"
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
+
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
2
3
|
|
|
3
4
|
{% block early_imports %}
|
|
4
5
|
import '$/styles/styles.css'
|
|
@@ -18,10 +19,7 @@ import * as {{library_alias}} from "{{library_path}}";
|
|
|
18
19
|
|
|
19
20
|
{% block export %}
|
|
20
21
|
function AppWrap({children}) {
|
|
21
|
-
|
|
22
|
-
{% for hook in hooks %}
|
|
23
|
-
{{ hook }}
|
|
24
|
-
{% endfor %}
|
|
22
|
+
{{ renderHooks(hooks) }}
|
|
25
23
|
|
|
26
24
|
return (
|
|
27
25
|
{{utils.render(render, indent_width=0)}}
|
{reflex-0.6.7a1 → reflex-0.6.8}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
-
|
|
2
|
+
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
3
3
|
{% block export %}
|
|
4
4
|
{% for component in components %}
|
|
5
5
|
|
|
@@ -8,9 +8,8 @@
|
|
|
8
8
|
{% endfor %}
|
|
9
9
|
|
|
10
10
|
export const {{component.name}} = memo(({ {{-component.props|join(", ")-}} }) => {
|
|
11
|
-
{
|
|
12
|
-
|
|
13
|
-
{% endfor %}
|
|
11
|
+
{{ renderHooks(component.hooks) }}
|
|
12
|
+
|
|
14
13
|
return(
|
|
15
14
|
{{utils.render(component.render)}}
|
|
16
15
|
)
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
+
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
2
3
|
|
|
3
4
|
{% block declaration %}
|
|
4
5
|
{% for custom_code in custom_codes %}
|
|
@@ -8,9 +9,7 @@
|
|
|
8
9
|
|
|
9
10
|
{% block export %}
|
|
10
11
|
export default function Component() {
|
|
11
|
-
|
|
12
|
-
{{ hook }}
|
|
13
|
-
{% endfor %}
|
|
12
|
+
{{ renderHooks(hooks)}}
|
|
14
13
|
|
|
15
14
|
return (
|
|
16
15
|
{{utils.render(render, indent_width=0)}}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{% macro renderHooks(hooks) %}
|
|
2
|
+
{% set sorted_hooks = sort_hooks(hooks) %}
|
|
3
|
+
|
|
4
|
+
{# Render the grouped hooks #}
|
|
5
|
+
{% for hook, _ in sorted_hooks[const.hook_position.INTERNAL] %}
|
|
6
|
+
{{ hook }}
|
|
7
|
+
{% endfor %}
|
|
8
|
+
|
|
9
|
+
{% for hook, _ in sorted_hooks[const.hook_position.PRE_TRIGGER] %}
|
|
10
|
+
{{ hook }}
|
|
11
|
+
{% endfor %}
|
|
12
|
+
|
|
13
|
+
{% for hook, _ in sorted_hooks[const.hook_position.POST_TRIGGER] %}
|
|
14
|
+
{{ hook }}
|
|
15
|
+
{% endfor %}
|
|
16
|
+
{% endmacro %}
|
|
17
|
+
|
|
18
|
+
{% macro renderHooksWithMemo(hooks, memo)%}
|
|
19
|
+
{% set sorted_hooks = sort_hooks(hooks) %}
|
|
20
|
+
|
|
21
|
+
{# Render the grouped hooks #}
|
|
22
|
+
{% for hook, _ in sorted_hooks[const.hook_position.INTERNAL] %}
|
|
23
|
+
{{ hook }}
|
|
24
|
+
{% endfor %}
|
|
25
|
+
|
|
26
|
+
{% for hook, _ in sorted_hooks[const.hook_position.PRE_TRIGGER] %}
|
|
27
|
+
{{ hook }}
|
|
28
|
+
{% endfor %}
|
|
29
|
+
|
|
30
|
+
{% for hook in memo %}
|
|
31
|
+
{{ hook }}
|
|
32
|
+
{% endfor %}
|
|
33
|
+
|
|
34
|
+
{% for hook, _ in sorted_hooks[const.hook_position.POST_TRIGGER] %}
|
|
35
|
+
{{ hook }}
|
|
36
|
+
{% endfor %}
|
|
37
|
+
|
|
38
|
+
{% endmacro %}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{% import 'web/pages/utils.js.jinja2' as utils %}
|
|
2
|
+
{% from 'web/pages/macros.js.jinja2' import renderHooksWithMemo %}
|
|
3
|
+
{% set all_hooks = component._get_all_hooks() %}
|
|
4
|
+
|
|
5
|
+
export function {{tag_name}} () {
|
|
6
|
+
{{ renderHooksWithMemo(all_hooks, memo_trigger_hooks) }}
|
|
7
|
+
|
|
8
|
+
return (
|
|
9
|
+
{{utils.render(component.render(), indent_width=0)}}
|
|
10
|
+
)
|
|
11
|
+
}
|
|
@@ -28,7 +28,7 @@ export const state_name = "{{state_name}}"
|
|
|
28
28
|
|
|
29
29
|
export const exception_state_name = "{{const.frontend_exception_state}}"
|
|
30
30
|
|
|
31
|
-
//
|
|
31
|
+
// These events are triggered on initial load and each page navigation.
|
|
32
32
|
export const onLoadInternalEvent = () => {
|
|
33
33
|
const internal_events = [];
|
|
34
34
|
|
|
@@ -208,11 +208,16 @@ export const applyEvent = async (event, socket) => {
|
|
|
208
208
|
if (event.name == "_download") {
|
|
209
209
|
const a = document.createElement("a");
|
|
210
210
|
a.hidden = true;
|
|
211
|
+
a.href = event.payload.url;
|
|
211
212
|
// Special case when linking to uploaded files
|
|
212
|
-
a.href
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
213
|
+
if (a.href.includes("getBackendURL(env.UPLOAD)")) {
|
|
214
|
+
a.href = eval?.(
|
|
215
|
+
event.payload.url.replace(
|
|
216
|
+
"getBackendURL(env.UPLOAD)",
|
|
217
|
+
`"${getBackendURL(env.UPLOAD)}"`
|
|
218
|
+
)
|
|
219
|
+
);
|
|
220
|
+
}
|
|
216
221
|
a.download = event.payload.filename;
|
|
217
222
|
a.click();
|
|
218
223
|
a.remove();
|
|
@@ -1356,20 +1356,22 @@ async def health() -> JSONResponse:
|
|
|
1356
1356
|
health_status = {"status": True}
|
|
1357
1357
|
status_code = 200
|
|
1358
1358
|
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
)
|
|
1359
|
+
tasks = []
|
|
1360
|
+
|
|
1361
|
+
if prerequisites.check_db_used():
|
|
1362
|
+
tasks.append(get_db_status())
|
|
1363
|
+
if prerequisites.check_redis_used():
|
|
1364
|
+
tasks.append(prerequisites.get_redis_status())
|
|
1365
|
+
|
|
1366
|
+
results = await asyncio.gather(*tasks)
|
|
1362
1367
|
|
|
1363
|
-
|
|
1368
|
+
for result in results:
|
|
1369
|
+
health_status |= result
|
|
1364
1370
|
|
|
1365
|
-
if
|
|
1371
|
+
if "redis" in health_status and health_status["redis"] is None:
|
|
1366
1372
|
health_status["redis"] = False
|
|
1367
|
-
else:
|
|
1368
|
-
health_status["redis"] = redis_status
|
|
1369
1373
|
|
|
1370
|
-
if not health_status
|
|
1371
|
-
not health_status["redis"] and redis_status is not None
|
|
1372
|
-
):
|
|
1374
|
+
if not all(health_status.values()):
|
|
1373
1375
|
health_status["status"] = False
|
|
1374
1376
|
status_code = 503
|
|
1375
1377
|
|
|
@@ -75,7 +75,7 @@ def _compile_app(app_root: Component) -> str:
|
|
|
75
75
|
return templates.APP_ROOT.render(
|
|
76
76
|
imports=utils.compile_imports(app_root._get_all_imports()),
|
|
77
77
|
custom_codes=app_root._get_all_custom_code(),
|
|
78
|
-
hooks=
|
|
78
|
+
hooks=app_root._get_all_hooks(),
|
|
79
79
|
window_libraries=window_libraries,
|
|
80
80
|
render=app_root.render(),
|
|
81
81
|
)
|
|
@@ -149,7 +149,7 @@ def _compile_page(
|
|
|
149
149
|
imports=imports,
|
|
150
150
|
dynamic_imports=component._get_all_dynamic_imports(),
|
|
151
151
|
custom_codes=component._get_all_custom_code(),
|
|
152
|
-
hooks=
|
|
152
|
+
hooks=component._get_all_hooks(),
|
|
153
153
|
render=component.render(),
|
|
154
154
|
**kwargs,
|
|
155
155
|
)
|
|
@@ -1,9 +1,46 @@
|
|
|
1
1
|
"""Templates to use in the reflex compiler."""
|
|
2
2
|
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
3
5
|
from jinja2 import Environment, FileSystemLoader, Template
|
|
4
6
|
|
|
5
7
|
from reflex import constants
|
|
8
|
+
from reflex.constants import Hooks
|
|
6
9
|
from reflex.utils.format import format_state_name, json_dumps
|
|
10
|
+
from reflex.vars.base import VarData
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def _sort_hooks(hooks: dict[str, VarData | None]):
|
|
14
|
+
"""Sort the hooks by their position.
|
|
15
|
+
|
|
16
|
+
Args:
|
|
17
|
+
hooks: The hooks to sort.
|
|
18
|
+
|
|
19
|
+
Returns:
|
|
20
|
+
The sorted hooks.
|
|
21
|
+
"""
|
|
22
|
+
sorted_hooks = {
|
|
23
|
+
Hooks.HookPosition.INTERNAL: [],
|
|
24
|
+
Hooks.HookPosition.PRE_TRIGGER: [],
|
|
25
|
+
Hooks.HookPosition.POST_TRIGGER: [],
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
for hook, data in hooks.items():
|
|
29
|
+
if data and data.position and data.position == Hooks.HookPosition.INTERNAL:
|
|
30
|
+
sorted_hooks[Hooks.HookPosition.INTERNAL].append((hook, data))
|
|
31
|
+
elif not data or (
|
|
32
|
+
not data.position
|
|
33
|
+
or data.position == constants.Hooks.HookPosition.PRE_TRIGGER
|
|
34
|
+
):
|
|
35
|
+
sorted_hooks[Hooks.HookPosition.PRE_TRIGGER].append((hook, data))
|
|
36
|
+
elif (
|
|
37
|
+
data
|
|
38
|
+
and data.position
|
|
39
|
+
and data.position == constants.Hooks.HookPosition.POST_TRIGGER
|
|
40
|
+
):
|
|
41
|
+
sorted_hooks[Hooks.HookPosition.POST_TRIGGER].append((hook, data))
|
|
42
|
+
|
|
43
|
+
return sorted_hooks
|
|
7
44
|
|
|
8
45
|
|
|
9
46
|
class ReflexJinjaEnvironment(Environment):
|
|
@@ -47,6 +84,7 @@ class ReflexJinjaEnvironment(Environment):
|
|
|
47
84
|
"frontend_exception_state": constants.CompileVars.FRONTEND_EXCEPTION_STATE_FULL,
|
|
48
85
|
"hook_position": constants.Hooks.HookPosition,
|
|
49
86
|
}
|
|
87
|
+
self.globals["sort_hooks"] = _sort_hooks
|
|
50
88
|
|
|
51
89
|
|
|
52
90
|
def get_template(name: str) -> Template:
|
|
@@ -103,6 +141,9 @@ STYLE = get_template("web/styles/styles.css.jinja2")
|
|
|
103
141
|
# Code that generate the package json file
|
|
104
142
|
PACKAGE_JSON = get_template("web/package.json.jinja2")
|
|
105
143
|
|
|
144
|
+
# Template containing some macros used in the web pages.
|
|
145
|
+
MACROS = get_template("web/pages/macros.js.jinja2")
|
|
146
|
+
|
|
106
147
|
# Code that generate the pyproject.toml file for custom components.
|
|
107
148
|
CUSTOM_COMPONENTS_PYPROJECT_TOML = get_template(
|
|
108
149
|
"custom_components/pyproject.toml.jinja2"
|
|
@@ -290,7 +290,7 @@ def compile_custom_component(
|
|
|
290
290
|
"name": component.tag,
|
|
291
291
|
"props": props,
|
|
292
292
|
"render": render.render(),
|
|
293
|
-
"hooks":
|
|
293
|
+
"hooks": render._get_all_hooks(),
|
|
294
294
|
"custom_code": render._get_all_custom_code(),
|
|
295
295
|
},
|
|
296
296
|
imports,
|
|
@@ -9,6 +9,7 @@ from reflex.components.tags import Tag
|
|
|
9
9
|
from reflex.components.tags.tagless import Tagless
|
|
10
10
|
from reflex.utils.imports import ParsedImportDict
|
|
11
11
|
from reflex.vars import BooleanVar, ObjectVar, Var
|
|
12
|
+
from reflex.vars.base import VarData
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
class Bare(Component):
|
|
@@ -32,7 +33,7 @@ class Bare(Component):
|
|
|
32
33
|
contents = str(contents) if contents is not None else ""
|
|
33
34
|
return cls(contents=contents) # type: ignore
|
|
34
35
|
|
|
35
|
-
def _get_all_hooks_internal(self) -> dict[str, None]:
|
|
36
|
+
def _get_all_hooks_internal(self) -> dict[str, VarData | None]:
|
|
36
37
|
"""Include the hooks for the component.
|
|
37
38
|
|
|
38
39
|
Returns:
|
|
@@ -43,7 +44,7 @@ class Bare(Component):
|
|
|
43
44
|
hooks |= self.contents._var_value._get_all_hooks_internal()
|
|
44
45
|
return hooks
|
|
45
46
|
|
|
46
|
-
def _get_all_hooks(self) -> dict[str, None]:
|
|
47
|
+
def _get_all_hooks(self) -> dict[str, VarData | None]:
|
|
47
48
|
"""Include the hooks for the component.
|
|
48
49
|
|
|
49
50
|
Returns:
|
|
@@ -107,11 +108,14 @@ class Bare(Component):
|
|
|
107
108
|
return Tagless(contents=f"{{{self.contents!s}}}")
|
|
108
109
|
return Tagless(contents=str(self.contents))
|
|
109
110
|
|
|
110
|
-
def _get_vars(
|
|
111
|
+
def _get_vars(
|
|
112
|
+
self, include_children: bool = False, ignore_ids: set[int] | None = None
|
|
113
|
+
) -> Iterator[Var]:
|
|
111
114
|
"""Walk all Vars used in this component.
|
|
112
115
|
|
|
113
116
|
Args:
|
|
114
117
|
include_children: Whether to include Vars from children.
|
|
118
|
+
ignore_ids: The ids to ignore.
|
|
115
119
|
|
|
116
120
|
Yields:
|
|
117
121
|
The contents if it is a Var, otherwise nothing.
|