reflex 0.8.13__py3-none-any.whl → 0.8.14a1__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/utils/templates.py CHANGED
@@ -7,8 +7,6 @@ import zipfile
7
7
  from pathlib import Path
8
8
  from urllib.parse import urlparse
9
9
 
10
- import click
11
-
12
10
  from reflex import constants
13
11
  from reflex.config import get_config
14
12
  from reflex.utils import console, net, path_ops, redir
@@ -51,7 +49,7 @@ def initialize_app_directory(
51
49
  template_dir: The directory of the template source files.
52
50
 
53
51
  Raises:
54
- Exit: If template_name, template_code_dir_name, template_dir combination is not supported.
52
+ SystemExit: If template_name, template_code_dir_name, template_dir combination is not supported.
55
53
  """
56
54
  console.log("Initializing the app directory.")
57
55
 
@@ -61,7 +59,7 @@ def initialize_app_directory(
61
59
  console.error(
62
60
  f"Only {template_name=} should be provided, got {template_code_dir_name=}, {template_dir=}."
63
61
  )
64
- raise click.exceptions.Exit(1)
62
+ raise SystemExit(1)
65
63
  template_code_dir_name = constants.Templates.Dirs.CODE
66
64
  template_dir = Path(constants.Templates.Dirs.BASE, "apps", template_name)
67
65
  else:
@@ -69,7 +67,7 @@ def initialize_app_directory(
69
67
  console.error(
70
68
  f"For `{template_name}` template, `template_code_dir_name` and `template_dir` should both be provided."
71
69
  )
72
- raise click.exceptions.Exit(1)
70
+ raise SystemExit(1)
73
71
 
74
72
  console.debug(f"Using {template_name=} {template_dir=} {template_code_dir_name=}.")
75
73
 
@@ -117,7 +115,7 @@ def create_config_init_app_from_remote_template(app_name: str, template_url: str
117
115
  template_url: The path to the template source code as a zip file.
118
116
 
119
117
  Raises:
120
- Exit: If any download, file operations fail or unexpected zip file format.
118
+ SystemExit: If any download, file operations fail or unexpected zip file format.
121
119
 
122
120
  """
123
121
  import httpx
@@ -127,7 +125,7 @@ def create_config_init_app_from_remote_template(app_name: str, template_url: str
127
125
  temp_dir = tempfile.mkdtemp()
128
126
  except OSError as ose:
129
127
  console.error(f"Failed to create temp directory for download: {ose}")
130
- raise click.exceptions.Exit(1) from ose
128
+ raise SystemExit(1) from None
131
129
 
132
130
  # Use httpx GET with redirects to download the zip file.
133
131
  zip_file_path: Path = Path(temp_dir) / "template.zip"
@@ -138,20 +136,20 @@ def create_config_init_app_from_remote_template(app_name: str, template_url: str
138
136
  response.raise_for_status()
139
137
  except httpx.HTTPError as he:
140
138
  console.error(f"Failed to download the template: {he}")
141
- raise click.exceptions.Exit(1) from he
139
+ raise SystemExit(1) from None
142
140
  try:
143
141
  zip_file_path.write_bytes(response.content)
144
142
  console.debug(f"Downloaded the zip to {zip_file_path}")
145
143
  except OSError as ose:
146
144
  console.error(f"Unable to write the downloaded zip to disk {ose}")
147
- raise click.exceptions.Exit(1) from ose
145
+ raise SystemExit(1) from None
148
146
 
149
147
  # Create a temp directory for the zip extraction.
150
148
  try:
151
149
  unzip_dir = Path(tempfile.mkdtemp())
152
150
  except OSError as ose:
153
151
  console.error(f"Failed to create temp directory for extracting zip: {ose}")
154
- raise click.exceptions.Exit(1) from ose
152
+ raise SystemExit(1) from None
155
153
 
156
154
  try:
157
155
  zipfile.ZipFile(zip_file_path).extractall(path=unzip_dir)
@@ -159,11 +157,11 @@ def create_config_init_app_from_remote_template(app_name: str, template_url: str
159
157
  # repo-name-branch/**/*, so we need to remove the top level directory.
160
158
  except Exception as uze:
161
159
  console.error(f"Failed to unzip the template: {uze}")
162
- raise click.exceptions.Exit(1) from uze
160
+ raise SystemExit(1) from None
163
161
 
164
162
  if len(subdirs := list(unzip_dir.iterdir())) != 1:
165
163
  console.error(f"Expected one directory in the zip, found {subdirs}")
166
- raise click.exceptions.Exit(1)
164
+ raise SystemExit(1)
167
165
 
168
166
  template_dir = unzip_dir / subdirs[0]
169
167
  console.debug(f"Template folder is located at {template_dir}")
@@ -204,7 +202,7 @@ def validate_and_create_app_using_remote_template(
204
202
  templates: The available templates.
205
203
 
206
204
  Raises:
207
- Exit: If the template is not found.
205
+ SystemExit: If the template is not found.
208
206
  """
209
207
  # If user selects a template, it needs to exist.
210
208
  if template in templates:
@@ -215,7 +213,7 @@ def validate_and_create_app_using_remote_template(
215
213
  console.print(
216
214
  f"Please use `reflex login` to access the '{template}' template."
217
215
  )
218
- raise click.exceptions.Exit(3)
216
+ raise SystemExit(3)
219
217
 
220
218
  template_url = templates[template].code_url
221
219
  else:
@@ -226,7 +224,7 @@ def validate_and_create_app_using_remote_template(
226
224
  template_url = f"https://github.com/{path}/archive/main.zip"
227
225
  else:
228
226
  console.error(f"Template `{template}` not found or invalid.")
229
- raise click.exceptions.Exit(1)
227
+ raise SystemExit(1)
230
228
 
231
229
  if template_url is None:
232
230
  return
@@ -327,7 +325,7 @@ def prompt_for_template_options(templates: list[Template]) -> str:
327
325
  The template name the user selects.
328
326
 
329
327
  Raises:
330
- Exit: If the user does not select a template.
328
+ SystemExit: If the user does not select a template.
331
329
  """
332
330
  # Show the user the URLs of each template to preview.
333
331
  console.print("\nGet started with a template:")
@@ -345,17 +343,17 @@ def prompt_for_template_options(templates: list[Template]) -> str:
345
343
 
346
344
  if not template:
347
345
  console.error("No template selected.")
348
- raise click.exceptions.Exit(1)
346
+ raise SystemExit(1)
349
347
 
350
348
  try:
351
349
  template_index = int(template)
352
350
  except ValueError:
353
351
  console.error("Invalid template selected.")
354
- raise click.exceptions.Exit(1) from None
352
+ raise SystemExit(1) from None
355
353
 
356
354
  if template_index < 0 or template_index >= len(templates):
357
355
  console.error("Invalid template selected.")
358
- raise click.exceptions.Exit(1)
356
+ raise SystemExit(1)
359
357
 
360
358
  # Return the template.
361
359
  return templates[template_index].name
@@ -372,7 +370,7 @@ def initialize_app(app_name: str, template: str | None = None) -> str | None:
372
370
  The name of the template.
373
371
 
374
372
  Raises:
375
- Exit: If the template is not valid or unspecified.
373
+ SystemExit: If the template is not valid or unspecified.
376
374
  """
377
375
  # Local imports to avoid circular imports.
378
376
  from reflex.utils import telemetry
@@ -393,11 +391,11 @@ def initialize_app(app_name: str, template: str | None = None) -> str | None:
393
391
 
394
392
  if template == constants.Templates.CHOOSE_TEMPLATES:
395
393
  redir.reflex_templates()
396
- raise click.exceptions.Exit(0)
394
+ raise SystemExit(0)
397
395
 
398
396
  if template == constants.Templates.AI:
399
397
  redir.reflex_build_redirect()
400
- raise click.exceptions.Exit(0)
398
+ raise SystemExit(0)
401
399
 
402
400
  # If the blank template is selected, create a blank app.
403
401
  if template == constants.Templates.DEFAULT:
reflex/vars/color.py CHANGED
@@ -10,72 +10,14 @@ from reflex.vars.base import (
10
10
  VarData,
11
11
  cached_property_no_lock,
12
12
  get_python_literal,
13
- transform,
14
13
  )
15
- from reflex.vars.number import BooleanVar, NumberVar, ternary_operation
16
- from reflex.vars.object import LiteralObjectVar
14
+ from reflex.vars.number import ternary_operation
17
15
  from reflex.vars.sequence import ConcatVarOperation, LiteralStringVar, StringVar
18
16
 
19
17
 
20
- @transform
21
- def evaluate_color(js_dict: Var[dict]) -> Var[Color]:
22
- """Evaluate a color var.
23
-
24
- Args:
25
- js_dict: The color var as a dict.
26
-
27
- Returns:
28
- The color var as a string.
29
- """
30
- js_color_dict = js_dict.to(dict)
31
- str_part = ConcatVarOperation.create(
32
- LiteralStringVar.create("var(--"),
33
- js_color_dict.color,
34
- LiteralStringVar.create("-"),
35
- ternary_operation(
36
- js_color_dict.alpha,
37
- LiteralStringVar.create("a"),
38
- LiteralStringVar.create(""),
39
- ),
40
- js_color_dict.shade.to_string(use_json=False),
41
- LiteralStringVar.create(")"),
42
- )
43
- return js_dict._replace(
44
- _js_expr=f"Object.assign(new String({str_part!s}), {js_dict!s})",
45
- _var_type=Color,
46
- )
47
-
48
-
49
18
  class ColorVar(StringVar[Color], python_types=Color):
50
19
  """Base class for immutable color vars."""
51
20
 
52
- @property
53
- def color(self) -> StringVar:
54
- """Get the color of the color var.
55
-
56
- Returns:
57
- The color of the color var.
58
- """
59
- return self.to(dict).color.to(str)
60
-
61
- @property
62
- def alpha(self) -> BooleanVar:
63
- """Get the alpha of the color var.
64
-
65
- Returns:
66
- The alpha of the color var.
67
- """
68
- return self.to(dict).alpha.to(bool)
69
-
70
- @property
71
- def shade(self) -> NumberVar:
72
- """Get the shade of the color var.
73
-
74
- Returns:
75
- The shade of the color var.
76
- """
77
- return self.to(dict).shade.to(int)
78
-
79
21
 
80
22
  @dataclasses.dataclass(
81
23
  eq=False,
@@ -150,7 +92,7 @@ class LiteralColorVar(CachedVarOperation, LiteralVar, ColorVar):
150
92
  if isinstance(shade, Var)
151
93
  else LiteralStringVar.create(str(shade))
152
94
  )
153
- string_part = str(
95
+ return str(
154
96
  ConcatVarOperation.create(
155
97
  LiteralStringVar.create("var(--"),
156
98
  self._var_value.color,
@@ -160,14 +102,6 @@ class LiteralColorVar(CachedVarOperation, LiteralVar, ColorVar):
160
102
  LiteralStringVar.create(")"),
161
103
  )
162
104
  )
163
- dict_part = LiteralObjectVar.create(
164
- {
165
- "color": self._var_value.color,
166
- "alpha": self._var_value.alpha,
167
- "shade": self._var_value.shade,
168
- }
169
- )
170
- return f"Object.assign(new String({string_part!s}), {dict_part!s})"
171
105
 
172
106
  @cached_property_no_lock
173
107
  def _cached_get_all_var_data(self) -> VarData | None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: reflex
3
- Version: 0.8.13
3
+ Version: 0.8.14a1
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
@@ -2,18 +2,18 @@ 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=jpbsfVOgf4LTnw3b9wZuYbrwGeOh-BvUtAPsjVFnG0E,78583
5
+ reflex/app.py,sha256=a9wHB1q5p2uW5Ja7yIpitaS6GIPYNkir1KHrQNV8OPM,79192
6
6
  reflex/assets.py,sha256=l5O_mlrTprC0lF7Rc_McOe3a0OtSLnRdNl_PqCpDCBA,3431
7
7
  reflex/base.py,sha256=Oh664QL3fZEHErhUasFqP7fE4olYf1y-9Oj6uZI2FCU,1173
8
8
  reflex/config.py,sha256=LsHAtdH4nkSn3q_Ie-KNdOGdflLXrFICUQov29oFjVk,21229
9
- reflex/environment.py,sha256=RmiYBI8KjIqJlDL-q_uPOYQLp8GteID7H4Ek6p4WoKg,23682
9
+ reflex/environment.py,sha256=USXLwLP86KKeLFvs_di4j73GsLkZ9SdQEeh-374CZH4,23854
10
10
  reflex/event.py,sha256=e2EIBmLF63KRw4GXSbuiQ6yDp1-YQHHIxJKenTra9vk,76223
11
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
- reflex/reflex.py,sha256=Us-aIdDSizZUtQFTOfgGEe_Aa0ef46LAzaIul8J_DCM,24439
14
+ reflex/reflex.py,sha256=J6p0e9u4VURBgKY-Rk2mxiW3Usmxf71aNPyXaesoGJA,25821
15
15
  reflex/route.py,sha256=TnS4m6Hm-b3LfGFpm37iAMEd-_JISAouPW5FqUxTAfU,7858
16
- reflex/state.py,sha256=c0f79jFuB2m0XUMsV4bDYt-XtTbsHITQ2JwqOFdzG08,95258
16
+ reflex/state.py,sha256=JoFQoTPXHQHFzKwBFo8T4rvuAFNGbtcDmTotzrSRQP4,95402
17
17
  reflex/style.py,sha256=Jc7hZyH9CSFDbweoRCrkVtSu8tZq5aIggSoAYAh-w1M,13304
18
18
  reflex/testing.py,sha256=Wt1qdmqT3Yo9CKWZzHXiytizZJ5KjqxVzuoGPjI_Vfk,40458
19
19
  reflex/.templates/apps/blank/assets/favicon.ico,sha256=baxxgDAQ2V4-G5Q4S2yK5uUJTUGkv-AOWBQ0xd6myUo,4286
@@ -95,7 +95,7 @@ reflex/components/core/match.py,sha256=xBB9vtWgVlotPHq6ssng8lzxwXDDQLp9k6Ew5RPPd
95
95
  reflex/components/core/responsive.py,sha256=ACZdtJ4a4F8B3dm1k8h6J2_UJx0Z5LDB7XHQ2ty4wAc,1911
96
96
  reflex/components/core/sticky.py,sha256=2B3TxrwG2Rtp_lv1VkMOIF2bqSiT7qYGbqbiZiMKxKY,3856
97
97
  reflex/components/core/sticky.pyi,sha256=5D-yT0LYs0ewOlUlInU7KCpuz49yKK7dirysUs1C2VI,32908
98
- reflex/components/core/upload.py,sha256=V0vIYig6XoOstQY2KDH88OYmLYPuSzkQopEYm3GZ81E,15195
98
+ reflex/components/core/upload.py,sha256=lVEu-vZGAdZHd-tjN-w9gNDhSijLLt6Vwm3WPf77wzk,15174
99
99
  reflex/components/core/upload.pyi,sha256=Bc3ds_6AFu0xtk-aQYL4PXXV7TTDk7_XPW_IWKVcY5E,16409
100
100
  reflex/components/core/window_events.py,sha256=opbuO20zVxt252kQLk49V7cltb_Um2oh7iePeGNJ538,3355
101
101
  reflex/components/core/window_events.pyi,sha256=aTkBiAy-e9LqkQm6_apRsXXfJRdawA11cE1tQQSIy3c,3206
@@ -148,7 +148,7 @@ reflex/components/moment/__init__.py,sha256=jGnZgRBivYJQPIcFgtLaXFteCeIG3gGH5ACX
148
148
  reflex/components/moment/moment.py,sha256=fhhzrun9USb8J30btpyyDD3JuXF_N7EL5Dou3x7NQYw,4080
149
149
  reflex/components/moment/moment.pyi,sha256=4YGqoKDFPV_Ve7G_UoN85UigtCExqp0qXR55Jb8WgfY,6013
150
150
  reflex/components/plotly/__init__.py,sha256=6B_woBJhkrVA9O_AbOTbsA_SxWsqjicYHmLA9FLjGfU,650
151
- reflex/components/plotly/plotly.py,sha256=_HIMVHz2K4X9LO2PqdCiYlexG8cjbzSnbnp_gCqwwjQ,15172
151
+ reflex/components/plotly/plotly.py,sha256=4PugE2Gy2x02CSz_0GbnUbuIJAfjydQoMWxv1K43kQA,15172
152
152
  reflex/components/plotly/plotly.pyi,sha256=5Nhph2PL9eIb-Xd6CUZHQf79P-tOazy1alwRQl7CKWw,46821
153
153
  reflex/components/radix/__init__.py,sha256=fRsLvIO3MrTtPOXtmnxYDB9phvzlcbyB_utgpafYMho,474
154
154
  reflex/components/radix/__init__.pyi,sha256=ke_dGrpFMNHd3MgQ9qiStSQDlGcJ39KVSrpIxayBU3c,3927
@@ -164,8 +164,8 @@ reflex/components/radix/primitives/form.py,sha256=jxCt0xZRE9Xx5tBIJNojYwyvhN631_
164
164
  reflex/components/radix/primitives/form.pyi,sha256=1g9IOcPDWPQDrdLYkeHgVXnF9Dcsng82yH8xKlOjrRw,47184
165
165
  reflex/components/radix/primitives/progress.py,sha256=UvuUn6eWEhnhqImDvYOwa9Z3CE5gu5EV28uPBbZAT4k,3988
166
166
  reflex/components/radix/primitives/progress.pyi,sha256=63AyvhVFf1lDG5NQTW-1o2Ek_kx2dt_tVAS-5RXM-Fw,16469
167
- reflex/components/radix/primitives/slider.py,sha256=a0btZ7GCuyXHSV4CZbXD7AP1BTh_VHvOnrac3a8BnCY,5030
168
- reflex/components/radix/primitives/slider.pyi,sha256=Hv8YlWsCgGhstlaq9_C8abryIu60bImpjCvzTwbDVn0,12446
167
+ reflex/components/radix/primitives/slider.py,sha256=2Bf-7uwTAJgQlaArjk0v4m5cU6i89b_KTWHgsP19Z0I,4833
168
+ reflex/components/radix/primitives/slider.pyi,sha256=ODHjm-wrDbT5wxGB1Zw4b9WQWitAlmD9DXDcDrNIB3A,12372
169
169
  reflex/components/radix/themes/__init__.py,sha256=3ASzR_OrjkLXZ6CksGKIQPOcyYZ984NzXrn2UCIdxUc,492
170
170
  reflex/components/radix/themes/__init__.pyi,sha256=B_xv0vBBRsCOinQasRO3ni_g8xbpucIPXCn5xZckgww,445
171
171
  reflex/components/radix/themes/base.py,sha256=vNLSFHX4el9YtzVsdxCIknt_c5eJser7VhihvJSNf8c,8296
@@ -228,8 +228,8 @@ reflex/components/radix/themes/components/separator.py,sha256=Yj0Y34gGTdm3LWcjtq
228
228
  reflex/components/radix/themes/components/separator.pyi,sha256=k6nfGlvZ9uXyfDiKRKXUCuQAXVHXTKhNmVYuw681BrY,4882
229
229
  reflex/components/radix/themes/components/skeleton.py,sha256=oHltF5lOzE8T0poYtIXj3f2x8O_iZ56HCtx0a9AJ_Kw,918
230
230
  reflex/components/radix/themes/components/skeleton.pyi,sha256=pUkhbz9cx7dIbeLFVURqAHdRnRe2j1ZP_zDAA2aA-wU,3814
231
- reflex/components/radix/themes/components/slider.py,sha256=8t-V8XTftdSZ3M7KBwu244k8JyGp6eMCz9t3vO5yLlQ,3440
232
- reflex/components/radix/themes/components/slider.pyi,sha256=zml6pj-vubhx47OT0Dhmadys5-QQgv04iUllCJ5dk2s,6802
231
+ reflex/components/radix/themes/components/slider.py,sha256=H0IBoNUTp08UQcpI_CRVU1mTda_uMBteSzFYxgn1Seg,3393
232
+ reflex/components/radix/themes/components/slider.pyi,sha256=H17xxKo0axrKFUbc3-w-o3Wy4ybb8c4TVkj9k_gfv0k,6641
233
233
  reflex/components/radix/themes/components/spinner.py,sha256=_qDonsJKxGYxpJ0mrbbby8Yt8IllYsAkTOYUVUL6cMc,521
234
234
  reflex/components/radix/themes/components/spinner.pyi,sha256=nK_pbuL63No6pmisV2nAQzcCmIRDCgmtCWwpkBHvqhQ,3053
235
235
  reflex/components/radix/themes/components/switch.py,sha256=jlxyUeJpisCmLcslnjoP4RN1NyLTwRlQoL99utVUbJo,1795
@@ -312,17 +312,17 @@ reflex/components/tags/tag.py,sha256=wlwD1We3ipgibPGsT1FS0aYYaJasLsjlfaOTgUT_aGg
312
312
  reflex/components/tags/tagless.py,sha256=APeSG-6N5-ucWwkq_hUl7zfT_vpoKleQdP80wPERG18,904
313
313
  reflex/constants/__init__.py,sha256=q2Jf-LBbNcGrOmx5M7QotIAYW_t3m02TsmmdtJ5_IhM,2190
314
314
  reflex/constants/base.py,sha256=rZ2JFO3mu5fVpjIUbiPJ7YCbensCjefbzYtV9uEwqpw,7539
315
- reflex/constants/colors.py,sha256=5LILy-OAhNl4c2fsMnC80WKjuxVJi4DYAcNQGri2CmU,2101
315
+ reflex/constants/colors.py,sha256=n-FN7stNrvk5rCN0TAvE28dqwUeQZHue-b5q1CO0EyQ,2048
316
316
  reflex/constants/compiler.py,sha256=1FXPYQNotaSrTwWcOspA1gCVmEdoiWkNMbbrz_qU0YU,5709
317
317
  reflex/constants/config.py,sha256=8OIjiBdZZJrRVHsNBheMwopE9AwBFFzau0SXqXKcrPg,1715
318
318
  reflex/constants/custom_components.py,sha256=joJt4CEt1yKy7wsBH6vYo7_QRW0O_fWXrrTf0VY2q14,1317
319
319
  reflex/constants/event.py,sha256=tgoynWQi2L0_Kqc3XhXo7XXL76A-OKhJGHRrNjm7gFw,2885
320
- reflex/constants/installer.py,sha256=O4HgGE7aSSr0ob3SBNX9BoWFR35gvDN1fvct1qDrjqU,4193
320
+ reflex/constants/installer.py,sha256=XmXvA4uVJ8McAVO5hjXk9demdEyPxIWmWFJTqG6IezU,4193
321
321
  reflex/constants/route.py,sha256=UBjqaAOxiUxlDZCSY4O2JJChKvA4MZrhUU0E5rNvKbM,2682
322
322
  reflex/constants/state.py,sha256=VrEeYxXfE9ss8RmOHIXD4T6EGsV9PDqbtMCQMmZxW3I,383
323
323
  reflex/constants/utils.py,sha256=e1ChEvbHfmE_V2UJvCSUhD_qTVAIhEGPpRJSqdSd6PA,780
324
324
  reflex/custom_components/__init__.py,sha256=R4zsvOi4dfPmHc18KEphohXnQFBPnUCb50cMR5hSLDE,36
325
- reflex/custom_components/custom_components.py,sha256=QfSEiPQY7Z7ZdYDsxJOgtD7EZopIdGw2ERpt_dMcPCs,25500
325
+ reflex/custom_components/custom_components.py,sha256=z5eL7WqbU4Vx5zVRWqgYPQu05P29XFsJ48xL9OLiyRg,25355
326
326
  reflex/experimental/__init__.py,sha256=P8fe8S2e2gy2HCwHFGQzr3lPMmh7qN5Ii2e8ukoPHuQ,1664
327
327
  reflex/experimental/client_state.py,sha256=adITjFmvzO081yaVgne2PZpG0hc_SrJHyLLbE-zfet0,10024
328
328
  reflex/experimental/hooks.py,sha256=CHYGrAE5t8riltrJmDFgJ4D2Vhmhw-y3B3MSGNlOQow,2366
@@ -339,7 +339,7 @@ reflex/middleware/middleware.py,sha256=p5VVoIgQ_NwOg_GOY6g0S4fmrV76_VE1zt-HiwbMw
339
339
  reflex/plugins/__init__.py,sha256=jrMWQqMxCwDwgwQYTygeR_pIewMcvIFwAnngPbjSumQ,439
340
340
  reflex/plugins/_screenshot.py,sha256=CAOaRpbrpTTIswwCXqhv7WYShB86Ao9MVv6dcXJzRb4,3958
341
341
  reflex/plugins/base.py,sha256=5BgzCM7boj9kJ6FGzVzVlgQk-crJuVmOLCl1PXvv4-E,3372
342
- reflex/plugins/shared_tailwind.py,sha256=-Rs8gP2h8I-wBq1BQvlF8dk5t2c7tEi1dfGrtcTEPMk,7305
342
+ reflex/plugins/shared_tailwind.py,sha256=kCyIaSFrzoPe7dlA09SjfSY30bfbh43dkQchres4A0w,7305
343
343
  reflex/plugins/sitemap.py,sha256=X_CtH5B1w3CZno-gdPj1rp63WjOuNjFnX4B3fx_-VFQ,6135
344
344
  reflex/plugins/tailwind_v3.py,sha256=jCEZ5UYdr706Mw48L-WSHOUB6O55o1C3uG6AMwXqZoI,4810
345
345
  reflex/plugins/tailwind_v4.py,sha256=fcNaFtikSIu1LhF94DcBs1xR2CjbQRB5o1_KYeThUF0,5230
@@ -350,31 +350,31 @@ reflex/utils/compat.py,sha256=aSJH_M6iomgHPQ4onQ153xh1MWqPi3HSYDzE68N6gZM,2635
350
350
  reflex/utils/console.py,sha256=W41Ogj1Jk8tEOhXXy9dy4KCLYp5rn0NZQwbBqXbkwSI,13668
351
351
  reflex/utils/decorator.py,sha256=QUZntENupeW5FA5mNRTx0I1GzGKFQXhMjVg24_IIM5o,3957
352
352
  reflex/utils/exceptions.py,sha256=Wwu7Ji2xgq521bJKtU2NgjwhmFfnG8erirEVN2h8S-g,8884
353
- reflex/utils/exec.py,sha256=TmZJ_14zA1G769nk-gZOpG9Q6PKgZN3bQyQ5Pz9MLsY,22245
353
+ reflex/utils/exec.py,sha256=xMwRnCd9SyTbvwBPS5i3C6ZcorLSFViqB_fOoCqsDEc,22833
354
354
  reflex/utils/export.py,sha256=dR8Q7OymxcS8PCvx5zV2kOZmjKgOmuAfKfL8XifHJd4,2907
355
355
  reflex/utils/format.py,sha256=-EC0tfx7VCIijcuJx9l-ArRnRnPKrrrW8RgsKwXIoBc,21115
356
- reflex/utils/frontend_skeleton.py,sha256=8sXRmVsKUiWf6O5rA1RRR_E4YjEsqDdIQlkUByp3aOI,8774
356
+ reflex/utils/frontend_skeleton.py,sha256=FqvNWclY_lRR-odjQmP-xaY3uiWVD2l5qqExt8qRzEI,8769
357
357
  reflex/utils/imports.py,sha256=SlQfMTbJasXHxrpcHdWKPWiIZ1Kn2-tulMF32_YA2ek,4262
358
- reflex/utils/js_runtimes.py,sha256=ipVrZCajiRcjow-nQeUuxPS_c6F_NpfvMtITOesbPjU,13153
358
+ reflex/utils/js_runtimes.py,sha256=mpDJ4h22z4GorOUPNkdabv-PS7jxPm93G0dJ-H7Hzp8,13193
359
359
  reflex/utils/lazy_loader.py,sha256=BiY9OvmAJDCz10qpuyTYv9duXgMFQa6RXKQmTO9hqKU,4453
360
360
  reflex/utils/misc.py,sha256=folEweZVCrhHNkkqut9KqQdTJ80HxwL_gI41m40FnNM,4592
361
361
  reflex/utils/monitoring.py,sha256=87fr9j6Y9Bvz2uF4tBxuX6CaU054h1UPx0ijcnyP_kw,5250
362
362
  reflex/utils/net.py,sha256=q3h5pNbAlFiqy8U15S9DTOvzy_OnenVVug5ROBTGRTA,4267
363
363
  reflex/utils/path_ops.py,sha256=_RS17IQDNr5vcoLLGZx2-z1E5WP-JgDHvaRAOgqrZiU,8154
364
- reflex/utils/prerequisites.py,sha256=Ta5PoZkZ6QI1OCVnxbS8NIWJC55zdpyY4cD6w-mYw7Y,20794
365
- reflex/utils/processes.py,sha256=t-ufWwu9RDsSMXCSsmjS2TILP5s7-AY94Rgx2O2gHMw,18178
364
+ reflex/utils/prerequisites.py,sha256=1TYEeVfydNbdvRmUvw_YfWm7wpUexbqrFm0MyB1WFlM,20760
365
+ reflex/utils/processes.py,sha256=ralnYq3tL1v_20n2ew74AlU7PQ0E4T0HllSuK1Edq_M,18125
366
366
  reflex/utils/pyi_generator.py,sha256=IiNyiodH_xq8tRLD45phe2Le3sL6ZgloVMyg07xtT3o,46395
367
367
  reflex/utils/redir.py,sha256=E6lJ6UYGQs_uCyQAKHT_dDMplo5IRZ9JarWfvgGAgGo,1731
368
368
  reflex/utils/registry.py,sha256=omKh5rrsybDuuKmh4K88lwdwwcpGsu3Vc4pCko_djKY,2239
369
- reflex/utils/rename.py,sha256=qdE4SXHOaNs-TDGrnJz-h_nvLWA1C5osVrWb4wLSfyI,5262
370
- reflex/utils/serializers.py,sha256=GbeBfoNREytB39QUlPh0aEwZicnBZAcXqz_dff7wEG4,13972
369
+ reflex/utils/rename.py,sha256=8f3laR0Zr3uizKKDD_1woPz-FZvUPjzD-fDeNHf7wBk,5232
370
+ reflex/utils/serializers.py,sha256=wc8iWlkX1AOlsfsuoNZkm3GXiZ1C_da0I9IjduTXz6s,13893
371
371
  reflex/utils/telemetry.py,sha256=KY54NmGWyJVSf9TMTcXw2V6gIbEqut1JkAXmmtIlRfw,10776
372
- reflex/utils/templates.py,sha256=tWo3jO6laQX8b0gUsqHkio_hUQGIvFbmXC-lxiGcdRo,14251
372
+ reflex/utils/templates.py,sha256=FWtO6kZldDK3MPj39LitPlcyWV9_Z8Ys6G9anitv94A,14108
373
373
  reflex/utils/token_manager.py,sha256=ZtrYR0X8tTs8FpQHtMb09-H2V1xSoLWwVH8jW8OCrU8,7445
374
374
  reflex/utils/types.py,sha256=v2shXUDPqsgrxXDwrP9JYYgSTwZht0YjAo5c1mDDI8M,38543
375
375
  reflex/vars/__init__.py,sha256=pUzFFkY-brpEoqYHQc41VefaOdPQG6xzjer1RJy9IKo,1264
376
376
  reflex/vars/base.py,sha256=xqdYqsWmtN86diCB1g9Wwptczeebf1Jv1l4fxVRw30M,110394
377
- reflex/vars/color.py,sha256=gfRixUyPQAVJfkD7mHNRnN1Re-YB4ajOXwEIeJ3PWvY,5880
377
+ reflex/vars/color.py,sha256=fpc3u9_H9R_DVawKMOf3tV1NDSnOs0aPHt4k1Lyu_KY,4085
378
378
  reflex/vars/datetime.py,sha256=F2Jv_bfydipFSkIQ1F6x5MnSgFEyES9Vq5RG_uGH81E,5118
379
379
  reflex/vars/dep_tracking.py,sha256=LfDGgAGlqfC0DeiVcitRBcA1uCe1C3fNRARRekLgCz4,13738
380
380
  reflex/vars/function.py,sha256=0i-VkxHkDJmZtfQUwUfaF0rlS6WM8azjwQ8k7rEOkyk,13944
@@ -382,8 +382,8 @@ reflex/vars/number.py,sha256=FP5Jmd8qOwZgGHUG9DSmneBB4X6bj7G8oIDYsDw_j80,28242
382
382
  reflex/vars/object.py,sha256=p7dyn9rD6rVJlHQ_RcDTBgsU_AlbwYklGjx1HK3XxZg,16565
383
383
  reflex/vars/sequence.py,sha256=fbwA7ImcPbic4NPW4Fp81ty0X7PQlr751vLvfGeST1Q,51439
384
384
  scripts/hatch_build.py,sha256=-4pxcLSFmirmujGpQX9UUxjhIC03tQ_fIQwVbHu9kc0,1861
385
- reflex-0.8.13.dist-info/METADATA,sha256=oWUuPja1foi4fUaxnHYljrMxV9_dWu7MKxKeHWHNE8Y,12334
386
- reflex-0.8.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
387
- reflex-0.8.13.dist-info/entry_points.txt,sha256=Rxt4dXc7MLBNt5CSHTehVPuSe9Xqow4HLX55nD9tQQ0,45
388
- reflex-0.8.13.dist-info/licenses/LICENSE,sha256=dw3zLrp9f5ObD7kqS32vWfhcImfO52PMmRqvtxq_YEE,11358
389
- reflex-0.8.13.dist-info/RECORD,,
385
+ reflex-0.8.14a1.dist-info/METADATA,sha256=thlmwjYzdbkzOOg-bsaX-Sf9zLRSzXlCuKYNsO_BA8A,12336
386
+ reflex-0.8.14a1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
387
+ reflex-0.8.14a1.dist-info/entry_points.txt,sha256=Rxt4dXc7MLBNt5CSHTehVPuSe9Xqow4HLX55nD9tQQ0,45
388
+ reflex-0.8.14a1.dist-info/licenses/LICENSE,sha256=dw3zLrp9f5ObD7kqS32vWfhcImfO52PMmRqvtxq_YEE,11358
389
+ reflex-0.8.14a1.dist-info/RECORD,,