reflex 0.8.1a2__tar.gz → 0.8.2a1__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.8.1a2 → reflex-0.8.2a1}/PKG-INFO +1 -1
- {reflex-0.8.1a2 → reflex-0.8.2a1}/pyproject.toml +2 -2
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/apps/blank/code/blank.py +0 -1
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/app.py +39 -17
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/compiler/compiler.py +1 -2
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/meta.py +1 -7
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/meta.pyi +4 -256
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/metadata.py +3 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/metadata.pyi +2 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/config.py +141 -54
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/installer.py +3 -3
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/environment.py +2 -2
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/data.py +2 -2
- reflex-0.8.2a1/reflex/plugins/__init__.py +15 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/plugins/sitemap.py +4 -1
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/console.py +9 -8
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/processes.py +16 -4
- reflex-0.8.1a2/reflex/plugins/__init__.py +0 -8
- {reflex-0.8.1a2 → reflex-0.8.2a1}/.gitignore +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/LICENSE +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/README.md +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/apps/blank/assets/favicon.ico +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/apps/blank/code/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/custom_components/README.md.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/custom_components/__init__.py.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/custom_components/demo_app.py.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/custom_components/src.py.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/package.json.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/index.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/macros.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/utils/context.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/.gitignore +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/app/entry.client.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/app/routes.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/components/shiki/code.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/jsconfig.json +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/postcss.config.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/react-router.config.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/styles/__reflex_style_reset.css +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/client_side_routing.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/helpers/dataeditor.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/helpers/debounce.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/helpers/paste.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/helpers/range.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/helpers/throttle.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/react-theme.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/utils/state.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/vite-plugin-safari-cachebust.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/.templates/web/vite.config.js +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/__main__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/admin.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/app_mixins/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/app_mixins/lifespan.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/app_mixins/middleware.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/app_mixins/mixin.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/assets.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/compiler/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/compiler/templates.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/compiler/utils.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/app_wrap.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/app_wrap.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/bare.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/body.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/body.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/document.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/document.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/error_boundary.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/error_boundary.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/fragment.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/fragment.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/link.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/link.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/script.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/script.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/strict_mode.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/base/strict_mode.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/component.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/auto_scroll.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/auto_scroll.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/banner.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/banner.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/breakpoints.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/client_side_routing.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/client_side_routing.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/clipboard.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/clipboard.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/colors.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/cond.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/debounce.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/debounce.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/foreach.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/helmet.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/helmet.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/html.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/html.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/layout/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/match.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/responsive.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/sticky.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/sticky.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/upload.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/core/upload.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/code.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/code.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/dataeditor.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/dataeditor.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/logo.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/shiki_code_block.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/datadisplay/shiki_code_block.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/dynamic.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/constants/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/constants/html.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/constants/react.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/constants/reflex.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/element.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/element.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/base.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/forms.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/forms.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/inline.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/inline.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/media.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/media.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/other.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/other.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/scripts.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/scripts.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/sectioning.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/sectioning.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/tables.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/tables.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/typography.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/el/elements/typography.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/field.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/gridjs/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/gridjs/datatable.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/gridjs/datatable.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/literals.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/lucide/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/lucide/icon.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/lucide/icon.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/markdown/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/markdown/markdown.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/markdown/markdown.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/moment/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/moment/moment.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/moment/moment.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/plotly/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/plotly/plotly.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/plotly/plotly.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/props.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/accordion.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/accordion.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/base.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/drawer.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/drawer.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/form.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/form.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/progress.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/progress.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/slider.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/primitives/slider.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/base.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/color_mode.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/color_mode.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/alert_dialog.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/alert_dialog.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/aspect_ratio.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/aspect_ratio.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/avatar.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/avatar.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/badge.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/badge.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/button.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/button.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/callout.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/callout.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/card.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/card.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox_cards.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox_cards.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox_group.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/checkbox_group.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/context_menu.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/context_menu.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/data_list.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/data_list.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/dialog.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/dialog.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/dropdown_menu.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/dropdown_menu.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/hover_card.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/hover_card.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/icon_button.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/icon_button.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/inset.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/inset.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/popover.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/popover.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/progress.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/progress.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio_cards.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio_cards.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio_group.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/radio_group.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/scroll_area.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/scroll_area.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/segmented_control.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/segmented_control.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/select.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/select.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/separator.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/separator.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/skeleton.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/skeleton.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/slider.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/slider.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/spinner.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/spinner.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/switch.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/switch.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/table.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/table.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/tabs.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/tabs.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/text_area.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/text_area.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/text_field.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/text_field.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/tooltip.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/components/tooltip.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/base.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/box.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/box.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/center.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/center.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/container.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/container.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/flex.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/flex.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/grid.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/grid.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/list.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/list.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/section.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/section.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/spacer.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/spacer.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/stack.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/layout/stack.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/blockquote.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/blockquote.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/code.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/code.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/heading.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/heading.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/link.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/link.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/text.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/radix/themes/typography/text.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/audio.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/audio.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/react_player.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/react_player.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/video.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_player/video.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_router/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_router/dom.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/react_router/dom.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/__init__.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/cartesian.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/cartesian.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/charts.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/charts.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/general.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/general.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/polar.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/polar.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/recharts.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/recharts/recharts.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/sonner/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/sonner/toast.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/sonner/toast.pyi +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/cond_tag.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/iter_tag.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/match_tag.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/tag.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/components/tags/tagless.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/colors.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/compiler.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/config.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/custom_components.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/event.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/route.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/state.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/constants/utils.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/custom_components/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/custom_components/custom_components.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/event.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/experimental/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/experimental/client_state.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/experimental/hooks.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/dynamic.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/manager.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/proxy.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/storage.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/istate/wrappers.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/middleware/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/middleware/hydrate_middleware.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/middleware/middleware.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/model.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/page.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/plugins/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/plugins/shared_tailwind.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/plugins/tailwind_v3.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/plugins/tailwind_v4.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/py.typed +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/reflex.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/route.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/state.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/style.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/testing.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/build.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/codespaces.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/compat.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/decorator.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/exceptions.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/exec.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/export.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/format.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/imports.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/lazy_loader.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/misc.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/net.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/path_ops.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/prerequisites.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/pyi_generator.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/redir.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/registry.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/serializers.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/telemetry.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/utils/types.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/__init__.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/base.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/datetime.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/dep_tracking.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/function.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/number.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/object.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/reflex/vars/sequence.py +0 -0
- {reflex-0.8.1a2 → reflex-0.8.2a1}/scripts/hatch_build.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "reflex"
|
|
3
|
-
version = "0.8.
|
|
3
|
+
version = "0.8.2a1"
|
|
4
4
|
description = "Web apps in pure Python."
|
|
5
5
|
license.text = "Apache-2.0"
|
|
6
6
|
authors = [
|
|
@@ -229,7 +229,7 @@ fail_fast = true
|
|
|
229
229
|
|
|
230
230
|
[[tool.pre-commit.repos]]
|
|
231
231
|
repo = "https://github.com/astral-sh/ruff-pre-commit"
|
|
232
|
-
rev = "v0.12.
|
|
232
|
+
rev = "v0.12.2"
|
|
233
233
|
hooks = [
|
|
234
234
|
{ id = "ruff-format", args = [
|
|
235
235
|
"reflex",
|
|
@@ -22,6 +22,7 @@ from collections.abc import (
|
|
|
22
22
|
Sequence,
|
|
23
23
|
)
|
|
24
24
|
from datetime import datetime
|
|
25
|
+
from itertools import chain
|
|
25
26
|
from pathlib import Path
|
|
26
27
|
from timeit import default_timer as timer
|
|
27
28
|
from types import SimpleNamespace
|
|
@@ -238,10 +239,6 @@ def default_error_boundary(*children: Component, **props) -> Component:
|
|
|
238
239
|
)
|
|
239
240
|
|
|
240
241
|
|
|
241
|
-
class OverlayFragment(Fragment):
|
|
242
|
-
"""Alias for Fragment, used to wrap the overlay_component."""
|
|
243
|
-
|
|
244
|
-
|
|
245
242
|
@dataclasses.dataclass(frozen=True)
|
|
246
243
|
class UploadFile(StarletteUploadFile):
|
|
247
244
|
"""A file uploaded to the server.
|
|
@@ -369,6 +366,11 @@ class App(MiddlewareMixin, LifespanMixin):
|
|
|
369
366
|
)
|
|
370
367
|
)
|
|
371
368
|
|
|
369
|
+
# Extra app wraps to be applied to the whole app.
|
|
370
|
+
extra_app_wraps: dict[tuple[int, str], Callable[[bool], Component | None]] = (
|
|
371
|
+
dataclasses.field(default_factory=dict)
|
|
372
|
+
)
|
|
373
|
+
|
|
372
374
|
# Components to add to the head of every page.
|
|
373
375
|
head_components: list[Component] = dataclasses.field(default_factory=list)
|
|
374
376
|
|
|
@@ -515,8 +517,8 @@ class App(MiddlewareMixin, LifespanMixin):
|
|
|
515
517
|
async_mode="asgi",
|
|
516
518
|
cors_allowed_origins=(
|
|
517
519
|
"*"
|
|
518
|
-
if config.cors_allowed_origins ==
|
|
519
|
-
else config.cors_allowed_origins
|
|
520
|
+
if config.cors_allowed_origins == ("*",)
|
|
521
|
+
else list(config.cors_allowed_origins)
|
|
520
522
|
),
|
|
521
523
|
cors_credentials=True,
|
|
522
524
|
max_http_buffer_size=environment.REFLEX_SOCKET_MAX_HTTP_BUFFER_SIZE.get(),
|
|
@@ -1031,25 +1033,31 @@ class App(MiddlewareMixin, LifespanMixin):
|
|
|
1031
1033
|
# By default, compile the app.
|
|
1032
1034
|
return True
|
|
1033
1035
|
|
|
1034
|
-
def _add_overlay_to_component(
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1036
|
+
def _add_overlay_to_component(
|
|
1037
|
+
self, component: Component, overlay_component: Component
|
|
1038
|
+
) -> Component:
|
|
1038
1039
|
children = component.children
|
|
1039
|
-
overlay_component = self._generate_component(self.overlay_component)
|
|
1040
1040
|
|
|
1041
1041
|
if children[0] == overlay_component:
|
|
1042
1042
|
return component
|
|
1043
1043
|
|
|
1044
|
-
|
|
1045
|
-
return OverlayFragment.create(overlay_component, *children)
|
|
1044
|
+
return Fragment.create(overlay_component, *children)
|
|
1046
1045
|
|
|
1047
1046
|
def _setup_overlay_component(self):
|
|
1048
1047
|
"""If a State is not used and no overlay_component is specified, do not render the connection modal."""
|
|
1049
|
-
if self.
|
|
1050
|
-
|
|
1048
|
+
if self.overlay_component is None:
|
|
1049
|
+
return
|
|
1050
|
+
console.deprecate(
|
|
1051
|
+
feature_name="overlay_component",
|
|
1052
|
+
reason="Use `extra_app_wraps` to add the overlay component instead.",
|
|
1053
|
+
deprecation_version="0.8.2",
|
|
1054
|
+
removal_version="0.9.0",
|
|
1055
|
+
)
|
|
1056
|
+
overlay_component = self._generate_component(self.overlay_component)
|
|
1051
1057
|
for k, component in self._pages.items():
|
|
1052
|
-
self._pages[k] = self._add_overlay_to_component(
|
|
1058
|
+
self._pages[k] = self._add_overlay_to_component(
|
|
1059
|
+
component, overlay_component
|
|
1060
|
+
)
|
|
1053
1061
|
|
|
1054
1062
|
def _setup_sticky_badge(self):
|
|
1055
1063
|
"""Add the sticky badge to the app."""
|
|
@@ -1261,7 +1269,10 @@ class App(MiddlewareMixin, LifespanMixin):
|
|
|
1261
1269
|
app_wrappers[(1, "ToasterProvider")] = toast_provider
|
|
1262
1270
|
|
|
1263
1271
|
# Add the app wraps to the app.
|
|
1264
|
-
for key, app_wrap in
|
|
1272
|
+
for key, app_wrap in chain(
|
|
1273
|
+
self.app_wraps.items(), self.extra_app_wraps.items()
|
|
1274
|
+
):
|
|
1275
|
+
# If the app wrap is a callable, generate the component
|
|
1265
1276
|
component = app_wrap(self._state is not None)
|
|
1266
1277
|
if component is not None:
|
|
1267
1278
|
app_wrappers[key] = component
|
|
@@ -2076,9 +2087,20 @@ class EventNamespace(AsyncNamespace):
|
|
|
2076
2087
|
# Get the client IP
|
|
2077
2088
|
try:
|
|
2078
2089
|
client_ip = environ["asgi.scope"]["client"][0]
|
|
2090
|
+
headers["asgi-scope-client"] = client_ip
|
|
2079
2091
|
except (KeyError, IndexError):
|
|
2080
2092
|
client_ip = environ.get("REMOTE_ADDR", "0.0.0.0")
|
|
2081
2093
|
|
|
2094
|
+
# Unroll reverse proxy forwarded headers.
|
|
2095
|
+
client_ip = (
|
|
2096
|
+
headers.get(
|
|
2097
|
+
"x-forwarded-for",
|
|
2098
|
+
client_ip,
|
|
2099
|
+
)
|
|
2100
|
+
.partition(",")[0]
|
|
2101
|
+
.strip()
|
|
2102
|
+
)
|
|
2103
|
+
|
|
2082
2104
|
async with contextlib.aclosing(
|
|
2083
2105
|
process(self.app, event, sid, headers, client_ip)
|
|
2084
2106
|
) as updates_gen:
|
|
@@ -828,10 +828,9 @@ def compile_unevaluated_page(
|
|
|
828
828
|
enable_state = True
|
|
829
829
|
break
|
|
830
830
|
|
|
831
|
-
from reflex.app import OverlayFragment
|
|
832
831
|
from reflex.utils.format import make_default_page_title
|
|
833
832
|
|
|
834
|
-
component =
|
|
833
|
+
component = Fragment.create(component)
|
|
835
834
|
|
|
836
835
|
meta_args = {
|
|
837
836
|
"title": (
|
|
@@ -4,6 +4,7 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
from reflex.components.base.bare import Bare
|
|
6
6
|
from reflex.components.el import elements
|
|
7
|
+
from reflex.components.el.elements.metadata import Meta as Meta # for compatibility
|
|
7
8
|
from reflex.vars.base import Var
|
|
8
9
|
|
|
9
10
|
|
|
@@ -26,13 +27,6 @@ class Title(elements.Title):
|
|
|
26
27
|
return super().render()
|
|
27
28
|
|
|
28
29
|
|
|
29
|
-
class Meta(elements.Meta):
|
|
30
|
-
"""A component that displays metadata for the current page."""
|
|
31
|
-
|
|
32
|
-
# The type of metadata value.
|
|
33
|
-
property: Var[str]
|
|
34
|
-
|
|
35
|
-
|
|
36
30
|
class Description(elements.Meta):
|
|
37
31
|
"""A component that displays the title of the current page."""
|
|
38
32
|
|
|
@@ -8,6 +8,7 @@ from typing import Any, Literal
|
|
|
8
8
|
|
|
9
9
|
from reflex.components.core.breakpoints import Breakpoints
|
|
10
10
|
from reflex.components.el import elements
|
|
11
|
+
from reflex.components.el.elements.metadata import Meta as Meta
|
|
11
12
|
from reflex.event import EventType, PointerEventInfo
|
|
12
13
|
from reflex.vars.base import Var
|
|
13
14
|
|
|
@@ -63,261 +64,6 @@ class Title(elements.Title):
|
|
|
63
64
|
The component.
|
|
64
65
|
"""
|
|
65
66
|
|
|
66
|
-
class Meta(elements.Meta):
|
|
67
|
-
@classmethod
|
|
68
|
-
def create(
|
|
69
|
-
cls,
|
|
70
|
-
*children,
|
|
71
|
-
property: Var[str] | str | None = None,
|
|
72
|
-
char_set: Var[str] | str | None = None,
|
|
73
|
-
content: Var[str] | str | None = None,
|
|
74
|
-
http_equiv: Var[str] | str | None = None,
|
|
75
|
-
name: Var[str] | str | None = None,
|
|
76
|
-
access_key: Var[str] | str | None = None,
|
|
77
|
-
auto_capitalize: Literal[
|
|
78
|
-
"characters", "none", "off", "on", "sentences", "words"
|
|
79
|
-
]
|
|
80
|
-
| Var[Literal["characters", "none", "off", "on", "sentences", "words"]]
|
|
81
|
-
| None = None,
|
|
82
|
-
content_editable: Literal["inherit", "plaintext-only", False, True]
|
|
83
|
-
| Var[Literal["inherit", "plaintext-only", False, True]]
|
|
84
|
-
| None = None,
|
|
85
|
-
context_menu: Var[str] | str | None = None,
|
|
86
|
-
dir: Var[str] | str | None = None,
|
|
87
|
-
draggable: Var[bool] | bool | None = None,
|
|
88
|
-
enter_key_hint: Literal[
|
|
89
|
-
"done", "enter", "go", "next", "previous", "search", "send"
|
|
90
|
-
]
|
|
91
|
-
| Var[Literal["done", "enter", "go", "next", "previous", "search", "send"]]
|
|
92
|
-
| None = None,
|
|
93
|
-
hidden: Var[bool] | bool | None = None,
|
|
94
|
-
input_mode: Literal[
|
|
95
|
-
"decimal", "email", "none", "numeric", "search", "tel", "text", "url"
|
|
96
|
-
]
|
|
97
|
-
| Var[
|
|
98
|
-
Literal[
|
|
99
|
-
"decimal", "email", "none", "numeric", "search", "tel", "text", "url"
|
|
100
|
-
]
|
|
101
|
-
]
|
|
102
|
-
| None = None,
|
|
103
|
-
item_prop: Var[str] | str | None = None,
|
|
104
|
-
lang: Var[str] | str | None = None,
|
|
105
|
-
role: Literal[
|
|
106
|
-
"alert",
|
|
107
|
-
"alertdialog",
|
|
108
|
-
"application",
|
|
109
|
-
"article",
|
|
110
|
-
"banner",
|
|
111
|
-
"button",
|
|
112
|
-
"cell",
|
|
113
|
-
"checkbox",
|
|
114
|
-
"columnheader",
|
|
115
|
-
"combobox",
|
|
116
|
-
"complementary",
|
|
117
|
-
"contentinfo",
|
|
118
|
-
"definition",
|
|
119
|
-
"dialog",
|
|
120
|
-
"directory",
|
|
121
|
-
"document",
|
|
122
|
-
"feed",
|
|
123
|
-
"figure",
|
|
124
|
-
"form",
|
|
125
|
-
"grid",
|
|
126
|
-
"gridcell",
|
|
127
|
-
"group",
|
|
128
|
-
"heading",
|
|
129
|
-
"img",
|
|
130
|
-
"link",
|
|
131
|
-
"list",
|
|
132
|
-
"listbox",
|
|
133
|
-
"listitem",
|
|
134
|
-
"log",
|
|
135
|
-
"main",
|
|
136
|
-
"marquee",
|
|
137
|
-
"math",
|
|
138
|
-
"menu",
|
|
139
|
-
"menubar",
|
|
140
|
-
"menuitem",
|
|
141
|
-
"menuitemcheckbox",
|
|
142
|
-
"menuitemradio",
|
|
143
|
-
"navigation",
|
|
144
|
-
"none",
|
|
145
|
-
"note",
|
|
146
|
-
"option",
|
|
147
|
-
"presentation",
|
|
148
|
-
"progressbar",
|
|
149
|
-
"radio",
|
|
150
|
-
"radiogroup",
|
|
151
|
-
"region",
|
|
152
|
-
"row",
|
|
153
|
-
"rowgroup",
|
|
154
|
-
"rowheader",
|
|
155
|
-
"scrollbar",
|
|
156
|
-
"search",
|
|
157
|
-
"searchbox",
|
|
158
|
-
"separator",
|
|
159
|
-
"slider",
|
|
160
|
-
"spinbutton",
|
|
161
|
-
"status",
|
|
162
|
-
"switch",
|
|
163
|
-
"tab",
|
|
164
|
-
"table",
|
|
165
|
-
"tablist",
|
|
166
|
-
"tabpanel",
|
|
167
|
-
"term",
|
|
168
|
-
"textbox",
|
|
169
|
-
"timer",
|
|
170
|
-
"toolbar",
|
|
171
|
-
"tooltip",
|
|
172
|
-
"tree",
|
|
173
|
-
"treegrid",
|
|
174
|
-
"treeitem",
|
|
175
|
-
]
|
|
176
|
-
| Var[
|
|
177
|
-
Literal[
|
|
178
|
-
"alert",
|
|
179
|
-
"alertdialog",
|
|
180
|
-
"application",
|
|
181
|
-
"article",
|
|
182
|
-
"banner",
|
|
183
|
-
"button",
|
|
184
|
-
"cell",
|
|
185
|
-
"checkbox",
|
|
186
|
-
"columnheader",
|
|
187
|
-
"combobox",
|
|
188
|
-
"complementary",
|
|
189
|
-
"contentinfo",
|
|
190
|
-
"definition",
|
|
191
|
-
"dialog",
|
|
192
|
-
"directory",
|
|
193
|
-
"document",
|
|
194
|
-
"feed",
|
|
195
|
-
"figure",
|
|
196
|
-
"form",
|
|
197
|
-
"grid",
|
|
198
|
-
"gridcell",
|
|
199
|
-
"group",
|
|
200
|
-
"heading",
|
|
201
|
-
"img",
|
|
202
|
-
"link",
|
|
203
|
-
"list",
|
|
204
|
-
"listbox",
|
|
205
|
-
"listitem",
|
|
206
|
-
"log",
|
|
207
|
-
"main",
|
|
208
|
-
"marquee",
|
|
209
|
-
"math",
|
|
210
|
-
"menu",
|
|
211
|
-
"menubar",
|
|
212
|
-
"menuitem",
|
|
213
|
-
"menuitemcheckbox",
|
|
214
|
-
"menuitemradio",
|
|
215
|
-
"navigation",
|
|
216
|
-
"none",
|
|
217
|
-
"note",
|
|
218
|
-
"option",
|
|
219
|
-
"presentation",
|
|
220
|
-
"progressbar",
|
|
221
|
-
"radio",
|
|
222
|
-
"radiogroup",
|
|
223
|
-
"region",
|
|
224
|
-
"row",
|
|
225
|
-
"rowgroup",
|
|
226
|
-
"rowheader",
|
|
227
|
-
"scrollbar",
|
|
228
|
-
"search",
|
|
229
|
-
"searchbox",
|
|
230
|
-
"separator",
|
|
231
|
-
"slider",
|
|
232
|
-
"spinbutton",
|
|
233
|
-
"status",
|
|
234
|
-
"switch",
|
|
235
|
-
"tab",
|
|
236
|
-
"table",
|
|
237
|
-
"tablist",
|
|
238
|
-
"tabpanel",
|
|
239
|
-
"term",
|
|
240
|
-
"textbox",
|
|
241
|
-
"timer",
|
|
242
|
-
"toolbar",
|
|
243
|
-
"tooltip",
|
|
244
|
-
"tree",
|
|
245
|
-
"treegrid",
|
|
246
|
-
"treeitem",
|
|
247
|
-
]
|
|
248
|
-
]
|
|
249
|
-
| None = None,
|
|
250
|
-
slot: Var[str] | str | None = None,
|
|
251
|
-
spell_check: Var[bool] | bool | None = None,
|
|
252
|
-
tab_index: Var[int] | int | None = None,
|
|
253
|
-
title: Var[str] | str | None = None,
|
|
254
|
-
style: Sequence[Mapping[str, Any]]
|
|
255
|
-
| Mapping[str, Any]
|
|
256
|
-
| Var[Mapping[str, Any]]
|
|
257
|
-
| Breakpoints
|
|
258
|
-
| None = None,
|
|
259
|
-
key: Any | None = None,
|
|
260
|
-
id: Any | None = None,
|
|
261
|
-
ref: Var | None = None,
|
|
262
|
-
class_name: Any | None = None,
|
|
263
|
-
autofocus: bool | None = None,
|
|
264
|
-
custom_attrs: dict[str, Var | Any] | None = None,
|
|
265
|
-
on_blur: EventType[()] | None = None,
|
|
266
|
-
on_click: EventType[()] | EventType[PointerEventInfo] | None = None,
|
|
267
|
-
on_context_menu: EventType[()] | EventType[PointerEventInfo] | None = None,
|
|
268
|
-
on_double_click: EventType[()] | EventType[PointerEventInfo] | None = None,
|
|
269
|
-
on_focus: EventType[()] | None = None,
|
|
270
|
-
on_mount: EventType[()] | None = None,
|
|
271
|
-
on_mouse_down: EventType[()] | None = None,
|
|
272
|
-
on_mouse_enter: EventType[()] | None = None,
|
|
273
|
-
on_mouse_leave: EventType[()] | None = None,
|
|
274
|
-
on_mouse_move: EventType[()] | None = None,
|
|
275
|
-
on_mouse_out: EventType[()] | None = None,
|
|
276
|
-
on_mouse_over: EventType[()] | None = None,
|
|
277
|
-
on_mouse_up: EventType[()] | None = None,
|
|
278
|
-
on_scroll: EventType[()] | None = None,
|
|
279
|
-
on_scroll_end: EventType[()] | None = None,
|
|
280
|
-
on_unmount: EventType[()] | None = None,
|
|
281
|
-
**props,
|
|
282
|
-
) -> Meta:
|
|
283
|
-
"""Create the component.
|
|
284
|
-
|
|
285
|
-
Args:
|
|
286
|
-
*children: The children of the component.
|
|
287
|
-
property: The type of metadata value.
|
|
288
|
-
char_set: Specifies the character encoding for the HTML document
|
|
289
|
-
content: Defines the content of the metadata
|
|
290
|
-
http_equiv: Provides an HTTP header for the information/value of the content attribute
|
|
291
|
-
name: Specifies a name for the metadata
|
|
292
|
-
access_key: Provides a hint for generating a keyboard shortcut for the current element.
|
|
293
|
-
auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
|
|
294
|
-
content_editable: Indicates whether the element's content is editable.
|
|
295
|
-
context_menu: Defines the ID of a <menu> element which will serve as the element's context menu.
|
|
296
|
-
dir: Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left)
|
|
297
|
-
draggable: Defines whether the element can be dragged.
|
|
298
|
-
enter_key_hint: Hints what media types the media element is able to play.
|
|
299
|
-
hidden: Defines whether the element is hidden.
|
|
300
|
-
input_mode: Defines the type of the element.
|
|
301
|
-
item_prop: Defines the name of the element for metadata purposes.
|
|
302
|
-
lang: Defines the language used in the element.
|
|
303
|
-
role: Defines the role of the element.
|
|
304
|
-
slot: Assigns a slot in a shadow DOM shadow tree to an element.
|
|
305
|
-
spell_check: Defines whether the element may be checked for spelling errors.
|
|
306
|
-
tab_index: Defines the position of the current element in the tabbing order.
|
|
307
|
-
title: Defines a tooltip for the element.
|
|
308
|
-
style: The style of the component.
|
|
309
|
-
key: A unique key for the component.
|
|
310
|
-
id: The id for the component.
|
|
311
|
-
ref: The Var to pass as the ref to the component.
|
|
312
|
-
class_name: The class name for the component.
|
|
313
|
-
autofocus: Whether the component should take the focus once the page is loaded
|
|
314
|
-
custom_attrs: custom attribute
|
|
315
|
-
**props: The props of the component.
|
|
316
|
-
|
|
317
|
-
Returns:
|
|
318
|
-
The component.
|
|
319
|
-
"""
|
|
320
|
-
|
|
321
67
|
class Description(elements.Meta):
|
|
322
68
|
@classmethod
|
|
323
69
|
def create(
|
|
@@ -327,6 +73,7 @@ class Description(elements.Meta):
|
|
|
327
73
|
char_set: Var[str] | str | None = None,
|
|
328
74
|
content: Var[str] | str | None = None,
|
|
329
75
|
http_equiv: Var[str] | str | None = None,
|
|
76
|
+
property: Var[str] | str | None = None,
|
|
330
77
|
access_key: Var[str] | str | None = None,
|
|
331
78
|
auto_capitalize: Literal[
|
|
332
79
|
"characters", "none", "off", "on", "sentences", "words"
|
|
@@ -542,6 +289,7 @@ class Description(elements.Meta):
|
|
|
542
289
|
char_set: Specifies the character encoding for the HTML document
|
|
543
290
|
content: Defines the content of the metadata
|
|
544
291
|
http_equiv: Provides an HTTP header for the information/value of the content attribute
|
|
292
|
+
property: The type of metadata value.
|
|
545
293
|
access_key: Provides a hint for generating a keyboard shortcut for the current element.
|
|
546
294
|
auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
|
|
547
295
|
content_editable: Indicates whether the element's content is editable.
|
|
@@ -792,7 +540,7 @@ class Image(elements.Meta):
|
|
|
792
540
|
|
|
793
541
|
Args:
|
|
794
542
|
*children: The children of the component.
|
|
795
|
-
property: The type of
|
|
543
|
+
property: The type of metadata value.
|
|
796
544
|
char_set: Specifies the character encoding for the HTML document
|
|
797
545
|
content: Defines the content of the metadata
|
|
798
546
|
http_equiv: Provides an HTTP header for the information/value of the content attribute
|
|
@@ -803,6 +803,7 @@ class Meta(BaseHTML):
|
|
|
803
803
|
content: Var[str] | str | None = None,
|
|
804
804
|
http_equiv: Var[str] | str | None = None,
|
|
805
805
|
name: Var[str] | str | None = None,
|
|
806
|
+
property: Var[str] | str | None = None,
|
|
806
807
|
access_key: Var[str] | str | None = None,
|
|
807
808
|
auto_capitalize: Literal[
|
|
808
809
|
"characters", "none", "off", "on", "sentences", "words"
|
|
@@ -1018,6 +1019,7 @@ class Meta(BaseHTML):
|
|
|
1018
1019
|
content: Defines the content of the metadata
|
|
1019
1020
|
http_equiv: Provides an HTTP header for the information/value of the content attribute
|
|
1020
1021
|
name: Specifies a name for the metadata
|
|
1022
|
+
property: The type of metadata value.
|
|
1021
1023
|
access_key: Provides a hint for generating a keyboard shortcut for the current element.
|
|
1022
1024
|
auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
|
|
1023
1025
|
content_editable: Indicates whether the element's content is editable.
|