reflex 0.8.9a1__py3-none-any.whl → 0.8.10__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of reflex might be problematic. Click here for more details.
- reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +11 -1
- reflex/.templates/web/utils/helpers/upload.js +170 -0
- reflex/.templates/web/utils/state.js +10 -159
- reflex/app.py +9 -0
- reflex/compiler/compiler.py +3 -5
- reflex/compiler/templates.py +1 -6
- reflex/compiler/utils.py +16 -2
- reflex/components/base/bare.py +2 -2
- reflex/components/component.py +33 -74
- reflex/components/core/debounce.py +1 -1
- reflex/components/core/foreach.py +7 -19
- reflex/components/core/sticky.pyi +3 -0
- reflex/components/core/upload.py +1 -1
- reflex/components/dynamic.py +1 -3
- reflex/components/el/elements/forms.py +3 -3
- reflex/components/el/elements/media.pyi +5869 -5
- reflex/components/lucide/icon.py +2 -1
- reflex/components/lucide/icon.pyi +5 -1
- reflex/config.py +33 -6
- reflex/environment.py +13 -1
- reflex/event.py +30 -0
- reflex/model.py +4 -0
- reflex/utils/types.py +4 -0
- reflex/vars/base.py +9 -2
- {reflex-0.8.9a1.dist-info → reflex-0.8.10.dist-info}/METADATA +4 -3
- {reflex-0.8.9a1.dist-info → reflex-0.8.10.dist-info}/RECORD +29 -28
- {reflex-0.8.9a1.dist-info → reflex-0.8.10.dist-info}/WHEEL +0 -0
- {reflex-0.8.9a1.dist-info → reflex-0.8.10.dist-info}/entry_points.txt +0 -0
- {reflex-0.8.9a1.dist-info → reflex-0.8.10.dist-info}/licenses/LICENSE +0 -0
reflex/components/lucide/icon.py
CHANGED
|
@@ -6,7 +6,7 @@ from reflex.utils.imports import ImportVar
|
|
|
6
6
|
from reflex.vars.base import LiteralVar, Var
|
|
7
7
|
from reflex.vars.sequence import LiteralStringVar, StringVar
|
|
8
8
|
|
|
9
|
-
LUCIDE_LIBRARY = "lucide-react@0.
|
|
9
|
+
LUCIDE_LIBRARY = "lucide-react@0.542.0"
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
class LucideIconComponent(Component):
|
|
@@ -1002,6 +1002,7 @@ LUCIDE_ICON_LIST = [
|
|
|
1002
1002
|
"linkedin",
|
|
1003
1003
|
"list_check",
|
|
1004
1004
|
"list_checks",
|
|
1005
|
+
"list_chevrons_down_up",
|
|
1005
1006
|
"list_collapse",
|
|
1006
1007
|
"list_end",
|
|
1007
1008
|
"list_filter_plus",
|
|
@@ -11,7 +11,7 @@ from reflex.components.core.breakpoints import Breakpoints
|
|
|
11
11
|
from reflex.event import EventType, PointerEventInfo
|
|
12
12
|
from reflex.vars.base import Var
|
|
13
13
|
|
|
14
|
-
LUCIDE_LIBRARY = "lucide-react@0.
|
|
14
|
+
LUCIDE_LIBRARY = "lucide-react@0.542.0"
|
|
15
15
|
|
|
16
16
|
class LucideIconComponent(Component):
|
|
17
17
|
@classmethod
|
|
@@ -518,6 +518,7 @@ LUCIDE_ICON_LIST = [
|
|
|
518
518
|
"chevrons_up_down",
|
|
519
519
|
"chevrons_up",
|
|
520
520
|
"chrome",
|
|
521
|
+
"chromium",
|
|
521
522
|
"church",
|
|
522
523
|
"cigarette_off",
|
|
523
524
|
"cigarette",
|
|
@@ -1066,6 +1067,7 @@ LUCIDE_ICON_LIST = [
|
|
|
1066
1067
|
"linkedin",
|
|
1067
1068
|
"list_check",
|
|
1068
1069
|
"list_checks",
|
|
1070
|
+
"list_chevrons_down_up",
|
|
1069
1071
|
"list_collapse",
|
|
1070
1072
|
"list_end",
|
|
1071
1073
|
"list_filter_plus",
|
|
@@ -1263,11 +1265,13 @@ LUCIDE_ICON_LIST = [
|
|
|
1263
1265
|
"panel_left_close",
|
|
1264
1266
|
"panel_left_dashed",
|
|
1265
1267
|
"panel_left_open",
|
|
1268
|
+
"panel_left_right_dashed",
|
|
1266
1269
|
"panel_left",
|
|
1267
1270
|
"panel_right_close",
|
|
1268
1271
|
"panel_right_dashed",
|
|
1269
1272
|
"panel_right_open",
|
|
1270
1273
|
"panel_right",
|
|
1274
|
+
"panel_top_bottom_dashed",
|
|
1271
1275
|
"panel_top_close",
|
|
1272
1276
|
"panel_top_dashed",
|
|
1273
1277
|
"panel_top_open",
|
reflex/config.py
CHANGED
|
@@ -267,9 +267,12 @@ _PLUGINS_ENABLED_BY_DEFAULT = [
|
|
|
267
267
|
|
|
268
268
|
@dataclasses.dataclass(kw_only=True, init=False)
|
|
269
269
|
class Config(BaseConfig):
|
|
270
|
-
"""
|
|
270
|
+
"""Configuration class for Reflex applications.
|
|
271
271
|
|
|
272
|
-
|
|
272
|
+
The config defines runtime settings for your app including server ports, database connections,
|
|
273
|
+
frontend packages, and deployment settings.
|
|
274
|
+
|
|
275
|
+
By default, the config is defined in an `rxconfig.py` file in the root of your app:
|
|
273
276
|
|
|
274
277
|
```python
|
|
275
278
|
# rxconfig.py
|
|
@@ -277,14 +280,38 @@ class Config(BaseConfig):
|
|
|
277
280
|
|
|
278
281
|
config = rx.Config(
|
|
279
282
|
app_name="myapp",
|
|
280
|
-
|
|
283
|
+
# Server configuration
|
|
284
|
+
frontend_port=3000,
|
|
285
|
+
backend_port=8000,
|
|
286
|
+
# Database
|
|
287
|
+
db_url="postgresql://user:pass@localhost:5432/mydb",
|
|
288
|
+
# Additional frontend packages
|
|
289
|
+
frontend_packages=["react-icons"],
|
|
290
|
+
# CORS settings for production
|
|
291
|
+
cors_allowed_origins=["https://mydomain.com"],
|
|
281
292
|
)
|
|
282
293
|
```
|
|
283
294
|
|
|
284
|
-
|
|
285
|
-
|
|
295
|
+
## Environment Variable Overrides
|
|
296
|
+
|
|
297
|
+
Any config value can be overridden by setting an environment variable with the `REFLEX_`
|
|
298
|
+
prefix and the parameter name in uppercase:
|
|
299
|
+
|
|
300
|
+
```bash
|
|
301
|
+
REFLEX_DB_URL="postgresql://user:pass@localhost/db" reflex run
|
|
302
|
+
REFLEX_FRONTEND_PORT=3001 reflex run
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
## Key Configuration Areas
|
|
306
|
+
|
|
307
|
+
- **App Settings**: `app_name`, `loglevel`, `telemetry_enabled`
|
|
308
|
+
- **Server**: `frontend_port`, `backend_port`, `api_url`, `cors_allowed_origins`
|
|
309
|
+
- **Database**: `db_url`, `async_db_url`, `redis_url`
|
|
310
|
+
- **Frontend**: `frontend_packages`, `react_strict_mode`
|
|
311
|
+
- **State Management**: `state_manager_mode`, `state_auto_setters`
|
|
312
|
+
- **Plugins**: `plugins`, `disable_plugins`
|
|
286
313
|
|
|
287
|
-
See the [configuration](https://reflex.dev/docs/
|
|
314
|
+
See the [configuration docs](https://reflex.dev/docs/advanced-onboarding/configuration) for complete details on all available options.
|
|
288
315
|
"""
|
|
289
316
|
|
|
290
317
|
# Track whether the app name has already been validated for this Config instance.
|
reflex/environment.py
CHANGED
|
@@ -204,7 +204,7 @@ def interpret_env_var_value(
|
|
|
204
204
|
The interpreted value.
|
|
205
205
|
|
|
206
206
|
Raises:
|
|
207
|
-
ValueError: If the
|
|
207
|
+
ValueError: If the environment variable type is invalid.
|
|
208
208
|
"""
|
|
209
209
|
field_type = value_inside_optional(field_type)
|
|
210
210
|
|
|
@@ -556,6 +556,18 @@ class EnvironmentVariables:
|
|
|
556
556
|
# Whether to check db connections before using them.
|
|
557
557
|
SQLALCHEMY_POOL_PRE_PING: EnvVar[bool] = env_var(True)
|
|
558
558
|
|
|
559
|
+
# The size of the database connection pool.
|
|
560
|
+
SQLALCHEMY_POOL_SIZE: EnvVar[int] = env_var(5)
|
|
561
|
+
|
|
562
|
+
# The maximum overflow size of the database connection pool.
|
|
563
|
+
SQLALCHEMY_MAX_OVERFLOW: EnvVar[int] = env_var(10)
|
|
564
|
+
|
|
565
|
+
# Recycle connections after this many seconds.
|
|
566
|
+
SQLALCHEMY_POOL_RECYCLE: EnvVar[int] = env_var(-1)
|
|
567
|
+
|
|
568
|
+
# The timeout for acquiring a connection from the pool.
|
|
569
|
+
SQLALCHEMY_POOL_TIMEOUT: EnvVar[int] = env_var(30)
|
|
570
|
+
|
|
559
571
|
# Whether to ignore the redis config error. Some redis servers only allow out-of-band configuration.
|
|
560
572
|
REFLEX_IGNORE_REDIS_CONFIG_ERROR: EnvVar[bool] = env_var(False)
|
|
561
573
|
|
reflex/event.py
CHANGED
|
@@ -13,6 +13,7 @@ from typing import (
|
|
|
13
13
|
Annotated,
|
|
14
14
|
Any,
|
|
15
15
|
Generic,
|
|
16
|
+
Literal,
|
|
16
17
|
NoReturn,
|
|
17
18
|
Protocol,
|
|
18
19
|
TypeVar,
|
|
@@ -845,6 +846,7 @@ class FileUpload:
|
|
|
845
846
|
|
|
846
847
|
upload_id: str | None = None
|
|
847
848
|
on_upload_progress: EventHandler | Callable | None = None
|
|
849
|
+
extra_headers: dict[str, str] | None = None
|
|
848
850
|
|
|
849
851
|
@staticmethod
|
|
850
852
|
def on_upload_progress_args_spec(_prog: Var[dict[str, int | float | bool]]):
|
|
@@ -886,6 +888,12 @@ class FileUpload:
|
|
|
886
888
|
Var(_js_expr="upload_id"),
|
|
887
889
|
LiteralVar.create(upload_id),
|
|
888
890
|
),
|
|
891
|
+
(
|
|
892
|
+
Var(_js_expr="extra_headers"),
|
|
893
|
+
LiteralVar.create(
|
|
894
|
+
self.extra_headers if self.extra_headers is not None else {}
|
|
895
|
+
),
|
|
896
|
+
),
|
|
889
897
|
]
|
|
890
898
|
if self.on_upload_progress is not None:
|
|
891
899
|
on_upload_progress = self.on_upload_progress
|
|
@@ -962,9 +970,29 @@ def server_side(name: str, sig: inspect.Signature, **kwargs) -> EventSpec:
|
|
|
962
970
|
)
|
|
963
971
|
|
|
964
972
|
|
|
973
|
+
@overload
|
|
974
|
+
def redirect(
|
|
975
|
+
path: str | Var[str],
|
|
976
|
+
*,
|
|
977
|
+
is_external: Literal[False] = False,
|
|
978
|
+
replace: bool = False,
|
|
979
|
+
) -> EventSpec: ...
|
|
980
|
+
|
|
981
|
+
|
|
982
|
+
@overload
|
|
983
|
+
def redirect(
|
|
984
|
+
path: str | Var[str],
|
|
985
|
+
*,
|
|
986
|
+
is_external: Literal[True],
|
|
987
|
+
popup: bool = False,
|
|
988
|
+
) -> EventSpec: ...
|
|
989
|
+
|
|
990
|
+
|
|
965
991
|
def redirect(
|
|
966
992
|
path: str | Var[str],
|
|
993
|
+
*,
|
|
967
994
|
is_external: bool = False,
|
|
995
|
+
popup: bool = False,
|
|
968
996
|
replace: bool = False,
|
|
969
997
|
) -> EventSpec:
|
|
970
998
|
"""Redirect to a new path.
|
|
@@ -972,6 +1000,7 @@ def redirect(
|
|
|
972
1000
|
Args:
|
|
973
1001
|
path: The path to redirect to.
|
|
974
1002
|
is_external: Whether to open in new tab or not.
|
|
1003
|
+
popup: Whether to open in a new window or not.
|
|
975
1004
|
replace: If True, the current page will not create a new history entry.
|
|
976
1005
|
|
|
977
1006
|
Returns:
|
|
@@ -982,6 +1011,7 @@ def redirect(
|
|
|
982
1011
|
get_fn_signature(redirect),
|
|
983
1012
|
path=path,
|
|
984
1013
|
external=is_external,
|
|
1014
|
+
popup=popup,
|
|
985
1015
|
replace=replace,
|
|
986
1016
|
)
|
|
987
1017
|
|
reflex/model.py
CHANGED
|
@@ -96,6 +96,10 @@ def get_engine_args(url: str | None = None) -> dict[str, Any]:
|
|
|
96
96
|
"echo": environment.SQLALCHEMY_ECHO.get(),
|
|
97
97
|
# Check connections before returning them.
|
|
98
98
|
"pool_pre_ping": environment.SQLALCHEMY_POOL_PRE_PING.get(),
|
|
99
|
+
"pool_size": environment.SQLALCHEMY_POOL_SIZE.get(),
|
|
100
|
+
"max_overflow": environment.SQLALCHEMY_MAX_OVERFLOW.get(),
|
|
101
|
+
"pool_recycle": environment.SQLALCHEMY_POOL_RECYCLE.get(),
|
|
102
|
+
"pool_timeout": environment.SQLALCHEMY_POOL_TIMEOUT.get(),
|
|
99
103
|
}
|
|
100
104
|
conf = get_config()
|
|
101
105
|
url = url or conf.db_url
|
reflex/utils/types.py
CHANGED
|
@@ -857,6 +857,10 @@ def is_valid_var_type(type_: type) -> bool:
|
|
|
857
857
|
if is_union(type_):
|
|
858
858
|
return all(is_valid_var_type(arg) for arg in get_args(type_))
|
|
859
859
|
|
|
860
|
+
if is_literal(type_):
|
|
861
|
+
types = {type(value) for value in get_args(type_)}
|
|
862
|
+
return all(is_valid_var_type(type_) for type_ in types)
|
|
863
|
+
|
|
860
864
|
type_ = origin if (origin := get_origin(type_)) is not None else type_
|
|
861
865
|
|
|
862
866
|
return (
|
reflex/vars/base.py
CHANGED
|
@@ -9,7 +9,6 @@ import datetime
|
|
|
9
9
|
import functools
|
|
10
10
|
import inspect
|
|
11
11
|
import json
|
|
12
|
-
import random
|
|
13
12
|
import re
|
|
14
13
|
import string
|
|
15
14
|
import uuid
|
|
@@ -50,6 +49,7 @@ from reflex.base import Base
|
|
|
50
49
|
from reflex.constants.compiler import Hooks
|
|
51
50
|
from reflex.constants.state import FIELD_MARKER
|
|
52
51
|
from reflex.utils import console, exceptions, imports, serializers, types
|
|
52
|
+
from reflex.utils.decorator import once
|
|
53
53
|
from reflex.utils.exceptions import (
|
|
54
54
|
ComputedVarSignatureError,
|
|
55
55
|
UntypedComputedVarError,
|
|
@@ -3033,13 +3033,20 @@ def get_uuid_string_var() -> Var:
|
|
|
3033
3033
|
USED_VARIABLES = set()
|
|
3034
3034
|
|
|
3035
3035
|
|
|
3036
|
+
@once
|
|
3037
|
+
def _rng():
|
|
3038
|
+
import random
|
|
3039
|
+
|
|
3040
|
+
return random.Random(42)
|
|
3041
|
+
|
|
3042
|
+
|
|
3036
3043
|
def get_unique_variable_name() -> str:
|
|
3037
3044
|
"""Get a unique variable name.
|
|
3038
3045
|
|
|
3039
3046
|
Returns:
|
|
3040
3047
|
The unique variable name.
|
|
3041
3048
|
"""
|
|
3042
|
-
name = "".join([
|
|
3049
|
+
name = "".join([_rng().choice(string.ascii_lowercase) for _ in range(8)])
|
|
3043
3050
|
if name not in USED_VARIABLES:
|
|
3044
3051
|
USED_VARIABLES.add(name)
|
|
3045
3052
|
return name
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: reflex
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.10
|
|
4
4
|
Summary: Web apps in pure Python.
|
|
5
5
|
Project-URL: homepage, https://reflex.dev
|
|
6
6
|
Project-URL: repository, https://github.com/reflex-dev/reflex
|
|
7
7
|
Project-URL: documentation, https://reflex.dev/docs/getting-started/introduction
|
|
8
|
-
Author
|
|
9
|
-
Maintainer
|
|
8
|
+
Author: Nikhil Rao, Alek Petuskey, Masen Furer, Elijah Ahianyo, Thomas Brandeho, Khaleel Al-Adhami
|
|
9
|
+
Maintainer: Masen Furer, Khaleel Al-Adhami
|
|
10
|
+
Maintainer-email: maintainers@reflex.dev
|
|
10
11
|
License: Apache-2.0
|
|
11
12
|
License-File: LICENSE
|
|
12
13
|
Keywords: framework,web
|
|
@@ -2,13 +2,13 @@ reflex/__init__.py,sha256=_1PVYjDeA6_JyfXvL6OuKjjO6AX2oMiNcAq8AEHf6xw,10161
|
|
|
2
2
|
reflex/__init__.pyi,sha256=0D46kHVUJPE_kgYL-BjraERu-MXNCPsQTZQShrijmeQ,10148
|
|
3
3
|
reflex/__main__.py,sha256=6cVrGEyT3j3tEvlEVUatpaYfbB5EF3UVY-6vc_Z7-hw,108
|
|
4
4
|
reflex/admin.py,sha256=Nbc38y-M8iaRBvh1W6DQu_D3kEhO8JFvxrog4q2cB_E,434
|
|
5
|
-
reflex/app.py,sha256=
|
|
5
|
+
reflex/app.py,sha256=3J6VYfArjPXikkv1HEHyLVAuG2tJpbJHDFVYQvvK1C0,78129
|
|
6
6
|
reflex/assets.py,sha256=l5O_mlrTprC0lF7Rc_McOe3a0OtSLnRdNl_PqCpDCBA,3431
|
|
7
7
|
reflex/base.py,sha256=Oh664QL3fZEHErhUasFqP7fE4olYf1y-9Oj6uZI2FCU,1173
|
|
8
|
-
reflex/config.py,sha256=
|
|
9
|
-
reflex/environment.py,sha256=
|
|
10
|
-
reflex/event.py,sha256=
|
|
11
|
-
reflex/model.py,sha256=
|
|
8
|
+
reflex/config.py,sha256=LsHAtdH4nkSn3q_Ie-KNdOGdflLXrFICUQov29oFjVk,21229
|
|
9
|
+
reflex/environment.py,sha256=BRIePrhFKTZajYlyl-KhjGsqR4_hc7KxfNCoape6Jjw,23590
|
|
10
|
+
reflex/event.py,sha256=WfM9jNCFaTpHPRVKXJVjBbwx2lgJ9GwidyWd9cS-G1I,75460
|
|
11
|
+
reflex/model.py,sha256=2QhU1TJlcDeRA23pv8usLjyDaA6FhbQRYdzsjOHzvUI,19665
|
|
12
12
|
reflex/page.py,sha256=ssCbMVFuIy60vH-YhJUzN0OxzUwXFCCD3ej56dVjp3g,3525
|
|
13
13
|
reflex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
14
|
reflex/reflex.py,sha256=qKpWvXuA55y519MWckr6oxKSf3pCQfRCrvzsyXSuAqk,22729
|
|
@@ -26,28 +26,29 @@ reflex/.templates/web/react-router.config.js,sha256=5K1FBryYdPusn1nE513GwB5_5UdP
|
|
|
26
26
|
reflex/.templates/web/vite-plugin-safari-cachebust.js,sha256=FcyppYYBxUlZtQ-D_iyVaQIT6TBVisBH7DMzWxYm-zA,5300
|
|
27
27
|
reflex/.templates/web/app/entry.client.js,sha256=2Jv-5SQWHhHmA07BP50f1ew1V-LOsX5VoLtSInnFDj8,264
|
|
28
28
|
reflex/.templates/web/app/routes.js,sha256=-16AwZFzrVSR7DBPYZbGx3lBA5hBFJ_XF2Y-6ilharo,254
|
|
29
|
-
reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js,sha256=
|
|
29
|
+
reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js,sha256=H8F1bUUuIU8VOtbaHRStQQwlqSwrCwFF-orklp3xKiE,1198
|
|
30
30
|
reflex/.templates/web/components/shiki/code.js,sha256=4Es1pxsr-lX4hTQ5mglrwwC6O_SI-z-O60k03z8VFzQ,1144
|
|
31
31
|
reflex/.templates/web/styles/__reflex_style_reset.css,sha256=qbC6JIT643YEsvSQ0D7xBmWE5vXy94JGrKNihRuEjnA,8913
|
|
32
32
|
reflex/.templates/web/utils/react-theme.js,sha256=Aa-RND3ooGCXW6Zavzitc-v0ciKlcQDTFlDtE4mPkFI,2713
|
|
33
|
-
reflex/.templates/web/utils/state.js,sha256
|
|
33
|
+
reflex/.templates/web/utils/state.js,sha256=sf8v15y5FXGeuQg1spDRe88pl3Kdv7n4_338tqu_xkY,31894
|
|
34
34
|
reflex/.templates/web/utils/helpers/dataeditor.js,sha256=pG6MgsHuStDR7-qPipzfiK32j9bKDBa-4hZ0JSUo4JM,1623
|
|
35
35
|
reflex/.templates/web/utils/helpers/debounce.js,sha256=xGhtTRtS_xIcaeqnYVvYJNseLgQVk-DW-eFiHJYO9As,528
|
|
36
36
|
reflex/.templates/web/utils/helpers/paste.js,sha256=ef30HsR83jRzzvZnl8yV79yqFP8TC_u8SlN99cCS_OM,1799
|
|
37
37
|
reflex/.templates/web/utils/helpers/range.js,sha256=Bjr7Ex1Mghpsopjfrcp__IVFw8F8AsMiP-0nE20ZZwk,1091
|
|
38
38
|
reflex/.templates/web/utils/helpers/throttle.js,sha256=qxeyaEojaTeX36FPGftzVWrzDsRQU4iqg3U9RJz9Vj4,566
|
|
39
|
+
reflex/.templates/web/utils/helpers/upload.js,sha256=YiAv-KC-LijTsEmzG_o6YxUprgSN7Pbyd__xu8HTX6s,4814
|
|
39
40
|
reflex/app_mixins/__init__.py,sha256=Oegz3-gZLP9p2OAN5ALNbsgxuNQfS6lGZgQA8cc-9mQ,137
|
|
40
41
|
reflex/app_mixins/lifespan.py,sha256=a156ZUYVo2bN1Tv-4WmWSjojo90PP_2-V12BX0q8YNw,3543
|
|
41
42
|
reflex/app_mixins/middleware.py,sha256=BKhe0jUFO1_TylEC48LUZyaeYyPmAYW-NV4H5Rw221k,2848
|
|
42
43
|
reflex/app_mixins/mixin.py,sha256=R1YncalqDrbdPZvpKVbm72ZKmQZxYAWfuFq9JknzTqQ,305
|
|
43
44
|
reflex/compiler/__init__.py,sha256=r8jqmDSFf09iV2lHlNhfc9XrTLjNxfDNwPYlxS4cmHE,27
|
|
44
|
-
reflex/compiler/compiler.py,sha256=
|
|
45
|
-
reflex/compiler/templates.py,sha256=
|
|
46
|
-
reflex/compiler/utils.py,sha256=
|
|
45
|
+
reflex/compiler/compiler.py,sha256=KmkR33gbkYXPxlwBgsCFS5Hn7Fjpj_yFLuu6L5CYmQA,29100
|
|
46
|
+
reflex/compiler/templates.py,sha256=QATHSjsmMbH40kYpArPEIfKdmnWkBIkzGIC8JgRK9nM,20407
|
|
47
|
+
reflex/compiler/utils.py,sha256=RmeUoZMHdIfnqPl-p0ToPgwd0FEFO5u0Xbb-J20UYdQ,19621
|
|
47
48
|
reflex/components/__init__.py,sha256=eWpgWFbSQDj2TpGp6StEbxU7roQgzY7ZM0XIcIc5RE8,588
|
|
48
49
|
reflex/components/__init__.pyi,sha256=7VFHtJGIjvGtD3IiPk848IPWYSCcPRT1EyPGljLhYlU,736
|
|
49
|
-
reflex/components/component.py,sha256=
|
|
50
|
-
reflex/components/dynamic.py,sha256=
|
|
50
|
+
reflex/components/component.py,sha256=ToY6NmFGcDumWylgemkb7t4nhsnlc4QWdqiBeMbuCe4,98168
|
|
51
|
+
reflex/components/dynamic.py,sha256=M3Waonox1lMCs9db_0iz4VtmBLuETpzZvvJ8m4iNAhE,7384
|
|
51
52
|
reflex/components/field.py,sha256=j5JZFzNlET3GAIW91m1L31RypXylMAxJNm0-CJbtykM,5745
|
|
52
53
|
reflex/components/literals.py,sha256=hogLnwTJxFJODIvqihg-GD9kFZVsEBDoYzaRit56Nuk,501
|
|
53
54
|
reflex/components/props.py,sha256=BH7RiRu_EI2BRkB1PyBVp6tLeFTTV4FzGEdDIXXQ9Bk,14378
|
|
@@ -55,7 +56,7 @@ reflex/components/base/__init__.py,sha256=6DzVn2oVZqmsXYq3r9AN8Q40R0NAsyRpSyVzBD
|
|
|
55
56
|
reflex/components/base/__init__.pyi,sha256=CoM0dGGkZSKLNHe6KBS4Zgc6sRpRGM5dZ_EuVmZ2qkA,883
|
|
56
57
|
reflex/components/base/app_wrap.py,sha256=5K_myvYvHPeAJbm3BdEX17tKvdNEj6SV9RYahbIQBAQ,514
|
|
57
58
|
reflex/components/base/app_wrap.pyi,sha256=opdrLSp-IGFibjM4bPLZPxLsyhc1H6nev2F9XhPfOSg,1996
|
|
58
|
-
reflex/components/base/bare.py,sha256=
|
|
59
|
+
reflex/components/base/bare.py,sha256=_k1tx7nymFCNAmhRtT89PKBjLRldQZWxW0xPAkeZfuA,8285
|
|
59
60
|
reflex/components/base/body.py,sha256=KLPOhxVsKyjPwrY9AziCOOG_c9ckOqIhI4n2i3_Q3NU,129
|
|
60
61
|
reflex/components/base/body.pyi,sha256=VG8N-0ocwgFOJR9mXfu6a5BtIY_jR7mK9lX3Y22g9GQ,8655
|
|
61
62
|
reflex/components/base/document.py,sha256=Fr7y22NbeKeiz8kWPH2q5BpFjKdq-AmY-sxZilee_H8,636
|
|
@@ -83,9 +84,9 @@ reflex/components/core/clipboard.py,sha256=lrM4KpbioSqBclhvtrgawgeg9Vq2dKsv40xP4
|
|
|
83
84
|
reflex/components/core/clipboard.pyi,sha256=Wt84ce1rd5vje-KuzAIkn_0riAD91_VtnZcRiRBsFLs,3230
|
|
84
85
|
reflex/components/core/colors.py,sha256=gkT5o5OqI_BR5fGMcCmBUpaz99XRNol9zAis46WktI4,1564
|
|
85
86
|
reflex/components/core/cond.py,sha256=zjDM7Elf0iYpA1MtnUjXvEbD5XvYbluWDTaQ96uxZSI,5531
|
|
86
|
-
reflex/components/core/debounce.py,sha256=
|
|
87
|
+
reflex/components/core/debounce.py,sha256=mLttJ1HkrHN3pJWVpV6KNeQBJBkcPQA4yNt4vWLXZU4,5019
|
|
87
88
|
reflex/components/core/debounce.pyi,sha256=-vEa4eIS2VlHwoL1jMmAey_dMGzz0h4VbDhzC6JT6vI,3105
|
|
88
|
-
reflex/components/core/foreach.py,sha256=
|
|
89
|
+
reflex/components/core/foreach.py,sha256=A33CPPBhd2IZ3-54Tv-MhMVlNoGh99IhuQ1Z-_vQj-E,6060
|
|
89
90
|
reflex/components/core/helmet.py,sha256=9Fr2Tz_J2v8r5t1xeZClL0V5-fEWTiFAXTcJ6bECvAw,220
|
|
90
91
|
reflex/components/core/helmet.pyi,sha256=dp5AOEPQYM77-_ylpsbgbsZkUqu37RblgUGw7Y0BGcI,2391
|
|
91
92
|
reflex/components/core/html.py,sha256=JKK3MsbuzxtcVXbzvW_Q4TZuF9yk3WwiC9LmQl34rzA,1303
|
|
@@ -93,8 +94,8 @@ reflex/components/core/html.pyi,sha256=yDzRQ10yf8ZzbP76C2rEG2gx6Vud_Ez3LcHDWMgyF
|
|
|
93
94
|
reflex/components/core/match.py,sha256=xBB9vtWgVlotPHq6ssng8lzxwXDDQLp9k6Ew5RPPd3U,9888
|
|
94
95
|
reflex/components/core/responsive.py,sha256=ACZdtJ4a4F8B3dm1k8h6J2_UJx0Z5LDB7XHQ2ty4wAc,1911
|
|
95
96
|
reflex/components/core/sticky.py,sha256=2B3TxrwG2Rtp_lv1VkMOIF2bqSiT7qYGbqbiZiMKxKY,3856
|
|
96
|
-
reflex/components/core/sticky.pyi,sha256=
|
|
97
|
-
reflex/components/core/upload.py,sha256=
|
|
97
|
+
reflex/components/core/sticky.pyi,sha256=5D-yT0LYs0ewOlUlInU7KCpuz49yKK7dirysUs1C2VI,32908
|
|
98
|
+
reflex/components/core/upload.py,sha256=Zxni0-cG3B8qx2eSFV7CSZ38gHN9r8YtosowNBHceoI,13544
|
|
98
99
|
reflex/components/core/upload.pyi,sha256=UqfcPGUs8xmnKHKuvqYV7CtOXeF_D1s9ooRe49w6C3E,15757
|
|
99
100
|
reflex/components/core/window_events.py,sha256=opbuO20zVxt252kQLk49V7cltb_Um2oh7iePeGNJ538,3355
|
|
100
101
|
reflex/components/core/window_events.pyi,sha256=aTkBiAy-e9LqkQm6_apRsXXfJRdawA11cE1tQQSIy3c,3206
|
|
@@ -116,12 +117,12 @@ reflex/components/el/elements/__init__.py,sha256=_uZaPHSQSDZBqo-v_hRZECJbWBY3Srq
|
|
|
116
117
|
reflex/components/el/elements/__init__.pyi,sha256=LCaxINN6BUqHsxgpDITjOUqJnF3x5rRI8y2fj62ZT14,8680
|
|
117
118
|
reflex/components/el/elements/base.py,sha256=4jnwyCQUHvWcIfwiIWVCiIC_jbwZlkAiOgx73t7tdw8,3075
|
|
118
119
|
reflex/components/el/elements/base.pyi,sha256=RPdq_8Z1gkV-5n2qeEVQWpPCwVSTzY4eYb6iIJVU-ig,10074
|
|
119
|
-
reflex/components/el/elements/forms.py,sha256=
|
|
120
|
+
reflex/components/el/elements/forms.py,sha256=_WleBOQniadFc0lqDM_CoBbnDoLw0LfWJD6wyr3_bQw,22017
|
|
120
121
|
reflex/components/el/elements/forms.pyi,sha256=NSmo68oksZkzOoSGA5XKNVzqU0K3WIzkFN82EDLC-f8,168115
|
|
121
122
|
reflex/components/el/elements/inline.py,sha256=q3Ku_x8L9NaXrYQovCfkWwZ5AfXG0VyhGN_OT73kA0Y,4126
|
|
122
123
|
reflex/components/el/elements/inline.pyi,sha256=0pjqiHH8DmFfghbM8MK5tqgiZGSnfT-o055GINU8xrA,231760
|
|
123
124
|
reflex/components/el/elements/media.py,sha256=RxykHOcXrTPiInFXfmt_QfGTTNXQez_eurlpaobRoWw,26204
|
|
124
|
-
reflex/components/el/elements/media.pyi,sha256=
|
|
125
|
+
reflex/components/el/elements/media.pyi,sha256=g-IBcwsy4ilzlIHmVn4ZGTTVHf83gqMurCBiImslAH4,442547
|
|
125
126
|
reflex/components/el/elements/metadata.py,sha256=Vf0D0dXqvwt76FkrvDQQpESJmxDh6e6Qxnk2GIRhOlM,2316
|
|
126
127
|
reflex/components/el/elements/metadata.pyi,sha256=5pqPOzE-QbjiOQBitX_qWkcrCssotx-VaP-7x62dfjg,39675
|
|
127
128
|
reflex/components/el/elements/other.py,sha256=WON35QviPNYsBeLQTNbeN7a6m6ixLYIVa4WsDzo9YBY,1378
|
|
@@ -138,8 +139,8 @@ reflex/components/gridjs/__init__.py,sha256=xJwDm1AZ70L5-t9LLqZwGUtDpijbf1KuMYDT
|
|
|
138
139
|
reflex/components/gridjs/datatable.py,sha256=7JKrRw1zkpFB0_wwoaIhrVrldsm7-dyi3PASgqLq8Hc,4224
|
|
139
140
|
reflex/components/gridjs/datatable.pyi,sha256=kFgv82vCgfdWZaUq4bZ73G8X3mkw6ecvSRkZ9G9-28E,5185
|
|
140
141
|
reflex/components/lucide/__init__.py,sha256=EggTK2MuQKQeOBLKW-mF0VaDK9zdWBImu1HO2dvHZbE,73
|
|
141
|
-
reflex/components/lucide/icon.py,sha256=
|
|
142
|
-
reflex/components/lucide/icon.pyi,sha256=
|
|
142
|
+
reflex/components/lucide/icon.py,sha256=wetRyx6HB5tAZ4ntAV5fbf3VuhkEj7zosoLStGYGjBA,35321
|
|
143
|
+
reflex/components/lucide/icon.pyi,sha256=7HEqYp0fGgNyi_nTrpCZNQSuEBnFEzJRb9pWTQKJ-dM,38115
|
|
143
144
|
reflex/components/markdown/__init__.py,sha256=Dfl1At5uYoY7H4ufZU_RY2KOGQDLtj75dsZ2BTqqAns,87
|
|
144
145
|
reflex/components/markdown/markdown.py,sha256=kzvO2VnfCbxV7AcIMBJbxLtAlQ6U5T_QB_JTh8l-HJ4,15450
|
|
145
146
|
reflex/components/markdown/markdown.pyi,sha256=oOlXZItHB0TPWsFz1Qjvr3KzG8sssthBp40UO_KkRIA,4322
|
|
@@ -370,9 +371,9 @@ reflex/utils/serializers.py,sha256=ZqQ2xrBIyOXaN0RIRZwy2oU5O0Y1R0SEGWx-kf5rXMs,1
|
|
|
370
371
|
reflex/utils/telemetry.py,sha256=KY54NmGWyJVSf9TMTcXw2V6gIbEqut1JkAXmmtIlRfw,10776
|
|
371
372
|
reflex/utils/templates.py,sha256=tWo3jO6laQX8b0gUsqHkio_hUQGIvFbmXC-lxiGcdRo,14251
|
|
372
373
|
reflex/utils/token_manager.py,sha256=o_HGbqT9WfYRmek2iY9nem4vDZMz8Q4Dra-eW1lKmuA,6999
|
|
373
|
-
reflex/utils/types.py,sha256=
|
|
374
|
+
reflex/utils/types.py,sha256=Xh9jXSMBgwrR-Whn_5qAnjqQWzHiIJbm1b8qwMG4QmY,38511
|
|
374
375
|
reflex/vars/__init__.py,sha256=85eXMt32bFoKtMdH3KxYRMD8mtnKyYiQcThPxJLoW1k,1359
|
|
375
|
-
reflex/vars/base.py,sha256=
|
|
376
|
+
reflex/vars/base.py,sha256=CJT6SVtFDcBBpOtLw6jtszgZYifqeS3UJVsZ5y-BJQQ,113350
|
|
376
377
|
reflex/vars/datetime.py,sha256=F2Jv_bfydipFSkIQ1F6x5MnSgFEyES9Vq5RG_uGH81E,5118
|
|
377
378
|
reflex/vars/dep_tracking.py,sha256=LfDGgAGlqfC0DeiVcitRBcA1uCe1C3fNRARRekLgCz4,13738
|
|
378
379
|
reflex/vars/function.py,sha256=0i-VkxHkDJmZtfQUwUfaF0rlS6WM8azjwQ8k7rEOkyk,13944
|
|
@@ -380,8 +381,8 @@ reflex/vars/number.py,sha256=tO7pnvFaBsedq1HWT4skytnSqHWMluGEhUbjAUMx8XQ,28190
|
|
|
380
381
|
reflex/vars/object.py,sha256=YblDxQYMajR19a7qjavXcM7-9A6MweAH1giw5fjPci4,17349
|
|
381
382
|
reflex/vars/sequence.py,sha256=1kBrqihspyjyQ1XDqFPC8OpVGtZs_EVkOdIKBro5ilA,55249
|
|
382
383
|
scripts/hatch_build.py,sha256=-4pxcLSFmirmujGpQX9UUxjhIC03tQ_fIQwVbHu9kc0,1861
|
|
383
|
-
reflex-0.8.
|
|
384
|
-
reflex-0.8.
|
|
385
|
-
reflex-0.8.
|
|
386
|
-
reflex-0.8.
|
|
387
|
-
reflex-0.8.
|
|
384
|
+
reflex-0.8.10.dist-info/METADATA,sha256=3ska8-7YBaAwHA5LP77s80KPxvnbPsKt_NgPr6YEoFs,12334
|
|
385
|
+
reflex-0.8.10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
386
|
+
reflex-0.8.10.dist-info/entry_points.txt,sha256=Rxt4dXc7MLBNt5CSHTehVPuSe9Xqow4HLX55nD9tQQ0,45
|
|
387
|
+
reflex-0.8.10.dist-info/licenses/LICENSE,sha256=dw3zLrp9f5ObD7kqS32vWfhcImfO52PMmRqvtxq_YEE,11358
|
|
388
|
+
reflex-0.8.10.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|