reflex 0.7.2a2__py3-none-any.whl → 0.7.3a1__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.
- benchmarks/__init__.py +3 -0
- benchmarks/benchmark_compile_times.py +147 -0
- benchmarks/benchmark_imports.py +128 -0
- benchmarks/benchmark_lighthouse.py +75 -0
- benchmarks/benchmark_package_size.py +135 -0
- benchmarks/benchmark_web_size.py +106 -0
- benchmarks/conftest.py +20 -0
- benchmarks/lighthouse.sh +77 -0
- benchmarks/utils.py +74 -0
- reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +6 -3
- reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +1 -1
- reflex/.templates/web/components/shiki/code.js +26 -21
- reflex/.templates/web/postcss.config.js +1 -1
- reflex/.templates/web/utils/client_side_routing.js +18 -16
- reflex/.templates/web/utils/helpers/dataeditor.js +1 -1
- reflex/.templates/web/utils/helpers/range.js +30 -30
- reflex/.templates/web/utils/state.js +44 -22
- reflex/app_mixins/middleware.py +7 -7
- reflex/compiler/compiler.py +7 -0
- reflex/components/core/banner.py +1 -1
- reflex/components/core/foreach.py +3 -2
- reflex/components/datadisplay/logo.py +1 -1
- reflex/components/el/__init__.pyi +22 -0
- reflex/components/el/elements/__init__.py +20 -1
- reflex/components/el/elements/__init__.pyi +42 -1
- reflex/components/el/elements/media.py +11 -0
- reflex/components/el/elements/media.pyi +11 -0
- reflex/components/lucide/icon.py +8 -6
- reflex/components/lucide/icon.pyi +0 -1
- reflex/components/radix/themes/components/slider.py +2 -1
- reflex/config.py +13 -7
- reflex/custom_components/custom_components.py +23 -25
- reflex/event.py +7 -2
- reflex/istate/data.py +59 -7
- reflex/reflex.py +75 -32
- reflex/state.py +3 -3
- reflex/style.py +3 -3
- reflex/testing.py +4 -10
- reflex/utils/exceptions.py +31 -1
- reflex/utils/exec.py +4 -8
- reflex/utils/export.py +2 -2
- reflex/utils/prerequisites.py +3 -45
- reflex/utils/pyi_generator.py +2 -2
- reflex/utils/redir.py +3 -12
- reflex/vars/base.py +26 -3
- reflex/vars/number.py +22 -21
- reflex/vars/object.py +29 -0
- reflex/vars/sequence.py +37 -0
- {reflex-0.7.2a2.dist-info → reflex-0.7.3a1.dist-info}/METADATA +52 -66
- {reflex-0.7.2a2.dist-info → reflex-0.7.3a1.dist-info}/RECORD +53 -44
- {reflex-0.7.2a2.dist-info → reflex-0.7.3a1.dist-info}/WHEEL +1 -1
- reflex-0.7.3a1.dist-info/entry_points.txt +5 -0
- reflex-0.7.2a2.dist-info/entry_points.txt +0 -3
- {reflex-0.7.2a2.dist-info → reflex-0.7.3a1.dist-info/licenses}/LICENSE +0 -0
reflex/vars/number.py
CHANGED
|
@@ -23,6 +23,7 @@ from reflex.utils.exceptions import (
|
|
|
23
23
|
VarValueError,
|
|
24
24
|
)
|
|
25
25
|
from reflex.utils.imports import ImportDict, ImportVar
|
|
26
|
+
from reflex.utils.types import safe_issubclass
|
|
26
27
|
|
|
27
28
|
from .base import (
|
|
28
29
|
CustomVarOperationReturn,
|
|
@@ -524,7 +525,7 @@ class NumberVar(Var[NUMBER_T], python_types=(int, float)):
|
|
|
524
525
|
Returns:
|
|
525
526
|
bool: True if the number is a float.
|
|
526
527
|
"""
|
|
527
|
-
return
|
|
528
|
+
return safe_issubclass(self._var_type, float)
|
|
528
529
|
|
|
529
530
|
def _is_strict_int(self) -> bool:
|
|
530
531
|
"""Check if the number is an int.
|
|
@@ -532,7 +533,7 @@ class NumberVar(Var[NUMBER_T], python_types=(int, float)):
|
|
|
532
533
|
Returns:
|
|
533
534
|
bool: True if the number is an int.
|
|
534
535
|
"""
|
|
535
|
-
return
|
|
536
|
+
return safe_issubclass(self._var_type, int)
|
|
536
537
|
|
|
537
538
|
def __format__(self, format_spec: str) -> str:
|
|
538
539
|
"""Format the number.
|
|
@@ -546,6 +547,20 @@ class NumberVar(Var[NUMBER_T], python_types=(int, float)):
|
|
|
546
547
|
Raises:
|
|
547
548
|
VarValueError: If the format specifier is not supported.
|
|
548
549
|
"""
|
|
550
|
+
from .sequence import (
|
|
551
|
+
get_decimal_string_operation,
|
|
552
|
+
get_decimal_string_separator_operation,
|
|
553
|
+
)
|
|
554
|
+
|
|
555
|
+
separator = ""
|
|
556
|
+
|
|
557
|
+
if format_spec and format_spec[:1] == ",":
|
|
558
|
+
separator = ","
|
|
559
|
+
format_spec = format_spec[1:]
|
|
560
|
+
elif format_spec and format_spec[:1] == "_":
|
|
561
|
+
separator = "_"
|
|
562
|
+
format_spec = format_spec[1:]
|
|
563
|
+
|
|
549
564
|
if (
|
|
550
565
|
format_spec
|
|
551
566
|
and format_spec[-1] == "f"
|
|
@@ -553,14 +568,17 @@ class NumberVar(Var[NUMBER_T], python_types=(int, float)):
|
|
|
553
568
|
and format_spec[1:-1].isdigit()
|
|
554
569
|
):
|
|
555
570
|
how_many_decimals = int(format_spec[1:-1])
|
|
571
|
+
return f"{get_decimal_string_operation(self, Var.create(how_many_decimals), Var.create(separator))}"
|
|
572
|
+
|
|
573
|
+
if not format_spec and separator:
|
|
556
574
|
return (
|
|
557
|
-
f"{
|
|
575
|
+
f"{get_decimal_string_separator_operation(self, Var.create(separator))}"
|
|
558
576
|
)
|
|
559
577
|
|
|
560
578
|
if format_spec:
|
|
561
579
|
raise VarValueError(
|
|
562
580
|
(
|
|
563
|
-
"Unknown format code '{}' for object of type 'NumberVar'. It is only supported to use '.f' for float numbers."
|
|
581
|
+
"Unknown format code '{}' for object of type 'NumberVar'. It is only supported to use ',', '_', and '.f' for float numbers."
|
|
564
582
|
"If possible, use computed variables instead: https://reflex.dev/docs/vars/computed-vars/"
|
|
565
583
|
).format(format_spec)
|
|
566
584
|
)
|
|
@@ -568,23 +586,6 @@ class NumberVar(Var[NUMBER_T], python_types=(int, float)):
|
|
|
568
586
|
return super().__format__(format_spec)
|
|
569
587
|
|
|
570
588
|
|
|
571
|
-
@var_operation
|
|
572
|
-
def get_decimal_string_operation(value: NumberVar, decimals: NumberVar):
|
|
573
|
-
"""Get the decimal string of the number.
|
|
574
|
-
|
|
575
|
-
Args:
|
|
576
|
-
value: The number.
|
|
577
|
-
decimals: The number of decimals.
|
|
578
|
-
|
|
579
|
-
Returns:
|
|
580
|
-
The decimal string of the number.
|
|
581
|
-
"""
|
|
582
|
-
return var_operation_return(
|
|
583
|
-
js_expression=f"({value}.toFixed({decimals}))",
|
|
584
|
-
var_type=str,
|
|
585
|
-
)
|
|
586
|
-
|
|
587
|
-
|
|
588
589
|
def binary_number_operation(
|
|
589
590
|
func: Callable[[NumberVar, NumberVar], str],
|
|
590
591
|
) -> Callable[[number_types, number_types], NumberVar]:
|
reflex/vars/object.py
CHANGED
|
@@ -202,6 +202,12 @@ class ObjectVar(Var[OBJECT_TYPE], python_types=Mapping):
|
|
|
202
202
|
key: Var | Any,
|
|
203
203
|
) -> ObjectVar[Mapping[OTHER_KEY_TYPE, VALUE_TYPE]]: ...
|
|
204
204
|
|
|
205
|
+
@overload
|
|
206
|
+
def __getitem__(
|
|
207
|
+
self: ObjectVar[Mapping[Any, VALUE_TYPE]],
|
|
208
|
+
key: Var | Any,
|
|
209
|
+
) -> Var[VALUE_TYPE]: ...
|
|
210
|
+
|
|
205
211
|
def __getitem__(self, key: Var | Any) -> Var:
|
|
206
212
|
"""Get an item from the object.
|
|
207
213
|
|
|
@@ -221,6 +227,29 @@ class ObjectVar(Var[OBJECT_TYPE], python_types=Mapping):
|
|
|
221
227
|
return self.__getattr__(key)
|
|
222
228
|
return ObjectItemOperation.create(self, key).guess_type()
|
|
223
229
|
|
|
230
|
+
def get(self, key: Var | Any, default: Var | Any | None = None) -> Var:
|
|
231
|
+
"""Get an item from the object.
|
|
232
|
+
|
|
233
|
+
Args:
|
|
234
|
+
key: The key to get from the object.
|
|
235
|
+
default: The default value if the key is not found.
|
|
236
|
+
|
|
237
|
+
Returns:
|
|
238
|
+
The item from the object.
|
|
239
|
+
"""
|
|
240
|
+
from reflex.components.core.cond import cond
|
|
241
|
+
|
|
242
|
+
if default is None:
|
|
243
|
+
default = Var.create(None)
|
|
244
|
+
|
|
245
|
+
value = self.__getitem__(key) # pyright: ignore[reportUnknownVariableType,reportAttributeAccessIssue,reportUnknownMemberType]
|
|
246
|
+
|
|
247
|
+
return cond( # pyright: ignore[reportUnknownVariableType]
|
|
248
|
+
value,
|
|
249
|
+
value,
|
|
250
|
+
default,
|
|
251
|
+
)
|
|
252
|
+
|
|
224
253
|
# NoReturn is used here to catch when key value is Any
|
|
225
254
|
@overload
|
|
226
255
|
def __getattr__( # pyright: ignore [reportOverlappingOverload]
|
reflex/vars/sequence.py
CHANGED
|
@@ -1202,6 +1202,43 @@ def string_replace_operation(
|
|
|
1202
1202
|
)
|
|
1203
1203
|
|
|
1204
1204
|
|
|
1205
|
+
@var_operation
|
|
1206
|
+
def get_decimal_string_separator_operation(value: NumberVar, separator: StringVar):
|
|
1207
|
+
"""Get the decimal string separator.
|
|
1208
|
+
|
|
1209
|
+
Args:
|
|
1210
|
+
value: The number.
|
|
1211
|
+
separator: The separator.
|
|
1212
|
+
|
|
1213
|
+
Returns:
|
|
1214
|
+
The decimal string separator.
|
|
1215
|
+
"""
|
|
1216
|
+
return var_operation_return(
|
|
1217
|
+
js_expression=f"({value}.toLocaleString('en-US').replaceAll(',', {separator}))",
|
|
1218
|
+
var_type=str,
|
|
1219
|
+
)
|
|
1220
|
+
|
|
1221
|
+
|
|
1222
|
+
@var_operation
|
|
1223
|
+
def get_decimal_string_operation(
|
|
1224
|
+
value: NumberVar, decimals: NumberVar, separator: StringVar
|
|
1225
|
+
):
|
|
1226
|
+
"""Get the decimal string of the number.
|
|
1227
|
+
|
|
1228
|
+
Args:
|
|
1229
|
+
value: The number.
|
|
1230
|
+
decimals: The number of decimals.
|
|
1231
|
+
separator: The separator.
|
|
1232
|
+
|
|
1233
|
+
Returns:
|
|
1234
|
+
The decimal string of the number.
|
|
1235
|
+
"""
|
|
1236
|
+
return var_operation_return(
|
|
1237
|
+
js_expression=f"({value}.toLocaleString('en-US', ((decimals) => ({{minimumFractionDigits: decimals, maximumFractionDigits: decimals}}))({decimals})).replaceAll(',', {separator}))",
|
|
1238
|
+
var_type=str,
|
|
1239
|
+
)
|
|
1240
|
+
|
|
1241
|
+
|
|
1205
1242
|
# Compile regex for finding reflex var tags.
|
|
1206
1243
|
_decode_var_pattern_re = (
|
|
1207
1244
|
rf"{constants.REFLEX_VAR_OPENING_TAG}(.*?){constants.REFLEX_VAR_CLOSING_TAG}"
|
|
@@ -1,54 +1,47 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: reflex
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.3a1
|
|
4
4
|
Summary: Web apps in pure Python.
|
|
5
|
-
License: Apache-2.0
|
|
6
5
|
Keywords: web,framework
|
|
7
|
-
Author:
|
|
8
|
-
Author-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Requires-Dist:
|
|
18
|
-
Requires-Dist:
|
|
19
|
-
Requires-Dist:
|
|
20
|
-
Requires-Dist:
|
|
21
|
-
Requires-Dist:
|
|
22
|
-
Requires-Dist:
|
|
23
|
-
Requires-Dist:
|
|
24
|
-
Requires-Dist:
|
|
25
|
-
Requires-Dist:
|
|
26
|
-
Requires-Dist:
|
|
27
|
-
Requires-Dist:
|
|
28
|
-
Requires-Dist:
|
|
29
|
-
Requires-Dist:
|
|
30
|
-
Requires-Dist:
|
|
31
|
-
Requires-Dist: python-
|
|
32
|
-
Requires-Dist:
|
|
33
|
-
Requires-Dist:
|
|
34
|
-
Requires-Dist: reflex-hosting-cli
|
|
35
|
-
Requires-Dist:
|
|
36
|
-
Requires-Dist:
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
Requires-Dist:
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist: twine
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist: wheel (>=0.42.0,<1.0)
|
|
45
|
-
Requires-Dist: wrapt (>=1.17.0,<2.0)
|
|
46
|
-
Project-URL: Documentation, https://reflex.dev/docs/getting-started/introduction
|
|
47
|
-
Project-URL: Homepage, https://reflex.dev
|
|
48
|
-
Project-URL: Repository, https://github.com/reflex-dev/reflex
|
|
6
|
+
Author: Elijah Ahianyo
|
|
7
|
+
Author-Email: Nikhil Rao <nikhil@reflex.dev>, Alek Petuskey <alek@reflex.dev>, Masen Furer <masen@reflex.dev>, =?utf-8?q?Thomas_Brand=C3=A9ho?= <thomas@reflex.dev>, Khaleel Al-Adhami <khaleel@reflex.dev>
|
|
8
|
+
Maintainer-Email: Masen Furer <masen@reflex.dev>, =?utf-8?q?Thomas_Brand=C3=A9ho?= <thomas@reflex.dev>, Khaleel Al-Adhami <khaleel@reflex.dev>
|
|
9
|
+
License-Expression: Apache-2.0
|
|
10
|
+
Project-URL: homepage, https://reflex.dev
|
|
11
|
+
Project-URL: repository, https://github.com/reflex-dev/reflex
|
|
12
|
+
Project-URL: documentation, https://reflex.dev/docs/getting-started/introduction
|
|
13
|
+
Requires-Python: <4.0,>=3.10
|
|
14
|
+
Requires-Dist: fastapi!=0.111.0,!=0.111.1,>=0.96.0
|
|
15
|
+
Requires-Dist: gunicorn<24.0,>=20.1.0
|
|
16
|
+
Requires-Dist: jinja2<4.0,>=3.1.2
|
|
17
|
+
Requires-Dist: psutil<8.0,>=5.9.4
|
|
18
|
+
Requires-Dist: pydantic<3.0,>=1.10.21
|
|
19
|
+
Requires-Dist: python-multipart<0.1,>=0.0.5
|
|
20
|
+
Requires-Dist: python-socketio<6.0,>=5.7.0
|
|
21
|
+
Requires-Dist: redis<6.0,>=4.3.5
|
|
22
|
+
Requires-Dist: rich<14.0,>=13.0.0
|
|
23
|
+
Requires-Dist: sqlmodel<0.1,>=0.0.14
|
|
24
|
+
Requires-Dist: typer<1.0,>=0.15.1
|
|
25
|
+
Requires-Dist: uvicorn>=0.20.0
|
|
26
|
+
Requires-Dist: starlette-admin<1.0,>=0.11.0
|
|
27
|
+
Requires-Dist: alembic<2.0,>=1.11.1
|
|
28
|
+
Requires-Dist: platformdirs<5.0,>=3.10.0
|
|
29
|
+
Requires-Dist: distro<2.0,>=1.8.0; platform_system == "Linux"
|
|
30
|
+
Requires-Dist: python-engineio!=4.6.0
|
|
31
|
+
Requires-Dist: wrapt<2.0,>=1.17.0
|
|
32
|
+
Requires-Dist: packaging<25.0,>=23.1
|
|
33
|
+
Requires-Dist: reflex-hosting-cli>=0.1.29
|
|
34
|
+
Requires-Dist: charset-normalizer<4.0,>=3.3.2
|
|
35
|
+
Requires-Dist: wheel<1.0,>=0.42.0
|
|
36
|
+
Requires-Dist: build<2.0,>=1.0.3
|
|
37
|
+
Requires-Dist: setuptools>=75.0
|
|
38
|
+
Requires-Dist: httpx<1.0,>=0.25.1
|
|
39
|
+
Requires-Dist: twine<7.0,>=4.0.0
|
|
40
|
+
Requires-Dist: tomlkit<1.0,>=0.12.4
|
|
41
|
+
Requires-Dist: lazy_loader>=0.4
|
|
42
|
+
Requires-Dist: typing_extensions>=4.6.0
|
|
49
43
|
Description-Content-Type: text/markdown
|
|
50
44
|
|
|
51
|
-
|
|
52
45
|
<div align="center">
|
|
53
46
|
<img src="https://raw.githubusercontent.com/reflex-dev/reflex/main/docs/images/reflex_dark.svg#gh-light-mode-only" alt="Reflex Logo" width="300px">
|
|
54
47
|
<img src="https://raw.githubusercontent.com/reflex-dev/reflex/main/docs/images/reflex_light.svg#gh-dark-mode-only" alt="Reflex Logo" width="300px">
|
|
@@ -56,10 +49,12 @@ Description-Content-Type: text/markdown
|
|
|
56
49
|
<hr>
|
|
57
50
|
|
|
58
51
|
### **✨ Performant, customizable web apps in pure Python. Deploy in seconds. ✨**
|
|
52
|
+
|
|
59
53
|
[](https://badge.fury.io/py/reflex)
|
|
60
54
|

|
|
61
55
|
[](https://reflex.dev/docs/getting-started/introduction)
|
|
62
56
|
[](https://discord.gg/T5WSbC2YtQ)
|
|
57
|
+
|
|
63
58
|
</div>
|
|
64
59
|
|
|
65
60
|
---
|
|
@@ -73,9 +68,10 @@ Description-Content-Type: text/markdown
|
|
|
73
68
|
Reflex is a library to build full-stack web apps in pure Python.
|
|
74
69
|
|
|
75
70
|
Key features:
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
71
|
+
|
|
72
|
+
- **Pure Python** - Write your app's frontend and backend all in Python, no need to learn Javascript.
|
|
73
|
+
- **Full Flexibility** - Reflex is easy to get started with, but can also scale to complex apps.
|
|
74
|
+
- **Deploy Instantly** - After building, deploy your app with a [single command](https://reflex.dev/docs/hosting/deploy-quick-start/) or host it on your own server.
|
|
79
75
|
|
|
80
76
|
See our [architecture page](https://reflex.dev/blog/2024-03-21-reflex-architecture/#the-reflex-architecture) to learn how Reflex works under the hood.
|
|
81
77
|
|
|
@@ -99,7 +95,7 @@ cd my_app_name
|
|
|
99
95
|
reflex init
|
|
100
96
|
```
|
|
101
97
|
|
|
102
|
-
This command initializes a template app in your new directory.
|
|
98
|
+
This command initializes a template app in your new directory.
|
|
103
99
|
|
|
104
100
|
You can run this app in development mode:
|
|
105
101
|
|
|
@@ -111,7 +107,6 @@ You should see your app running at http://localhost:3000.
|
|
|
111
107
|
|
|
112
108
|
Now you can modify the source code in `my_app_name/my_app_name.py`. Reflex has fast refreshes so you can see your changes instantly when you save your code.
|
|
113
109
|
|
|
114
|
-
|
|
115
110
|
## 🫧 Example App
|
|
116
111
|
|
|
117
112
|
Let's go over an example: creating an image generation UI around [DALL·E](https://platform.openai.com/docs/guides/images/image-generation?context=node). For simplicity, we just call the [OpenAI API](https://platform.openai.com/docs/api-reference/authentication), but you could replace this with an ML model run locally.
|
|
@@ -126,8 +121,6 @@ Let's go over an example: creating an image generation UI around [DALL·E](https
|
|
|
126
121
|
|
|
127
122
|
Here is the complete code to create this. This is all done in one Python file!
|
|
128
123
|
|
|
129
|
-
|
|
130
|
-
|
|
131
124
|
```python
|
|
132
125
|
import reflex as rx
|
|
133
126
|
import openai
|
|
@@ -167,7 +160,7 @@ def index():
|
|
|
167
160
|
width="25em",
|
|
168
161
|
),
|
|
169
162
|
rx.button(
|
|
170
|
-
"Generate Image",
|
|
163
|
+
"Generate Image",
|
|
171
164
|
on_click=State.get_image,
|
|
172
165
|
width="25em",
|
|
173
166
|
loading=State.processing
|
|
@@ -187,17 +180,12 @@ app = rx.App()
|
|
|
187
180
|
app.add_page(index, title="Reflex:DALL-E")
|
|
188
181
|
```
|
|
189
182
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
183
|
## Let's break this down.
|
|
195
184
|
|
|
196
185
|
<div align="center">
|
|
197
186
|
<img src="docs/images/dalle_colored_code_example.png" alt="Explaining the differences between backend and frontend parts of the DALL-E app." width="900" />
|
|
198
187
|
</div>
|
|
199
188
|
|
|
200
|
-
|
|
201
189
|
### **Reflex UI**
|
|
202
190
|
|
|
203
191
|
Let's start with the UI.
|
|
@@ -275,11 +263,10 @@ You can create a multi-page app by adding more pages.
|
|
|
275
263
|
|
|
276
264
|
<div align="center">
|
|
277
265
|
|
|
278
|
-
📑 [Docs](https://reflex.dev/docs/getting-started/introduction) |
|
|
266
|
+
📑 [Docs](https://reflex.dev/docs/getting-started/introduction) | 🗞️ [Blog](https://reflex.dev/blog) | 📱 [Component Library](https://reflex.dev/docs/library) | 🖼️ [Templates](https://reflex.dev/templates/) | 🛸 [Deployment](https://reflex.dev/docs/hosting/deploy-quick-start)
|
|
279
267
|
|
|
280
268
|
</div>
|
|
281
269
|
|
|
282
|
-
|
|
283
270
|
## ✅ Status
|
|
284
271
|
|
|
285
272
|
Reflex launched in December 2022 with the name Pynecone.
|
|
@@ -292,14 +279,14 @@ Reflex has new releases and features coming every other week! Make sure to :star
|
|
|
292
279
|
|
|
293
280
|
We welcome contributions of any size! Below are some good ways to get started in the Reflex community.
|
|
294
281
|
|
|
295
|
-
-
|
|
296
|
-
-
|
|
297
|
-
-
|
|
282
|
+
- **Join Our Discord**: Our [Discord](https://discord.gg/T5WSbC2YtQ) is the best place to get help on your Reflex project and to discuss how you can contribute.
|
|
283
|
+
- **GitHub Discussions**: A great way to talk about features you want added or things that are confusing/need clarification.
|
|
284
|
+
- **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.
|
|
298
285
|
|
|
299
286
|
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)
|
|
300
287
|
|
|
301
|
-
|
|
302
288
|
## All Thanks To Our Contributors:
|
|
289
|
+
|
|
303
290
|
<a href="https://github.com/reflex-dev/reflex/graphs/contributors">
|
|
304
291
|
<img src="https://contrib.rocks/image?repo=reflex-dev/reflex" />
|
|
305
292
|
</a>
|
|
@@ -307,4 +294,3 @@ We are actively looking for contributors, no matter your skill level or experien
|
|
|
307
294
|
## License
|
|
308
295
|
|
|
309
296
|
Reflex is open-source and licensed under the [Apache License 2.0](LICENSE).
|
|
310
|
-
|
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
benchmarks/__init__.py,sha256=EPwQDZ_qYgf5GFMdYQGHWDbpkLvR1OdQiEvPkVByYpM,89
|
|
2
|
+
benchmarks/benchmark_compile_times.py,sha256=DA0MuUVF2SGXun1cIO6So_B7FE78YZepJkq2JUvHHK4,4500
|
|
3
|
+
benchmarks/benchmark_imports.py,sha256=rC9Ke0n4h9lty3GEfLF0nODZpbMpiiAPqWVkDLATdHk,3733
|
|
4
|
+
benchmarks/benchmark_lighthouse.py,sha256=EdoTJ9oOyWTalj3OZn5C_-J76kR3Tedw_WjDxzM52F8,2347
|
|
5
|
+
benchmarks/benchmark_package_size.py,sha256=118Np7CIX-T2lG5OGFISm_KPfrni-pMRz3aFfrFUdkw,3824
|
|
6
|
+
benchmarks/benchmark_web_size.py,sha256=KG3rWk8ARg6K7eqtwg5qTIjgBDev0zG3rPz_MlMAqLo,2972
|
|
7
|
+
benchmarks/conftest.py,sha256=ekR_xO0FL2c9W_zLCTMRn35uPjdqPma0IbIcSn2WKPU,487
|
|
8
|
+
benchmarks/lighthouse.sh,sha256=fbOaaTOvE69Z23nEhA4od-v_WehyLvtI1FJfPjYdPPk,2139
|
|
9
|
+
benchmarks/utils.py,sha256=NTI9WzkTvr4lE20GKh-DZ30Wc0Xqs-KN2Nb5og2dPzQ,1968
|
|
10
|
+
reflex-0.7.3a1.dist-info/METADATA,sha256=FjBH8MzNPQbWACgFY9KRakcLeNqYjD8A89kfM08jkeM,11736
|
|
11
|
+
reflex-0.7.3a1.dist-info/WHEEL,sha256=thaaA2w1JzcGC48WYufAs8nrYZjJm8LqNfnXFOFyCC4,90
|
|
12
|
+
reflex-0.7.3a1.dist-info/entry_points.txt,sha256=XfumVjOeM8bxbPMTjy5CvSe65xnMKHCBQ4MxWWHCidM,61
|
|
13
|
+
reflex-0.7.3a1.dist-info/licenses/LICENSE,sha256=dw3zLrp9f5ObD7kqS32vWfhcImfO52PMmRqvtxq_YEE,11358
|
|
1
14
|
reflex/.templates/apps/blank/assets/favicon.ico,sha256=baxxgDAQ2V4-G5Q4S2yK5uUJTUGkv-AOWBQ0xd6myUo,4286
|
|
2
15
|
reflex/.templates/apps/blank/code/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
16
|
reflex/.templates/apps/blank/code/blank.py,sha256=oKnsBBZM1-_RFAuwGKgfiCzgsrHlN_m_XP0-Fpnld7k,926
|
|
@@ -12,7 +25,7 @@ reflex/.templates/jinja/web/pages/_app.js.jinja2,sha256=s0pSHZAZB9SUI3PabTB8uB4I
|
|
|
12
25
|
reflex/.templates/jinja/web/pages/_document.js.jinja2,sha256=E2r3MWp-gimAa6DdRs9ErQpPEyjS_yV5fdid_wdOOlA,182
|
|
13
26
|
reflex/.templates/jinja/web/pages/base_page.js.jinja2,sha256=-Jykv29ZqzsQyyRe_iR2gUD5ac-X5RhDrGs0-diOMOA,400
|
|
14
27
|
reflex/.templates/jinja/web/pages/component.js.jinja2,sha256=1Pui62uSL7LYA7FXZrh9ZmhKH8vHYu663eR134hhsAY,86
|
|
15
|
-
reflex/.templates/jinja/web/pages/custom_component.js.jinja2,sha256=
|
|
28
|
+
reflex/.templates/jinja/web/pages/custom_component.js.jinja2,sha256=xUOfUwREPp4h2kozr6mEqSAASnNLzC9b9XHCXVsUQjg,485
|
|
16
29
|
reflex/.templates/jinja/web/pages/index.js.jinja2,sha256=1Vh4XCF8-ekVgiqwZzO7ekcY-tTKmS8FUjPrmKyhJJo,376
|
|
17
30
|
reflex/.templates/jinja/web/pages/macros.js.jinja2,sha256=RtMZ6eufmMrHghNDMKpueSAhd-znKjgBbJXAAHFc7vU,901
|
|
18
31
|
reflex/.templates/jinja/web/pages/stateful_component.js.jinja2,sha256=E_CwG5o4pKteF1-Qjltkx9-8QGNSDoB-HvFgmgA4CJA,337
|
|
@@ -23,19 +36,19 @@ reflex/.templates/jinja/web/tailwind.config.js.jinja2,sha256=uZMIvtL94OZh6h8zsdu
|
|
|
23
36
|
reflex/.templates/jinja/web/utils/context.js.jinja2,sha256=-fAc0G1h_GJ-geT59KzdtgE1wfpt3ouXBA8ySWjcRIw,3911
|
|
24
37
|
reflex/.templates/jinja/web/utils/theme.js.jinja2,sha256=OSpBMh0Z9tTeqb10js4ZtnE9s1RV4gJfE8629csST8M,26
|
|
25
38
|
reflex/.templates/web/.gitignore,sha256=3tT0CtVkCL09D_Y3Hd4myUgGcBuESeavCa0WHU5ifJ4,417
|
|
26
|
-
reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js,sha256=
|
|
27
|
-
reflex/.templates/web/components/shiki/code.js,sha256=
|
|
39
|
+
reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js,sha256=Xx_SdWsxABz3JzWDKxuOkuq87GEXK7DD5sqahPFbEzw,1621
|
|
40
|
+
reflex/.templates/web/components/shiki/code.js,sha256=UO0hQnm2w1j2VMgj46cnplO6ZLK3p3qhcxp6irjZBxQ,1116
|
|
28
41
|
reflex/.templates/web/jsconfig.json,sha256=rhQZZRBYxBWclFYTeU6UakzbGveM4qyRQZUpEAVhyqY,118
|
|
29
42
|
reflex/.templates/web/next.config.js,sha256=ZpGOqo9wHEbt0S08G70VfUNUjFe79UXo7Cde8X8V10E,118
|
|
30
|
-
reflex/.templates/web/postcss.config.js,sha256=
|
|
43
|
+
reflex/.templates/web/postcss.config.js,sha256=pWczoUW-Y0gYUuHAW4ZK0hQNWTcMC2UGu2i-sQ-YqUs,109
|
|
31
44
|
reflex/.templates/web/styles/tailwind.css,sha256=wGOoICTy1G0e5bWZ4LYOVgRa3ZT7M44tC4g6CKh6ZPo,112
|
|
32
|
-
reflex/.templates/web/utils/client_side_routing.js,sha256=
|
|
33
|
-
reflex/.templates/web/utils/helpers/dataeditor.js,sha256=
|
|
45
|
+
reflex/.templates/web/utils/client_side_routing.js,sha256=cOu4wUHDQtGl1yo5goxljZ94SLZLyr9R3S9Rehcvjio,1475
|
|
46
|
+
reflex/.templates/web/utils/helpers/dataeditor.js,sha256=pG6MgsHuStDR7-qPipzfiK32j9bKDBa-4hZ0JSUo4JM,1623
|
|
34
47
|
reflex/.templates/web/utils/helpers/debounce.js,sha256=xGhtTRtS_xIcaeqnYVvYJNseLgQVk-DW-eFiHJYO9As,528
|
|
35
48
|
reflex/.templates/web/utils/helpers/paste.js,sha256=ef30HsR83jRzzvZnl8yV79yqFP8TC_u8SlN99cCS_OM,1799
|
|
36
|
-
reflex/.templates/web/utils/helpers/range.js,sha256=
|
|
49
|
+
reflex/.templates/web/utils/helpers/range.js,sha256=Bjr7Ex1Mghpsopjfrcp__IVFw8F8AsMiP-0nE20ZZwk,1091
|
|
37
50
|
reflex/.templates/web/utils/helpers/throttle.js,sha256=qxeyaEojaTeX36FPGftzVWrzDsRQU4iqg3U9RJz9Vj4,566
|
|
38
|
-
reflex/.templates/web/utils/state.js,sha256=
|
|
51
|
+
reflex/.templates/web/utils/state.js,sha256=4qK7Xshvif92_LjfiBBCKymPNhfa5O7syFpvZ4oDe1U,30529
|
|
39
52
|
reflex/__init__.py,sha256=64HB9b6MKesl3Yv6aZMsozdMKKpgnxirKk-aeN45UYY,10341
|
|
40
53
|
reflex/__init__.pyi,sha256=j4ZkO-mKKw5dFBhJVbaOg7AlncO-JCckV2cHENPiLG0,11303
|
|
41
54
|
reflex/__main__.py,sha256=6cVrGEyT3j3tEvlEVUatpaYfbB5EF3UVY-6vc_Z7-hw,108
|
|
@@ -43,13 +56,13 @@ reflex/admin.py,sha256=wu_vYqB0rU2njYBJSI0XZgVEkAFVZNQNUkUUXrlFbZc,343
|
|
|
43
56
|
reflex/app.py,sha256=YQBe77CIgT_xTpTM-H3TIbwHUUYlHQ4UGA-K4lnzG5k,68739
|
|
44
57
|
reflex/app_mixins/__init__.py,sha256=Oegz3-gZLP9p2OAN5ALNbsgxuNQfS6lGZgQA8cc-9mQ,137
|
|
45
58
|
reflex/app_mixins/lifespan.py,sha256=fwtaa9NnyENdDa8_RUHUsT8L9qnZKxcpL-mEGLTGldo,3280
|
|
46
|
-
reflex/app_mixins/middleware.py,sha256=
|
|
59
|
+
reflex/app_mixins/middleware.py,sha256=oaCO-SJmyRDixX8M9D4SYZ_CeMn2KhU7Pe3o280EEUI,3328
|
|
47
60
|
reflex/app_mixins/mixin.py,sha256=si0Pa0U1EtJc-a6iZntqU9B7_NrPILwrGFxk9mKHBCE,317
|
|
48
61
|
reflex/app_module_for_backend.py,sha256=iuEYcJNRai59vReNUIZgixtYlFHYcYp_LNFB9DPQnKs,1134
|
|
49
62
|
reflex/assets.py,sha256=PLTKAMYPKMZq8eWXKX8uco6NZ9IiPGWal0bOPLUmU7k,3364
|
|
50
63
|
reflex/base.py,sha256=T1sY7SJJOpTsOveEiFxp-K39EoIQtRLgqdFZhsdM0DE,3976
|
|
51
64
|
reflex/compiler/__init__.py,sha256=r8jqmDSFf09iV2lHlNhfc9XrTLjNxfDNwPYlxS4cmHE,27
|
|
52
|
-
reflex/compiler/compiler.py,sha256=
|
|
65
|
+
reflex/compiler/compiler.py,sha256=S7v2t5um_TrkAEP48LUjcZ9oQPd1AGQtPcANc7LP4r4,23789
|
|
53
66
|
reflex/compiler/templates.py,sha256=NX3YUMVGGyDsy2JuDv-AmklMM0pKJHLPsIpdqamgqRQ,5854
|
|
54
67
|
reflex/compiler/utils.py,sha256=w8KcAXneXQxPOSei7BvAfA9MzR4jQWjDlxm8ahN1UM0,16083
|
|
55
68
|
reflex/components/__init__.py,sha256=zbIXThv1WPI0FdIGf9G9RAmGoCRoGy7nHcSZ8K5D5bA,624
|
|
@@ -82,7 +95,7 @@ reflex/components/core/__init__.py,sha256=1Z5MUA5wRPi4w7TXzRFyCfxbG8lUMqs29buWHI
|
|
|
82
95
|
reflex/components/core/__init__.pyi,sha256=HDZSx-RIBpryukJo8ECdxSnZwpThP0IR2LV66h1XyJ4,2046
|
|
83
96
|
reflex/components/core/auto_scroll.py,sha256=3jtFUqMUM1R_YyxWjbNVLiLktw6HHp50EzIFTkFtgto,3616
|
|
84
97
|
reflex/components/core/auto_scroll.pyi,sha256=4oTNr6ixo5D0rzmIQVXGCEUpHSSa7KdrkWpF1ffDdbs,8687
|
|
85
|
-
reflex/components/core/banner.py,sha256=
|
|
98
|
+
reflex/components/core/banner.py,sha256=OB8HlnytknFQotVoBNsbCHxE6_3W96JCCtvxS6R3QKU,18473
|
|
86
99
|
reflex/components/core/banner.pyi,sha256=owB8dbiHh2YMeJsggCM5zQ3kpfIcGXoxTWQdscakpwQ,24586
|
|
87
100
|
reflex/components/core/breakpoints.py,sha256=fDtfDoZqJnAOnBvpp0640FCKbuMyC9dVoSf0-RE7n6Y,2756
|
|
88
101
|
reflex/components/core/client_side_routing.py,sha256=z2WD2jT9U-xDOyHTLjCs0mf5HkwSEJpMmUeXzl4S7ZU,1897
|
|
@@ -93,7 +106,7 @@ reflex/components/core/colors.py,sha256=-hzVGLEq3TiqroqzMi_YzGBCPXMvkNsen3pS_NzI
|
|
|
93
106
|
reflex/components/core/cond.py,sha256=Pa9kbunY5Gq000yPXxMex0zsUeAiffDsUrqSIFVLoqs,5372
|
|
94
107
|
reflex/components/core/debounce.py,sha256=qZsnu-7xfxz3NJS4-UnA_2YQz2P8SznJyuwZz98nEwE,4961
|
|
95
108
|
reflex/components/core/debounce.pyi,sha256=QjyPCR1eVGxTdDFnFPD9Ir9QbJLk-2xU8f-hSMZHcfU,2883
|
|
96
|
-
reflex/components/core/foreach.py,sha256=
|
|
109
|
+
reflex/components/core/foreach.py,sha256=s2wgxcgEBc_8PfTKolDjbRz1pgdKZCdq8tqk87t3QVQ,5827
|
|
97
110
|
reflex/components/core/html.py,sha256=RnFLDLSNqNz3ypSEH5CRV3YcjGzuZ33ok2qSYd9LzQQ,1299
|
|
98
111
|
reflex/components/core/html.pyi,sha256=-v5BiB_x-pqNUF5b-Ewil_UmK0Gz5BgiX1OPYE6o9qE,8742
|
|
99
112
|
reflex/components/core/layout/__init__.py,sha256=znldZaj_NGt8qCZDG70GMwjMTskcvCf_2N_EjCAHwdc,30
|
|
@@ -109,28 +122,28 @@ reflex/components/datadisplay/code.py,sha256=5tO--QgPJj3-hBNjQ3SGNgLYpjBwTwtOUnW
|
|
|
109
122
|
reflex/components/datadisplay/code.pyi,sha256=z3IV6Jevp0vjr8jduIHFE9dsELCnuKj_Vs9a_l3_l2w,41033
|
|
110
123
|
reflex/components/datadisplay/dataeditor.py,sha256=WVCesC_xdg7k765ueN0ZetMMpbt-UPEf0nfn3FX-l2w,13519
|
|
111
124
|
reflex/components/datadisplay/dataeditor.pyi,sha256=Q85OI-lq1iIbcQv5AEQD2SZc5Qh0BvbHjOt-80lEIKY,12356
|
|
112
|
-
reflex/components/datadisplay/logo.py,sha256=
|
|
125
|
+
reflex/components/datadisplay/logo.py,sha256=5YeXXIg19jJdY-KMP1_WJNmrh0oVSy4axy8Pbp275es,1981
|
|
113
126
|
reflex/components/datadisplay/shiki_code_block.py,sha256=H1sJ26aqUSO6_RQRo5DeFPGCSaKdN0dgpCFowy3bcUY,23740
|
|
114
127
|
reflex/components/datadisplay/shiki_code_block.pyi,sha256=fW2igOLVSfB4qaaOXQJMo9dyJbH1pfUESd7yBec9Tak,56361
|
|
115
128
|
reflex/components/dynamic.py,sha256=W-jNbNzll1w6YoMcoF-LMjHqP4UtoQHPV-NamXs-eAY,7220
|
|
116
129
|
reflex/components/el/__init__.py,sha256=nfIjf_cyieEmxptKjA6wRjoongswXv4X3n6vDmsdarI,416
|
|
117
|
-
reflex/components/el/__init__.pyi,sha256=
|
|
130
|
+
reflex/components/el/__init__.pyi,sha256=hp8dLScFQR0avzEAKrB_GKk8iFty184mLcVij6IQ3Vc,10894
|
|
118
131
|
reflex/components/el/constants/__init__.py,sha256=9h2hdnOSltQLDEM6w1nGmv1B8Bf0tMquTCi5RhvBT6c,113
|
|
119
132
|
reflex/components/el/constants/html.py,sha256=hIebFwWritMmd3VCMYBNg0k_2UM1QDIhT_Q-EQsCWEA,7175
|
|
120
133
|
reflex/components/el/constants/react.py,sha256=f1-Vo8iWn2jSrR7vy-UwGbGRvw88UUZnbb3Rb56MSS4,15554
|
|
121
134
|
reflex/components/el/constants/reflex.py,sha256=7ChVeOvzjovZLHa-4vjWEGDqHsefV3tNsa8TKHWFaXM,1697
|
|
122
135
|
reflex/components/el/element.py,sha256=CFUa_6Dz4WsIdP11MzqlW9GBDhJcSU6lJSmWA9zap0c,501
|
|
123
136
|
reflex/components/el/element.pyi,sha256=pP5jMTGjYm06d8ZaQGeQazx5PuFLLlBDXcZB7cC7kp8,2166
|
|
124
|
-
reflex/components/el/elements/__init__.py,sha256=
|
|
125
|
-
reflex/components/el/elements/__init__.pyi,sha256=
|
|
137
|
+
reflex/components/el/elements/__init__.py,sha256=tHmTJKW02etckBiNqKwu7y_OwqFFSOscKEtzfhOygCM,2697
|
|
138
|
+
reflex/components/el/elements/__init__.pyi,sha256=1rtYb-IgDJ6sbVuC83V_9gS5d6oSsFmVTerlsPCdfiw,11075
|
|
126
139
|
reflex/components/el/elements/base.py,sha256=4jnwyCQUHvWcIfwiIWVCiIC_jbwZlkAiOgx73t7tdw8,3075
|
|
127
140
|
reflex/components/el/elements/base.pyi,sha256=lCvreiB4vd87UWsmmZqEvUe4Bn7XoK7cqmyZbRKVpOU,9872
|
|
128
141
|
reflex/components/el/elements/forms.py,sha256=Uv7Pr7iblKuFdJ0d21wA5sOi2Z1uFPY522oXfc4N6JQ,20142
|
|
129
142
|
reflex/components/el/elements/forms.pyi,sha256=NJYmmpd8WeU2S80DyHQWJyWhApeH7SgGAvGntDOoBec,124663
|
|
130
143
|
reflex/components/el/elements/inline.py,sha256=GxOYtkNm1OfdMeqNvrFY_AUm-SVdc4Zg4JdSf3V3S6g,4064
|
|
131
144
|
reflex/components/el/elements/inline.pyi,sha256=3THlwfna_Jf75fxgxvLuUgsAiNdNtDobf8v_jEz0RSw,228048
|
|
132
|
-
reflex/components/el/elements/media.py,sha256=
|
|
133
|
-
reflex/components/el/elements/media.pyi,sha256=
|
|
145
|
+
reflex/components/el/elements/media.py,sha256=n84bNz3KO4TkaCi7eFierpVkcDEB9uYTk5oBKl-s1GI,13064
|
|
146
|
+
reflex/components/el/elements/media.pyi,sha256=tclq60p7WnK-YX2gQH2YcPYTKO8rMu1dAUh2sA2E9LU,218852
|
|
134
147
|
reflex/components/el/elements/metadata.py,sha256=uc1qV25pD1J3ODeewBOEYqwQHMvsjRGUqdPX-YG__fg,2288
|
|
135
148
|
reflex/components/el/elements/metadata.pyi,sha256=pWpQu8ZtkWJVMth7SoCeAsd_ugppMm7Dnmgp7LWjEjs,38657
|
|
136
149
|
reflex/components/el/elements/other.py,sha256=WON35QviPNYsBeLQTNbeN7a6m6ixLYIVa4WsDzo9YBY,1378
|
|
@@ -148,8 +161,8 @@ reflex/components/gridjs/datatable.py,sha256=Q2P2lFbPEujVa6bfetV0w4Oc81APX9YgVKG
|
|
|
148
161
|
reflex/components/gridjs/datatable.pyi,sha256=zVZTSTTQJY5jjrCTnyah3XM6aySyhq_mbhBWnbFg6Io,4859
|
|
149
162
|
reflex/components/literals.py,sha256=hogLnwTJxFJODIvqihg-GD9kFZVsEBDoYzaRit56Nuk,501
|
|
150
163
|
reflex/components/lucide/__init__.py,sha256=EggTK2MuQKQeOBLKW-mF0VaDK9zdWBImu1HO2dvHZbE,73
|
|
151
|
-
reflex/components/lucide/icon.py,sha256=
|
|
152
|
-
reflex/components/lucide/icon.pyi,sha256=
|
|
164
|
+
reflex/components/lucide/icon.py,sha256=jwwQGyoUXItWh991O2l4Jh2j9Caocmt5J0KXJwdaZ3o,33849
|
|
165
|
+
reflex/components/lucide/icon.pyi,sha256=DZkrFkUSq-BT23taozAIDfPuHAF3V9AsVYwaEeOCgm0,35884
|
|
153
166
|
reflex/components/markdown/__init__.py,sha256=Dfl1At5uYoY7H4ufZU_RY2KOGQDLtj75dsZ2BTqqAns,87
|
|
154
167
|
reflex/components/markdown/markdown.py,sha256=9VoxHQNZe44pVDoT_2b897dTn7vcel7oglBF-iTu0aM,16186
|
|
155
168
|
reflex/components/markdown/markdown.pyi,sha256=cRik6patnRRumtNcRXDLCNPcMa6ZSpKApHhNpPdid8k,4135
|
|
@@ -247,7 +260,7 @@ reflex/components/radix/themes/components/separator.py,sha256=JqdQAEuPol1mwYKmMu
|
|
|
247
260
|
reflex/components/radix/themes/components/separator.pyi,sha256=FlyYAKpxD0LbKL-qSPGYvHxPlON_3JkRWmtwxepu2YI,4705
|
|
248
261
|
reflex/components/radix/themes/components/skeleton.py,sha256=v_nFTShDBLJHeN_y4leMv7KWDPFZrYDbRFrJwNItJrw,890
|
|
249
262
|
reflex/components/radix/themes/components/skeleton.pyi,sha256=vjnQfsAH3PO9tpNCvS_D0n1BZ9mE-pvdKPrHjDfboB8,3643
|
|
250
|
-
reflex/components/radix/themes/components/slider.py,sha256=
|
|
263
|
+
reflex/components/radix/themes/components/slider.py,sha256=zMMDcX5dIeGV7dVtWt6we7nOJtvM2D9YuXh0ovAFqsQ,3385
|
|
251
264
|
reflex/components/radix/themes/components/slider.pyi,sha256=FOastMwo5EImtk3R2lsohPJetULwPuUcUXtzmxNVdHI,6774
|
|
252
265
|
reflex/components/radix/themes/components/spinner.py,sha256=8kO7e4EEGaXm-J4YFkLPUuph3QLY82memrQQFrvUPyk,493
|
|
253
266
|
reflex/components/radix/themes/components/spinner.pyi,sha256=fhcXA39MiwtygR_u5yRlBbXKkYr4joFIzojNgCg-CWQ,2882
|
|
@@ -329,7 +342,7 @@ reflex/components/tags/iter_tag.py,sha256=AgKtcRvuxUe8QJPU8iQp6HvOQwdENjlYFO8dYs
|
|
|
329
342
|
reflex/components/tags/match_tag.py,sha256=3lba1H5pCcKkqxEHzM6DZb5s9s0yJLN4Se3vdhzar24,580
|
|
330
343
|
reflex/components/tags/tag.py,sha256=1fopahujLVjH871UOdmau_n1kEddbQotN5MpKW_s8PU,3644
|
|
331
344
|
reflex/components/tags/tagless.py,sha256=qO7Gm4V0ITDyymHkyltfz53155ZBt-W_WIPDYy93ca0,587
|
|
332
|
-
reflex/config.py,sha256=
|
|
345
|
+
reflex/config.py,sha256=abb4ake03wkXWRWvOfqu5IhSgFIFNcYxuaF3Kt2Q5Q0,35151
|
|
333
346
|
reflex/constants/__init__.py,sha256=BG41QmjUHMQmtaROrD7YsV8AO24t2NnvKIvDx_0Qwss,2196
|
|
334
347
|
reflex/constants/base.py,sha256=RfzOQdfJcQhVoIQRBNRAcIMyhllIHFd2hRZ37P1N28E,7837
|
|
335
348
|
reflex/constants/colors.py,sha256=cgLn8iEWtlpjQgbhhlCOGjbhfOULKnzqqzPph63SJoI,1613
|
|
@@ -343,8 +356,8 @@ reflex/constants/state.py,sha256=6Mfr7xVcAZOj5aSy7kp0W6r8oTs7K30URgGDAAFLfPQ,294
|
|
|
343
356
|
reflex/constants/style.py,sha256=EPgRYHhAlcrPUBc2HkDTdTj-Q0uDAXHlq8Sp6D35Zf4,475
|
|
344
357
|
reflex/constants/utils.py,sha256=GJhFj1uba54CDPEm70tWs8B5iS2siHgeNi--oGCjeRc,759
|
|
345
358
|
reflex/custom_components/__init__.py,sha256=R4zsvOi4dfPmHc18KEphohXnQFBPnUCb50cMR5hSLDE,36
|
|
346
|
-
reflex/custom_components/custom_components.py,sha256=
|
|
347
|
-
reflex/event.py,sha256=
|
|
359
|
+
reflex/custom_components/custom_components.py,sha256=62mG6tCj6nt6t_UYFu8Vcjsv7PiqABiJRQ-xsYGYsX0,33376
|
|
360
|
+
reflex/event.py,sha256=EX-9X-c8gIudZjRDG8qSrVAbegcaGkYXxLLRWg-7IOA,60758
|
|
348
361
|
reflex/experimental/__init__.py,sha256=bvJ6qFeO3xT3L-8IBtk4ecoi5rda3EDvblgNP60yhEo,2206
|
|
349
362
|
reflex/experimental/client_state.py,sha256=p_Toz94fNQGMbHY1WlwfQ-i_M01f1ExA9t1iokSvdLc,9880
|
|
350
363
|
reflex/experimental/hooks.py,sha256=CHYGrAE5t8riltrJmDFgJ4D2Vhmhw-y3B3MSGNlOQow,2366
|
|
@@ -352,7 +365,7 @@ reflex/experimental/layout.py,sha256=IzyAu_M121IYsrsnctiXFbeXInVvKKb4GuyFJKXcJnQ
|
|
|
352
365
|
reflex/experimental/layout.pyi,sha256=r8SysDBM9TPicKx4fgubAP0WuKAP-VR_xP2UW6_GFLM,24571
|
|
353
366
|
reflex/experimental/misc.py,sha256=X0vgTWn72VduWi6p2hMU-gGksRkhu7isDJNJ0kNVaAo,704
|
|
354
367
|
reflex/istate/__init__.py,sha256=LDu_3-31ZI1Jn9NWp4mM0--fDiXI0x8x3gR4-kdrziY,57
|
|
355
|
-
reflex/istate/data.py,sha256=
|
|
368
|
+
reflex/istate/data.py,sha256=9lITDKYS4N9gSJuwx25hdsOnkCQYhtZTTd4XQ_aCSng,5789
|
|
356
369
|
reflex/istate/dynamic.py,sha256=xOQ9upZVPf6ngqcLQZ9HdAAYmoWwJ8kRFPH34Q5HTiM,91
|
|
357
370
|
reflex/istate/proxy.py,sha256=ttfcMFBNOYnRT48U2fzkyo55Gr-Z8hkoulzPr0tD5VU,1059
|
|
358
371
|
reflex/istate/storage.py,sha256=hcuXcbJcz5k8WeB5s3VuSBvbz_OIRaAVrtFRLh_MNEM,4343
|
|
@@ -363,43 +376,39 @@ reflex/middleware/middleware.py,sha256=p5VVoIgQ_NwOg_GOY6g0S4fmrV76_VE1zt-HiwbMw
|
|
|
363
376
|
reflex/model.py,sha256=k6qCweATPW1YRB_qcHwa5X35btJmtIlB4zEQ63FaW3w,17527
|
|
364
377
|
reflex/page.py,sha256=qEt8n5EtawSywCzdsiaNQJWhC8ie-vg8ig0JGuVavPI,2386
|
|
365
378
|
reflex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
366
|
-
reflex/reflex.py,sha256=
|
|
379
|
+
reflex/reflex.py,sha256=gmYVXXASlx_4kpyYuqEASS2qNdG2lWbmVpNQ_LYeOJQ,20399
|
|
367
380
|
reflex/route.py,sha256=nn_hJwtQdjiqH_dHXfqMGWKllnyPQZTSR-KWdHDhoOs,4210
|
|
368
|
-
reflex/state.py,sha256=
|
|
369
|
-
reflex/style.py,sha256=
|
|
370
|
-
reflex/testing.py,sha256=
|
|
381
|
+
reflex/state.py,sha256=VmXm7SNuecE2y3sZo4yu-JW7frlb3Wi6V2o4A3it4eQ,141566
|
|
382
|
+
reflex/style.py,sha256=dilXPn8de80NzsXT53GPJrmjELC5nPYIlCgongyq1zM,13145
|
|
383
|
+
reflex/testing.py,sha256=c3boyBotUiDImK1lsO-Odeb4tgqRAvRdaT1lZ9QzPHg,35458
|
|
371
384
|
reflex/utils/__init__.py,sha256=y-AHKiRQAhk2oAkvn7W8cRVTZVK625ff8tTwvZtO7S4,24
|
|
372
385
|
reflex/utils/build.py,sha256=gm_lRsOqKeRD5mBiRToJcT4Vt_ZQPzDuazGfvJlSeeQ,9024
|
|
373
386
|
reflex/utils/codespaces.py,sha256=TzDK--pHwP4r8Nzl0iB_8r-cOFmmL6nHfZ9xRQHA-KY,2754
|
|
374
387
|
reflex/utils/compat.py,sha256=aSJH_M6iomgHPQ4onQ153xh1MWqPi3HSYDzE68N6gZM,2635
|
|
375
388
|
reflex/utils/console.py,sha256=slDTb_5QXfSvdflFiwJauc874R2zqo8BOSh37JUhYLY,9469
|
|
376
389
|
reflex/utils/decorator.py,sha256=EYdAjPdfgFjqjYSmLlc9qzOYnoihzavG5T4tgVgzsw4,1171
|
|
377
|
-
reflex/utils/exceptions.py,sha256=
|
|
378
|
-
reflex/utils/exec.py,sha256=
|
|
379
|
-
reflex/utils/export.py,sha256=
|
|
390
|
+
reflex/utils/exceptions.py,sha256=Wwu7Ji2xgq521bJKtU2NgjwhmFfnG8erirEVN2h8S-g,8884
|
|
391
|
+
reflex/utils/exec.py,sha256=QCLU-70WfDsm-h2e7Aw8qX4PbBUx4rFZrm8oN_RLgPA,17228
|
|
392
|
+
reflex/utils/export.py,sha256=bcJA0L8lBbjij-5PU93ka2c1d_yJqrIurp5u4mN5f68,2537
|
|
380
393
|
reflex/utils/format.py,sha256=a8em_yzqp9pLTrPXRsdzFWSO1qL2x25BpJXOf9DV1t8,20638
|
|
381
394
|
reflex/utils/imports.py,sha256=-EkUt9y5U3qmImjfpsXwYh7JI9qJHd_L6X9y12EPJew,3921
|
|
382
395
|
reflex/utils/lazy_loader.py,sha256=-3DcwIqHNft2fb1ikgDYAMiEwNfbiWfrTBAf1gEVX2o,1367
|
|
383
396
|
reflex/utils/net.py,sha256=0Yd9OLK8R_px2sqnqrDkTky6hYHtG2pEDvvilOjDfjc,1219
|
|
384
397
|
reflex/utils/path_ops.py,sha256=Sio_pZ9-dqu6pAPUkO_JA9ONXDsyLGKWOVRoA-dCrec,7903
|
|
385
|
-
reflex/utils/prerequisites.py,sha256=
|
|
398
|
+
reflex/utils/prerequisites.py,sha256=fhpp1yaRkBr0_zAowNSFeaRDZ1qjsmhR6_Tz34nebK0,63578
|
|
386
399
|
reflex/utils/processes.py,sha256=1iZe-3Yrg-ja8jZxxAfggljqqcJgsFu8fi4bu4XQGx0,13489
|
|
387
|
-
reflex/utils/pyi_generator.py,sha256=
|
|
388
|
-
reflex/utils/redir.py,sha256=
|
|
400
|
+
reflex/utils/pyi_generator.py,sha256=cKdssbtAtGj2deOSDos9OF96w10qte8JM-TlfbzSdtw,41602
|
|
401
|
+
reflex/utils/redir.py,sha256=kTqY2WSouF5_ftOe5bnvPEyU3SLpg3pcysTcxFH1UxI,1505
|
|
389
402
|
reflex/utils/registry.py,sha256=bseD0bIO8b3pctHKpD5J2MRdDzcf7eWKtHEZVutVNJ0,1401
|
|
390
403
|
reflex/utils/serializers.py,sha256=K8-erpNIjJNIKif0cDFExa9f5DEVuQUq0j5v5VH6aBI,13408
|
|
391
404
|
reflex/utils/telemetry.py,sha256=qwJBwjdtAV-OGKgO4h-NWhgTvfC3gbduBdn1UB8Ikes,5608
|
|
392
405
|
reflex/utils/types.py,sha256=nGX44Q_Jp33wIaxf2vxANwBWe1743V2B8RRS8H9yV4c,33449
|
|
393
406
|
reflex/vars/__init__.py,sha256=2Kv6Oh9g3ISZFESjL1al8KiO7QBZUXmLKGMCBsP-DoY,1243
|
|
394
|
-
reflex/vars/base.py,sha256=
|
|
407
|
+
reflex/vars/base.py,sha256=ugAwqusvYHT3FfPsCsXkxxNgvtd9SQH-hAwqjQqEGcY,101926
|
|
395
408
|
reflex/vars/datetime.py,sha256=WOEzQF6qjMjYvCat80XxgB_4hmVNHwIIZNMBSmfu0PM,5790
|
|
396
409
|
reflex/vars/dep_tracking.py,sha256=kluvF4Pfbpdqf0GcpmYHjT1yP-D1erAzaSQP6qIxjB0,13846
|
|
397
410
|
reflex/vars/function.py,sha256=2sVnhgetPSwtor8VFtAiYJdzZ9IRNzAKdsUJG6dXQcE,14461
|
|
398
|
-
reflex/vars/number.py,sha256=
|
|
399
|
-
reflex/vars/object.py,sha256
|
|
400
|
-
reflex/vars/sequence.py,sha256=
|
|
401
|
-
reflex-0.7.
|
|
402
|
-
reflex-0.7.2a2.dist-info/METADATA,sha256=c91IdRnfmecqq_4ZaI1uU5J7cM87O012JddW-HDHSQI,11875
|
|
403
|
-
reflex-0.7.2a2.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
|
|
404
|
-
reflex-0.7.2a2.dist-info/entry_points.txt,sha256=H1Z5Yat_xJfy0dRT1Frk2PkO_p41Xy7fCKlj4FcdL9o,44
|
|
405
|
-
reflex-0.7.2a2.dist-info/RECORD,,
|
|
411
|
+
reflex/vars/number.py,sha256=hacFEtv-63tMQN-oeVDWkrLFQL4utYG-b3ahYTb8b4M,29573
|
|
412
|
+
reflex/vars/object.py,sha256=-fGqHThozjxAAuQL-wTwEItPiFI-ps53P2bKoSlW_As,17081
|
|
413
|
+
reflex/vars/sequence.py,sha256=wxyiTV-_-N6FJNufIatubsnhEpXHFShcw3GEEEpYy3M,55893
|
|
414
|
+
reflex-0.7.3a1.dist-info/RECORD,,
|