diff --git a/.gitignore b/.gitignore index bbaa8f0c9..0f7d9e5ff 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ assets/external/* dist/* examples/ +.web .idea .vscode .coverage diff --git a/benchmarks/test_benchmark_compile_pages.py b/benchmarks/test_benchmark_compile_pages.py index 00fc86ff9..33404bca7 100644 --- a/benchmarks/test_benchmark_compile_pages.py +++ b/benchmarks/test_benchmark_compile_pages.py @@ -7,7 +7,6 @@ import time from typing import Generator import pytest -import reflex_chakra as rc from benchmarks import WINDOWS_SKIP_REASON from reflex import constants @@ -131,6 +130,7 @@ def render_multiple_pages(app, num: int): def AppWithOnePage(): """A reflex app with one page.""" + import reflex_chakra as rc from rxconfig import config # type: ignore import reflex as rx diff --git a/integration/test_background_task.py b/integration/test_background_task.py index 45866ba00..3764f67b4 100644 --- a/integration/test_background_task.py +++ b/integration/test_background_task.py @@ -87,6 +87,13 @@ def BackgroundTask(): third_state = await self.get_state(ThirdState) await third_state._triple_count() + @rx.background + async def yield_in_async_with_self(self): + async with self: + self.counter += 1 + yield + self.counter += 1 + class OtherState(rx.State): @rx.background async def get_other_state(self): @@ -155,6 +162,11 @@ def BackgroundTask(): on_click=OtherState.get_other_state, id="increment-from-other-state", ), + rx.button( + "Yield in Async with Self", + on_click=State.yield_in_async_with_self, + id="yield-in-async-with-self", + ), rx.button("Reset", on_click=State.reset_counter, id="reset"), ) @@ -334,3 +346,30 @@ def test_get_state( increment_button.click() assert background_task._poll_for(lambda: counter.text == "13", timeout=5) + + +def test_yield_in_async_with_self( + background_task: AppHarness, + driver: WebDriver, + token: str, +): + """Test that yielding inside async with self does not disable mutability. + + Args: + background_task: harness for BackgroundTask app. + driver: WebDriver instance. + token: The token for the connected client. + """ + assert background_task.app_instance is not None + + # get a reference to all buttons + yield_in_async_with_self_button = driver.find_element( + By.ID, "yield-in-async-with-self" + ) + + # get a reference to the counter + counter = driver.find_element(By.ID, "counter") + assert background_task._poll_for(lambda: counter.text == "0", timeout=5) + + yield_in_async_with_self_button.click() + assert background_task._poll_for(lambda: counter.text == "2", timeout=5) diff --git a/integration/test_form_submit.py b/integration/test_form_submit.py index 7858cce77..acc6bca96 100644 --- a/integration/test_form_submit.py +++ b/integration/test_form_submit.py @@ -272,6 +272,8 @@ async def test_submit(driver, form_submit: AppHarness): form_data = format.collect_form_dict_names(form_data) + print(form_data) + assert form_data["name_input"] == "foo" assert form_data["pin_input"] == pin_values assert form_data["number_input"] == "-3" diff --git a/integration/test_tailwind.py b/integration/test_tailwind.py index 491eba538..a3d90e645 100644 --- a/integration/test_tailwind.py +++ b/integration/test_tailwind.py @@ -109,7 +109,7 @@ def test_tailwind_app(tailwind_app: AppHarness, tailwind_disabled: bool): assert len(paragraphs) == 3 for p in paragraphs: assert tailwind_app.poll_for_content(p, exp_not_equal="") == PARAGRAPH_TEXT - assert p.value_of_css_property("font-family") == "monospace" + assert p.value_of_css_property("font-family") == '"monospace"' if tailwind_disabled: # expect default color, not "text-red-500" from tailwind utility class assert p.value_of_css_property("color") not in TEXT_RED_500_COLOR diff --git a/integration/test_var_operations.py b/integration/test_var_operations.py index e88449b69..7a8f5473a 100644 --- a/integration/test_var_operations.py +++ b/integration/test_var_operations.py @@ -17,6 +17,8 @@ def VarOperations(): import reflex_chakra as rc import reflex as rx + from reflex.ivars.base import LiteralVar + from reflex.ivars.sequence import ArrayVar class VarOperationState(rx.State): int_var1: int = 10 @@ -31,8 +33,8 @@ def VarOperations(): str_var2: str = "second" str_var3: str = "ThIrD" str_var4: str = "a long string" - dict1: Dict = {1: 2} - dict2: Dict = {3: 4} + dict1: Dict[int, int] = {1: 2} + dict2: Dict[int, int] = {3: 4} html_str: str = "
hello
" app = rx.App(state=rx.State) @@ -549,29 +551,29 @@ def VarOperations(): "second", query=[VarOperationState.str_var2], ), - rx.text(rx.Var.range(2, 5).join(","), id="list_join_range1"), - rx.text(rx.Var.range(2, 10, 2).join(","), id="list_join_range2"), - rx.text(rx.Var.range(5, 0, -1).join(","), id="list_join_range3"), - rx.text(rx.Var.range(0, 3).join(","), id="list_join_range4"), + rx.text(ArrayVar.range(2, 5).join(","), id="list_join_range1"), + rx.text(ArrayVar.range(2, 10, 2).join(","), id="list_join_range2"), + rx.text(ArrayVar.range(5, 0, -1).join(","), id="list_join_range3"), + rx.text(ArrayVar.range(0, 3).join(","), id="list_join_range4"), rx.box( rx.foreach( - rx.Var.range(0, 2), + ArrayVar.range(0, 2), lambda x: rx.text(VarOperationState.list1[x], as_="p"), ), id="foreach_list_arg", ), rx.box( rx.foreach( - rx.Var.range(0, 2), + ArrayVar.range(0, 2), lambda x, ix: rx.text(VarOperationState.list1[ix], as_="p"), ), id="foreach_list_ix", ), rx.box( rx.foreach( - rx.Var.create_safe(list(range(0, 3))).to(List[int]), + LiteralVar.create(list(range(0, 3))).to(ArrayVar, List[int]), lambda x: rx.foreach( - rx.Var.range(x), + ArrayVar.range(x), lambda y: rx.text(VarOperationState.list1[y], as_="p"), ), ), @@ -785,6 +787,7 @@ def test_var_operations(driver, var_operations: AppHarness): ] for tag, expected in tests: + print(tag) assert driver.find_element(By.ID, tag).text == expected # Highlight component with var query (does not plumb ID) diff --git a/poetry.lock b/poetry.lock index ece4d6ce5..b8e88b5ed 100644 --- a/poetry.lock +++ b/poetry.lock @@ -151,89 +151,89 @@ virtualenv = ["virtualenv (>=20.0.35)"] [[package]] name = "certifi" -version = "2024.7.4" +version = "2024.8.30" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" files = [ - {file = "certifi-2024.7.4-py3-none-any.whl", hash = "sha256:c198e21b1289c2ab85ee4e67bb4b4ef3ead0892059901a8d5b622f24a1101e90"}, - {file = "certifi-2024.7.4.tar.gz", hash = "sha256:5a1e7645bc0ec61a09e26c36f6106dd4cf40c6db3a1fb6352b0244e7fb057c7b"}, + {file = "certifi-2024.8.30-py3-none-any.whl", hash = "sha256:922820b53db7a7257ffbda3f597266d435245903d80737e34f8a45ff3e3230d8"}, + {file = "certifi-2024.8.30.tar.gz", hash = "sha256:bec941d2aa8195e248a60b31ff9f0558284cf01a52591ceda73ea9afffd69fd9"}, ] [[package]] name = "cffi" -version = "1.17.0" +version = "1.17.1" description = "Foreign Function Interface for Python calling C code." optional = false python-versions = ">=3.8" files = [ - {file = "cffi-1.17.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f9338cc05451f1942d0d8203ec2c346c830f8e86469903d5126c1f0a13a2bcbb"}, - {file = "cffi-1.17.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a0ce71725cacc9ebf839630772b07eeec220cbb5f03be1399e0457a1464f8e1a"}, - {file = "cffi-1.17.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c815270206f983309915a6844fe994b2fa47e5d05c4c4cef267c3b30e34dbe42"}, - {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6bdcd415ba87846fd317bee0774e412e8792832e7805938987e4ede1d13046d"}, - {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8a98748ed1a1df4ee1d6f927e151ed6c1a09d5ec21684de879c7ea6aa96f58f2"}, - {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0a048d4f6630113e54bb4b77e315e1ba32a5a31512c31a273807d0027a7e69ab"}, - {file = "cffi-1.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24aa705a5f5bd3a8bcfa4d123f03413de5d86e497435693b638cbffb7d5d8a1b"}, - {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:856bf0924d24e7f93b8aee12a3a1095c34085600aa805693fb7f5d1962393206"}, - {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:4304d4416ff032ed50ad6bb87416d802e67139e31c0bde4628f36a47a3164bfa"}, - {file = "cffi-1.17.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:331ad15c39c9fe9186ceaf87203a9ecf5ae0ba2538c9e898e3a6967e8ad3db6f"}, - {file = "cffi-1.17.0-cp310-cp310-win32.whl", hash = "sha256:669b29a9eca6146465cc574659058ed949748f0809a2582d1f1a324eb91054dc"}, - {file = "cffi-1.17.0-cp310-cp310-win_amd64.whl", hash = "sha256:48b389b1fd5144603d61d752afd7167dfd205973a43151ae5045b35793232aa2"}, - {file = "cffi-1.17.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c5d97162c196ce54af6700949ddf9409e9833ef1003b4741c2b39ef46f1d9720"}, - {file = "cffi-1.17.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ba5c243f4004c750836f81606a9fcb7841f8874ad8f3bf204ff5e56332b72b9"}, - {file = "cffi-1.17.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bb9333f58fc3a2296fb1d54576138d4cf5d496a2cc118422bd77835e6ae0b9cb"}, - {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:435a22d00ec7d7ea533db494da8581b05977f9c37338c80bc86314bec2619424"}, - {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d1df34588123fcc88c872f5acb6f74ae59e9d182a2707097f9e28275ec26a12d"}, - {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:df8bb0010fdd0a743b7542589223a2816bdde4d94bb5ad67884348fa2c1c67e8"}, - {file = "cffi-1.17.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8b5b9712783415695663bd463990e2f00c6750562e6ad1d28e072a611c5f2a6"}, - {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ffef8fd58a36fb5f1196919638f73dd3ae0db1a878982b27a9a5a176ede4ba91"}, - {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4e67d26532bfd8b7f7c05d5a766d6f437b362c1bf203a3a5ce3593a645e870b8"}, - {file = "cffi-1.17.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:45f7cd36186db767d803b1473b3c659d57a23b5fa491ad83c6d40f2af58e4dbb"}, - {file = "cffi-1.17.0-cp311-cp311-win32.whl", hash = "sha256:a9015f5b8af1bb6837a3fcb0cdf3b874fe3385ff6274e8b7925d81ccaec3c5c9"}, - {file = "cffi-1.17.0-cp311-cp311-win_amd64.whl", hash = "sha256:b50aaac7d05c2c26dfd50c3321199f019ba76bb650e346a6ef3616306eed67b0"}, - {file = "cffi-1.17.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aec510255ce690d240f7cb23d7114f6b351c733a74c279a84def763660a2c3bc"}, - {file = "cffi-1.17.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2770bb0d5e3cc0e31e7318db06efcbcdb7b31bcb1a70086d3177692a02256f59"}, - {file = "cffi-1.17.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db9a30ec064129d605d0f1aedc93e00894b9334ec74ba9c6bdd08147434b33eb"}, - {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a47eef975d2b8b721775a0fa286f50eab535b9d56c70a6e62842134cf7841195"}, - {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f3e0992f23bbb0be00a921eae5363329253c3b86287db27092461c887b791e5e"}, - {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6107e445faf057c118d5050560695e46d272e5301feffda3c41849641222a828"}, - {file = "cffi-1.17.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb862356ee9391dc5a0b3cbc00f416b48c1b9a52d252d898e5b7696a5f9fe150"}, - {file = "cffi-1.17.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c1c13185b90bbd3f8b5963cd8ce7ad4ff441924c31e23c975cb150e27c2bf67a"}, - {file = "cffi-1.17.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:17c6d6d3260c7f2d94f657e6872591fe8733872a86ed1345bda872cfc8c74885"}, - {file = "cffi-1.17.0-cp312-cp312-win32.whl", hash = "sha256:c3b8bd3133cd50f6b637bb4322822c94c5ce4bf0d724ed5ae70afce62187c492"}, - {file = "cffi-1.17.0-cp312-cp312-win_amd64.whl", hash = "sha256:dca802c8db0720ce1c49cce1149ff7b06e91ba15fa84b1d59144fef1a1bc7ac2"}, - {file = "cffi-1.17.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:6ce01337d23884b21c03869d2f68c5523d43174d4fc405490eb0091057943118"}, - {file = "cffi-1.17.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cab2eba3830bf4f6d91e2d6718e0e1c14a2f5ad1af68a89d24ace0c6b17cced7"}, - {file = "cffi-1.17.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:14b9cbc8f7ac98a739558eb86fabc283d4d564dafed50216e7f7ee62d0d25377"}, - {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b00e7bcd71caa0282cbe3c90966f738e2db91e64092a877c3ff7f19a1628fdcb"}, - {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:41f4915e09218744d8bae14759f983e466ab69b178de38066f7579892ff2a555"}, - {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e4760a68cab57bfaa628938e9c2971137e05ce48e762a9cb53b76c9b569f1204"}, - {file = "cffi-1.17.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:011aff3524d578a9412c8b3cfaa50f2c0bd78e03eb7af7aa5e0df59b158efb2f"}, - {file = "cffi-1.17.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:a003ac9edc22d99ae1286b0875c460351f4e101f8c9d9d2576e78d7e048f64e0"}, - {file = "cffi-1.17.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ef9528915df81b8f4c7612b19b8628214c65c9b7f74db2e34a646a0a2a0da2d4"}, - {file = "cffi-1.17.0-cp313-cp313-win32.whl", hash = "sha256:70d2aa9fb00cf52034feac4b913181a6e10356019b18ef89bc7c12a283bf5f5a"}, - {file = "cffi-1.17.0-cp313-cp313-win_amd64.whl", hash = "sha256:b7b6ea9e36d32582cda3465f54c4b454f62f23cb083ebc7a94e2ca6ef011c3a7"}, - {file = "cffi-1.17.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:964823b2fc77b55355999ade496c54dde161c621cb1f6eac61dc30ed1b63cd4c"}, - {file = "cffi-1.17.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:516a405f174fd3b88829eabfe4bb296ac602d6a0f68e0d64d5ac9456194a5b7e"}, - {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dec6b307ce928e8e112a6bb9921a1cb00a0e14979bf28b98e084a4b8a742bd9b"}, - {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4094c7b464cf0a858e75cd14b03509e84789abf7b79f8537e6a72152109c76e"}, - {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2404f3de742f47cb62d023f0ba7c5a916c9c653d5b368cc966382ae4e57da401"}, - {file = "cffi-1.17.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3aa9d43b02a0c681f0bfbc12d476d47b2b2b6a3f9287f11ee42989a268a1833c"}, - {file = "cffi-1.17.0-cp38-cp38-win32.whl", hash = "sha256:0bb15e7acf8ab35ca8b24b90af52c8b391690ef5c4aec3d31f38f0d37d2cc499"}, - {file = "cffi-1.17.0-cp38-cp38-win_amd64.whl", hash = "sha256:93a7350f6706b31f457c1457d3a3259ff9071a66f312ae64dc024f049055f72c"}, - {file = "cffi-1.17.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1a2ddbac59dc3716bc79f27906c010406155031a1c801410f1bafff17ea304d2"}, - {file = "cffi-1.17.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6327b572f5770293fc062a7ec04160e89741e8552bf1c358d1a23eba68166759"}, - {file = "cffi-1.17.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dbc183e7bef690c9abe5ea67b7b60fdbca81aa8da43468287dae7b5c046107d4"}, - {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5bdc0f1f610d067c70aa3737ed06e2726fd9d6f7bfee4a351f4c40b6831f4e82"}, - {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6d872186c1617d143969defeadac5a904e6e374183e07977eedef9c07c8953bf"}, - {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0d46ee4764b88b91f16661a8befc6bfb24806d885e27436fdc292ed7e6f6d058"}, - {file = "cffi-1.17.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f76a90c345796c01d85e6332e81cab6d70de83b829cf1d9762d0a3da59c7932"}, - {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0e60821d312f99d3e1569202518dddf10ae547e799d75aef3bca3a2d9e8ee693"}, - {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:eb09b82377233b902d4c3fbeeb7ad731cdab579c6c6fda1f763cd779139e47c3"}, - {file = "cffi-1.17.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:24658baf6224d8f280e827f0a50c46ad819ec8ba380a42448e24459daf809cf4"}, - {file = "cffi-1.17.0-cp39-cp39-win32.whl", hash = "sha256:0fdacad9e0d9fc23e519efd5ea24a70348305e8d7d85ecbb1a5fa66dc834e7fb"}, - {file = "cffi-1.17.0-cp39-cp39-win_amd64.whl", hash = "sha256:7cbc78dc018596315d4e7841c8c3a7ae31cc4d638c9b627f87d52e8abaaf2d29"}, - {file = "cffi-1.17.0.tar.gz", hash = "sha256:f3157624b7558b914cb039fd1af735e5e8049a87c817cc215109ad1c8779df76"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be"}, + {file = "cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c"}, + {file = "cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b"}, + {file = "cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655"}, + {file = "cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8"}, + {file = "cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65"}, + {file = "cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9"}, + {file = "cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d"}, + {file = "cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a"}, + {file = "cffi-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1"}, + {file = "cffi-1.17.1-cp38-cp38-win32.whl", hash = "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8"}, + {file = "cffi-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e"}, + {file = "cffi-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7"}, + {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"}, + {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"}, ] [package.dependencies] @@ -463,38 +463,38 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "43.0.0" +version = "43.0.1" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-43.0.0-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:64c3f16e2a4fc51c0d06af28441881f98c5d91009b8caaff40cf3548089e9c74"}, - {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3dcdedae5c7710b9f97ac6bba7e1052b95c7083c9d0e9df96e02a1932e777895"}, - {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d9a1eca329405219b605fac09ecfc09ac09e595d6def650a437523fcd08dd22"}, - {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ea9e57f8ea880eeea38ab5abf9fbe39f923544d7884228ec67d666abd60f5a47"}, - {file = "cryptography-43.0.0-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:9a8d6802e0825767476f62aafed40532bd435e8a5f7d23bd8b4f5fd04cc80ecf"}, - {file = "cryptography-43.0.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:cc70b4b581f28d0a254d006f26949245e3657d40d8857066c2ae22a61222ef55"}, - {file = "cryptography-43.0.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4a997df8c1c2aae1e1e5ac49c2e4f610ad037fc5a3aadc7b64e39dea42249431"}, - {file = "cryptography-43.0.0-cp37-abi3-win32.whl", hash = "sha256:6e2b11c55d260d03a8cf29ac9b5e0608d35f08077d8c087be96287f43af3ccdc"}, - {file = "cryptography-43.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:31e44a986ceccec3d0498e16f3d27b2ee5fdf69ce2ab89b52eaad1d2f33d8778"}, - {file = "cryptography-43.0.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:7b3f5fe74a5ca32d4d0f302ffe6680fcc5c28f8ef0dc0ae8f40c0f3a1b4fca66"}, - {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac1955ce000cb29ab40def14fd1bbfa7af2017cca696ee696925615cafd0dce5"}, - {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:299d3da8e00b7e2b54bb02ef58d73cd5f55fb31f33ebbf33bd00d9aa6807df7e"}, - {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:ee0c405832ade84d4de74b9029bedb7b31200600fa524d218fc29bfa371e97f5"}, - {file = "cryptography-43.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cb013933d4c127349b3948aa8aaf2f12c0353ad0eccd715ca789c8a0f671646f"}, - {file = "cryptography-43.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fdcb265de28585de5b859ae13e3846a8e805268a823a12a4da2597f1f5afc9f0"}, - {file = "cryptography-43.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2905ccf93a8a2a416f3ec01b1a7911c3fe4073ef35640e7ee5296754e30b762b"}, - {file = "cryptography-43.0.0-cp39-abi3-win32.whl", hash = "sha256:47ca71115e545954e6c1d207dd13461ab81f4eccfcb1345eac874828b5e3eaaf"}, - {file = "cryptography-43.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:0663585d02f76929792470451a5ba64424acc3cd5227b03921dab0e2f27b1709"}, - {file = "cryptography-43.0.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2c6d112bf61c5ef44042c253e4859b3cbbb50df2f78fa8fae6747a7814484a70"}, - {file = "cryptography-43.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:844b6d608374e7d08f4f6e6f9f7b951f9256db41421917dfb2d003dde4cd6b66"}, - {file = "cryptography-43.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:51956cf8730665e2bdf8ddb8da0056f699c1a5715648c1b0144670c1ba00b48f"}, - {file = "cryptography-43.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:aae4d918f6b180a8ab8bf6511a419473d107df4dbb4225c7b48c5c9602c38c7f"}, - {file = "cryptography-43.0.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:232ce02943a579095a339ac4b390fbbe97f5b5d5d107f8a08260ea2768be8cc2"}, - {file = "cryptography-43.0.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5bcb8a5620008a8034d39bce21dc3e23735dfdb6a33a06974739bfa04f853947"}, - {file = "cryptography-43.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:08a24a7070b2b6804c1940ff0f910ff728932a9d0e80e7814234269f9d46d069"}, - {file = "cryptography-43.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e9c5266c432a1e23738d178e51c2c7a5e2ddf790f248be939448c0ba2021f9d1"}, - {file = "cryptography-43.0.0.tar.gz", hash = "sha256:b88075ada2d51aa9f18283532c9f60e72170041bba88d7f37e49cbb10275299e"}, + {file = "cryptography-43.0.1-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:8385d98f6a3bf8bb2d65a73e17ed87a3ba84f6991c155691c51112075f9ffc5d"}, + {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:27e613d7077ac613e399270253259d9d53872aaf657471473ebfc9a52935c062"}, + {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68aaecc4178e90719e95298515979814bda0cbada1256a4485414860bd7ab962"}, + {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:de41fd81a41e53267cb020bb3a7212861da53a7d39f863585d13ea11049cf277"}, + {file = "cryptography-43.0.1-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f98bf604c82c416bc829e490c700ca1553eafdf2912a91e23a79d97d9801372a"}, + {file = "cryptography-43.0.1-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:61ec41068b7b74268fa86e3e9e12b9f0c21fcf65434571dbb13d954bceb08042"}, + {file = "cryptography-43.0.1-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:014f58110f53237ace6a408b5beb6c427b64e084eb451ef25a28308270086494"}, + {file = "cryptography-43.0.1-cp37-abi3-win32.whl", hash = "sha256:2bd51274dcd59f09dd952afb696bf9c61a7a49dfc764c04dd33ef7a6b502a1e2"}, + {file = "cryptography-43.0.1-cp37-abi3-win_amd64.whl", hash = "sha256:666ae11966643886c2987b3b721899d250855718d6d9ce41b521252a17985f4d"}, + {file = "cryptography-43.0.1-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:ac119bb76b9faa00f48128b7f5679e1d8d437365c5d26f1c2c3f0da4ce1b553d"}, + {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1bbcce1a551e262dfbafb6e6252f1ae36a248e615ca44ba302df077a846a8806"}, + {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58d4e9129985185a06d849aa6df265bdd5a74ca6e1b736a77959b498e0505b85"}, + {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:d03a475165f3134f773d1388aeb19c2d25ba88b6a9733c5c590b9ff7bbfa2e0c"}, + {file = "cryptography-43.0.1-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:511f4273808ab590912a93ddb4e3914dfd8a388fed883361b02dea3791f292e1"}, + {file = "cryptography-43.0.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:80eda8b3e173f0f247f711eef62be51b599b5d425c429b5d4ca6a05e9e856baa"}, + {file = "cryptography-43.0.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:38926c50cff6f533f8a2dae3d7f19541432610d114a70808f0926d5aaa7121e4"}, + {file = "cryptography-43.0.1-cp39-abi3-win32.whl", hash = "sha256:a575913fb06e05e6b4b814d7f7468c2c660e8bb16d8d5a1faf9b33ccc569dd47"}, + {file = "cryptography-43.0.1-cp39-abi3-win_amd64.whl", hash = "sha256:d75601ad10b059ec832e78823b348bfa1a59f6b8d545db3a24fd44362a1564cb"}, + {file = "cryptography-43.0.1-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:ea25acb556320250756e53f9e20a4177515f012c9eaea17eb7587a8c4d8ae034"}, + {file = "cryptography-43.0.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:c1332724be35d23a854994ff0b66530119500b6053d0bd3363265f7e5e77288d"}, + {file = "cryptography-43.0.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:fba1007b3ef89946dbbb515aeeb41e30203b004f0b4b00e5e16078b518563289"}, + {file = "cryptography-43.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5b43d1ea6b378b54a1dc99dd8a2b5be47658fe9a7ce0a58ff0b55f4b43ef2b84"}, + {file = "cryptography-43.0.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:88cce104c36870d70c49c7c8fd22885875d950d9ee6ab54df2745f83ba0dc365"}, + {file = "cryptography-43.0.1-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:9d3cdb25fa98afdd3d0892d132b8d7139e2c087da1712041f6b762e4f807cc96"}, + {file = "cryptography-43.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e710bf40870f4db63c3d7d929aa9e09e4e7ee219e703f949ec4073b4294f6172"}, + {file = "cryptography-43.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7c05650fe8023c5ed0d46793d4b7d7e6cd9c04e68eabe5b0aeea836e37bdcec2"}, + {file = "cryptography-43.0.1.tar.gz", hash = "sha256:203e92a75716d8cfb491dc47c79e17d0d9207ccffcbcb35f598fbe463ae3444d"}, ] [package.dependencies] @@ -507,7 +507,7 @@ nox = ["nox"] pep8test = ["check-sdist", "click", "mypy", "ruff"] sdist = ["build"] ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "cryptography-vectors (==43.0.0)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test = ["certifi", "cryptography-vectors (==43.0.1)", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] test-randomorder = ["pytest-randomly"] [[package]] @@ -582,22 +582,23 @@ test = ["pytest (>=6)"] [[package]] name = "fastapi" -version = "0.110.3" +version = "0.113.0" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = false python-versions = ">=3.8" files = [ - {file = "fastapi-0.110.3-py3-none-any.whl", hash = "sha256:fd7600612f755e4050beb74001310b5a7e1796d149c2ee363124abdfa0289d32"}, - {file = "fastapi-0.110.3.tar.gz", hash = "sha256:555700b0159379e94fdbfc6bb66a0f1c43f4cf7060f25239af3d84b63a656626"}, + {file = "fastapi-0.113.0-py3-none-any.whl", hash = "sha256:c8d364485b6361fb643d53920a18d58a696e189abcb901ec03b487e35774c476"}, + {file = "fastapi-0.113.0.tar.gz", hash = "sha256:b7cf9684dc154dfc93f8b718e5850577b529889096518df44defa41e73caf50f"}, ] [package.dependencies] pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" -starlette = ">=0.37.2,<0.38.0" +starlette = ">=0.37.2,<0.39.0" typing-extensions = ">=4.8.0" [package.extras] -all = ["email_validator (>=2.0.0)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.7)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +all = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "itsdangerous (>=1.1.0)", "jinja2 (>=2.11.2)", "orjson (>=3.2.1)", "pydantic-extra-types (>=2.0.0)", "pydantic-settings (>=2.0.0)", "python-multipart (>=0.0.7)", "pyyaml (>=5.3.1)", "ujson (>=4.0.1,!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0)", "uvicorn[standard] (>=0.12.0)"] +standard = ["email-validator (>=2.0.0)", "fastapi-cli[standard] (>=0.0.5)", "httpx (>=0.23.0)", "jinja2 (>=2.11.2)", "python-multipart (>=0.0.7)", "uvicorn[standard] (>=0.12.0)"] [[package]] name = "filelock" @@ -688,13 +689,13 @@ test = ["objgraph", "psutil"] [[package]] name = "gunicorn" -version = "22.0.0" +version = "23.0.0" description = "WSGI HTTP Server for UNIX" optional = false python-versions = ">=3.7" files = [ - {file = "gunicorn-22.0.0-py3-none-any.whl", hash = "sha256:350679f91b24062c86e386e198a15438d53a7a8207235a78ba1b53df4c4378d9"}, - {file = "gunicorn-22.0.0.tar.gz", hash = "sha256:4a0b436239ff76fb33f11c07a16482c521a7e09c1ce3cc293c2330afe01bec63"}, + {file = "gunicorn-23.0.0-py3-none-any.whl", hash = "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d"}, + {file = "gunicorn-23.0.0.tar.gz", hash = "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec"}, ] [package.dependencies] @@ -741,13 +742,13 @@ trio = ["trio (>=0.22.0,<0.26.0)"] [[package]] name = "httpx" -version = "0.27.0" +version = "0.27.2" description = "The next generation HTTP client." optional = false python-versions = ">=3.8" files = [ - {file = "httpx-0.27.0-py3-none-any.whl", hash = "sha256:71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"}, - {file = "httpx-0.27.0.tar.gz", hash = "sha256:a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5"}, + {file = "httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0"}, + {file = "httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2"}, ] [package.dependencies] @@ -762,6 +763,7 @@ brotli = ["brotli", "brotlicffi"] cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] [[package]] name = "identify" @@ -779,13 +781,13 @@ license = ["ukkonen"] [[package]] name = "idna" -version = "3.7" +version = "3.8" description = "Internationalized Domain Names in Applications (IDNA)" optional = false -python-versions = ">=3.5" +python-versions = ">=3.6" files = [ - {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, - {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, + {file = "idna-3.8-py3-none-any.whl", hash = "sha256:050b4e5baadcd44d760cedbd2b8e639f2ff89bbc7a5730fcc662954303377aac"}, + {file = "idna-3.8.tar.gz", hash = "sha256:d838c2c0ed6fced7693d5e8ab8e734d5f8fda53a039c0164afb0b82e771e3603"}, ] [[package]] @@ -1096,13 +1098,13 @@ files = [ [[package]] name = "more-itertools" -version = "10.4.0" +version = "10.5.0" description = "More routines for operating on iterables, beyond itertools" optional = false python-versions = ">=3.8" files = [ - {file = "more-itertools-10.4.0.tar.gz", hash = "sha256:fe0e63c4ab068eac62410ab05cccca2dc71ec44ba8ef29916a0090df061cf923"}, - {file = "more_itertools-10.4.0-py3-none-any.whl", hash = "sha256:0f7d9f83a0a8dcfa8a2694a770590d98a67ea943e3d9f5298309a484758c4e27"}, + {file = "more-itertools-10.5.0.tar.gz", hash = "sha256:5482bfef7849c25dc3c6dd53a6173ae4795da2a41a80faea6700d9f5846c5da6"}, + {file = "more_itertools-10.5.0-py3-none-any.whl", hash = "sha256:037b0d3203ce90cca8ab1defbbdac29d5f993fc20131f3664dc8d6acfa872aef"}, ] [[package]] @@ -1180,117 +1182,118 @@ files = [ [[package]] name = "numpy" -version = "2.0.1" +version = "2.0.2" description = "Fundamental package for array computing in Python" optional = false python-versions = ">=3.9" files = [ - {file = "numpy-2.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0fbb536eac80e27a2793ffd787895242b7f18ef792563d742c2d673bfcb75134"}, - {file = "numpy-2.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:69ff563d43c69b1baba77af455dd0a839df8d25e8590e79c90fcbe1499ebde42"}, - {file = "numpy-2.0.1-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:1b902ce0e0a5bb7704556a217c4f63a7974f8f43e090aff03fcf262e0b135e02"}, - {file = "numpy-2.0.1-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:f1659887361a7151f89e79b276ed8dff3d75877df906328f14d8bb40bb4f5101"}, - {file = "numpy-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4658c398d65d1b25e1760de3157011a80375da861709abd7cef3bad65d6543f9"}, - {file = "numpy-2.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4127d4303b9ac9f94ca0441138acead39928938660ca58329fe156f84b9f3015"}, - {file = "numpy-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e5eeca8067ad04bc8a2a8731183d51d7cbaac66d86085d5f4766ee6bf19c7f87"}, - {file = "numpy-2.0.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:9adbd9bb520c866e1bfd7e10e1880a1f7749f1f6e5017686a5fbb9b72cf69f82"}, - {file = "numpy-2.0.1-cp310-cp310-win32.whl", hash = "sha256:7b9853803278db3bdcc6cd5beca37815b133e9e77ff3d4733c247414e78eb8d1"}, - {file = "numpy-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:81b0893a39bc5b865b8bf89e9ad7807e16717f19868e9d234bdaf9b1f1393868"}, - {file = "numpy-2.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75b4e316c5902d8163ef9d423b1c3f2f6252226d1aa5cd8a0a03a7d01ffc6268"}, - {file = "numpy-2.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6e4eeb6eb2fced786e32e6d8df9e755ce5be920d17f7ce00bc38fcde8ccdbf9e"}, - {file = "numpy-2.0.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:a1e01dcaab205fbece13c1410253a9eea1b1c9b61d237b6fa59bcc46e8e89343"}, - {file = "numpy-2.0.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:a8fc2de81ad835d999113ddf87d1ea2b0f4704cbd947c948d2f5513deafe5a7b"}, - {file = "numpy-2.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a3d94942c331dd4e0e1147f7a8699a4aa47dffc11bf8a1523c12af8b2e91bbe"}, - {file = "numpy-2.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15eb4eca47d36ec3f78cde0a3a2ee24cf05ca7396ef808dda2c0ddad7c2bde67"}, - {file = "numpy-2.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b83e16a5511d1b1f8a88cbabb1a6f6a499f82c062a4251892d9ad5d609863fb7"}, - {file = "numpy-2.0.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1f87fec1f9bc1efd23f4227becff04bd0e979e23ca50cc92ec88b38489db3b55"}, - {file = "numpy-2.0.1-cp311-cp311-win32.whl", hash = "sha256:36d3a9405fd7c511804dc56fc32974fa5533bdeb3cd1604d6b8ff1d292b819c4"}, - {file = "numpy-2.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:08458fbf403bff5e2b45f08eda195d4b0c9b35682311da5a5a0a0925b11b9bd8"}, - {file = "numpy-2.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6bf4e6f4a2a2e26655717a1983ef6324f2664d7011f6ef7482e8c0b3d51e82ac"}, - {file = "numpy-2.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7d6fddc5fe258d3328cd8e3d7d3e02234c5d70e01ebe377a6ab92adb14039cb4"}, - {file = "numpy-2.0.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:5daab361be6ddeb299a918a7c0864fa8618af66019138263247af405018b04e1"}, - {file = "numpy-2.0.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:ea2326a4dca88e4a274ba3a4405eb6c6467d3ffbd8c7d38632502eaae3820587"}, - {file = "numpy-2.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:529af13c5f4b7a932fb0e1911d3a75da204eff023ee5e0e79c1751564221a5c8"}, - {file = "numpy-2.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6790654cb13eab303d8402354fabd47472b24635700f631f041bd0b65e37298a"}, - {file = "numpy-2.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:cbab9fc9c391700e3e1287666dfd82d8666d10e69a6c4a09ab97574c0b7ee0a7"}, - {file = "numpy-2.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:99d0d92a5e3613c33a5f01db206a33f8fdf3d71f2912b0de1739894668b7a93b"}, - {file = "numpy-2.0.1-cp312-cp312-win32.whl", hash = "sha256:173a00b9995f73b79eb0191129f2455f1e34c203f559dd118636858cc452a1bf"}, - {file = "numpy-2.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:bb2124fdc6e62baae159ebcfa368708867eb56806804d005860b6007388df171"}, - {file = "numpy-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bfc085b28d62ff4009364e7ca34b80a9a080cbd97c2c0630bb5f7f770dae9414"}, - {file = "numpy-2.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8fae4ebbf95a179c1156fab0b142b74e4ba4204c87bde8d3d8b6f9c34c5825ef"}, - {file = "numpy-2.0.1-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:72dc22e9ec8f6eaa206deb1b1355eb2e253899d7347f5e2fae5f0af613741d06"}, - {file = "numpy-2.0.1-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:ec87f5f8aca726117a1c9b7083e7656a9d0d606eec7299cc067bb83d26f16e0c"}, - {file = "numpy-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f682ea61a88479d9498bf2091fdcd722b090724b08b31d63e022adc063bad59"}, - {file = "numpy-2.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8efc84f01c1cd7e34b3fb310183e72fcdf55293ee736d679b6d35b35d80bba26"}, - {file = "numpy-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3fdabe3e2a52bc4eff8dc7a5044342f8bd9f11ef0934fcd3289a788c0eb10018"}, - {file = "numpy-2.0.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:24a0e1befbfa14615b49ba9659d3d8818a0f4d8a1c5822af8696706fbda7310c"}, - {file = "numpy-2.0.1-cp39-cp39-win32.whl", hash = "sha256:f9cf5ea551aec449206954b075db819f52adc1638d46a6738253a712d553c7b4"}, - {file = "numpy-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:e9e81fa9017eaa416c056e5d9e71be93d05e2c3c2ab308d23307a8bc4443c368"}, - {file = "numpy-2.0.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:61728fba1e464f789b11deb78a57805c70b2ed02343560456190d0501ba37b0f"}, - {file = "numpy-2.0.1-pp39-pypy39_pp73-macosx_14_0_x86_64.whl", hash = "sha256:12f5d865d60fb9734e60a60f1d5afa6d962d8d4467c120a1c0cda6eb2964437d"}, - {file = "numpy-2.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eacf3291e263d5a67d8c1a581a8ebbcfd6447204ef58828caf69a5e3e8c75990"}, - {file = "numpy-2.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2c3a346ae20cfd80b6cfd3e60dc179963ef2ea58da5ec074fd3d9e7a1e7ba97f"}, - {file = "numpy-2.0.1.tar.gz", hash = "sha256:485b87235796410c3519a699cfe1faab097e509e90ebb05dcd098db2ae87e7b3"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:51129a29dbe56f9ca83438b706e2e69a39892b5eda6cedcb6b0c9fdc9b0d3ece"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f15975dfec0cf2239224d80e32c3170b1d168335eaedee69da84fbe9f1f9cd04"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:8c5713284ce4e282544c68d1c3b2c7161d38c256d2eefc93c1d683cf47683e66"}, + {file = "numpy-2.0.2-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:becfae3ddd30736fe1889a37f1f580e245ba79a5855bff5f2a29cb3ccc22dd7b"}, + {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2da5960c3cf0df7eafefd806d4e612c5e19358de82cb3c343631188991566ccd"}, + {file = "numpy-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:496f71341824ed9f3d2fd36cf3ac57ae2e0165c143b55c3a035ee219413f3318"}, + {file = "numpy-2.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a61ec659f68ae254e4d237816e33171497e978140353c0c2038d46e63282d0c8"}, + {file = "numpy-2.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d731a1c6116ba289c1e9ee714b08a8ff882944d4ad631fd411106a30f083c326"}, + {file = "numpy-2.0.2-cp310-cp310-win32.whl", hash = "sha256:984d96121c9f9616cd33fbd0618b7f08e0cfc9600a7ee1d6fd9b239186d19d97"}, + {file = "numpy-2.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:c7b0be4ef08607dd04da4092faee0b86607f111d5ae68036f16cc787e250a131"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:49ca4decb342d66018b01932139c0961a8f9ddc7589611158cb3c27cbcf76448"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:11a76c372d1d37437857280aa142086476136a8c0f373b2e648ab2c8f18fb195"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:807ec44583fd708a21d4a11d94aedf2f4f3c3719035c76a2bbe1fe8e217bdc57"}, + {file = "numpy-2.0.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:8cafab480740e22f8d833acefed5cc87ce276f4ece12fdaa2e8903db2f82897a"}, + {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a15f476a45e6e5a3a79d8a14e62161d27ad897381fecfa4a09ed5322f2085669"}, + {file = "numpy-2.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13e689d772146140a252c3a28501da66dfecd77490b498b168b501835041f951"}, + {file = "numpy-2.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9ea91dfb7c3d1c56a0e55657c0afb38cf1eeae4544c208dc465c3c9f3a7c09f9"}, + {file = "numpy-2.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c1c9307701fec8f3f7a1e6711f9089c06e6284b3afbbcd259f7791282d660a15"}, + {file = "numpy-2.0.2-cp311-cp311-win32.whl", hash = "sha256:a392a68bd329eafac5817e5aefeb39038c48b671afd242710b451e76090e81f4"}, + {file = "numpy-2.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:286cd40ce2b7d652a6f22efdfc6d1edf879440e53e76a75955bc0c826c7e64dc"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:df55d490dea7934f330006d0f81e8551ba6010a5bf035a249ef61a94f21c500b"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8df823f570d9adf0978347d1f926b2a867d5608f434a7cff7f7908c6570dcf5e"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:9a92ae5c14811e390f3767053ff54eaee3bf84576d99a2456391401323f4ec2c"}, + {file = "numpy-2.0.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:a842d573724391493a97a62ebbb8e731f8a5dcc5d285dfc99141ca15a3302d0c"}, + {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c05e238064fc0610c840d1cf6a13bf63d7e391717d247f1bf0318172e759e692"}, + {file = "numpy-2.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0123ffdaa88fa4ab64835dcbde75dcdf89c453c922f18dced6e27c90d1d0ec5a"}, + {file = "numpy-2.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:96a55f64139912d61de9137f11bf39a55ec8faec288c75a54f93dfd39f7eb40c"}, + {file = "numpy-2.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec9852fb39354b5a45a80bdab5ac02dd02b15f44b3804e9f00c556bf24b4bded"}, + {file = "numpy-2.0.2-cp312-cp312-win32.whl", hash = "sha256:671bec6496f83202ed2d3c8fdc486a8fc86942f2e69ff0e986140339a63bcbe5"}, + {file = "numpy-2.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:cfd41e13fdc257aa5778496b8caa5e856dc4896d4ccf01841daee1d96465467a"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9059e10581ce4093f735ed23f3b9d283b9d517ff46009ddd485f1747eb22653c"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:423e89b23490805d2a5a96fe40ec507407b8ee786d66f7328be214f9679df6dd"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_arm64.whl", hash = "sha256:2b2955fa6f11907cf7a70dab0d0755159bca87755e831e47932367fc8f2f2d0b"}, + {file = "numpy-2.0.2-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:97032a27bd9d8988b9a97a8c4d2c9f2c15a81f61e2f21404d7e8ef00cb5be729"}, + {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e795a8be3ddbac43274f18588329c72939870a16cae810c2b73461c40718ab1"}, + {file = "numpy-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f26b258c385842546006213344c50655ff1555a9338e2e5e02a0756dc3e803dd"}, + {file = "numpy-2.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5fec9451a7789926bcf7c2b8d187292c9f93ea30284802a0ab3f5be8ab36865d"}, + {file = "numpy-2.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:9189427407d88ff25ecf8f12469d4d39d35bee1db5d39fc5c168c6f088a6956d"}, + {file = "numpy-2.0.2-cp39-cp39-win32.whl", hash = "sha256:905d16e0c60200656500c95b6b8dca5d109e23cb24abc701d41c02d74c6b3afa"}, + {file = "numpy-2.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:a3f4ab0caa7f053f6797fcd4e1e25caee367db3112ef2b6ef82d749530768c73"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:7f0a0c6f12e07fa94133c8a67404322845220c06a9e80e85999afe727f7438b8"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-macosx_14_0_x86_64.whl", hash = "sha256:312950fdd060354350ed123c0e25a71327d3711584beaef30cdaa93320c392d4"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26df23238872200f63518dd2aa984cfca675d82469535dc7162dc2ee52d9dd5c"}, + {file = "numpy-2.0.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a46288ec55ebbd58947d31d72be2c63cbf839f0a63b49cb755022310792a3385"}, + {file = "numpy-2.0.2.tar.gz", hash = "sha256:883c987dee1880e2a864ab0dc9892292582510604156762362d9326444636e78"}, ] [[package]] name = "numpy" -version = "2.1.0" +version = "2.1.1" description = "Fundamental package for array computing in Python" optional = false python-versions = ">=3.10" files = [ - {file = "numpy-2.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6326ab99b52fafdcdeccf602d6286191a79fe2fda0ae90573c5814cd2b0bc1b8"}, - {file = "numpy-2.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0937e54c09f7a9a68da6889362ddd2ff584c02d015ec92672c099b61555f8911"}, - {file = "numpy-2.1.0-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:30014b234f07b5fec20f4146f69e13cfb1e33ee9a18a1879a0142fbb00d47673"}, - {file = "numpy-2.1.0-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:899da829b362ade41e1e7eccad2cf274035e1cb36ba73034946fccd4afd8606b"}, - {file = "numpy-2.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:08801848a40aea24ce16c2ecde3b756f9ad756586fb2d13210939eb69b023f5b"}, - {file = "numpy-2.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:398049e237d1aae53d82a416dade04defed1a47f87d18d5bd615b6e7d7e41d1f"}, - {file = "numpy-2.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0abb3916a35d9090088a748636b2c06dc9a6542f99cd476979fb156a18192b84"}, - {file = "numpy-2.1.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:10e2350aea18d04832319aac0f887d5fcec1b36abd485d14f173e3e900b83e33"}, - {file = "numpy-2.1.0-cp310-cp310-win32.whl", hash = "sha256:f6b26e6c3b98adb648243670fddc8cab6ae17473f9dc58c51574af3e64d61211"}, - {file = "numpy-2.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:f505264735ee074250a9c78247ee8618292091d9d1fcc023290e9ac67e8f1afa"}, - {file = "numpy-2.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:76368c788ccb4f4782cf9c842b316140142b4cbf22ff8db82724e82fe1205dce"}, - {file = "numpy-2.1.0-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:f8e93a01a35be08d31ae33021e5268f157a2d60ebd643cfc15de6ab8e4722eb1"}, - {file = "numpy-2.1.0-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:9523f8b46485db6939bd069b28b642fec86c30909cea90ef550373787f79530e"}, - {file = "numpy-2.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54139e0eb219f52f60656d163cbe67c31ede51d13236c950145473504fa208cb"}, - {file = "numpy-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5ebbf9fbdabed208d4ecd2e1dfd2c0741af2f876e7ae522c2537d404ca895c3"}, - {file = "numpy-2.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:378cb4f24c7d93066ee4103204f73ed046eb88f9ad5bb2275bb9fa0f6a02bd36"}, - {file = "numpy-2.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8f699a709120b220dfe173f79c73cb2a2cab2c0b88dd59d7b49407d032b8ebd"}, - {file = "numpy-2.1.0-cp311-cp311-win32.whl", hash = "sha256:ffbd6faeb190aaf2b5e9024bac9622d2ee549b7ec89ef3a9373fa35313d44e0e"}, - {file = "numpy-2.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:0af3a5987f59d9c529c022c8c2a64805b339b7ef506509fba7d0556649b9714b"}, - {file = "numpy-2.1.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fe76d75b345dc045acdbc006adcb197cc680754afd6c259de60d358d60c93736"}, - {file = "numpy-2.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f358ea9e47eb3c2d6eba121ab512dfff38a88db719c38d1e67349af210bc7529"}, - {file = "numpy-2.1.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:dd94ce596bda40a9618324547cfaaf6650b1a24f5390350142499aa4e34e53d1"}, - {file = "numpy-2.1.0-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:b47c551c6724960479cefd7353656498b86e7232429e3a41ab83be4da1b109e8"}, - {file = "numpy-2.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0756a179afa766ad7cb6f036de622e8a8f16ffdd55aa31f296c870b5679d745"}, - {file = "numpy-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24003ba8ff22ea29a8c306e61d316ac74111cebf942afbf692df65509a05f111"}, - {file = "numpy-2.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b34fa5e3b5d6dc7e0a4243fa0f81367027cb6f4a7215a17852979634b5544ee0"}, - {file = "numpy-2.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c4f982715e65036c34897eb598d64aef15150c447be2cfc6643ec7a11af06574"}, - {file = "numpy-2.1.0-cp312-cp312-win32.whl", hash = "sha256:c4cd94dfefbefec3f8b544f61286584292d740e6e9d4677769bc76b8f41deb02"}, - {file = "numpy-2.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:a0cdef204199278f5c461a0bed6ed2e052998276e6d8ab2963d5b5c39a0500bc"}, - {file = "numpy-2.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8ab81ccd753859ab89e67199b9da62c543850f819993761c1e94a75a814ed667"}, - {file = "numpy-2.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:442596f01913656d579309edcd179a2a2f9977d9a14ff41d042475280fc7f34e"}, - {file = "numpy-2.1.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:848c6b5cad9898e4b9ef251b6f934fa34630371f2e916261070a4eb9092ffd33"}, - {file = "numpy-2.1.0-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:54c6a63e9d81efe64bfb7bcb0ec64332a87d0b87575f6009c8ba67ea6374770b"}, - {file = "numpy-2.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:652e92fc409e278abdd61e9505649e3938f6d04ce7ef1953f2ec598a50e7c195"}, - {file = "numpy-2.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ab32eb9170bf8ffcbb14f11613f4a0b108d3ffee0832457c5d4808233ba8977"}, - {file = "numpy-2.1.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:8fb49a0ba4d8f41198ae2d52118b050fd34dace4b8f3fb0ee34e23eb4ae775b1"}, - {file = "numpy-2.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:44e44973262dc3ae79e9063a1284a73e09d01b894b534a769732ccd46c28cc62"}, - {file = "numpy-2.1.0-cp313-cp313-win32.whl", hash = "sha256:ab83adc099ec62e044b1fbb3a05499fa1e99f6d53a1dde102b2d85eff66ed324"}, - {file = "numpy-2.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:de844aaa4815b78f6023832590d77da0e3b6805c644c33ce94a1e449f16d6ab5"}, - {file = "numpy-2.1.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:343e3e152bf5a087511cd325e3b7ecfd5b92d369e80e74c12cd87826e263ec06"}, - {file = "numpy-2.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:f07fa2f15dabe91259828ce7d71b5ca9e2eb7c8c26baa822c825ce43552f4883"}, - {file = "numpy-2.1.0-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:5474dad8c86ee9ba9bb776f4b99ef2d41b3b8f4e0d199d4f7304728ed34d0300"}, - {file = "numpy-2.1.0-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:1f817c71683fd1bb5cff1529a1d085a57f02ccd2ebc5cd2c566f9a01118e3b7d"}, - {file = "numpy-2.1.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a3336fbfa0d38d3deacd3fe7f3d07e13597f29c13abf4d15c3b6dc2291cbbdd"}, - {file = "numpy-2.1.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a894c51fd8c4e834f00ac742abad73fc485df1062f1b875661a3c1e1fb1c2f6"}, - {file = "numpy-2.1.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:9156ca1f79fc4acc226696e95bfcc2b486f165a6a59ebe22b2c1f82ab190384a"}, - {file = "numpy-2.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:624884b572dff8ca8f60fab591413f077471de64e376b17d291b19f56504b2bb"}, - {file = "numpy-2.1.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:15ef8b2177eeb7e37dd5ef4016f30b7659c57c2c0b57a779f1d537ff33a72c7b"}, - {file = "numpy-2.1.0-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:e5f0642cdf4636198a4990de7a71b693d824c56a757862230454629cf62e323d"}, - {file = "numpy-2.1.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f15976718c004466406342789f31b6673776360f3b1e3c575f25302d7e789575"}, - {file = "numpy-2.1.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:6c1de77ded79fef664d5098a66810d4d27ca0224e9051906e634b3f7ead134c2"}, - {file = "numpy-2.1.0.tar.gz", hash = "sha256:7dc90da0081f7e1da49ec4e398ede6a8e9cc4f5ebe5f9e06b443ed889ee9aaa2"}, + {file = "numpy-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c8a0e34993b510fc19b9a2ce7f31cb8e94ecf6e924a40c0c9dd4f62d0aac47d9"}, + {file = "numpy-2.1.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7dd86dfaf7c900c0bbdcb8b16e2f6ddf1eb1fe39c6c8cca6e94844ed3152a8fd"}, + {file = "numpy-2.1.1-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:5889dd24f03ca5a5b1e8a90a33b5a0846d8977565e4ae003a63d22ecddf6782f"}, + {file = "numpy-2.1.1-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:59ca673ad11d4b84ceb385290ed0ebe60266e356641428c845b39cd9df6713ab"}, + {file = "numpy-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:13ce49a34c44b6de5241f0b38b07e44c1b2dcacd9e36c30f9c2fcb1bb5135db7"}, + {file = "numpy-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:913cc1d311060b1d409e609947fa1b9753701dac96e6581b58afc36b7ee35af6"}, + {file = "numpy-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:caf5d284ddea7462c32b8d4a6b8af030b6c9fd5332afb70e7414d7fdded4bfd0"}, + {file = "numpy-2.1.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:57eb525e7c2a8fdee02d731f647146ff54ea8c973364f3b850069ffb42799647"}, + {file = "numpy-2.1.1-cp310-cp310-win32.whl", hash = "sha256:9a8e06c7a980869ea67bbf551283bbed2856915f0a792dc32dd0f9dd2fb56728"}, + {file = "numpy-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:d10c39947a2d351d6d466b4ae83dad4c37cd6c3cdd6d5d0fa797da56f710a6ae"}, + {file = "numpy-2.1.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0d07841fd284718feffe7dd17a63a2e6c78679b2d386d3e82f44f0108c905550"}, + {file = "numpy-2.1.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b5613cfeb1adfe791e8e681128f5f49f22f3fcaa942255a6124d58ca59d9528f"}, + {file = "numpy-2.1.1-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:0b8cc2715a84b7c3b161f9ebbd942740aaed913584cae9cdc7f8ad5ad41943d0"}, + {file = "numpy-2.1.1-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:b49742cdb85f1f81e4dc1b39dcf328244f4d8d1ded95dea725b316bd2cf18c95"}, + {file = "numpy-2.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8d5f8a8e3bc87334f025194c6193e408903d21ebaeb10952264943a985066ca"}, + {file = "numpy-2.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d51fc141ddbe3f919e91a096ec739f49d686df8af254b2053ba21a910ae518bf"}, + {file = "numpy-2.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:98ce7fb5b8063cfdd86596b9c762bf2b5e35a2cdd7e967494ab78a1fa7f8b86e"}, + {file = "numpy-2.1.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:24c2ad697bd8593887b019817ddd9974a7f429c14a5469d7fad413f28340a6d2"}, + {file = "numpy-2.1.1-cp311-cp311-win32.whl", hash = "sha256:397bc5ce62d3fb73f304bec332171535c187e0643e176a6e9421a6e3eacef06d"}, + {file = "numpy-2.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:ae8ce252404cdd4de56dcfce8b11eac3c594a9c16c231d081fb705cf23bd4d9e"}, + {file = "numpy-2.1.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7c803b7934a7f59563db459292e6aa078bb38b7ab1446ca38dd138646a38203e"}, + {file = "numpy-2.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6435c48250c12f001920f0751fe50c0348f5f240852cfddc5e2f97e007544cbe"}, + {file = "numpy-2.1.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:3269c9eb8745e8d975980b3a7411a98976824e1fdef11f0aacf76147f662b15f"}, + {file = "numpy-2.1.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:fac6e277a41163d27dfab5f4ec1f7a83fac94e170665a4a50191b545721c6521"}, + {file = "numpy-2.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcd8f556cdc8cfe35e70efb92463082b7f43dd7e547eb071ffc36abc0ca4699b"}, + {file = "numpy-2.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b9cd92c8f8e7b313b80e93cedc12c0112088541dcedd9197b5dee3738c1201"}, + {file = "numpy-2.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:afd9c680df4de71cd58582b51e88a61feed4abcc7530bcd3d48483f20fc76f2a"}, + {file = "numpy-2.1.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8661c94e3aad18e1ea17a11f60f843a4933ccaf1a25a7c6a9182af70610b2313"}, + {file = "numpy-2.1.1-cp312-cp312-win32.whl", hash = "sha256:950802d17a33c07cba7fd7c3dcfa7d64705509206be1606f196d179e539111ed"}, + {file = "numpy-2.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:3fc5eabfc720db95d68e6646e88f8b399bfedd235994016351b1d9e062c4b270"}, + {file = "numpy-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:046356b19d7ad1890c751b99acad5e82dc4a02232013bd9a9a712fddf8eb60f5"}, + {file = "numpy-2.1.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6e5a9cb2be39350ae6c8f79410744e80154df658d5bea06e06e0ac5bb75480d5"}, + {file = "numpy-2.1.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:d4c57b68c8ef5e1ebf47238e99bf27657511ec3f071c465f6b1bccbef12d4136"}, + {file = "numpy-2.1.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:8ae0fd135e0b157365ac7cc31fff27f07a5572bdfc38f9c2d43b2aff416cc8b0"}, + {file = "numpy-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:981707f6b31b59c0c24bcda52e5605f9701cb46da4b86c2e8023656ad3e833cb"}, + {file = "numpy-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ca4b53e1e0b279142113b8c5eb7d7a877e967c306edc34f3b58e9be12fda8df"}, + {file = "numpy-2.1.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:e097507396c0be4e547ff15b13dc3866f45f3680f789c1a1301b07dadd3fbc78"}, + {file = "numpy-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7506387e191fe8cdb267f912469a3cccc538ab108471291636a96a54e599556"}, + {file = "numpy-2.1.1-cp313-cp313-win32.whl", hash = "sha256:251105b7c42abe40e3a689881e1793370cc9724ad50d64b30b358bbb3a97553b"}, + {file = "numpy-2.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:f212d4f46b67ff604d11fff7cc62d36b3e8714edf68e44e9760e19be38c03eb0"}, + {file = "numpy-2.1.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:920b0911bb2e4414c50e55bd658baeb78281a47feeb064ab40c2b66ecba85553"}, + {file = "numpy-2.1.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:bab7c09454460a487e631ffc0c42057e3d8f2a9ddccd1e60c7bb8ed774992480"}, + {file = "numpy-2.1.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:cea427d1350f3fd0d2818ce7350095c1a2ee33e30961d2f0fef48576ddbbe90f"}, + {file = "numpy-2.1.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:e30356d530528a42eeba51420ae8bf6c6c09559051887196599d96ee5f536468"}, + {file = "numpy-2.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8dfa9e94fc127c40979c3eacbae1e61fda4fe71d84869cc129e2721973231ef"}, + {file = "numpy-2.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:910b47a6d0635ec1bd53b88f86120a52bf56dcc27b51f18c7b4a2e2224c29f0f"}, + {file = "numpy-2.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:13cc11c00000848702322af4de0147ced365c81d66053a67c2e962a485b3717c"}, + {file = "numpy-2.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:53e27293b3a2b661c03f79aa51c3987492bd4641ef933e366e0f9f6c9bf257ec"}, + {file = "numpy-2.1.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:7be6a07520b88214ea85d8ac8b7d6d8a1839b0b5cb87412ac9f49fa934eb15d5"}, + {file = "numpy-2.1.1-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:52ac2e48f5ad847cd43c4755520a2317f3380213493b9d8a4c5e37f3b87df504"}, + {file = "numpy-2.1.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50a95ca3560a6058d6ea91d4629a83a897ee27c00630aed9d933dff191f170cd"}, + {file = "numpy-2.1.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:99f4a9ee60eed1385a86e82288971a51e71df052ed0b2900ed30bc840c0f2e39"}, + {file = "numpy-2.1.1.tar.gz", hash = "sha256:d0cf7d55b1051387807405b3898efafa862997b4cba8aa5dbe657be794afeafd"}, ] [[package]] @@ -1613,13 +1616,13 @@ pyee = "11.1.0" [[package]] name = "plotly" -version = "5.23.0" +version = "5.24.0" description = "An open-source, interactive data visualization library for Python" optional = false python-versions = ">=3.8" files = [ - {file = "plotly-5.23.0-py3-none-any.whl", hash = "sha256:76cbe78f75eddc10c56f5a4ee3e7ccaade7c0a57465546f02098c0caed6c2d1a"}, - {file = "plotly-5.23.0.tar.gz", hash = "sha256:89e57d003a116303a34de6700862391367dd564222ab71f8531df70279fc0193"}, + {file = "plotly-5.24.0-py3-none-any.whl", hash = "sha256:0e54efe52c8cef899f7daa41be9ed97dfb6be622613a2a8f56a86a0634b2b67e"}, + {file = "plotly-5.24.0.tar.gz", hash = "sha256:eae9f4f54448682442c92c1e97148e3ad0c52f0cf86306e1b76daba24add554a"}, ] [package.dependencies] @@ -1712,122 +1715,123 @@ files = [ [[package]] name = "pydantic" -version = "2.8.2" +version = "2.9.0" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic-2.8.2-py3-none-any.whl", hash = "sha256:73ee9fddd406dc318b885c7a2eab8a6472b68b8fb5ba8150949fc3db939f23c8"}, - {file = "pydantic-2.8.2.tar.gz", hash = "sha256:6f62c13d067b0755ad1c21a34bdd06c0c12625a22b0fc09c6b149816604f7c2a"}, + {file = "pydantic-2.9.0-py3-none-any.whl", hash = "sha256:f66a7073abd93214a20c5f7b32d56843137a7a2e70d02111f3be287035c45370"}, + {file = "pydantic-2.9.0.tar.gz", hash = "sha256:c7a8a9fdf7d100afa49647eae340e2d23efa382466a8d177efcd1381e9be5598"}, ] [package.dependencies] annotated-types = ">=0.4.0" -pydantic-core = "2.20.1" +pydantic-core = "2.23.2" typing-extensions = [ {version = ">=4.6.1", markers = "python_version < \"3.13\""}, {version = ">=4.12.2", markers = "python_version >= \"3.13\""}, ] +tzdata = {version = "*", markers = "python_version >= \"3.9\""} [package.extras] email = ["email-validator (>=2.0.0)"] [[package]] name = "pydantic-core" -version = "2.20.1" +version = "2.23.2" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" files = [ - {file = "pydantic_core-2.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3acae97ffd19bf091c72df4d726d552c473f3576409b2a7ca36b2f535ffff4a3"}, - {file = "pydantic_core-2.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:41f4c96227a67a013e7de5ff8f20fb496ce573893b7f4f2707d065907bffdbd6"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f239eb799a2081495ea659d8d4a43a8f42cd1fe9ff2e7e436295c38a10c286a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:53e431da3fc53360db73eedf6f7124d1076e1b4ee4276b36fb25514544ceb4a3"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1f62b2413c3a0e846c3b838b2ecd6c7a19ec6793b2a522745b0869e37ab5bc1"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d41e6daee2813ecceea8eda38062d69e280b39df793f5a942fa515b8ed67953"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d482efec8b7dc6bfaedc0f166b2ce349df0011f5d2f1f25537ced4cfc34fd98"}, - {file = "pydantic_core-2.20.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e93e1a4b4b33daed65d781a57a522ff153dcf748dee70b40c7258c5861e1768a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7c4ea22b6739b162c9ecaaa41d718dfad48a244909fe7ef4b54c0b530effc5a"}, - {file = "pydantic_core-2.20.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4f2790949cf385d985a31984907fecb3896999329103df4e4983a4a41e13e840"}, - {file = "pydantic_core-2.20.1-cp310-none-win32.whl", hash = "sha256:5e999ba8dd90e93d57410c5e67ebb67ffcaadcea0ad973240fdfd3a135506250"}, - {file = "pydantic_core-2.20.1-cp310-none-win_amd64.whl", hash = "sha256:512ecfbefef6dac7bc5eaaf46177b2de58cdf7acac8793fe033b24ece0b9566c"}, - {file = "pydantic_core-2.20.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d2a8fa9d6d6f891f3deec72f5cc668e6f66b188ab14bb1ab52422fe8e644f312"}, - {file = "pydantic_core-2.20.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:175873691124f3d0da55aeea1d90660a6ea7a3cfea137c38afa0a5ffabe37b88"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:37eee5b638f0e0dcd18d21f59b679686bbd18917b87db0193ae36f9c23c355fc"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25e9185e2d06c16ee438ed39bf62935ec436474a6ac4f9358524220f1b236e43"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:150906b40ff188a3260cbee25380e7494ee85048584998c1e66df0c7a11c17a6"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ad4aeb3e9a97286573c03df758fc7627aecdd02f1da04516a86dc159bf70121"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3f3ed29cd9f978c604708511a1f9c2fdcb6c38b9aae36a51905b8811ee5cbf1"}, - {file = "pydantic_core-2.20.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b0dae11d8f5ded51699c74d9548dcc5938e0804cc8298ec0aa0da95c21fff57b"}, - {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:faa6b09ee09433b87992fb5a2859efd1c264ddc37280d2dd5db502126d0e7f27"}, - {file = "pydantic_core-2.20.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9dc1b507c12eb0481d071f3c1808f0529ad41dc415d0ca11f7ebfc666e66a18b"}, - {file = "pydantic_core-2.20.1-cp311-none-win32.whl", hash = "sha256:fa2fddcb7107e0d1808086ca306dcade7df60a13a6c347a7acf1ec139aa6789a"}, - {file = "pydantic_core-2.20.1-cp311-none-win_amd64.whl", hash = "sha256:40a783fb7ee353c50bd3853e626f15677ea527ae556429453685ae32280c19c2"}, - {file = "pydantic_core-2.20.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:595ba5be69b35777474fa07f80fc260ea71255656191adb22a8c53aba4479231"}, - {file = "pydantic_core-2.20.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a4f55095ad087474999ee28d3398bae183a66be4823f753cd7d67dd0153427c9"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9aa05d09ecf4c75157197f27cdc9cfaeb7c5f15021c6373932bf3e124af029f"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e97fdf088d4b31ff4ba35db26d9cc472ac7ef4a2ff2badeabf8d727b3377fc52"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bc633a9fe1eb87e250b5c57d389cf28998e4292336926b0b6cdaee353f89a237"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d573faf8eb7e6b1cbbcb4f5b247c60ca8be39fe2c674495df0eb4318303137fe"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:26dc97754b57d2fd00ac2b24dfa341abffc380b823211994c4efac7f13b9e90e"}, - {file = "pydantic_core-2.20.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:33499e85e739a4b60c9dac710c20a08dc73cb3240c9a0e22325e671b27b70d24"}, - {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bebb4d6715c814597f85297c332297c6ce81e29436125ca59d1159b07f423eb1"}, - {file = "pydantic_core-2.20.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:516d9227919612425c8ef1c9b869bbbee249bc91912c8aaffb66116c0b447ebd"}, - {file = "pydantic_core-2.20.1-cp312-none-win32.whl", hash = "sha256:469f29f9093c9d834432034d33f5fe45699e664f12a13bf38c04967ce233d688"}, - {file = "pydantic_core-2.20.1-cp312-none-win_amd64.whl", hash = "sha256:035ede2e16da7281041f0e626459bcae33ed998cca6a0a007a5ebb73414ac72d"}, - {file = "pydantic_core-2.20.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:0827505a5c87e8aa285dc31e9ec7f4a17c81a813d45f70b1d9164e03a813a686"}, - {file = "pydantic_core-2.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:19c0fa39fa154e7e0b7f82f88ef85faa2a4c23cc65aae2f5aea625e3c13c735a"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa223cd1e36b642092c326d694d8bf59b71ddddc94cdb752bbbb1c5c91d833b"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c336a6d235522a62fef872c6295a42ecb0c4e1d0f1a3e500fe949415761b8a19"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7eb6a0587eded33aeefea9f916899d42b1799b7b14b8f8ff2753c0ac1741edac"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:70c8daf4faca8da5a6d655f9af86faf6ec2e1768f4b8b9d0226c02f3d6209703"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9fa4c9bf273ca41f940bceb86922a7667cd5bf90e95dbb157cbb8441008482c"}, - {file = "pydantic_core-2.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:11b71d67b4725e7e2a9f6e9c0ac1239bbc0c48cce3dc59f98635efc57d6dac83"}, - {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:270755f15174fb983890c49881e93f8f1b80f0b5e3a3cc1394a255706cabd203"}, - {file = "pydantic_core-2.20.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:c81131869240e3e568916ef4c307f8b99583efaa60a8112ef27a366eefba8ef0"}, - {file = "pydantic_core-2.20.1-cp313-none-win32.whl", hash = "sha256:b91ced227c41aa29c672814f50dbb05ec93536abf8f43cd14ec9521ea09afe4e"}, - {file = "pydantic_core-2.20.1-cp313-none-win_amd64.whl", hash = "sha256:65db0f2eefcaad1a3950f498aabb4875c8890438bc80b19362cf633b87a8ab20"}, - {file = "pydantic_core-2.20.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:4745f4ac52cc6686390c40eaa01d48b18997cb130833154801a442323cc78f91"}, - {file = "pydantic_core-2.20.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a8ad4c766d3f33ba8fd692f9aa297c9058970530a32c728a2c4bfd2616d3358b"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41e81317dd6a0127cabce83c0c9c3fbecceae981c8391e6f1dec88a77c8a569a"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:04024d270cf63f586ad41fff13fde4311c4fc13ea74676962c876d9577bcc78f"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eaad4ff2de1c3823fddf82f41121bdf453d922e9a238642b1dedb33c4e4f98ad"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:26ab812fa0c845df815e506be30337e2df27e88399b985d0bb4e3ecfe72df31c"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3c5ebac750d9d5f2706654c638c041635c385596caf68f81342011ddfa1e5598"}, - {file = "pydantic_core-2.20.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2aafc5a503855ea5885559eae883978c9b6d8c8993d67766ee73d82e841300dd"}, - {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4868f6bd7c9d98904b748a2653031fc9c2f85b6237009d475b1008bfaeb0a5aa"}, - {file = "pydantic_core-2.20.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aa2f457b4af386254372dfa78a2eda2563680d982422641a85f271c859df1987"}, - {file = "pydantic_core-2.20.1-cp38-none-win32.whl", hash = "sha256:225b67a1f6d602de0ce7f6c1c3ae89a4aa25d3de9be857999e9124f15dab486a"}, - {file = "pydantic_core-2.20.1-cp38-none-win_amd64.whl", hash = "sha256:6b507132dcfc0dea440cce23ee2182c0ce7aba7054576efc65634f080dbe9434"}, - {file = "pydantic_core-2.20.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:b03f7941783b4c4a26051846dea594628b38f6940a2fdc0df00b221aed39314c"}, - {file = "pydantic_core-2.20.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1eedfeb6089ed3fad42e81a67755846ad4dcc14d73698c120a82e4ccf0f1f9f6"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:635fee4e041ab9c479e31edda27fcf966ea9614fff1317e280d99eb3e5ab6fe2"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:77bf3ac639c1ff567ae3b47f8d4cc3dc20f9966a2a6dd2311dcc055d3d04fb8a"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ed1b0132f24beeec5a78b67d9388656d03e6a7c837394f99257e2d55b461611"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c6514f963b023aeee506678a1cf821fe31159b925c4b76fe2afa94cc70b3222b"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10d4204d8ca33146e761c79f83cc861df20e7ae9f6487ca290a97702daf56006"}, - {file = "pydantic_core-2.20.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d036c7187b9422ae5b262badb87a20a49eb6c5238b2004e96d4da1231badef1"}, - {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9ebfef07dbe1d93efb94b4700f2d278494e9162565a54f124c404a5656d7ff09"}, - {file = "pydantic_core-2.20.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6b9d9bb600328a1ce523ab4f454859e9d439150abb0906c5a1983c146580ebab"}, - {file = "pydantic_core-2.20.1-cp39-none-win32.whl", hash = "sha256:784c1214cb6dd1e3b15dd8b91b9a53852aed16671cc3fbe4786f4f1db07089e2"}, - {file = "pydantic_core-2.20.1-cp39-none-win_amd64.whl", hash = "sha256:d2fe69c5434391727efa54b47a1e7986bb0186e72a41b203df8f5b0a19a4f669"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a45f84b09ac9c3d35dfcf6a27fd0634d30d183205230a0ebe8373a0e8cfa0906"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d02a72df14dfdbaf228424573a07af10637bd490f0901cee872c4f434a735b94"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d2b27e6af28f07e2f195552b37d7d66b150adbaa39a6d327766ffd695799780f"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:084659fac3c83fd674596612aeff6041a18402f1e1bc19ca39e417d554468482"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:242b8feb3c493ab78be289c034a1f659e8826e2233786e36f2893a950a719bb6"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:38cf1c40a921d05c5edc61a785c0ddb4bed67827069f535d794ce6bcded919fc"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:e0bbdd76ce9aa5d4209d65f2b27fc6e5ef1312ae6c5333c26db3f5ade53a1e99"}, - {file = "pydantic_core-2.20.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:254ec27fdb5b1ee60684f91683be95e5133c994cc54e86a0b0963afa25c8f8a6"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:407653af5617f0757261ae249d3fba09504d7a71ab36ac057c938572d1bc9331"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:c693e916709c2465b02ca0ad7b387c4f8423d1db7b4649c551f27a529181c5ad"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5b5ff4911aea936a47d9376fd3ab17e970cc543d1b68921886e7f64bd28308d1"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:177f55a886d74f1808763976ac4efd29b7ed15c69f4d838bbd74d9d09cf6fa86"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:964faa8a861d2664f0c7ab0c181af0bea66098b1919439815ca8803ef136fc4e"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:4dd484681c15e6b9a977c785a345d3e378d72678fd5f1f3c0509608da24f2ac0"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f6d6cff3538391e8486a431569b77921adfcdef14eb18fbf19b7c0a5294d4e6a"}, - {file = "pydantic_core-2.20.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a6d511cc297ff0883bc3708b465ff82d7560193169a8b93260f74ecb0a5e08a7"}, - {file = "pydantic_core-2.20.1.tar.gz", hash = "sha256:26ca695eeee5f9f1aeeb211ffc12f10bcb6f71e2989988fda61dabd65db878d4"}, + {file = "pydantic_core-2.23.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:7d0324a35ab436c9d768753cbc3c47a865a2cbc0757066cb864747baa61f6ece"}, + {file = "pydantic_core-2.23.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:276ae78153a94b664e700ac362587c73b84399bd1145e135287513442e7dfbc7"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:964c7aa318da542cdcc60d4a648377ffe1a2ef0eb1e996026c7f74507b720a78"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1cf842265a3a820ebc6388b963ead065f5ce8f2068ac4e1c713ef77a67b71f7c"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae90b9e50fe1bd115b24785e962b51130340408156d34d67b5f8f3fa6540938e"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ae65fdfb8a841556b52935dfd4c3f79132dc5253b12c0061b96415208f4d622"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c8aa40f6ca803f95b1c1c5aeaee6237b9e879e4dfb46ad713229a63651a95fb"}, + {file = "pydantic_core-2.23.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c53100c8ee5a1e102766abde2158077d8c374bee0639201f11d3032e3555dfbc"}, + {file = "pydantic_core-2.23.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d6b9dd6aa03c812017411734e496c44fef29b43dba1e3dd1fa7361bbacfc1354"}, + {file = "pydantic_core-2.23.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b18cf68255a476b927910c6873d9ed00da692bb293c5b10b282bd48a0afe3ae2"}, + {file = "pydantic_core-2.23.2-cp310-none-win32.whl", hash = "sha256:e460475719721d59cd54a350c1f71c797c763212c836bf48585478c5514d2854"}, + {file = "pydantic_core-2.23.2-cp310-none-win_amd64.whl", hash = "sha256:5f3cf3721eaf8741cffaf092487f1ca80831202ce91672776b02b875580e174a"}, + {file = "pydantic_core-2.23.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:7ce8e26b86a91e305858e018afc7a6e932f17428b1eaa60154bd1f7ee888b5f8"}, + {file = "pydantic_core-2.23.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7e9b24cca4037a561422bf5dc52b38d390fb61f7bfff64053ce1b72f6938e6b2"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:753294d42fb072aa1775bfe1a2ba1012427376718fa4c72de52005a3d2a22178"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:257d6a410a0d8aeb50b4283dea39bb79b14303e0fab0f2b9d617701331ed1515"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c8319e0bd6a7b45ad76166cc3d5d6a36c97d0c82a196f478c3ee5346566eebfd"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7a05c0240f6c711eb381ac392de987ee974fa9336071fb697768dfdb151345ce"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d5b0ff3218858859910295df6953d7bafac3a48d5cd18f4e3ed9999efd2245f"}, + {file = "pydantic_core-2.23.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:96ef39add33ff58cd4c112cbac076726b96b98bb8f1e7f7595288dcfb2f10b57"}, + {file = "pydantic_core-2.23.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0102e49ac7d2df3379ef8d658d3bc59d3d769b0bdb17da189b75efa861fc07b4"}, + {file = "pydantic_core-2.23.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a6612c2a844043e4d10a8324c54cdff0042c558eef30bd705770793d70b224aa"}, + {file = "pydantic_core-2.23.2-cp311-none-win32.whl", hash = "sha256:caffda619099cfd4f63d48462f6aadbecee3ad9603b4b88b60cb821c1b258576"}, + {file = "pydantic_core-2.23.2-cp311-none-win_amd64.whl", hash = "sha256:6f80fba4af0cb1d2344869d56430e304a51396b70d46b91a55ed4959993c0589"}, + {file = "pydantic_core-2.23.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:4c83c64d05ffbbe12d4e8498ab72bdb05bcc1026340a4a597dc647a13c1605ec"}, + {file = "pydantic_core-2.23.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6294907eaaccf71c076abdd1c7954e272efa39bb043161b4b8aa1cd76a16ce43"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a801c5e1e13272e0909c520708122496647d1279d252c9e6e07dac216accc41"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cc0c316fba3ce72ac3ab7902a888b9dc4979162d320823679da270c2d9ad0cad"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6b06c5d4e8701ac2ba99a2ef835e4e1b187d41095a9c619c5b185c9068ed2a49"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:82764c0bd697159fe9947ad59b6db6d7329e88505c8f98990eb07e84cc0a5d81"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2b1a195efd347ede8bcf723e932300292eb13a9d2a3c1f84eb8f37cbbc905b7f"}, + {file = "pydantic_core-2.23.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7efb12e5071ad8d5b547487bdad489fbd4a5a35a0fc36a1941517a6ad7f23e0"}, + {file = "pydantic_core-2.23.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:5dd0ec5f514ed40e49bf961d49cf1bc2c72e9b50f29a163b2cc9030c6742aa73"}, + {file = "pydantic_core-2.23.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:820f6ee5c06bc868335e3b6e42d7ef41f50dfb3ea32fbd523ab679d10d8741c0"}, + {file = "pydantic_core-2.23.2-cp312-none-win32.whl", hash = "sha256:3713dc093d5048bfaedbba7a8dbc53e74c44a140d45ede020dc347dda18daf3f"}, + {file = "pydantic_core-2.23.2-cp312-none-win_amd64.whl", hash = "sha256:e1895e949f8849bc2757c0dbac28422a04be031204df46a56ab34bcf98507342"}, + {file = "pydantic_core-2.23.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:da43cbe593e3c87d07108d0ebd73771dc414488f1f91ed2e204b0370b94b37ac"}, + {file = "pydantic_core-2.23.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:64d094ea1aa97c6ded4748d40886076a931a8bf6f61b6e43e4a1041769c39dd2"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:084414ffe9a85a52940b49631321d636dadf3576c30259607b75516d131fecd0"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:043ef8469f72609c4c3a5e06a07a1f713d53df4d53112c6d49207c0bd3c3bd9b"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3649bd3ae6a8ebea7dc381afb7f3c6db237fc7cebd05c8ac36ca8a4187b03b30"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6db09153d8438425e98cdc9a289c5fade04a5d2128faff8f227c459da21b9703"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5668b3173bb0b2e65020b60d83f5910a7224027232c9f5dc05a71a1deac9f960"}, + {file = "pydantic_core-2.23.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1c7b81beaf7c7ebde978377dc53679c6cba0e946426fc7ade54251dfe24a7604"}, + {file = "pydantic_core-2.23.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:ae579143826c6f05a361d9546446c432a165ecf1c0b720bbfd81152645cb897d"}, + {file = "pydantic_core-2.23.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:19f1352fe4b248cae22a89268720fc74e83f008057a652894f08fa931e77dced"}, + {file = "pydantic_core-2.23.2-cp313-none-win32.whl", hash = "sha256:e1a79ad49f346aa1a2921f31e8dbbab4d64484823e813a002679eaa46cba39e1"}, + {file = "pydantic_core-2.23.2-cp313-none-win_amd64.whl", hash = "sha256:582871902e1902b3c8e9b2c347f32a792a07094110c1bca6c2ea89b90150caac"}, + {file = "pydantic_core-2.23.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:743e5811b0c377eb830150d675b0847a74a44d4ad5ab8845923d5b3a756d8100"}, + {file = "pydantic_core-2.23.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6650a7bbe17a2717167e3e23c186849bae5cef35d38949549f1c116031b2b3aa"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56e6a12ec8d7679f41b3750ffa426d22b44ef97be226a9bab00a03365f217b2b"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:810ca06cca91de9107718dc83d9ac4d2e86efd6c02cba49a190abcaf33fb0472"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:785e7f517ebb9890813d31cb5d328fa5eda825bb205065cde760b3150e4de1f7"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ef71ec876fcc4d3bbf2ae81961959e8d62f8d74a83d116668409c224012e3af"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d50ac34835c6a4a0d456b5db559b82047403c4317b3bc73b3455fefdbdc54b0a"}, + {file = "pydantic_core-2.23.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16b25a4a120a2bb7dab51b81e3d9f3cde4f9a4456566c403ed29ac81bf49744f"}, + {file = "pydantic_core-2.23.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:41ae8537ad371ec018e3c5da0eb3f3e40ee1011eb9be1da7f965357c4623c501"}, + {file = "pydantic_core-2.23.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:07049ec9306ec64e955b2e7c40c8d77dd78ea89adb97a2013d0b6e055c5ee4c5"}, + {file = "pydantic_core-2.23.2-cp38-none-win32.whl", hash = "sha256:086c5db95157dc84c63ff9d96ebb8856f47ce113c86b61065a066f8efbe80acf"}, + {file = "pydantic_core-2.23.2-cp38-none-win_amd64.whl", hash = "sha256:67b6655311b00581914aba481729971b88bb8bc7996206590700a3ac85e457b8"}, + {file = "pydantic_core-2.23.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:358331e21a897151e54d58e08d0219acf98ebb14c567267a87e971f3d2a3be59"}, + {file = "pydantic_core-2.23.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c4d9f15ffe68bcd3898b0ad7233af01b15c57d91cd1667f8d868e0eacbfe3f87"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0123655fedacf035ab10c23450163c2f65a4174f2bb034b188240a6cf06bb123"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e6e3ccebdbd6e53474b0bb7ab8b88e83c0cfe91484b25e058e581348ee5a01a5"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fc535cb898ef88333cf317777ecdfe0faac1c2a3187ef7eb061b6f7ecf7e6bae"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aab9e522efff3993a9e98ab14263d4e20211e62da088298089a03056980a3e69"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05b366fb8fe3d8683b11ac35fa08947d7b92be78ec64e3277d03bd7f9b7cda79"}, + {file = "pydantic_core-2.23.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7568f682c06f10f30ef643a1e8eec4afeecdafde5c4af1b574c6df079e96f96c"}, + {file = "pydantic_core-2.23.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:cdd02a08205dc90238669f082747612cb3c82bd2c717adc60f9b9ecadb540f80"}, + {file = "pydantic_core-2.23.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:1a2ab4f410f4b886de53b6bddf5dd6f337915a29dd9f22f20f3099659536b2f6"}, + {file = "pydantic_core-2.23.2-cp39-none-win32.whl", hash = "sha256:0448b81c3dfcde439551bb04a9f41d7627f676b12701865c8a2574bcea034437"}, + {file = "pydantic_core-2.23.2-cp39-none-win_amd64.whl", hash = "sha256:4cebb9794f67266d65e7e4cbe5dcf063e29fc7b81c79dc9475bd476d9534150e"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e758d271ed0286d146cf7c04c539a5169a888dd0b57026be621547e756af55bc"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:f477d26183e94eaafc60b983ab25af2a809a1b48ce4debb57b343f671b7a90b6"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da3131ef2b940b99106f29dfbc30d9505643f766704e14c5d5e504e6a480c35e"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329a721253c7e4cbd7aad4a377745fbcc0607f9d72a3cc2102dd40519be75ed2"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7706e15cdbf42f8fab1e6425247dfa98f4a6f8c63746c995d6a2017f78e619ae"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e64ffaf8f6e17ca15eb48344d86a7a741454526f3a3fa56bc493ad9d7ec63936"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:dd59638025160056687d598b054b64a79183f8065eae0d3f5ca523cde9943940"}, + {file = "pydantic_core-2.23.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:12625e69b1199e94b0ae1c9a95d000484ce9f0182f9965a26572f054b1537e44"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:5d813fd871b3d5c3005157622ee102e8908ad6011ec915a18bd8fde673c4360e"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:1eb37f7d6a8001c0f86dc8ff2ee8d08291a536d76e49e78cda8587bb54d8b329"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ce7eaf9a98680b4312b7cebcdd9352531c43db00fca586115845df388f3c465"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f087879f1ffde024dd2788a30d55acd67959dcf6c431e9d3682d1c491a0eb474"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ce883906810b4c3bd90e0ada1f9e808d9ecf1c5f0b60c6b8831d6100bcc7dd6"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:a8031074a397a5925d06b590121f8339d34a5a74cfe6970f8a1124eb8b83f4ac"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:23af245b8f2f4ee9e2c99cb3f93d0e22fb5c16df3f2f643f5a8da5caff12a653"}, + {file = "pydantic_core-2.23.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c57e493a0faea1e4c38f860d6862ba6832723396c884fbf938ff5e9b224200e2"}, + {file = "pydantic_core-2.23.2.tar.gz", hash = "sha256:95d6bf449a1ac81de562d65d180af5d8c19672793c81877a2eda8fde5d08f2fd"}, ] [package.dependencies] @@ -2020,13 +2024,13 @@ dev = ["pre-commit", "pytest-asyncio", "tox"] [[package]] name = "pytest-playwright" -version = "0.5.1" +version = "0.5.2" description = "A pytest wrapper with fixtures for Playwright to automate web browsers" optional = false python-versions = ">=3.8" files = [ - {file = "pytest-playwright-0.5.1.tar.gz", hash = "sha256:6b0683cbacd060f338b37d0c2cdac25d841e14f1440e986efcceaacd3d61a268"}, - {file = "pytest_playwright-0.5.1-py3-none-any.whl", hash = "sha256:54eb12742de16bf50d9630fe06ac398727e52d5c1e55269acb37e1ede91d9e00"}, + {file = "pytest_playwright-0.5.2-py3-none-any.whl", hash = "sha256:2c5720591364a1cdf66610b972ff8492512bc380953e043c85f705b78b2ed582"}, + {file = "pytest_playwright-0.5.2.tar.gz", hash = "sha256:c6d603df9e6c50b35f057b0528e11d41c0963283e98c257267117f5ed6ba1924"}, ] [package.dependencies] @@ -2101,13 +2105,13 @@ unidecode = ["Unidecode (>=1.1.1)"] [[package]] name = "python-socketio" -version = "5.11.3" +version = "5.11.4" description = "Socket.IO server and client for Python" optional = false python-versions = ">=3.8" files = [ - {file = "python_socketio-5.11.3-py3-none-any.whl", hash = "sha256:2a923a831ff70664b7c502df093c423eb6aa93c1ce68b8319e840227a26d8b69"}, - {file = "python_socketio-5.11.3.tar.gz", hash = "sha256:194af8cdbb7b0768c2e807ba76c7abc288eb5bb85559b7cddee51a6bc7a65737"}, + {file = "python_socketio-5.11.4-py3-none-any.whl", hash = "sha256:42efaa3e3e0b166fc72a527488a13caaac2cefc76174252486503bd496284945"}, + {file = "python_socketio-5.11.4.tar.gz", hash = "sha256:8b0b8ff2964b2957c865835e936310190639c00310a47d77321a594d1665355e"}, ] [package.dependencies] @@ -2242,17 +2246,17 @@ ocsp = ["cryptography (>=36.0.1)", "pyopenssl (==20.0.1)", "requests (>=2.26.0)" [[package]] name = "reflex-chakra" -version = "0.1.1a1" +version = "0.6.0a3" description = "reflex using chakra components" optional = false python-versions = "<4.0,>=3.8" files = [ - {file = "reflex_chakra-0.1.1a1-py3-none-any.whl", hash = "sha256:e27a3ffb171802a5309a4a7215e7f894810a4a8f0753e2779b5a7010ef36173c"}, - {file = "reflex_chakra-0.1.1a1.tar.gz", hash = "sha256:f224d42255fde675a65a622cdb19bff0e073edafe94b15019bfd8b21a461801c"}, + {file = "reflex_chakra-0.6.0a3-py3-none-any.whl", hash = "sha256:5e7ab4c25b783e6176f123b6fe8993d225ebaed51a790bd3c17617272724884c"}, + {file = "reflex_chakra-0.6.0a3.tar.gz", hash = "sha256:71cde012b7249fda9194a5f652b3b7c1dc2f4d5b39b38f53fe7531f8d9ea5248"}, ] [package.dependencies] -reflex = ">=0.5.9" +reflex = ">=0.6.0a" [[package]] name = "reflex-hosting-cli" @@ -2328,13 +2332,13 @@ idna2008 = ["idna"] [[package]] name = "rich" -version = "13.7.1" +version = "13.8.0" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = false python-versions = ">=3.7.0" files = [ - {file = "rich-13.7.1-py3-none-any.whl", hash = "sha256:4edbae314f59eb482f54e9e30bf00d33350aaa94f4bfcd4e9e3110e64d0d7222"}, - {file = "rich-13.7.1.tar.gz", hash = "sha256:9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432"}, + {file = "rich-13.8.0-py3-none-any.whl", hash = "sha256:2e85306a063b9492dffc86278197a60cbece75bcb766022f3436f567cae11bdc"}, + {file = "rich-13.8.0.tar.gz", hash = "sha256:a5ac1f1cd448ade0d59cc3356f7db7a7ccda2c8cbae9c7a90c28ff463d3e91f4"}, ] [package.dependencies] @@ -2388,13 +2392,13 @@ jeepney = ">=0.6" [[package]] name = "selenium" -version = "4.23.1" +version = "4.24.0" description = "Official Python bindings for Selenium WebDriver" optional = false python-versions = ">=3.8" files = [ - {file = "selenium-4.23.1-py3-none-any.whl", hash = "sha256:3a8d9f23dc636bd3840dd56f00c2739e32ec0c1e34a821dd553e15babef24477"}, - {file = "selenium-4.23.1.tar.gz", hash = "sha256:128d099e66284437e7128d2279176ec7a06e6ec7426e167f5d34987166bd8f46"}, + {file = "selenium-4.24.0-py3-none-any.whl", hash = "sha256:42c23f60753d5415b261b236cecbd69bd4eb5271e1563915f546b443cb6b71c6"}, + {file = "selenium-4.24.0.tar.gz", hash = "sha256:88281e5b5b90fe231868905d5ea745b9ee5e30db280b33498cc73fb0fa06d571"}, ] [package.dependencies] @@ -2483,60 +2487,60 @@ files = [ [[package]] name = "sqlalchemy" -version = "2.0.32" +version = "2.0.34" description = "Database Abstraction Library" optional = false python-versions = ">=3.7" files = [ - {file = "SQLAlchemy-2.0.32-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0c9045ecc2e4db59bfc97b20516dfdf8e41d910ac6fb667ebd3a79ea54084619"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1467940318e4a860afd546ef61fefb98a14d935cd6817ed07a228c7f7c62f389"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5954463675cb15db8d4b521f3566a017c8789222b8316b1e6934c811018ee08b"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:167e7497035c303ae50651b351c28dc22a40bb98fbdb8468cdc971821b1ae533"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b27dfb676ac02529fb6e343b3a482303f16e6bc3a4d868b73935b8792edb52d0"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bf2360a5e0f7bd75fa80431bf8ebcfb920c9f885e7956c7efde89031695cafb8"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-win32.whl", hash = "sha256:306fe44e754a91cd9d600a6b070c1f2fadbb4a1a257b8781ccf33c7067fd3e4d"}, - {file = "SQLAlchemy-2.0.32-cp310-cp310-win_amd64.whl", hash = "sha256:99db65e6f3ab42e06c318f15c98f59a436f1c78179e6a6f40f529c8cc7100b22"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:21b053be28a8a414f2ddd401f1be8361e41032d2ef5884b2f31d31cb723e559f"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b178e875a7a25b5938b53b006598ee7645172fccafe1c291a706e93f48499ff5"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:723a40ee2cc7ea653645bd4cf024326dea2076673fc9d3d33f20f6c81db83e1d"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:295ff8689544f7ee7e819529633d058bd458c1fd7f7e3eebd0f9268ebc56c2a0"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:49496b68cd190a147118af585173ee624114dfb2e0297558c460ad7495f9dfe2"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:acd9b73c5c15f0ec5ce18128b1fe9157ddd0044abc373e6ecd5ba376a7e5d961"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-win32.whl", hash = "sha256:9365a3da32dabd3e69e06b972b1ffb0c89668994c7e8e75ce21d3e5e69ddef28"}, - {file = "SQLAlchemy-2.0.32-cp311-cp311-win_amd64.whl", hash = "sha256:8bd63d051f4f313b102a2af1cbc8b80f061bf78f3d5bd0843ff70b5859e27924"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6bab3db192a0c35e3c9d1560eb8332463e29e5507dbd822e29a0a3c48c0a8d92"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:19d98f4f58b13900d8dec4ed09dd09ef292208ee44cc9c2fe01c1f0a2fe440e9"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cd33c61513cb1b7371fd40cf221256456d26a56284e7d19d1f0b9f1eb7dd7e8"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d6ba0497c1d066dd004e0f02a92426ca2df20fac08728d03f67f6960271feec"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2b6be53e4fde0065524f1a0a7929b10e9280987b320716c1509478b712a7688c"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:916a798f62f410c0b80b63683c8061f5ebe237b0f4ad778739304253353bc1cb"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-win32.whl", hash = "sha256:31983018b74908ebc6c996a16ad3690301a23befb643093fcfe85efd292e384d"}, - {file = "SQLAlchemy-2.0.32-cp312-cp312-win_amd64.whl", hash = "sha256:4363ed245a6231f2e2957cccdda3c776265a75851f4753c60f3004b90e69bfeb"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b8afd5b26570bf41c35c0121801479958b4446751a3971fb9a480c1afd85558e"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c750987fc876813f27b60d619b987b057eb4896b81117f73bb8d9918c14f1cad"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ada0102afff4890f651ed91120c1120065663506b760da4e7823913ebd3258be"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:78c03d0f8a5ab4f3034c0e8482cfcc415a3ec6193491cfa1c643ed707d476f16"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:3bd1cae7519283ff525e64645ebd7a3e0283f3c038f461ecc1c7b040a0c932a1"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-win32.whl", hash = "sha256:01438ebcdc566d58c93af0171c74ec28efe6a29184b773e378a385e6215389da"}, - {file = "SQLAlchemy-2.0.32-cp37-cp37m-win_amd64.whl", hash = "sha256:4979dc80fbbc9d2ef569e71e0896990bc94df2b9fdbd878290bd129b65ab579c"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c742be912f57586ac43af38b3848f7688863a403dfb220193a882ea60e1ec3a"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:62e23d0ac103bcf1c5555b6c88c114089587bc64d048fef5bbdb58dfd26f96da"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:251f0d1108aab8ea7b9aadbd07fb47fb8e3a5838dde34aa95a3349876b5a1f1d"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ef18a84e5116340e38eca3e7f9eeaaef62738891422e7c2a0b80feab165905f"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:3eb6a97a1d39976f360b10ff208c73afb6a4de86dd2a6212ddf65c4a6a2347d5"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0c1c9b673d21477cec17ab10bc4decb1322843ba35b481585facd88203754fc5"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-win32.whl", hash = "sha256:c41a2b9ca80ee555decc605bd3c4520cc6fef9abde8fd66b1cf65126a6922d65"}, - {file = "SQLAlchemy-2.0.32-cp38-cp38-win_amd64.whl", hash = "sha256:8a37e4d265033c897892279e8adf505c8b6b4075f2b40d77afb31f7185cd6ecd"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:52fec964fba2ef46476312a03ec8c425956b05c20220a1a03703537824b5e8e1"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:328429aecaba2aee3d71e11f2477c14eec5990fb6d0e884107935f7fb6001632"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85a01b5599e790e76ac3fe3aa2f26e1feba56270023d6afd5550ed63c68552b3"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aaf04784797dcdf4c0aa952c8d234fa01974c4729db55c45732520ce12dd95b4"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:4488120becf9b71b3ac718f4138269a6be99a42fe023ec457896ba4f80749525"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:14e09e083a5796d513918a66f3d6aedbc131e39e80875afe81d98a03312889e6"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-win32.whl", hash = "sha256:0d322cc9c9b2154ba7e82f7bf25ecc7c36fbe2d82e2933b3642fc095a52cfc78"}, - {file = "SQLAlchemy-2.0.32-cp39-cp39-win_amd64.whl", hash = "sha256:7dd8583df2f98dea28b5cd53a1beac963f4f9d087888d75f22fcc93a07cf8d84"}, - {file = "SQLAlchemy-2.0.32-py3-none-any.whl", hash = "sha256:e567a8793a692451f706b363ccf3c45e056b67d90ead58c3bc9471af5d212202"}, - {file = "SQLAlchemy-2.0.32.tar.gz", hash = "sha256:c1b88cc8b02b6a5f0efb0345a03672d4c897dc7d92585176f88c67346f565ea8"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:95d0b2cf8791ab5fb9e3aa3d9a79a0d5d51f55b6357eecf532a120ba3b5524db"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:243f92596f4fd4c8bd30ab8e8dd5965afe226363d75cab2468f2c707f64cd83b"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9ea54f7300553af0a2a7235e9b85f4204e1fc21848f917a3213b0e0818de9a24"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:173f5f122d2e1bff8fbd9f7811b7942bead1f5e9f371cdf9e670b327e6703ebd"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:196958cde924a00488e3e83ff917be3b73cd4ed8352bbc0f2989333176d1c54d"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bd90c221ed4e60ac9d476db967f436cfcecbd4ef744537c0f2d5291439848768"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-win32.whl", hash = "sha256:3166dfff2d16fe9be3241ee60ece6fcb01cf8e74dd7c5e0b64f8e19fab44911b"}, + {file = "SQLAlchemy-2.0.34-cp310-cp310-win_amd64.whl", hash = "sha256:6831a78bbd3c40f909b3e5233f87341f12d0b34a58f14115c9e94b4cdaf726d3"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c7db3db284a0edaebe87f8f6642c2b2c27ed85c3e70064b84d1c9e4ec06d5d84"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:430093fce0efc7941d911d34f75a70084f12f6ca5c15d19595c18753edb7c33b"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79cb400c360c7c210097b147c16a9e4c14688a6402445ac848f296ade6283bbc"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fb1b30f31a36c7f3fee848391ff77eebdd3af5750bf95fbf9b8b5323edfdb4ec"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8fddde2368e777ea2a4891a3fb4341e910a056be0bb15303bf1b92f073b80c02"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:80bd73ea335203b125cf1d8e50fef06be709619eb6ab9e7b891ea34b5baa2287"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-win32.whl", hash = "sha256:6daeb8382d0df526372abd9cb795c992e18eed25ef2c43afe518c73f8cccb721"}, + {file = "SQLAlchemy-2.0.34-cp311-cp311-win_amd64.whl", hash = "sha256:5bc08e75ed11693ecb648b7a0a4ed80da6d10845e44be0c98c03f2f880b68ff4"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:53e68b091492c8ed2bd0141e00ad3089bcc6bf0e6ec4142ad6505b4afe64163e"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:bcd18441a49499bf5528deaa9dee1f5c01ca491fc2791b13604e8f972877f812"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:165bbe0b376541092bf49542bd9827b048357f4623486096fc9aaa6d4e7c59a2"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3330415cd387d2b88600e8e26b510d0370db9b7eaf984354a43e19c40df2e2b"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:97b850f73f8abbffb66ccbab6e55a195a0eb655e5dc74624d15cff4bfb35bd74"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7cee4c6917857fd6121ed84f56d1dc78eb1d0e87f845ab5a568aba73e78adf83"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-win32.whl", hash = "sha256:fbb034f565ecbe6c530dff948239377ba859420d146d5f62f0271407ffb8c580"}, + {file = "SQLAlchemy-2.0.34-cp312-cp312-win_amd64.whl", hash = "sha256:707c8f44931a4facd4149b52b75b80544a8d824162602b8cd2fe788207307f9a"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:24af3dc43568f3780b7e1e57c49b41d98b2d940c1fd2e62d65d3928b6f95f021"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e60ed6ef0a35c6b76b7640fe452d0e47acc832ccbb8475de549a5cc5f90c2c06"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:413c85cd0177c23e32dee6898c67a5f49296640041d98fddb2c40888fe4daa2e"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:25691f4adfb9d5e796fd48bf1432272f95f4bbe5f89c475a788f31232ea6afba"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:526ce723265643dbc4c7efb54f56648cc30e7abe20f387d763364b3ce7506c82"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-win32.whl", hash = "sha256:13be2cc683b76977a700948411a94c67ad8faf542fa7da2a4b167f2244781cf3"}, + {file = "SQLAlchemy-2.0.34-cp37-cp37m-win_amd64.whl", hash = "sha256:e54ef33ea80d464c3dcfe881eb00ad5921b60f8115ea1a30d781653edc2fd6a2"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:43f28005141165edd11fbbf1541c920bd29e167b8bbc1fb410d4fe2269c1667a"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b68094b165a9e930aedef90725a8fcfafe9ef95370cbb54abc0464062dbf808f"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a1e03db964e9d32f112bae36f0cc1dcd1988d096cfd75d6a588a3c3def9ab2b"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:203d46bddeaa7982f9c3cc693e5bc93db476ab5de9d4b4640d5c99ff219bee8c"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ae92bebca3b1e6bd203494e5ef919a60fb6dfe4d9a47ed2453211d3bd451b9f5"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:9661268415f450c95f72f0ac1217cc6f10256f860eed85c2ae32e75b60278ad8"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-win32.whl", hash = "sha256:895184dfef8708e15f7516bd930bda7e50ead069280d2ce09ba11781b630a434"}, + {file = "SQLAlchemy-2.0.34-cp38-cp38-win_amd64.whl", hash = "sha256:6e7cde3a2221aa89247944cafb1b26616380e30c63e37ed19ff0bba5e968688d"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:dbcdf987f3aceef9763b6d7b1fd3e4ee210ddd26cac421d78b3c206d07b2700b"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ce119fc4ce0d64124d37f66a6f2a584fddc3c5001755f8a49f1ca0a177ef9796"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a17d8fac6df9835d8e2b4c5523666e7051d0897a93756518a1fe101c7f47f2f0"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ebc11c54c6ecdd07bb4efbfa1554538982f5432dfb8456958b6d46b9f834bb7"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2e6965346fc1491a566e019a4a1d3dfc081ce7ac1a736536367ca305da6472a8"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:220574e78ad986aea8e81ac68821e47ea9202b7e44f251b7ed8c66d9ae3f4278"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-win32.whl", hash = "sha256:b75b00083e7fe6621ce13cfce9d4469c4774e55e8e9d38c305b37f13cf1e874c"}, + {file = "SQLAlchemy-2.0.34-cp39-cp39-win_amd64.whl", hash = "sha256:c29d03e0adf3cc1a8c3ec62d176824972ae29b67a66cbb18daff3062acc6faa8"}, + {file = "SQLAlchemy-2.0.34-py3-none-any.whl", hash = "sha256:7286c353ee6475613d8beff83167374006c6b3e3f0e6491bfe8ca610eb1dec0f"}, + {file = "sqlalchemy-2.0.34.tar.gz", hash = "sha256:10d8f36990dd929690666679b0f42235c159a7051534adb135728ee52828dd22"}, ] [package.dependencies] @@ -2570,13 +2574,13 @@ sqlcipher = ["sqlcipher3_binary"] [[package]] name = "sqlmodel" -version = "0.0.21" +version = "0.0.22" description = "SQLModel, SQL databases in Python, designed for simplicity, compatibility, and robustness." optional = false python-versions = ">=3.7" files = [ - {file = "sqlmodel-0.0.21-py3-none-any.whl", hash = "sha256:eca104afe8a643f0764076b29f02e51d19d6b35c458f4c119942960362a4b52a"}, - {file = "sqlmodel-0.0.21.tar.gz", hash = "sha256:b2034c23d930f66d2091b17a4280a9c23a7ea540a71e7fcf9c746d262f06f74a"}, + {file = "sqlmodel-0.0.22-py3-none-any.whl", hash = "sha256:a1ed13e28a1f4057cbf4ff6cdb4fc09e85702621d3259ba17b3c230bfb2f941b"}, + {file = "sqlmodel-0.0.22.tar.gz", hash = "sha256:7d37c882a30c43464d143e35e9ecaf945d88035e20117bf5ec2834a23cbe505e"}, ] [package.dependencies] @@ -2585,13 +2589,13 @@ SQLAlchemy = ">=2.0.14,<2.1.0" [[package]] name = "starlette" -version = "0.37.2" +version = "0.38.4" description = "The little ASGI library that shines." optional = false python-versions = ">=3.8" files = [ - {file = "starlette-0.37.2-py3-none-any.whl", hash = "sha256:6fe59f29268538e5d0d182f2791a479a0c64638e6935d1c6989e63fb2699c6ee"}, - {file = "starlette-0.37.2.tar.gz", hash = "sha256:9af890290133b79fc3db55474ade20f6220a364a0402e0b556e7cd5e1e093823"}, + {file = "starlette-0.38.4-py3-none-any.whl", hash = "sha256:526f53a77f0e43b85f583438aee1a940fd84f8fd610353e8b0c1a77ad8a87e76"}, + {file = "starlette-0.38.4.tar.gz", hash = "sha256:53a7439060304a208fea17ed407e998f46da5e5d9b1addfea3040094512a6379"}, ] [package.dependencies] @@ -2757,13 +2761,13 @@ urllib3 = ">=1.26.0" [[package]] name = "typer" -version = "0.12.4" +version = "0.12.5" description = "Typer, build great CLIs. Easy to code. Based on Python type hints." optional = false python-versions = ">=3.7" files = [ - {file = "typer-0.12.4-py3-none-any.whl", hash = "sha256:819aa03699f438397e876aa12b0d63766864ecba1b579092cc9fe35d886e34b6"}, - {file = "typer-0.12.4.tar.gz", hash = "sha256:c9c1613ed6a166162705b3347b8d10b661ccc5d95692654d0fb628118f2c34e6"}, + {file = "typer-0.12.5-py3-none-any.whl", hash = "sha256:62fe4e471711b147e3365034133904df3e235698399bc4de2b36c8579298d52b"}, + {file = "typer-0.12.5.tar.gz", hash = "sha256:f592f089bedcc8ec1b974125d64851029c3b1af145f04aca64d69410f0c9b722"}, ] [package.dependencies] @@ -2853,152 +2857,6 @@ platformdirs = ">=3.9.1,<5" docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2,!=7.3)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] -[[package]] -name = "watchdog" -version = "4.0.2" -description = "Filesystem events monitoring" -optional = false -python-versions = ">=3.8" -files = [ - {file = "watchdog-4.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ede7f010f2239b97cc79e6cb3c249e72962404ae3865860855d5cbe708b0fd22"}, - {file = "watchdog-4.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a2cffa171445b0efa0726c561eca9a27d00a1f2b83846dbd5a4f639c4f8ca8e1"}, - {file = "watchdog-4.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c50f148b31b03fbadd6d0b5980e38b558046b127dc483e5e4505fcef250f9503"}, - {file = "watchdog-4.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7c7d4bf585ad501c5f6c980e7be9c4f15604c7cc150e942d82083b31a7548930"}, - {file = "watchdog-4.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:914285126ad0b6eb2258bbbcb7b288d9dfd655ae88fa28945be05a7b475a800b"}, - {file = "watchdog-4.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:984306dc4720da5498b16fc037b36ac443816125a3705dfde4fd90652d8028ef"}, - {file = "watchdog-4.0.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1cdcfd8142f604630deef34722d695fb455d04ab7cfe9963055df1fc69e6727a"}, - {file = "watchdog-4.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d7ab624ff2f663f98cd03c8b7eedc09375a911794dfea6bf2a359fcc266bff29"}, - {file = "watchdog-4.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:132937547a716027bd5714383dfc40dc66c26769f1ce8a72a859d6a48f371f3a"}, - {file = "watchdog-4.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:cd67c7df93eb58f360c43802acc945fa8da70c675b6fa37a241e17ca698ca49b"}, - {file = "watchdog-4.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bcfd02377be80ef3b6bc4ce481ef3959640458d6feaae0bd43dd90a43da90a7d"}, - {file = "watchdog-4.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:980b71510f59c884d684b3663d46e7a14b457c9611c481e5cef08f4dd022eed7"}, - {file = "watchdog-4.0.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:aa160781cafff2719b663c8a506156e9289d111d80f3387cf3af49cedee1f040"}, - {file = "watchdog-4.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f6ee8dedd255087bc7fe82adf046f0b75479b989185fb0bdf9a98b612170eac7"}, - {file = "watchdog-4.0.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0b4359067d30d5b864e09c8597b112fe0a0a59321a0f331498b013fb097406b4"}, - {file = "watchdog-4.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:770eef5372f146997638d737c9a3c597a3b41037cfbc5c41538fc27c09c3a3f9"}, - {file = "watchdog-4.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eeea812f38536a0aa859972d50c76e37f4456474b02bd93674d1947cf1e39578"}, - {file = "watchdog-4.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b2c45f6e1e57ebb4687690c05bc3a2c1fb6ab260550c4290b8abb1335e0fd08b"}, - {file = "watchdog-4.0.2-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:10b6683df70d340ac3279eff0b2766813f00f35a1d37515d2c99959ada8f05fa"}, - {file = "watchdog-4.0.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:f7c739888c20f99824f7aa9d31ac8a97353e22d0c0e54703a547a218f6637eb3"}, - {file = "watchdog-4.0.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:c100d09ac72a8a08ddbf0629ddfa0b8ee41740f9051429baa8e31bb903ad7508"}, - {file = "watchdog-4.0.2-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:f5315a8c8dd6dd9425b974515081fc0aadca1d1d61e078d2246509fd756141ee"}, - {file = "watchdog-4.0.2-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:2d468028a77b42cc685ed694a7a550a8d1771bb05193ba7b24006b8241a571a1"}, - {file = "watchdog-4.0.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f15edcae3830ff20e55d1f4e743e92970c847bcddc8b7509bcd172aa04de506e"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_aarch64.whl", hash = "sha256:936acba76d636f70db8f3c66e76aa6cb5136a936fc2a5088b9ce1c7a3508fc83"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_armv7l.whl", hash = "sha256:e252f8ca942a870f38cf785aef420285431311652d871409a64e2a0a52a2174c"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_i686.whl", hash = "sha256:0e83619a2d5d436a7e58a1aea957a3c1ccbf9782c43c0b4fed80580e5e4acd1a"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_ppc64.whl", hash = "sha256:88456d65f207b39f1981bf772e473799fcdc10801062c36fd5ad9f9d1d463a73"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:32be97f3b75693a93c683787a87a0dc8db98bb84701539954eef991fb35f5fbc"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_s390x.whl", hash = "sha256:c82253cfc9be68e3e49282831afad2c1f6593af80c0daf1287f6a92657986757"}, - {file = "watchdog-4.0.2-py3-none-manylinux2014_x86_64.whl", hash = "sha256:c0b14488bd336c5b1845cee83d3e631a1f8b4e9c5091ec539406e4a324f882d8"}, - {file = "watchdog-4.0.2-py3-none-win32.whl", hash = "sha256:0d8a7e523ef03757a5aa29f591437d64d0d894635f8a50f370fe37f913ce4e19"}, - {file = "watchdog-4.0.2-py3-none-win_amd64.whl", hash = "sha256:c344453ef3bf875a535b0488e3ad28e341adbd5a9ffb0f7d62cefacc8824ef2b"}, - {file = "watchdog-4.0.2-py3-none-win_ia64.whl", hash = "sha256:baececaa8edff42cd16558a639a9b0ddf425f93d892e8392a56bf904f5eff22c"}, - {file = "watchdog-4.0.2.tar.gz", hash = "sha256:b4dfbb6c49221be4535623ea4474a4d6ee0a9cef4a80b20c28db4d858b64e270"}, -] - -[package.extras] -watchmedo = ["PyYAML (>=3.10)"] - -[[package]] -name = "watchfiles" -version = "0.23.0" -description = "Simple, modern and high performance file watching and code reload in python." -optional = false -python-versions = ">=3.8" -files = [ - {file = "watchfiles-0.23.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:bee8ce357a05c20db04f46c22be2d1a2c6a8ed365b325d08af94358e0688eeb4"}, - {file = "watchfiles-0.23.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4ccd3011cc7ee2f789af9ebe04745436371d36afe610028921cab9f24bb2987b"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb02d41c33be667e6135e6686f1bb76104c88a312a18faa0ef0262b5bf7f1a0f"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7cf12ac34c444362f3261fb3ff548f0037ddd4c5bb85f66c4be30d2936beb3c5"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a0b2c25040a3c0ce0e66c7779cc045fdfbbb8d59e5aabfe033000b42fe44b53e"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecf2be4b9eece4f3da8ba5f244b9e51932ebc441c0867bd6af46a3d97eb068d6"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:40cb8fa00028908211eb9f8d47744dca21a4be6766672e1ff3280bee320436f1"}, - {file = "watchfiles-0.23.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f48c917ffd36ff9a5212614c2d0d585fa8b064ca7e66206fb5c095015bc8207"}, - {file = "watchfiles-0.23.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9d183e3888ada88185ab17064079c0db8c17e32023f5c278d7bf8014713b1b5b"}, - {file = "watchfiles-0.23.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9837edf328b2805346f91209b7e660f65fb0e9ca18b7459d075d58db082bf981"}, - {file = "watchfiles-0.23.0-cp310-none-win32.whl", hash = "sha256:296e0b29ab0276ca59d82d2da22cbbdb39a23eed94cca69aed274595fb3dfe42"}, - {file = "watchfiles-0.23.0-cp310-none-win_amd64.whl", hash = "sha256:4ea756e425ab2dfc8ef2a0cb87af8aa7ef7dfc6fc46c6f89bcf382121d4fff75"}, - {file = "watchfiles-0.23.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:e397b64f7aaf26915bf2ad0f1190f75c855d11eb111cc00f12f97430153c2eab"}, - {file = "watchfiles-0.23.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b4ac73b02ca1824ec0a7351588241fd3953748d3774694aa7ddb5e8e46aef3e3"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:130a896d53b48a1cecccfa903f37a1d87dbb74295305f865a3e816452f6e49e4"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c5e7803a65eb2d563c73230e9d693c6539e3c975ccfe62526cadde69f3fda0cf"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d1aa4cc85202956d1a65c88d18c7b687b8319dbe6b1aec8969784ef7a10e7d1a"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:87f889f6e58849ddb7c5d2cb19e2e074917ed1c6e3ceca50405775166492cca8"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:37fd826dac84c6441615aa3f04077adcc5cac7194a021c9f0d69af20fb9fa788"}, - {file = "watchfiles-0.23.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ee7db6e36e7a2c15923072e41ea24d9a0cf39658cb0637ecc9307b09d28827e1"}, - {file = "watchfiles-0.23.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2368c5371c17fdcb5a2ea71c5c9d49f9b128821bfee69503cc38eae00feb3220"}, - {file = "watchfiles-0.23.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:857af85d445b9ba9178db95658c219dbd77b71b8264e66836a6eba4fbf49c320"}, - {file = "watchfiles-0.23.0-cp311-none-win32.whl", hash = "sha256:1d636c8aeb28cdd04a4aa89030c4b48f8b2954d8483e5f989774fa441c0ed57b"}, - {file = "watchfiles-0.23.0-cp311-none-win_amd64.whl", hash = "sha256:46f1d8069a95885ca529645cdbb05aea5837d799965676e1b2b1f95a4206313e"}, - {file = "watchfiles-0.23.0-cp311-none-win_arm64.whl", hash = "sha256:e495ed2a7943503766c5d1ff05ae9212dc2ce1c0e30a80d4f0d84889298fa304"}, - {file = "watchfiles-0.23.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:1db691bad0243aed27c8354b12d60e8e266b75216ae99d33e927ff5238d270b5"}, - {file = "watchfiles-0.23.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:62d2b18cb1edaba311fbbfe83fb5e53a858ba37cacb01e69bc20553bb70911b8"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e087e8fdf1270d000913c12e6eca44edd02aad3559b3e6b8ef00f0ce76e0636f"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd41d5c72417b87c00b1b635738f3c283e737d75c5fa5c3e1c60cd03eac3af77"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e5f3ca0ff47940ce0a389457b35d6df601c317c1e1a9615981c474452f98de1"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6991e3a78f642368b8b1b669327eb6751439f9f7eaaa625fae67dd6070ecfa0b"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7f7252f52a09f8fa5435dc82b6af79483118ce6bd51eb74e6269f05ee22a7b9f"}, - {file = "watchfiles-0.23.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e01bcb8d767c58865207a6c2f2792ad763a0fe1119fb0a430f444f5b02a5ea0"}, - {file = "watchfiles-0.23.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8e56fbcdd27fce061854ddec99e015dd779cae186eb36b14471fc9ae713b118c"}, - {file = "watchfiles-0.23.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bd3e2d64500a6cad28bcd710ee6269fbeb2e5320525acd0cfab5f269ade68581"}, - {file = "watchfiles-0.23.0-cp312-none-win32.whl", hash = "sha256:eb99c954291b2fad0eff98b490aa641e128fbc4a03b11c8a0086de8b7077fb75"}, - {file = "watchfiles-0.23.0-cp312-none-win_amd64.whl", hash = "sha256:dccc858372a56080332ea89b78cfb18efb945da858fabeb67f5a44fa0bcb4ebb"}, - {file = "watchfiles-0.23.0-cp312-none-win_arm64.whl", hash = "sha256:6c21a5467f35c61eafb4e394303720893066897fca937bade5b4f5877d350ff8"}, - {file = "watchfiles-0.23.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:ba31c32f6b4dceeb2be04f717811565159617e28d61a60bb616b6442027fd4b9"}, - {file = "watchfiles-0.23.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:85042ab91814fca99cec4678fc063fb46df4cbb57b4835a1cc2cb7a51e10250e"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:24655e8c1c9c114005c3868a3d432c8aa595a786b8493500071e6a52f3d09217"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6b1a950ab299a4a78fd6369a97b8763732bfb154fdb433356ec55a5bce9515c1"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b8d3c5cd327dd6ce0edfc94374fb5883d254fe78a5e9d9dfc237a1897dc73cd1"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9ff785af8bacdf0be863ec0c428e3288b817e82f3d0c1d652cd9c6d509020dd0"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:02b7ba9d4557149410747353e7325010d48edcfe9d609a85cb450f17fd50dc3d"}, - {file = "watchfiles-0.23.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:48a1b05c0afb2cd2f48c1ed2ae5487b116e34b93b13074ed3c22ad5c743109f0"}, - {file = "watchfiles-0.23.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:109a61763e7318d9f821b878589e71229f97366fa6a5c7720687d367f3ab9eef"}, - {file = "watchfiles-0.23.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:9f8e6bb5ac007d4a4027b25f09827ed78cbbd5b9700fd6c54429278dacce05d1"}, - {file = "watchfiles-0.23.0-cp313-none-win32.whl", hash = "sha256:f46c6f0aec8d02a52d97a583782d9af38c19a29900747eb048af358a9c1d8e5b"}, - {file = "watchfiles-0.23.0-cp313-none-win_amd64.whl", hash = "sha256:f449afbb971df5c6faeb0a27bca0427d7b600dd8f4a068492faec18023f0dcff"}, - {file = "watchfiles-0.23.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:2dddc2487d33e92f8b6222b5fb74ae2cfde5e8e6c44e0248d24ec23befdc5366"}, - {file = "watchfiles-0.23.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e75695cc952e825fa3e0684a7f4a302f9128721f13eedd8dbd3af2ba450932b8"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2537ef60596511df79b91613a5bb499b63f46f01a11a81b0a2b0dedf645d0a9c"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:20b423b58f5fdde704a226b598a2d78165fe29eb5621358fe57ea63f16f165c4"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b98732ec893975455708d6fc9a6daab527fc8bbe65be354a3861f8c450a632a4"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee1f5fcbf5bc33acc0be9dd31130bcba35d6d2302e4eceafafd7d9018c7755ab"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8f195338a5a7b50a058522b39517c50238358d9ad8284fd92943643144c0c03"}, - {file = "watchfiles-0.23.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:524fcb8d59b0dbee2c9b32207084b67b2420f6431ed02c18bd191e6c575f5c48"}, - {file = "watchfiles-0.23.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0eff099a4df36afaa0eea7a913aa64dcf2cbd4e7a4f319a73012210af4d23810"}, - {file = "watchfiles-0.23.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a8323daae27ea290ba3350c70c836c0d2b0fb47897fa3b0ca6a5375b952b90d3"}, - {file = "watchfiles-0.23.0-cp38-none-win32.whl", hash = "sha256:aafea64a3ae698695975251f4254df2225e2624185a69534e7fe70581066bc1b"}, - {file = "watchfiles-0.23.0-cp38-none-win_amd64.whl", hash = "sha256:c846884b2e690ba62a51048a097acb6b5cd263d8bd91062cd6137e2880578472"}, - {file = "watchfiles-0.23.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a753993635eccf1ecb185dedcc69d220dab41804272f45e4aef0a67e790c3eb3"}, - {file = "watchfiles-0.23.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6bb91fa4d0b392f0f7e27c40981e46dda9eb0fbc84162c7fb478fe115944f491"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1f67312efa3902a8e8496bfa9824d3bec096ff83c4669ea555c6bdd213aa516"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7ca6b71dcc50d320c88fb2d88ecd63924934a8abc1673683a242a7ca7d39e781"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2aec5c29915caf08771d2507da3ac08e8de24a50f746eb1ed295584ba1820330"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1733b9bc2c8098c6bdb0ff7a3d7cb211753fecb7bd99bdd6df995621ee1a574b"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:02ff5d7bd066c6a7673b17c8879cd8ee903078d184802a7ee851449c43521bdd"}, - {file = "watchfiles-0.23.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18e2de19801b0eaa4c5292a223effb7cfb43904cb742c5317a0ac686ed604765"}, - {file = "watchfiles-0.23.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:8ada449e22198c31fb013ae7e9add887e8d2bd2335401abd3cbc55f8c5083647"}, - {file = "watchfiles-0.23.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3af1b05361e1cc497bf1be654a664750ae61f5739e4bb094a2be86ec8c6db9b6"}, - {file = "watchfiles-0.23.0-cp39-none-win32.whl", hash = "sha256:486bda18be5d25ab5d932699ceed918f68eb91f45d018b0343e3502e52866e5e"}, - {file = "watchfiles-0.23.0-cp39-none-win_amd64.whl", hash = "sha256:d2d42254b189a346249424fb9bb39182a19289a2409051ee432fb2926bad966a"}, - {file = "watchfiles-0.23.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6a9265cf87a5b70147bfb2fec14770ed5b11a5bb83353f0eee1c25a81af5abfe"}, - {file = "watchfiles-0.23.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9f02a259fcbbb5fcfe7a0805b1097ead5ba7a043e318eef1db59f93067f0b49b"}, - {file = "watchfiles-0.23.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ebaebb53b34690da0936c256c1cdb0914f24fb0e03da76d185806df9328abed"}, - {file = "watchfiles-0.23.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd257f98cff9c6cb39eee1a83c7c3183970d8a8d23e8cf4f47d9a21329285cee"}, - {file = "watchfiles-0.23.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:aba037c1310dd108411d27b3d5815998ef0e83573e47d4219f45753c710f969f"}, - {file = "watchfiles-0.23.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:a96ac14e184aa86dc43b8a22bb53854760a58b2966c2b41580de938e9bf26ed0"}, - {file = "watchfiles-0.23.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11698bb2ea5e991d10f1f4f83a39a02f91e44e4bd05f01b5c1ec04c9342bf63c"}, - {file = "watchfiles-0.23.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efadd40fca3a04063d40c4448c9303ce24dd6151dc162cfae4a2a060232ebdcb"}, - {file = "watchfiles-0.23.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:556347b0abb4224c5ec688fc58214162e92a500323f50182f994f3ad33385dcb"}, - {file = "watchfiles-0.23.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:1cf7f486169986c4b9d34087f08ce56a35126600b6fef3028f19ca16d5889071"}, - {file = "watchfiles-0.23.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f18de0f82c62c4197bea5ecf4389288ac755896aac734bd2cc44004c56e4ac47"}, - {file = "watchfiles-0.23.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:532e1f2c491274d1333a814e4c5c2e8b92345d41b12dc806cf07aaff786beb66"}, - {file = "watchfiles-0.23.0.tar.gz", hash = "sha256:9338ade39ff24f8086bb005d16c29f8e9f19e55b18dcb04dfa26fcbc09da497b"}, -] - -[package.dependencies] -anyio = ">=3.0.0" - [[package]] name = "websocket-client" version = "1.8.0" @@ -3017,97 +2875,97 @@ test = ["websockets"] [[package]] name = "websockets" -version = "13.0" +version = "13.0.1" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" optional = false python-versions = ">=3.8" files = [ - {file = "websockets-13.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ad4fa707ff9e2ffee019e946257b5300a45137a58f41fbd9a4db8e684ab61528"}, - {file = "websockets-13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6fd757f313c13c34dae9f126d3ba4cf97175859c719e57c6a614b781c86b617e"}, - {file = "websockets-13.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:cbac2eb7ce0fac755fb983c9247c4a60c4019bcde4c0e4d167aeb17520cc7ef1"}, - {file = "websockets-13.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4b83cf7354cbbc058e97b3e545dceb75b8d9cf17fd5a19db419c319ddbaaf7a"}, - {file = "websockets-13.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9202c0010c78fad1041e1c5285232b6508d3633f92825687549540a70e9e5901"}, - {file = "websockets-13.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3e6566e79c8c7cbea75ec450f6e1828945fc5c9a4769ceb1c7b6e22470539712"}, - {file = "websockets-13.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e7fcad070dcd9ad37a09d89a4cbc2a5e3e45080b88977c0da87b3090f9f55ead"}, - {file = "websockets-13.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0a8f7d65358a25172db00c69bcc7df834155ee24229f560d035758fd6613111a"}, - {file = "websockets-13.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:63b702fb31e3f058f946ccdfa551f4d57a06f7729c369e8815eb18643099db37"}, - {file = "websockets-13.0-cp310-cp310-win32.whl", hash = "sha256:3a20cf14ba7b482c4a1924b5e061729afb89c890ca9ed44ac4127c6c5986e424"}, - {file = "websockets-13.0-cp310-cp310-win_amd64.whl", hash = "sha256:587245f0704d0bb675f919898d7473e8827a6d578e5a122a21756ca44b811ec8"}, - {file = "websockets-13.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:06df8306c241c235075d2ae77367038e701e53bc8c1bb4f6644f4f53aa6dedd0"}, - {file = "websockets-13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:85a1f92a02f0b8c1bf02699731a70a8a74402bb3f82bee36e7768b19a8ed9709"}, - {file = "websockets-13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9ed02c604349068d46d87ef4c2012c112c791f2bec08671903a6bb2bd9c06784"}, - {file = "websockets-13.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b89849171b590107f6724a7b0790736daead40926ddf47eadf998b4ff51d6414"}, - {file = "websockets-13.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:939a16849d71203628157a5e4a495da63967c744e1e32018e9b9e2689aca64d4"}, - {file = "websockets-13.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad818cdac37c0ad4c58e51cb4964eae4f18b43c4a83cb37170b0d90c31bd80cf"}, - {file = "websockets-13.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:cbfe82a07596a044de78bb7a62519e71690c5812c26c5f1d4b877e64e4f46309"}, - {file = "websockets-13.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:e07e76c49f39c5b45cbd7362b94f001ae209a3ea4905ae9a09cfd53b3c76373d"}, - {file = "websockets-13.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:372f46a0096cfda23c88f7e42349a33f8375e10912f712e6b496d3a9a557290f"}, - {file = "websockets-13.0-cp311-cp311-win32.whl", hash = "sha256:376a43a4fd96725f13450d3d2e98f4f36c3525c562ab53d9a98dd2950dca9a8a"}, - {file = "websockets-13.0-cp311-cp311-win_amd64.whl", hash = "sha256:2be1382a4daa61e2f3e2be3b3c86932a8db9d1f85297feb6e9df22f391f94452"}, - {file = "websockets-13.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b5407c34776b9b77bd89a5f95eb0a34aaf91889e3f911c63f13035220eb50107"}, - {file = "websockets-13.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:4782ec789f059f888c1e8fdf94383d0e64b531cffebbf26dd55afd53ab487ca4"}, - {file = "websockets-13.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c8feb8e19ef65c9994e652c5b0324abd657bedd0abeb946fb4f5163012c1e730"}, - {file = "websockets-13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3f3d2e20c442b58dbac593cb1e02bc02d149a86056cc4126d977ad902472e3b"}, - {file = "websockets-13.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e39d393e0ab5b8bd01717cc26f2922026050188947ff54fe6a49dc489f7750b7"}, - {file = "websockets-13.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f661a4205741bdc88ac9c2b2ec003c72cee97e4acd156eb733662ff004ba429"}, - {file = "websockets-13.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:384129ad0490e06bab2b98c1da9b488acb35bb11e2464c728376c6f55f0d45f3"}, - {file = "websockets-13.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:df5c0eff91f61b8205a6c9f7b255ff390cdb77b61c7b41f79ca10afcbb22b6cb"}, - {file = "websockets-13.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:02cc9bb1a887dac0e08bf657c5d00aa3fac0d03215d35a599130c2034ae6663a"}, - {file = "websockets-13.0-cp312-cp312-win32.whl", hash = "sha256:d9726d2c9bd6aed8cb994d89b3910ca0079406edce3670886ec828a73e7bdd53"}, - {file = "websockets-13.0-cp312-cp312-win_amd64.whl", hash = "sha256:fa0839f35322f7b038d8adcf679e2698c3a483688cc92e3bd15ee4fb06669e9a"}, - {file = "websockets-13.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:da7e501e59857e8e3e9d10586139dc196b80445a591451ca9998aafba1af5278"}, - {file = "websockets-13.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a00e1e587c655749afb5b135d8d3edcfe84ec6db864201e40a882e64168610b3"}, - {file = "websockets-13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a7fbf2a8fe7556a8f4e68cb3e736884af7bf93653e79f6219f17ebb75e97d8f0"}, - {file = "websockets-13.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ea9c9c7443a97ea4d84d3e4d42d0e8c4235834edae652993abcd2aff94affd7"}, - {file = "websockets-13.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:35c2221b539b360203f3f9ad168e527bf16d903e385068ae842c186efb13d0ea"}, - {file = "websockets-13.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:358d37c5c431dd050ffb06b4b075505aae3f4f795d7fff9794e5ed96ce99b998"}, - {file = "websockets-13.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:038e7a0f1bfafc7bf52915ab3506b7a03d1e06381e9f60440c856e8918138151"}, - {file = "websockets-13.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:fd038bc9e2c134847f1e0ce3191797fad110756e690c2fdd9702ed34e7a43abb"}, - {file = "websockets-13.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:93b8c2008f372379fb6e5d2b3f7c9ec32f7b80316543fd3a5ace6610c5cde1b0"}, - {file = "websockets-13.0-cp313-cp313-win32.whl", hash = "sha256:851fd0afb3bc0b73f7c5b5858975d42769a5fdde5314f4ef2c106aec63100687"}, - {file = "websockets-13.0-cp313-cp313-win_amd64.whl", hash = "sha256:7d14901fdcf212804970c30ab9ee8f3f0212e620c7ea93079d6534863444fb4e"}, - {file = "websockets-13.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ae7a519a56a714f64c3445cabde9fc2fc927e7eae44f413eae187cddd9e54178"}, - {file = "websockets-13.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5575031472ca87302aeb2ce2c2349f4c6ea978c86a9d1289bc5d16058ad4c10a"}, - {file = "websockets-13.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9895df6cd0bfe79d09bcd1dbdc03862846f26fbd93797153de954306620c1d00"}, - {file = "websockets-13.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a4de299c947a54fca9ce1c5fd4a08eb92ffce91961becb13bd9195f7c6e71b47"}, - {file = "websockets-13.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:05c25f7b849702950b6fd0e233989bb73a0d2bc83faa3b7233313ca395205f6d"}, - {file = "websockets-13.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ede95125a30602b1691a4b1da88946bf27dae283cf30f22cd2cb8ca4b2e0d119"}, - {file = "websockets-13.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:addf0a16e4983280efed272d8cb3b2e05f0051755372461e7d966b80a6554e16"}, - {file = "websockets-13.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:06b3186e97bf9a33921fa60734d5ed90f2a9b407cce8d23c7333a0984049ef61"}, - {file = "websockets-13.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:eae368cac85adc4c7dc3b0d5f84ffcca609d658db6447387300478e44db70796"}, - {file = "websockets-13.0-cp38-cp38-win32.whl", hash = "sha256:337837ac788d955728b1ab01876d72b73da59819a3388e1c5e8e05c3999f1afa"}, - {file = "websockets-13.0-cp38-cp38-win_amd64.whl", hash = "sha256:f66e00e42f25ca7e91076366303e11c82572ca87cc5aae51e6e9c094f315ab41"}, - {file = "websockets-13.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:94c1c02721139fe9940b38d28fb15b4b782981d800d5f40f9966264fbf23dcc8"}, - {file = "websockets-13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bd4ba86513430513e2aa25a441bb538f6f83734dc368a2c5d18afdd39097aa33"}, - {file = "websockets-13.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a1ab8f0e0cadc5be5f3f9fa11a663957fecbf483d434762c8dfb8aa44948944a"}, - {file = "websockets-13.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3670def5d3dfd5af6f6e2b3b243ea8f1f72d8da1ef927322f0703f85c90d9603"}, - {file = "websockets-13.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6058b6be92743358885ad6dcdecb378fde4a4c74d4dd16a089d07580c75a0e80"}, - {file = "websockets-13.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:516062a0a8ef5ecbfa4acbaec14b199fc070577834f9fe3d40800a99f92523ca"}, - {file = "websockets-13.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:da7e918d82e7bdfc6f66d31febe1b2e28a1ca3387315f918de26f5e367f61572"}, - {file = "websockets-13.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:9cc7f35dcb49a4e32db82a849fcc0714c4d4acc9d2273aded2d61f87d7f660b7"}, - {file = "websockets-13.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:f5737c53eb2c8ed8f64b50d3dafd3c1dae739f78aa495a288421ac1b3de82717"}, - {file = "websockets-13.0-cp39-cp39-win32.whl", hash = "sha256:265e1f0d3f788ce8ef99dca591a1aec5263b26083ca0934467ad9a1d1181067c"}, - {file = "websockets-13.0-cp39-cp39-win_amd64.whl", hash = "sha256:4d70c89e3d3b347a7c4d3c33f8d323f0584c9ceb69b82c2ef8a174ca84ea3d4a"}, - {file = "websockets-13.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:602cbd010d8c21c8475f1798b705bb18567eb189c533ab5ef568bc3033fdf417"}, - {file = "websockets-13.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:bf8eb5dca4f484a60f5327b044e842e0d7f7cdbf02ea6dc4a4f811259f1f1f0b"}, - {file = "websockets-13.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:89d795c1802d99a643bf689b277e8604c14b5af1bc0a31dade2cd7a678087212"}, - {file = "websockets-13.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:788bc841d250beccff67a20a5a53a15657a60111ef9c0c0a97fbdd614fae0fe2"}, - {file = "websockets-13.0-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7334752052532c156d28b8eaf3558137e115c7871ea82adff69b6d94a7bee273"}, - {file = "websockets-13.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e7a1963302947332c3039e3f66209ec73b1626f8a0191649e0713c391e9f5b0d"}, - {file = "websockets-13.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:2e1cf4e1eb84b4fd74a47688e8b0940c89a04ad9f6937afa43d468e71128cd68"}, - {file = "websockets-13.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:c026ee729c4ce55708a14b839ba35086dfae265fc12813b62d34ce33f4980c1c"}, - {file = "websockets-13.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5f9d23fbbf96eefde836d9692670bfc89e2d159f456d499c5efcf6a6281c1af"}, - {file = "websockets-13.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ad684cb7efce227d756bae3e8484f2e56aa128398753b54245efdfbd1108f2c"}, - {file = "websockets-13.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1e10b3fbed7be4a59831d3a939900e50fcd34d93716e433d4193a4d0d1d335d"}, - {file = "websockets-13.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:d42a818e634f789350cd8fb413a3f5eec1cf0400a53d02062534c41519f5125c"}, - {file = "websockets-13.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e5ba5e9b332267d0f2c33ede390061850f1ac3ee6cd1bdcf4c5ea33ead971966"}, - {file = "websockets-13.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f9af457ed593e35f467140d8b61d425495b127744a9d65d45a366f8678449a23"}, - {file = "websockets-13.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bcea3eb58c09c3a31cc83b45c06d5907f02ddaf10920aaa6443975310f699b95"}, - {file = "websockets-13.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c210d1460dc8d326ffdef9703c2f83269b7539a1690ad11ae04162bc1878d33d"}, - {file = "websockets-13.0-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b32f38bc81170fd56d0482d505b556e52bf9078b36819a8ba52624bd6667e39e"}, - {file = "websockets-13.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:81a11a1ddd5320429db47c04d35119c3e674d215173d87aaeb06ae80f6e9031f"}, - {file = "websockets-13.0-py3-none-any.whl", hash = "sha256:dbbac01e80aee253d44c4f098ab3cc17c822518519e869b284cfbb8cd16cc9de"}, - {file = "websockets-13.0.tar.gz", hash = "sha256:b7bf950234a482b7461afdb2ec99eee3548ec4d53f418c7990bb79c620476602"}, + {file = "websockets-13.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1841c9082a3ba4a05ea824cf6d99570a6a2d8849ef0db16e9c826acb28089e8f"}, + {file = "websockets-13.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c5870b4a11b77e4caa3937142b650fbbc0914a3e07a0cf3131f35c0587489c1c"}, + {file = "websockets-13.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f1d3d1f2eb79fe7b0fb02e599b2bf76a7619c79300fc55f0b5e2d382881d4f7f"}, + {file = "websockets-13.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15c7d62ee071fa94a2fc52c2b472fed4af258d43f9030479d9c4a2de885fd543"}, + {file = "websockets-13.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6724b554b70d6195ba19650fef5759ef11346f946c07dbbe390e039bcaa7cc3d"}, + {file = "websockets-13.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56a952fa2ae57a42ba7951e6b2605e08a24801a4931b5644dfc68939e041bc7f"}, + {file = "websockets-13.0.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:17118647c0ea14796364299e942c330d72acc4b248e07e639d34b75067b3cdd8"}, + {file = "websockets-13.0.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:64a11aae1de4c178fa653b07d90f2fb1a2ed31919a5ea2361a38760192e1858b"}, + {file = "websockets-13.0.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0617fd0b1d14309c7eab6ba5deae8a7179959861846cbc5cb528a7531c249448"}, + {file = "websockets-13.0.1-cp310-cp310-win32.whl", hash = "sha256:11f9976ecbc530248cf162e359a92f37b7b282de88d1d194f2167b5e7ad80ce3"}, + {file = "websockets-13.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:c3c493d0e5141ec055a7d6809a28ac2b88d5b878bb22df8c621ebe79a61123d0"}, + {file = "websockets-13.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:699ba9dd6a926f82a277063603fc8d586b89f4cb128efc353b749b641fcddda7"}, + {file = "websockets-13.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cf2fae6d85e5dc384bf846f8243ddaa9197f3a1a70044f59399af001fd1f51d4"}, + {file = "websockets-13.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:52aed6ef21a0f1a2a5e310fb5c42d7555e9c5855476bbd7173c3aa3d8a0302f2"}, + {file = "websockets-13.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8eb2b9a318542153674c6e377eb8cb9ca0fc011c04475110d3477862f15d29f0"}, + {file = "websockets-13.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5df891c86fe68b2c38da55b7aea7095beca105933c697d719f3f45f4220a5e0e"}, + {file = "websockets-13.0.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fac2d146ff30d9dd2fcf917e5d147db037a5c573f0446c564f16f1f94cf87462"}, + {file = "websockets-13.0.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:b8ac5b46fd798bbbf2ac6620e0437c36a202b08e1f827832c4bf050da081b501"}, + {file = "websockets-13.0.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:46af561eba6f9b0848b2c9d2427086cabadf14e0abdd9fde9d72d447df268418"}, + {file = "websockets-13.0.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b5a06d7f60bc2fc378a333978470dfc4e1415ee52f5f0fce4f7853eb10c1e9df"}, + {file = "websockets-13.0.1-cp311-cp311-win32.whl", hash = "sha256:556e70e4f69be1082e6ef26dcb70efcd08d1850f5d6c5f4f2bcb4e397e68f01f"}, + {file = "websockets-13.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:67494e95d6565bf395476e9d040037ff69c8b3fa356a886b21d8422ad86ae075"}, + {file = "websockets-13.0.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f9c9e258e3d5efe199ec23903f5da0eeaad58cf6fccb3547b74fd4750e5ac47a"}, + {file = "websockets-13.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6b41a1b3b561f1cba8321fb32987552a024a8f67f0d05f06fcf29f0090a1b956"}, + {file = "websockets-13.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f73e676a46b0fe9426612ce8caeca54c9073191a77c3e9d5c94697aef99296af"}, + {file = "websockets-13.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f613289f4a94142f914aafad6c6c87903de78eae1e140fa769a7385fb232fdf"}, + {file = "websockets-13.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0f52504023b1480d458adf496dc1c9e9811df4ba4752f0bc1f89ae92f4f07d0c"}, + {file = "websockets-13.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:139add0f98206cb74109faf3611b7783ceafc928529c62b389917a037d4cfdf4"}, + {file = "websockets-13.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:47236c13be337ef36546004ce8c5580f4b1150d9538b27bf8a5ad8edf23ccfab"}, + {file = "websockets-13.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:c44ca9ade59b2e376612df34e837013e2b273e6c92d7ed6636d0556b6f4db93d"}, + {file = "websockets-13.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:9bbc525f4be3e51b89b2a700f5746c2a6907d2e2ef4513a8daafc98198b92237"}, + {file = "websockets-13.0.1-cp312-cp312-win32.whl", hash = "sha256:3624fd8664f2577cf8de996db3250662e259bfbc870dd8ebdcf5d7c6ac0b5185"}, + {file = "websockets-13.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0513c727fb8adffa6d9bf4a4463b2bade0186cbd8c3604ae5540fae18a90cb99"}, + {file = "websockets-13.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1ee4cc030a4bdab482a37462dbf3ffb7e09334d01dd37d1063be1136a0d825fa"}, + {file = "websockets-13.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dbb0b697cc0655719522406c059eae233abaa3243821cfdfab1215d02ac10231"}, + {file = "websockets-13.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:acbebec8cb3d4df6e2488fbf34702cbc37fc39ac7abf9449392cefb3305562e9"}, + {file = "websockets-13.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63848cdb6fcc0bf09d4a155464c46c64ffdb5807ede4fb251da2c2692559ce75"}, + {file = "websockets-13.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:872afa52a9f4c414d6955c365b6588bc4401272c629ff8321a55f44e3f62b553"}, + {file = "websockets-13.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:05e70fec7c54aad4d71eae8e8cab50525e899791fc389ec6f77b95312e4e9920"}, + {file = "websockets-13.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e82db3756ccb66266504f5a3de05ac6b32f287faacff72462612120074103329"}, + {file = "websockets-13.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:4e85f46ce287f5c52438bb3703d86162263afccf034a5ef13dbe4318e98d86e7"}, + {file = "websockets-13.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f3fea72e4e6edb983908f0db373ae0732b275628901d909c382aae3b592589f2"}, + {file = "websockets-13.0.1-cp313-cp313-win32.whl", hash = "sha256:254ecf35572fca01a9f789a1d0f543898e222f7b69ecd7d5381d8d8047627bdb"}, + {file = "websockets-13.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:ca48914cdd9f2ccd94deab5bcb5ac98025a5ddce98881e5cce762854a5de330b"}, + {file = "websockets-13.0.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b74593e9acf18ea5469c3edaa6b27fa7ecf97b30e9dabd5a94c4c940637ab96e"}, + {file = "websockets-13.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:132511bfd42e77d152c919147078460c88a795af16b50e42a0bd14f0ad71ddd2"}, + {file = "websockets-13.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:165bedf13556f985a2aa064309baa01462aa79bf6112fbd068ae38993a0e1f1b"}, + {file = "websockets-13.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e801ca2f448850685417d723ec70298feff3ce4ff687c6f20922c7474b4746ae"}, + {file = "websockets-13.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30d3a1f041360f029765d8704eae606781e673e8918e6b2c792e0775de51352f"}, + {file = "websockets-13.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:67648f5e50231b5a7f6d83b32f9c525e319f0ddc841be0de64f24928cd75a603"}, + {file = "websockets-13.0.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:4f0426d51c8f0926a4879390f53c7f5a855e42d68df95fff6032c82c888b5f36"}, + {file = "websockets-13.0.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ef48e4137e8799998a343706531e656fdec6797b80efd029117edacb74b0a10a"}, + {file = "websockets-13.0.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:249aab278810bee585cd0d4de2f08cfd67eed4fc75bde623be163798ed4db2eb"}, + {file = "websockets-13.0.1-cp38-cp38-win32.whl", hash = "sha256:06c0a667e466fcb56a0886d924b5f29a7f0886199102f0a0e1c60a02a3751cb4"}, + {file = "websockets-13.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1f3cf6d6ec1142412d4535adabc6bd72a63f5f148c43fe559f06298bc21953c9"}, + {file = "websockets-13.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1fa082ea38d5de51dd409434edc27c0dcbd5fed2b09b9be982deb6f0508d25bc"}, + {file = "websockets-13.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4a365bcb7be554e6e1f9f3ed64016e67e2fa03d7b027a33e436aecf194febb63"}, + {file = "websockets-13.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:10a0dc7242215d794fb1918f69c6bb235f1f627aaf19e77f05336d147fce7c37"}, + {file = "websockets-13.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:59197afd478545b1f73367620407b0083303569c5f2d043afe5363676f2697c9"}, + {file = "websockets-13.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d20516990d8ad557b5abeb48127b8b779b0b7e6771a265fa3e91767596d7d97"}, + {file = "websockets-13.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a1a2e272d067030048e1fe41aa1ec8cfbbaabce733b3d634304fa2b19e5c897f"}, + {file = "websockets-13.0.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:ad327ac80ba7ee61da85383ca8822ff808ab5ada0e4a030d66703cc025b021c4"}, + {file = "websockets-13.0.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:518f90e6dd089d34eaade01101fd8a990921c3ba18ebbe9b0165b46ebff947f0"}, + {file = "websockets-13.0.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:68264802399aed6fe9652e89761031acc734fc4c653137a5911c2bfa995d6d6d"}, + {file = "websockets-13.0.1-cp39-cp39-win32.whl", hash = "sha256:a5dc0c42ded1557cc7c3f0240b24129aefbad88af4f09346164349391dea8e58"}, + {file = "websockets-13.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:b448a0690ef43db5ef31b3a0d9aea79043882b4632cfc3eaab20105edecf6097"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:faef9ec6354fe4f9a2c0bbb52fb1ff852effc897e2a4501e25eb3a47cb0a4f89"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:03d3f9ba172e0a53e37fa4e636b86cc60c3ab2cfee4935e66ed1d7acaa4625ad"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d450f5a7a35662a9b91a64aefa852f0c0308ee256122f5218a42f1d13577d71e"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3f55b36d17ac50aa8a171b771e15fbe1561217510c8768af3d546f56c7576cdc"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14b9c006cac63772b31abbcd3e3abb6228233eec966bf062e89e7fa7ae0b7333"}, + {file = "websockets-13.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b79915a1179a91f6c5f04ece1e592e2e8a6bd245a0e45d12fd56b2b59e559a32"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:f40de079779acbcdbb6ed4c65af9f018f8b77c5ec4e17a4b737c05c2db554491"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:80e4ba642fc87fa532bac07e5ed7e19d56940b6af6a8c61d4429be48718a380f"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a02b0161c43cc9e0232711eff846569fad6ec836a7acab16b3cf97b2344c060"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6aa74a45d4cdc028561a7d6ab3272c8b3018e23723100b12e58be9dfa5a24491"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00fd961943b6c10ee6f0b1130753e50ac5dcd906130dcd77b0003c3ab797d026"}, + {file = "websockets-13.0.1-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:d93572720d781331fb10d3da9ca1067817d84ad1e7c31466e9f5e59965618096"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:71e6e5a3a3728886caee9ab8752e8113670936a193284be9d6ad2176a137f376"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:c4a6343e3b0714e80da0b0893543bf9a5b5fa71b846ae640e56e9abc6fbc4c83"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a678532018e435396e37422a95e3ab87f75028ac79570ad11f5bf23cd2a7d8c"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d6716c087e4aa0b9260c4e579bb82e068f84faddb9bfba9906cb87726fa2e870"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e33505534f3f673270dd67f81e73550b11de5b538c56fe04435d63c02c3f26b5"}, + {file = "websockets-13.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:acab3539a027a85d568c2573291e864333ec9d912675107d6efceb7e2be5d980"}, + {file = "websockets-13.0.1-py3-none-any.whl", hash = "sha256:b80f0c51681c517604152eb6a572f5a9378f877763231fddb883ba2f968e8817"}, + {file = "websockets-13.0.1.tar.gz", hash = "sha256:4d6ece65099411cfd9a48d13701d7438d9c34f479046b34c50ff60bb8834e43e"}, ] [[package]] @@ -3219,20 +3077,24 @@ h11 = ">=0.9.0,<1" [[package]] name = "zipp" -version = "3.20.0" +version = "3.20.1" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.8" files = [ - {file = "zipp-3.20.0-py3-none-any.whl", hash = "sha256:58da6168be89f0be59beb194da1250516fdaa062ccebd30127ac65d30045e10d"}, - {file = "zipp-3.20.0.tar.gz", hash = "sha256:0145e43d89664cfe1a2e533adc75adafed82fe2da404b4bbb6b026c0157bdb31"}, + {file = "zipp-3.20.1-py3-none-any.whl", hash = "sha256:9960cd8967c8f85a56f920d5d507274e74f9ff813a0ab8889a5b5be2daf44064"}, + {file = "zipp-3.20.1.tar.gz", hash = "sha256:c22b14cc4763c5a5b04134207736c107db42e9d3ef2d9779d465f5f1bcba572b"}, ] [package.extras] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] +cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +enabler = ["pytest-enabler (>=2.2)"] +test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] +type = ["pytest-mypy"] [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "d01bc03489bab0666d48df4a10473d079413787ad4cfe1f706e45613d2ecbb24" +content-hash = "645995c4b81159c639acf65e422a969740ef2c77586d9f00efff44c495aaa0a5" diff --git a/pyproject.toml b/pyproject.toml index 390b93651..dd434c38a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "reflex" -version = "0.5.9" +version = "0.6.0a1" description = "Web apps in pure Python." license = "Apache-2.0" authors = [ @@ -28,8 +28,8 @@ packages = [ [tool.poetry.dependencies] python = "^3.8" dill = ">=0.3.8,<0.4" -fastapi = ">=0.96.0,<0.111.0" -gunicorn = ">=20.1.0,<23.0" +fastapi = ">=0.96.0,!=0.111.0,!=0.111.1" +gunicorn = ">=20.1.0,<24.0" jinja2 = ">=3.1.2,<4.0" psutil = ">=5.9.4,<7.0" pydantic = ">=1.10.2,<3.0" @@ -40,8 +40,6 @@ rich = ">=13.0.0,<14.0" sqlmodel = ">=0.0.14,<0.1" typer = ">=0.4.2,<1.0" uvicorn = ">=0.20.0" -watchdog = ">=2.3.1,<5.0" -watchfiles = ">=0.19.0,<1.0" starlette-admin = ">=0.11.0,<1.0" alembic = ">=1.11.1,<2.0" platformdirs = ">=3.10.0,<5.0" @@ -61,7 +59,7 @@ httpx = ">=0.25.1,<1.0" twine = ">=4.0.0,<6.0" tomlkit = ">=0.12.4,<1.0" lazy_loader = ">=0.4" -reflex-chakra = ">=0.1.1a1" +reflex-chakra = ">=0.6.0a" [tool.poetry.group.dev.dependencies] pytest = ">=7.1.2,<8.0" diff --git a/reflex/.templates/apps/demo/.gitignore b/reflex/.templates/apps/demo/.gitignore deleted file mode 100644 index eab0d4b05..000000000 --- a/reflex/.templates/apps/demo/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -*.db -*.py[cod] -.web -__pycache__/ \ No newline at end of file diff --git a/reflex/.templates/apps/demo/assets/favicon.ico b/reflex/.templates/apps/demo/assets/favicon.ico deleted file mode 100644 index 166ae995e..000000000 Binary files a/reflex/.templates/apps/demo/assets/favicon.ico and /dev/null differ diff --git a/reflex/.templates/apps/demo/assets/github.svg b/reflex/.templates/apps/demo/assets/github.svg deleted file mode 100644 index 61c9d791b..000000000 --- a/reflex/.templates/apps/demo/assets/github.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/reflex/.templates/apps/demo/assets/icon.svg b/reflex/.templates/apps/demo/assets/icon.svg deleted file mode 100644 index b9cc89da9..000000000 --- a/reflex/.templates/apps/demo/assets/icon.svg +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/reflex/.templates/apps/demo/assets/logo.svg b/reflex/.templates/apps/demo/assets/logo.svg deleted file mode 100644 index 94fe1f511..000000000 --- a/reflex/.templates/apps/demo/assets/logo.svg +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/reflex/.templates/apps/demo/assets/paneleft.svg b/reflex/.templates/apps/demo/assets/paneleft.svg deleted file mode 100644 index ac9c5040a..000000000 --- a/reflex/.templates/apps/demo/assets/paneleft.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/reflex/.templates/apps/demo/code/__init__.py b/reflex/.templates/apps/demo/code/__init__.py deleted file mode 100644 index e1d286346..000000000 --- a/reflex/.templates/apps/demo/code/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Base template for Reflex.""" diff --git a/reflex/.templates/apps/demo/code/demo.py b/reflex/.templates/apps/demo/code/demo.py deleted file mode 100644 index bdb1a447d..000000000 --- a/reflex/.templates/apps/demo/code/demo.py +++ /dev/null @@ -1,127 +0,0 @@ -"""Welcome to Reflex! This file outlines the steps to create a basic app.""" - -from typing import Callable - -import reflex as rx - -from .pages import chatapp_page, datatable_page, forms_page, graphing_page, home_page -from .sidebar import sidebar -from .state import State -from .styles import * - -meta = [ - { - "name": "viewport", - "content": "width=device-width, shrink-to-fit=no, initial-scale=1", - }, -] - - -def template(main_content: Callable[[], rx.Component]) -> rx.Component: - """The template for each page of the app. - - Args: - main_content (Callable[[], rx.Component]): The main content of the page. - - Returns: - rx.Component: The template for each page of the app. - """ - menu_button = rx.chakra.box( - rx.chakra.menu( - rx.chakra.menu_button( - rx.chakra.icon( - tag="hamburger", - size="4em", - color=text_color, - ), - ), - rx.chakra.menu_list( - rx.chakra.menu_item(rx.chakra.link("Home", href="/", width="100%")), - rx.chakra.menu_divider(), - rx.chakra.menu_item( - rx.chakra.link( - "About", href="https://github.com/reflex-dev", width="100%" - ) - ), - rx.chakra.menu_item( - rx.chakra.link( - "Contact", href="mailto:founders@reflex.dev", width="100%" - ) - ), - ), - ), - position="fixed", - right="1.5em", - top="1.5em", - z_index="500", - ) - - return rx.chakra.hstack( - sidebar(), - main_content(), - rx.chakra.spacer(), - menu_button, - align_items="flex-start", - transition="left 0.5s, width 0.5s", - position="relative", - left=rx.cond(State.sidebar_displayed, "0px", f"-{sidebar_width}"), - ) - - -@rx.page("/", meta=meta) -@template -def home() -> rx.Component: - """Home page. - - Returns: - rx.Component: The home page. - """ - return home_page() - - -@rx.page("/forms", meta=meta) -@template -def forms() -> rx.Component: - """Forms page. - - Returns: - rx.Component: The settings page. - """ - return forms_page() - - -@rx.page("/graphing", meta=meta) -@template -def graphing() -> rx.Component: - """Graphing page. - - Returns: - rx.Component: The graphing page. - """ - return graphing_page() - - -@rx.page("/datatable", meta=meta) -@template -def datatable() -> rx.Component: - """Data Table page. - - Returns: - rx.Component: The chatapp page. - """ - return datatable_page() - - -@rx.page("/chatapp", meta=meta) -@template -def chatapp() -> rx.Component: - """Chatapp page. - - Returns: - rx.Component: The chatapp page. - """ - return chatapp_page() - - -# Create the app. -app = rx.App(style=base_style) diff --git a/reflex/.templates/apps/demo/code/pages/__init__.py b/reflex/.templates/apps/demo/code/pages/__init__.py deleted file mode 100644 index ab6df6e3a..000000000 --- a/reflex/.templates/apps/demo/code/pages/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -"""The pages of the app.""" - -from .chatapp import chatapp_page -from .datatable import datatable_page -from .forms import forms_page -from .graphing import graphing_page -from .home import home_page diff --git a/reflex/.templates/apps/demo/code/pages/chatapp.py b/reflex/.templates/apps/demo/code/pages/chatapp.py deleted file mode 100644 index acd11a599..000000000 --- a/reflex/.templates/apps/demo/code/pages/chatapp.py +++ /dev/null @@ -1,31 +0,0 @@ -"""The main Chat app.""" - -import reflex as rx - -from ..styles import * -from ..webui import styles -from ..webui.components import chat, modal, navbar, sidebar - - -def chatapp_page() -> rx.Component: - """The main app. - - Returns: - The UI for the main app. - """ - return rx.chakra.box( - rx.chakra.vstack( - navbar(), - chat.chat(), - chat.action_bar(), - sidebar(), - modal(), - bg=styles.bg_dark_color, - color=styles.text_light_color, - min_h="100vh", - align_items="stretch", - spacing="0", - style=template_content_style, - ), - style=template_page_style, - ) diff --git a/reflex/.templates/apps/demo/code/pages/datatable.py b/reflex/.templates/apps/demo/code/pages/datatable.py deleted file mode 100644 index 53351ecf3..000000000 --- a/reflex/.templates/apps/demo/code/pages/datatable.py +++ /dev/null @@ -1,360 +0,0 @@ -"""The settings page for the template.""" - -from typing import Any - -import reflex as rx -from reflex.components.datadisplay.dataeditor import DataEditorTheme - -from ..styles import * -from ..webui.state import State - - -class DataTableState(State): - """Datatable state.""" - - cols: list[Any] = [ - {"title": "Title", "type": "str"}, - { - "title": "Name", - "type": "str", - "group": "Data", - "width": 300, - }, - { - "title": "Birth", - "type": "str", - "group": "Data", - "width": 150, - }, - { - "title": "Human", - "type": "bool", - "group": "Data", - "width": 80, - }, - { - "title": "House", - "type": "str", - "group": "Data", - }, - { - "title": "Wand", - "type": "str", - "group": "Data", - "width": 250, - }, - { - "title": "Patronus", - "type": "str", - "group": "Data", - }, - { - "title": "Blood status", - "type": "str", - "group": "Data", - "width": 200, - }, - ] - - data = [ - [ - "1", - "Harry James Potter", - "31 July 1980", - True, - "Gryffindor", - "11' Holly phoenix feather", - "Stag", - "Half-blood", - ], - [ - "2", - "Ronald Bilius Weasley", - "1 March 1980", - True, - "Gryffindor", - "12' Ash unicorn tail hair", - "Jack Russell terrier", - "Pure-blood", - ], - [ - "3", - "Hermione Jean Granger", - "19 September, 1979", - True, - "Gryffindor", - "10¾' vine wood dragon heartstring", - "Otter", - "Muggle-born", - ], - [ - "4", - "Albus Percival Wulfric Brian Dumbledore", - "Late August 1881", - True, - "Gryffindor", - "15' Elder Thestral tail hair core", - "Phoenix", - "Half-blood", - ], - [ - "5", - "Rubeus Hagrid", - "6 December 1928", - False, - "Gryffindor", - "16' Oak unknown core", - "None", - "Part-Human (Half-giant)", - ], - [ - "6", - "Fred Weasley", - "1 April, 1978", - True, - "Gryffindor", - "Unknown", - "Unknown", - "Pure-blood", - ], - [ - "7", - "George Weasley", - "1 April, 1978", - True, - "Gryffindor", - "Unknown", - "Unknown", - "Pure-blood", - ], - ] - - -code_show = """rx.chakra.hstack( - rx.chakra.divider(orientation="vertical", height="100vh", border="solid black 1px"), - rx.chakra.vstack( - rx.chakra.box( - rx.data_editor( - columns=DataTableState.cols, - data=DataTableState.data, - draw_focus_ring=True, - row_height=50, - smooth_scroll_x=True, - smooth_scroll_y=True, - column_select="single", - # style - theme=DataEditorTheme(**darkTheme), - width="80vw", - height="80vh", - ), - ), - rx.chakra.spacer(), - height="100vh", - spacing="25", - ), -)""" - -state_show = """class DataTableState(State): - cols: list[Any] = [ - {"title": "Title", "type": "str"}, - { - "title": "Name", - "type": "str", - "group": "Data", - "width": 300, - }, - { - "title": "Birth", - "type": "str", - "group": "Data", - "width": 150, - }, - { - "title": "Human", - "type": "bool", - "group": "Data", - "width": 80, - }, - { - "title": "House", - "type": "str", - "group": "Data", - }, - { - "title": "Wand", - "type": "str", - "group": "Data", - "width": 250, - }, - { - "title": "Patronus", - "type": "str", - "group": "Data", - }, - { - "title": "Blood status", - "type": "str", - "group": "Data", - "width": 200, - }, - ]""" - -data_show = """[ - ["1", "Harry James Potter", "31 July 1980", True, "Gryffindor", "11' Holly phoenix feather", "Stag", "Half-blood"], - ["2", "Ronald Bilius Weasley", "1 March 1980", True,"Gryffindor", "12' Ash unicorn tail hair", "Jack Russell terrier", "Pure-blood"], - ["3", "Hermione Jean Granger", "19 September, 1979", True, "Gryffindor", "10¾' vine wood dragon heartstring", "Otter", "Muggle-born"], - ["4", "Albus Percival Wulfric Brian Dumbledore", "Late August 1881", True, "Gryffindor", "15' Elder Thestral tail hair core", "Phoenix", "Half-blood"], - ["5", "Rubeus Hagrid", "6 December 1928", False, "Gryffindor", "16' Oak unknown core", "None", "Part-Human (Half-giant)"], - ["6", "Fred Weasley", "1 April, 1978", True, "Gryffindor", "Unknown", "Unknown", "Pure-blood"], - ["7", "George Weasley", "1 April, 1978", True, "Gryffindor", "Unknown", "Unknown", "Pure-blood"], -]""" - - -darkTheme = { - "accent_color": "#8c96ff", - "accent_light": "rgba(202, 206, 255, 0.253)", - "text_dark": "#ffffff", - "text_medium": "#b8b8b8", - "text_light": "#a0a0a0", - "text_bubble": "#ffffff", - "bg_icon_header": "#b8b8b8", - "fg_icon_header": "#000000", - "text_header": "#a1a1a1", - "text_header_selected": "#000000", - "bg_cell": "#16161b", - "bg_cell_medium": "#202027", - "bg_header": "#212121", - "bg_header_has_focus": "#474747", - "bg_header_hovered": "#404040", - "bg_bubble": "#212121", - "bg_bubble_selected": "#000000", - "bg_search_result": "#423c24", - "border_color": "rgba(225,225,225,0.2)", - "drilldown_border": "rgba(225,225,225,0.4)", - "link_color": "#4F5DFF", - "header_font_style": "bold 14px", - "base_font_style": "13px", - "font_family": "Inter, Roboto, -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Ubuntu, noto, arial, sans-serif", -} - -darkTheme_show = """darkTheme={ - "accent_color": "#8c96ff", - "accent_light": "rgba(202, 206, 255, 0.253)", - "text_dark": "#ffffff", - "text_medium": "#b8b8b8", - "text_light": "#a0a0a0", - "text_bubble": "#ffffff", - "bg_icon_header": "#b8b8b8", - "fg_icon_header": "#000000", - "text_header": "#a1a1a1", - "text_header_selected": "#000000", - "bg_cell": "#16161b", - "bg_cell_medium": "#202027", - "bg_header": "#212121", - "bg_header_has_focus": "#474747", - "bg_header_hovered": "#404040", - "bg_bubble": "#212121", - "bg_bubble_selected": "#000000", - "bg_search_result": "#423c24", - "border_color": "rgba(225,225,225,0.2)", - "drilldown_border": "rgba(225,225,225,0.4)", - "link_color": "#4F5DFF", - "header_font_style": "bold 14px", - "base_font_style": "13px", - "font_family": "Inter, Roboto, -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Ubuntu, noto, arial, sans-serif", -}""" - - -def datatable_page() -> rx.Component: - """The UI for the settings page. - - Returns: - rx.Component: The UI for the settings page. - """ - return rx.chakra.box( - rx.chakra.vstack( - rx.chakra.heading( - "Data Table Demo", - font_size="3em", - ), - rx.chakra.hstack( - rx.chakra.vstack( - rx.chakra.box( - rx.data_editor( - columns=DataTableState.cols, - data=DataTableState.data, - draw_focus_ring=True, - row_height=50, - smooth_scroll_x=True, - smooth_scroll_y=True, - column_select="single", - # style - theme=DataEditorTheme(**darkTheme), - width="80vw", - ), - ), - rx.chakra.spacer(), - spacing="25", - ), - ), - rx.chakra.tabs( - rx.chakra.tab_list( - rx.chakra.tab("Code", style=tab_style), - rx.chakra.tab("Data", style=tab_style), - rx.chakra.tab("State", style=tab_style), - rx.chakra.tab("Styling", style=tab_style), - padding_x=0, - ), - rx.chakra.tab_panels( - rx.chakra.tab_panel( - rx.code_block( - code_show, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - data_show, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - state_show, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - darkTheme_show, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - width="100%", - ), - variant="unstyled", - color_scheme="purple", - align="end", - width="100%", - padding_top=".5em", - ), - style=template_content_style, - ), - style=template_page_style, - ) diff --git a/reflex/.templates/apps/demo/code/pages/forms.py b/reflex/.templates/apps/demo/code/pages/forms.py deleted file mode 100644 index 6e3150067..000000000 --- a/reflex/.templates/apps/demo/code/pages/forms.py +++ /dev/null @@ -1,257 +0,0 @@ -"""The settings page for the template.""" - -import reflex as rx - -from ..states.form_state import FormState, UploadState -from ..styles import * - -forms_1_code = """rx.chakra.vstack( - rx.chakra.form( - rx.chakra.vstack( - rx.chakra.input( - placeholder="First Name", - id="first_name", - ), - rx.chakra.input( - placeholder="Last Name", id="last_name" - ), - rx.chakra.hstack( - rx.chakra.checkbox("Checked", id="check"), - rx.chakra.switch("Switched", id="switch"), - ), - rx.chakra.button("Submit", - type_="submit", - bg="#ecfdf5", - color="#047857", - border_radius="lg", - ), - ), - on_submit=FormState.handle_submit, - ), - rx.chakra.divider(), - rx.chakra.heading("Results"), - rx.chakra.text(FormState.form_data.to_string()), - width="100%", -)""" - -color = "rgb(107,99,246)" - -forms_1_state = """class FormState(rx.State): - - form_data: dict = {} - - def handle_submit(self, form_data: dict): - "Handle the form submit." - self.form_data = form_data""" - - -forms_2_code = """rx.chakra.vstack( - rx.upload( - rx.chakra.vstack( - rx.chakra.button( - "Select File", - color=color, - bg="white", - border=f"1px solid {color}", - ), - rx.chakra.text( - "Drag and drop files here or click to select files" - ), - ), - border=f"1px dotted {color}", - padding="5em", - ), - rx.chakra.hstack(rx.foreach(rx.selected_files, rx.chakra.text)), - rx.chakra.button( - "Upload", - on_click=lambda: UploadState.handle_upload( - rx.upload_files() - ), - ), - rx.chakra.button( - "Clear", - on_click=rx.clear_selected_files, - ), - rx.foreach( - UploadState.img, lambda img: rx.chakra.image(src=img, width="20%", height="auto",) - ), - padding="5em", - width="100%", -)""" - -forms_2_state = """class UploadState(State): - "The app state." - - # The images to show. - img: list[str] - - async def handle_upload( - self, files: list[rx.UploadFile] - ): - "Handle the upload of file(s). - - Args: - files: The uploaded files. - " - for file in files: - upload_data = await file.read() - outfile = rx.get_asset_path(file.filename) - # Save the file. - with open(outfile, "wb") as file_object: - file_object.write(upload_data) - - # Update the img var. - self.img.append(f"/{file.filename}")""" - - -def forms_page() -> rx.Component: - """The UI for the settings page. - - Returns: - rx.Component: The UI for the settings page. - """ - return rx.chakra.box( - rx.chakra.vstack( - rx.chakra.heading( - "Forms Demo", - font_size="3em", - ), - rx.chakra.vstack( - rx.chakra.form( - rx.chakra.vstack( - rx.chakra.input( - placeholder="First Name", - id="first_name", - ), - rx.chakra.input(placeholder="Last Name", id="last_name"), - rx.chakra.hstack( - rx.chakra.checkbox("Checked", id="check"), - rx.chakra.switch("Switched", id="switch"), - ), - rx.chakra.button( - "Submit", - type_="submit", - bg="#ecfdf5", - color="#047857", - border_radius="lg", - ), - ), - on_submit=FormState.handle_submit, - ), - rx.chakra.divider(), - rx.chakra.heading("Results"), - rx.chakra.text(FormState.form_data.to_string()), - width="100%", - ), - rx.chakra.tabs( - rx.chakra.tab_list( - rx.chakra.tab("Code", style=tab_style), - rx.chakra.tab("State", style=tab_style), - padding_x=0, - ), - rx.chakra.tab_panels( - rx.chakra.tab_panel( - rx.code_block( - forms_1_code, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - forms_1_state, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - width="100%", - ), - variant="unstyled", - color_scheme="purple", - align="end", - width="100%", - padding_top=".5em", - ), - rx.chakra.heading("Upload Example", font_size="3em"), - rx.chakra.text("Try uploading some images and see how they look."), - rx.chakra.vstack( - rx.upload( - rx.chakra.vstack( - rx.chakra.button( - "Select File", - color=color, - bg="white", - border=f"1px solid {color}", - ), - rx.chakra.text( - "Drag and drop files here or click to select files" - ), - ), - border=f"1px dotted {color}", - padding="5em", - ), - rx.chakra.hstack(rx.foreach(rx.selected_files, rx.chakra.text)), - rx.chakra.button( - "Upload", - on_click=lambda: UploadState.handle_upload(rx.upload_files()), - ), - rx.chakra.button( - "Clear", - on_click=rx.clear_selected_files, - ), - rx.foreach( - UploadState.img, - lambda img: rx.chakra.image( - src=img, - width="20%", - height="auto", - ), - ), - padding="5em", - width="100%", - ), - rx.chakra.tabs( - rx.chakra.tab_list( - rx.chakra.tab("Code", style=tab_style), - rx.chakra.tab("State", style=tab_style), - padding_x=0, - ), - rx.chakra.tab_panels( - rx.chakra.tab_panel( - rx.code_block( - forms_2_code, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - forms_2_state, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - width="100%", - ), - variant="unstyled", - color_scheme="purple", - align="end", - width="100%", - padding_top=".5em", - ), - style=template_content_style, - ), - style=template_page_style, - ) diff --git a/reflex/.templates/apps/demo/code/pages/graphing.py b/reflex/.templates/apps/demo/code/pages/graphing.py deleted file mode 100644 index e56af96c1..000000000 --- a/reflex/.templates/apps/demo/code/pages/graphing.py +++ /dev/null @@ -1,253 +0,0 @@ -"""The dashboard page for the template.""" - -import reflex as rx - -from ..states.pie_state import PieChartState -from ..styles import * - -data_1 = [ - {"name": "Page A", "uv": 4000, "pv": 2400, "amt": 2400}, - {"name": "Page B", "uv": 3000, "pv": 1398, "amt": 2210}, - {"name": "Page C", "uv": 2000, "pv": 9800, "amt": 2290}, - {"name": "Page D", "uv": 2780, "pv": 3908, "amt": 2000}, - {"name": "Page E", "uv": 1890, "pv": 4800, "amt": 2181}, - {"name": "Page F", "uv": 2390, "pv": 3800, "amt": 2500}, - {"name": "Page G", "uv": 3490, "pv": 4300, "amt": 2100}, -] -data_1_show = """[ - {"name": "Page A", "uv": 4000, "pv": 2400, "amt": 2400}, - {"name": "Page B", "uv": 3000, "pv": 1398, "amt": 2210}, - {"name": "Page C", "uv": 2000, "pv": 9800, "amt": 2290}, - {"name": "Page D", "uv": 2780, "pv": 3908, "amt": 2000}, - {"name": "Page E", "uv": 1890, "pv": 4800, "amt": 2181}, - {"name": "Page F", "uv": 2390, "pv": 3800, "amt": 2500}, - {"name": "Page G", "uv": 3490, "pv": 4300, "amt": 2100}, -]""" - - -graph_1_code = """rx.recharts.composed_chart( - rx.recharts.area( - data_key="uv", stroke="#8884d8", fill="#8884d8" - ), - rx.recharts.bar( - data_key="amt", bar_size=20, fill="#413ea0" - ), - rx.recharts.line( - data_key="pv", type_="monotone", stroke="#ff7300" - ), - rx.recharts.x_axis(data_key="name"), - rx.recharts.y_axis(), - rx.recharts.cartesian_grid(stroke_dasharray="3 3"), - rx.recharts.graphing_tooltip(), - data=data, -)""" - - -graph_2_code = """rx.recharts.pie_chart( - rx.recharts.pie( - data=PieChartState.resources, - data_key="count", - name_key="type_", - cx="50%", - cy="50%", - start_angle=180, - end_angle=0, - fill="#8884d8", - label=True, - ), - rx.recharts.graphing_tooltip(), -), -rx.chakra.vstack( - rx.foreach( - PieChartState.resource_types, - lambda type_, i: rx.chakra.hstack( - rx.chakra.button( - "-", - on_click=PieChartState.decrement(type_), - ), - rx.chakra.text( - type_, - PieChartState.resources[i]["count"], - ), - rx.chakra.button( - "+", - on_click=PieChartState.increment(type_), - ), - ), - ), -)""" - -graph_2_state = """class PieChartState(rx.State): - resources: list[dict[str, Any]] = [ - dict(type_="🏆", count=1), - dict(type_="🪵", count=1), - dict(type_="🥑", count=1), - dict(type_="🧱", count=1), - ] - - @rx.cached_var - def resource_types(self) -> list[str]: - return [r["type_"] for r in self.resources] - - def increment(self, type_: str): - for resource in self.resources: - if resource["type_"] == type_: - resource["count"] += 1 - break - - def decrement(self, type_: str): - for resource in self.resources: - if ( - resource["type_"] == type_ - and resource["count"] > 0 - ): - resource["count"] -= 1 - break -""" - - -def graphing_page() -> rx.Component: - """The UI for the dashboard page. - - Returns: - rx.Component: The UI for the dashboard page. - """ - return rx.chakra.box( - rx.chakra.vstack( - rx.chakra.heading( - "Graphing Demo", - font_size="3em", - ), - rx.chakra.heading( - "Composed Chart", - font_size="2em", - ), - rx.chakra.stack( - rx.recharts.composed_chart( - rx.recharts.area(data_key="uv", stroke="#8884d8", fill="#8884d8"), - rx.recharts.bar(data_key="amt", bar_size=20, fill="#413ea0"), - rx.recharts.line(data_key="pv", type_="monotone", stroke="#ff7300"), - rx.recharts.x_axis(data_key="name"), - rx.recharts.y_axis(), - rx.recharts.cartesian_grid(stroke_dasharray="3 3"), - rx.recharts.graphing_tooltip(), - data=data_1, - # height="15em", - ), - width="100%", - height="20em", - ), - rx.chakra.tabs( - rx.chakra.tab_list( - rx.chakra.tab("Code", style=tab_style), - rx.chakra.tab("Data", style=tab_style), - padding_x=0, - ), - rx.chakra.tab_panels( - rx.chakra.tab_panel( - rx.code_block( - graph_1_code, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - data_1_show, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - width="100%", - ), - variant="unstyled", - color_scheme="purple", - align="end", - width="100%", - padding_top=".5em", - ), - rx.chakra.heading("Interactive Example", font_size="2em"), - rx.chakra.hstack( - rx.recharts.pie_chart( - rx.recharts.pie( - data=PieChartState.resources, - data_key="count", - name_key="type_", - cx="50%", - cy="50%", - start_angle=180, - end_angle=0, - fill="#8884d8", - label=True, - ), - rx.recharts.graphing_tooltip(), - ), - rx.chakra.vstack( - rx.foreach( - PieChartState.resource_types, - lambda type_, i: rx.chakra.hstack( - rx.chakra.button( - "-", - on_click=PieChartState.decrement(type_), - ), - rx.chakra.text( - type_, - PieChartState.resources[i]["count"], - ), - rx.chakra.button( - "+", - on_click=PieChartState.increment(type_), - ), - ), - ), - ), - width="100%", - height="15em", - ), - rx.chakra.tabs( - rx.chakra.tab_list( - rx.chakra.tab("Code", style=tab_style), - rx.chakra.tab("State", style=tab_style), - padding_x=0, - ), - rx.chakra.tab_panels( - rx.chakra.tab_panel( - rx.code_block( - graph_2_code, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - rx.chakra.tab_panel( - rx.code_block( - graph_2_state, - language="python", - show_line_numbers=True, - ), - width="100%", - padding_x=0, - padding_y=".25em", - ), - width="100%", - ), - variant="unstyled", - color_scheme="purple", - align="end", - width="100%", - padding_top=".5em", - ), - style=template_content_style, - min_h="100vh", - ), - style=template_page_style, - min_h="100vh", - ) diff --git a/reflex/.templates/apps/demo/code/pages/home.py b/reflex/.templates/apps/demo/code/pages/home.py deleted file mode 100644 index 8d85e015b..000000000 --- a/reflex/.templates/apps/demo/code/pages/home.py +++ /dev/null @@ -1,56 +0,0 @@ -"""The home page of the app.""" - -import reflex as rx - -from ..styles import * - - -def home_page() -> rx.Component: - """The UI for the home page. - - Returns: - rx.Component: The UI for the home page. - """ - return rx.chakra.box( - rx.chakra.vstack( - rx.chakra.heading( - "Welcome to Reflex! 👋", - font_size="3em", - ), - rx.chakra.text( - "Reflex is an open-source app framework built specifically to allow you to build web apps in pure python. 👈 Select a demo from the sidebar to see some examples of what Reflex can do!", - ), - rx.chakra.heading( - "Things to check out:", - font_size="2em", - ), - rx.chakra.unordered_list( - rx.chakra.list_item( - "Take a look at ", - rx.chakra.link( - "reflex.dev", - href="https://reflex.dev", - color="rgb(107,99,246)", - ), - ), - rx.chakra.list_item( - "Check out our ", - rx.chakra.link( - "docs", - href="https://reflex.dev/docs/getting-started/introduction/", - color="rgb(107,99,246)", - ), - ), - rx.chakra.list_item( - "Ask a question in our ", - rx.chakra.link( - "community", - href="https://discord.gg/T5WSbC2YtQ", - color="rgb(107,99,246)", - ), - ), - ), - style=template_content_style, - ), - style=template_page_style, - ) diff --git a/reflex/.templates/apps/demo/code/sidebar.py b/reflex/.templates/apps/demo/code/sidebar.py deleted file mode 100644 index 5f634402f..000000000 --- a/reflex/.templates/apps/demo/code/sidebar.py +++ /dev/null @@ -1,178 +0,0 @@ -"""Sidebar component for the app.""" - -import reflex as rx - -from .state import State -from .styles import * - - -def sidebar_header() -> rx.Component: - """Sidebar header. - - Returns: - rx.Component: The sidebar header component. - """ - return rx.chakra.hstack( - rx.chakra.image( - src="/icon.svg", - height="2em", - ), - rx.chakra.spacer(), - rx.chakra.link( - rx.chakra.center( - rx.chakra.image( - src="/github.svg", - height="3em", - padding="0.5em", - ), - box_shadow=box_shadow, - bg="transparent", - border_radius=border_radius, - _hover={ - "bg": accent_color, - }, - ), - href="https://github.com/reflex-dev/reflex", - ), - width="100%", - border_bottom=border, - padding="1em", - ) - - -def sidebar_footer() -> rx.Component: - """Sidebar footer. - - Returns: - rx.Component: The sidebar footer component. - """ - return rx.chakra.hstack( - rx.chakra.link( - rx.chakra.center( - rx.chakra.image( - src="/paneleft.svg", - height="2em", - padding="0.5em", - ), - bg="transparent", - border_radius=border_radius, - **hover_accent_bg, - ), - on_click=State.toggle_sidebar_displayed, - transform=rx.cond(~State.sidebar_displayed, "rotate(180deg)", ""), - transition="transform 0.5s, left 0.5s", - position="relative", - left=rx.cond(State.sidebar_displayed, "0px", "20.5em"), - **overlapping_button_style, - ), - rx.chakra.spacer(), - rx.chakra.link( - rx.chakra.text( - "Docs", - ), - href="https://reflex.dev/docs/getting-started/introduction/", - ), - rx.chakra.link( - rx.chakra.text( - "Blog", - ), - href="https://reflex.dev/blog/", - ), - width="100%", - border_top=border, - padding="1em", - ) - - -def sidebar_item(text: str, icon: str, url: str) -> rx.Component: - """Sidebar item. - - Args: - text (str): The text of the item. - icon (str): The icon of the item. - url (str): The URL of the item. - - Returns: - rx.Component: The sidebar item component. - """ - return rx.chakra.link( - rx.chakra.hstack( - rx.chakra.image( - src=icon, - height="2.5em", - padding="0.5em", - ), - rx.chakra.text( - text, - ), - bg=rx.cond( - State.origin_url == f"/{text.lower()}/", - accent_color, - "transparent", - ), - color=rx.cond( - State.origin_url == f"/{text.lower()}/", - accent_text_color, - text_color, - ), - border_radius=border_radius, - box_shadow=box_shadow, - width="100%", - padding_x="1em", - ), - href=url, - width="100%", - ) - - -def sidebar() -> rx.Component: - """Sidebar. - - Returns: - rx.Component: The sidebar component. - """ - return rx.chakra.box( - rx.chakra.vstack( - sidebar_header(), - rx.chakra.vstack( - sidebar_item( - "Welcome", - "/github.svg", - "/", - ), - sidebar_item( - "Graphing Demo", - "/github.svg", - "/graphing", - ), - sidebar_item( - "Data Table Demo", - "/github.svg", - "/datatable", - ), - sidebar_item( - "Forms Demo", - "/github.svg", - "/forms", - ), - sidebar_item( - "Chat App Demo", - "/github.svg", - "/chatapp", - ), - width="100%", - overflow_y="auto", - align_items="flex-start", - padding="1em", - ), - rx.chakra.spacer(), - sidebar_footer(), - height="100dvh", - ), - display=["none", "none", "block"], - min_width=sidebar_width, - height="100%", - position="sticky", - top="0px", - border_right=border, - ) diff --git a/reflex/.templates/apps/demo/code/state.py b/reflex/.templates/apps/demo/code/state.py deleted file mode 100644 index a5c6f57bd..000000000 --- a/reflex/.templates/apps/demo/code/state.py +++ /dev/null @@ -1,22 +0,0 @@ -"""Base state for the app.""" - -import reflex as rx - - -class State(rx.State): - """State for the app.""" - - sidebar_displayed: bool = True - - @rx.var - def origin_url(self) -> str: - """Get the url of the current page. - - Returns: - str: The url of the current page. - """ - return self.router_data.get("asPath", "") - - def toggle_sidebar_displayed(self) -> None: - """Toggle the sidebar displayed.""" - self.sidebar_displayed = not self.sidebar_displayed diff --git a/reflex/.templates/apps/demo/code/states/form_state.py b/reflex/.templates/apps/demo/code/states/form_state.py deleted file mode 100644 index 2b30e859e..000000000 --- a/reflex/.templates/apps/demo/code/states/form_state.py +++ /dev/null @@ -1,40 +0,0 @@ -import reflex as rx - -from ..state import State - - -class FormState(State): - """Form state.""" - - form_data: dict = {} - - def handle_submit(self, form_data: dict): - """Handle the form submit. - - Args: - form_data: The form data. - """ - self.form_data = form_data - - -class UploadState(State): - """The app state.""" - - # The images to show. - img: list[str] - - async def handle_upload(self, files: list[rx.UploadFile]): - """Handle the upload of file(s). - - Args: - files: The uploaded files. - """ - for file in files: - upload_data = await file.read() - outfile = rx.get_asset_path(file.filename) - # Save the file. - with open(outfile, "wb") as file_object: - file_object.write(upload_data) - - # Update the img var. - self.img.append(f"/{file.filename}") diff --git a/reflex/.templates/apps/demo/code/states/pie_state.py b/reflex/.templates/apps/demo/code/states/pie_state.py deleted file mode 100644 index 1c380c3af..000000000 --- a/reflex/.templates/apps/demo/code/states/pie_state.py +++ /dev/null @@ -1,47 +0,0 @@ -from typing import Any - -import reflex as rx - -from ..state import State - - -class PieChartState(State): - """Pie Chart State.""" - - resources: list[dict[str, Any]] = [ - dict(type_="🏆", count=1), - dict(type_="🪵", count=1), - dict(type_="🥑", count=1), - dict(type_="🧱", count=1), - ] - - @rx.cached_var - def resource_types(self) -> list[str]: - """Get the resource types. - - Returns: - The resource types. - """ - return [r["type_"] for r in self.resources] - - def increment(self, type_: str): - """Increment the count of a resource type. - - Args: - type_: The type of resource to increment. - """ - for resource in self.resources: - if resource["type_"] == type_: - resource["count"] += 1 - break - - def decrement(self, type_: str): - """Decrement the count of a resource type. - - Args: - type_: The type of resource to decrement. - """ - for resource in self.resources: - if resource["type_"] == type_ and resource["count"] > 0: - resource["count"] -= 1 - break diff --git a/reflex/.templates/apps/demo/code/styles.py b/reflex/.templates/apps/demo/code/styles.py deleted file mode 100644 index 5ca236ece..000000000 --- a/reflex/.templates/apps/demo/code/styles.py +++ /dev/null @@ -1,68 +0,0 @@ -"""Styles for the app.""" - -import reflex as rx - -from .state import State - -border_radius = "0.375rem" -box_shadow = "0px 0px 0px 1px rgba(84, 82, 95, 0.14)" -border = "1px solid #F4F3F6" -text_color = "black" -accent_text_color = "#1A1060" -accent_color = "#F5EFFE" -hover_accent_color = {"_hover": {"color": accent_color}} -hover_accent_bg = {"_hover": {"bg": accent_color}} -content_width_vw = "90vw" -sidebar_width = "20em" - -template_page_style = { - "padding_top": "5em", - "padding_x": "2em", -} - -template_content_style = { - "width": rx.cond( - State.sidebar_displayed, - f"calc({content_width_vw} - {sidebar_width})", - content_width_vw, - ), - "min-width": sidebar_width, - "align_items": "flex-start", - "box_shadow": box_shadow, - "border_radius": border_radius, - "padding": "1em", - "margin_bottom": "2em", -} - -link_style = { - "color": text_color, - "text_decoration": "none", - **hover_accent_color, -} - -overlapping_button_style = { - "background_color": "white", - "border": border, - "border_radius": border_radius, -} - -base_style = { - rx.chakra.MenuButton: { - "width": "3em", - "height": "3em", - **overlapping_button_style, - }, - rx.chakra.MenuItem: hover_accent_bg, -} - -tab_style = { - "color": "#494369", - "font_weight": 600, - "_selected": { - "color": "#5646ED", - "bg": "#F5EFFE", - "padding_x": "0.5em", - "padding_y": "0.25em", - "border_radius": "8px", - }, -} diff --git a/reflex/.templates/apps/demo/code/webui/__init__.py b/reflex/.templates/apps/demo/code/webui/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/reflex/.templates/apps/demo/code/webui/components/__init__.py b/reflex/.templates/apps/demo/code/webui/components/__init__.py deleted file mode 100644 index e29eb0ab2..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/__init__.py +++ /dev/null @@ -1,4 +0,0 @@ -from .loading_icon import loading_icon -from .modal import modal -from .navbar import navbar -from .sidebar import sidebar diff --git a/reflex/.templates/apps/demo/code/webui/components/chat.py b/reflex/.templates/apps/demo/code/webui/components/chat.py deleted file mode 100644 index fd9b6ba98..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/chat.py +++ /dev/null @@ -1,118 +0,0 @@ -import reflex as rx - -from ...webui import styles -from ...webui.components import loading_icon -from ...webui.state import QA, State - - -def message(qa: QA) -> rx.Component: - """A single question/answer message. - - Args: - qa: The question/answer pair. - - Returns: - A component displaying the question/answer pair. - """ - return rx.chakra.box( - rx.chakra.box( - rx.chakra.text( - qa.question, - bg=styles.border_color, - shadow=styles.shadow_light, - **styles.message_style, - ), - text_align="right", - margin_top="1em", - ), - rx.chakra.box( - rx.chakra.text( - qa.answer, - bg=styles.accent_color, - shadow=styles.shadow_light, - **styles.message_style, - ), - text_align="left", - padding_top="1em", - ), - width="100%", - ) - - -def chat() -> rx.Component: - """List all the messages in a single conversation. - - Returns: - A component displaying all the messages in a single conversation. - """ - return rx.chakra.vstack( - rx.chakra.box(rx.foreach(State.chats[State.current_chat], message)), - py="8", - flex="1", - width="100%", - max_w="3xl", - padding_x="4", - align_self="center", - overflow="hidden", - padding_bottom="5em", - **styles.base_style[rx.chakra.Vstack], - ) - - -def action_bar() -> rx.Component: - """The action bar to send a new message. - - Returns: - The action bar to send a new message. - """ - return rx.chakra.box( - rx.chakra.vstack( - rx.chakra.form( - rx.chakra.form_control( - rx.chakra.hstack( - rx.chakra.input( - placeholder="Type something...", - value=State.question, - on_change=State.set_question, - _placeholder={"color": "#fffa"}, - _hover={"border_color": styles.accent_color}, - style=styles.input_style, - ), - rx.chakra.button( - rx.cond( - State.processing, - loading_icon(height="1em"), - rx.chakra.text("Send"), - ), - type_="submit", - _hover={"bg": styles.accent_color}, - style=styles.input_style, - ), - **styles.base_style[rx.chakra.Hstack], - ), - is_disabled=State.processing, - ), - on_submit=State.process_question, - width="100%", - ), - rx.chakra.text( - "ReflexGPT may return factually incorrect or misleading responses. Use discretion.", - font_size="xs", - color="#fff6", - text_align="center", - ), - width="100%", - max_w="3xl", - mx="auto", - **styles.base_style[rx.chakra.Vstack], - ), - position="sticky", - bottom="0", - left="0", - py="4", - backdrop_filter="auto", - backdrop_blur="lg", - border_top=f"1px solid {styles.border_color}", - align_items="stretch", - width="100%", - ) diff --git a/reflex/.templates/apps/demo/code/webui/components/loading_icon.py b/reflex/.templates/apps/demo/code/webui/components/loading_icon.py deleted file mode 100644 index 46cedb8ef..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/loading_icon.py +++ /dev/null @@ -1,19 +0,0 @@ -import reflex as rx - - -class LoadingIcon(rx.Component): - """A custom loading icon component.""" - - library = "react-loading-icons" - tag = "SpinningCircles" - stroke: rx.Var[str] - stroke_opacity: rx.Var[str] - fill: rx.Var[str] - fill_opacity: rx.Var[str] - stroke_width: rx.Var[str] - speed: rx.Var[str] - height: rx.Var[str] - on_change: rx.EventHandler[lambda status: [status]] - - -loading_icon = LoadingIcon.create diff --git a/reflex/.templates/apps/demo/code/webui/components/modal.py b/reflex/.templates/apps/demo/code/webui/components/modal.py deleted file mode 100644 index c76b8dffd..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/modal.py +++ /dev/null @@ -1,56 +0,0 @@ -import reflex as rx - -from ...webui.state import State - - -def modal() -> rx.Component: - """A modal to create a new chat. - - Returns: - The modal component. - """ - return rx.chakra.modal( - rx.chakra.modal_overlay( - rx.chakra.modal_content( - rx.chakra.modal_header( - rx.chakra.hstack( - rx.chakra.text("Create new chat"), - rx.chakra.icon( - tag="close", - font_size="sm", - on_click=State.toggle_modal, - color="#fff8", - _hover={"color": "#fff"}, - cursor="pointer", - ), - align_items="center", - justify_content="space-between", - ) - ), - rx.chakra.modal_body( - rx.chakra.input( - placeholder="Type something...", - on_blur=State.set_new_chat_name, - bg="#222", - border_color="#fff3", - _placeholder={"color": "#fffa"}, - ), - ), - rx.chakra.modal_footer( - rx.chakra.button( - "Create", - bg="#5535d4", - box_shadow="md", - px="4", - py="2", - h="auto", - _hover={"bg": "#4c2db3"}, - on_click=State.create_chat, - ), - ), - bg="#222", - color="#fff", - ), - ), - is_open=State.modal_open, - ) diff --git a/reflex/.templates/apps/demo/code/webui/components/navbar.py b/reflex/.templates/apps/demo/code/webui/components/navbar.py deleted file mode 100644 index e836f29ec..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/navbar.py +++ /dev/null @@ -1,70 +0,0 @@ -import reflex as rx - -from ...webui import styles -from ...webui.state import State - - -def navbar(): - return rx.chakra.box( - rx.chakra.hstack( - rx.chakra.hstack( - rx.chakra.icon( - tag="hamburger", - mr=4, - on_click=State.toggle_drawer, - cursor="pointer", - ), - rx.chakra.link( - rx.chakra.box( - rx.chakra.image(src="favicon.ico", width=30, height="auto"), - p="1", - border_radius="6", - bg="#F0F0F0", - mr="2", - ), - href="/", - ), - rx.chakra.breadcrumb( - rx.chakra.breadcrumb_item( - rx.chakra.heading("ReflexGPT", size="sm"), - ), - rx.chakra.breadcrumb_item( - rx.chakra.text( - State.current_chat, size="sm", font_weight="normal" - ), - ), - ), - ), - rx.chakra.hstack( - rx.chakra.button( - "+ New chat", - bg=styles.accent_color, - px="4", - py="2", - h="auto", - on_click=State.toggle_modal, - ), - rx.chakra.menu( - rx.chakra.menu_button( - rx.chakra.avatar(name="User", size="md"), - rx.chakra.box(), - ), - rx.chakra.menu_list( - rx.chakra.menu_item("Help"), - rx.chakra.menu_divider(), - rx.chakra.menu_item("Settings"), - ), - ), - spacing="8", - ), - justify="space-between", - ), - bg=styles.bg_dark_color, - backdrop_filter="auto", - backdrop_blur="lg", - p="4", - border_bottom=f"1px solid {styles.border_color}", - position="sticky", - top="0", - z_index="100", - ) diff --git a/reflex/.templates/apps/demo/code/webui/components/sidebar.py b/reflex/.templates/apps/demo/code/webui/components/sidebar.py deleted file mode 100644 index b4ffdd41f..000000000 --- a/reflex/.templates/apps/demo/code/webui/components/sidebar.py +++ /dev/null @@ -1,66 +0,0 @@ -import reflex as rx - -from ...webui import styles -from ...webui.state import State - - -def sidebar_chat(chat: str) -> rx.Component: - """A sidebar chat item. - - Args: - chat: The chat item. - - Returns: - The sidebar chat item. - """ - return rx.chakra.hstack( - rx.chakra.box( - chat, - on_click=lambda: State.set_chat(chat), - style=styles.sidebar_style, - color=styles.icon_color, - flex="1", - ), - rx.chakra.box( - rx.chakra.icon( - tag="delete", - style=styles.icon_style, - on_click=State.delete_chat, - ), - style=styles.sidebar_style, - ), - color=styles.text_light_color, - cursor="pointer", - ) - - -def sidebar() -> rx.Component: - """The sidebar component. - - Returns: - The sidebar component. - """ - return rx.chakra.drawer( - rx.chakra.drawer_overlay( - rx.chakra.drawer_content( - rx.chakra.drawer_header( - rx.chakra.hstack( - rx.chakra.text("Chats"), - rx.chakra.icon( - tag="close", - on_click=State.toggle_drawer, - style=styles.icon_style, - ), - ) - ), - rx.chakra.drawer_body( - rx.chakra.vstack( - rx.foreach(State.chat_titles, lambda chat: sidebar_chat(chat)), - align_items="stretch", - ) - ), - ), - ), - placement="left", - is_open=State.drawer_open, - ) diff --git a/reflex/.templates/apps/demo/code/webui/state.py b/reflex/.templates/apps/demo/code/webui/state.py deleted file mode 100644 index 51739222d..000000000 --- a/reflex/.templates/apps/demo/code/webui/state.py +++ /dev/null @@ -1,146 +0,0 @@ -import asyncio - -import reflex as rx - -from ..state import State - -# openai.api_key = os.environ["OPENAI_API_KEY"] -# openai.api_base = os.getenv("OPENAI_API_BASE", "https://api.openai.com/v1") - - -class QA(rx.Base): - """A question and answer pair.""" - - question: str - answer: str - - -DEFAULT_CHATS = { - "Intros": [], -} - - -class State(State): - """The app state.""" - - # A dict from the chat name to the list of questions and answers. - chats: dict[str, list[QA]] = DEFAULT_CHATS - - # The current chat name. - current_chat = "Intros" - - # The current question. - question: str - - # Whether we are processing the question. - processing: bool = False - - # The name of the new chat. - new_chat_name: str = "" - - # Whether the drawer is open. - drawer_open: bool = False - - # Whether the modal is open. - modal_open: bool = False - - def create_chat(self): - """Create a new chat.""" - # Add the new chat to the list of chats. - self.current_chat = self.new_chat_name - self.chats[self.new_chat_name] = [] - - # Toggle the modal. - self.modal_open = False - - def toggle_modal(self): - """Toggle the new chat modal.""" - self.modal_open = not self.modal_open - - def toggle_drawer(self): - """Toggle the drawer.""" - self.drawer_open = not self.drawer_open - - def delete_chat(self): - """Delete the current chat.""" - del self.chats[self.current_chat] - if len(self.chats) == 0: - self.chats = DEFAULT_CHATS - # set self.current_chat to the first chat. - self.current_chat = next(iter(self.chats)) - self.toggle_drawer() - - def set_chat(self, chat_name: str): - """Set the name of the current chat. - - Args: - chat_name: The name of the chat. - """ - self.current_chat = chat_name - self.toggle_drawer() - - @rx.var - def chat_titles(self) -> list[str]: - """Get the list of chat titles. - - Returns: - The list of chat names. - """ - return [*self.chats] - - async def process_question(self, form_data: dict[str, str]): - """Get the response from the API. - - Args: - form_data: A dict with the current question. - - Yields: - The current question and the response. - """ - # Check if the question is empty - if self.question == "": - return - - # Add the question to the list of questions. - qa = QA(question=self.question, answer="") - self.chats[self.current_chat].append(qa) - - # Clear the input and start the processing. - self.processing = True - self.question = "" - yield - - # # Build the messages. - # messages = [ - # {"role": "system", "content": "You are a friendly chatbot named Reflex."} - # ] - # for qa in self.chats[self.current_chat]: - # messages.append({"role": "user", "content": qa.question}) - # messages.append({"role": "assistant", "content": qa.answer}) - - # # Remove the last mock answer. - # messages = messages[:-1] - - # Start a new session to answer the question. - # session = openai.ChatCompletion.create( - # model=os.getenv("OPENAI_MODEL", "gpt-3.5-turbo"), - # messages=messages, - # stream=True, - # ) - - # Stream the results, yielding after every word. - # for item in session: - answer = "I don't know! This Chatbot still needs to add in AI API keys!" - for i in range(len(answer)): - # Pause to show the streaming effect. - await asyncio.sleep(0.1) - # Add one letter at a time to the output. - - # if hasattr(item.choices[0].delta, "content"): - # answer_text = item.choices[0].delta.content - self.chats[self.current_chat][-1].answer += answer[i] - self.chats = self.chats - yield - - # Toggle the processing flag. - self.processing = False diff --git a/reflex/.templates/apps/demo/code/webui/styles.py b/reflex/.templates/apps/demo/code/webui/styles.py deleted file mode 100644 index 62212ac1a..000000000 --- a/reflex/.templates/apps/demo/code/webui/styles.py +++ /dev/null @@ -1,88 +0,0 @@ -import reflex as rx - -bg_dark_color = "#111" -bg_medium_color = "#222" - -border_color = "#fff3" - -accennt_light = "#6649D8" -accent_color = "#5535d4" -accent_dark = "#4c2db3" - -icon_color = "#fff8" - -text_light_color = "#fff" -shadow_light = "rgba(17, 12, 46, 0.15) 0px 48px 100px 0px;" -shadow = "rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px, rgba(10, 37, 64, 0.35) 0px -2px 6px 0px inset;" - -message_style = dict(display="inline-block", p="4", border_radius="xl", max_w="30em") - -input_style = dict( - bg=bg_medium_color, - border_color=border_color, - border_width="1px", - p="4", -) - -icon_style = dict( - font_size="md", - color=icon_color, - _hover=dict(color=text_light_color), - cursor="pointer", - w="8", -) - -sidebar_style = dict( - border="double 1px transparent;", - border_radius="10px;", - background_image=f"linear-gradient({bg_dark_color}, {bg_dark_color}), radial-gradient(circle at top left, {accent_color},{accent_dark});", - background_origin="border-box;", - background_clip="padding-box, border-box;", - p="2", - _hover=dict( - background_image=f"linear-gradient({bg_dark_color}, {bg_dark_color}), radial-gradient(circle at top left, {accent_color},{accennt_light});", - ), -) - -base_style = { - rx.chakra.Avatar: { - "shadow": shadow, - "color": text_light_color, - # "bg": border_color, - }, - rx.chakra.Button: { - "shadow": shadow, - "color": text_light_color, - "_hover": { - "bg": accent_dark, - }, - }, - rx.chakra.Menu: { - "bg": bg_dark_color, - "border": f"red", - }, - rx.chakra.MenuList: { - "bg": bg_dark_color, - "border": f"1.5px solid {bg_medium_color}", - }, - rx.chakra.MenuDivider: { - "border": f"1px solid {bg_medium_color}", - }, - rx.chakra.MenuItem: { - "bg": bg_dark_color, - "color": text_light_color, - }, - rx.chakra.DrawerContent: { - "bg": bg_dark_color, - "color": text_light_color, - "opacity": "0.9", - }, - rx.chakra.Hstack: { - "align_items": "center", - "justify_content": "space-between", - }, - rx.chakra.Vstack: { - "align_items": "stretch", - "justify_content": "space-between", - }, -} diff --git a/reflex/.templates/jinja/web/utils/context.js.jinja2 b/reflex/.templates/jinja/web/utils/context.js.jinja2 index 5f734a0c3..8faecd9d2 100644 --- a/reflex/.templates/jinja/web/utils/context.js.jinja2 +++ b/reflex/.templates/jinja/web/utils/context.js.jinja2 @@ -7,7 +7,7 @@ export const initialState = {{ initial_state|json_dumps }} export const initialState = {} {% endif %} -export const defaultColorMode = "{{ default_color_mode }}" +export const defaultColorMode = {{ default_color_mode }} export const ColorModeContext = createContext(null); export const UploadFilesContext = createContext(null); export const DispatchContext = createContext(null); diff --git a/reflex/__init__.py b/reflex/__init__.py index a4f6dad33..d69e33d47 100644 --- a/reflex/__init__.py +++ b/reflex/__init__.py @@ -140,6 +140,7 @@ RADIX_THEMES_COMPONENTS_MAPPING: dict = { "components.radix.themes.components.radio_group": ["radio", "radio_group"], "components.radix.themes.components.dropdown_menu": ["menu", "dropdown_menu"], "components.radix.themes.components.separator": ["divider", "separator"], + "components.radix.themes.components.progress": ["progress"], } RADIX_THEMES_LAYOUT_MAPPING: dict = { @@ -205,7 +206,6 @@ RADIX_PRIMITIVES_MAPPING: dict = { "components.radix.primitives.form": [ "form", ], - "components.radix.primitives.progress": ["progress"], } COMPONENTS_CORE_MAPPING: dict = { @@ -324,7 +324,7 @@ _MAPPING: dict = { "style": ["Style", "toggle_color_mode"], "utils.imports": ["ImportVar"], "utils.serializers": ["serializer"], - "vars": ["cached_var", "Var"], + "vars": ["Var"], } _SUBMODULES: set[str] = { @@ -338,6 +338,7 @@ _SUBMODULES: set[str] = { "testing", "utils", "vars", + "ivars", "config", "compiler", } diff --git a/reflex/__init__.pyi b/reflex/__init__.pyi index 2c89545db..22c7298fe 100644 --- a/reflex/__init__.pyi +++ b/reflex/__init__.pyi @@ -12,6 +12,7 @@ from . import compiler as compiler from . import components as components from . import config as config from . import event as event +from . import ivars as ivars from . import model as model from . import style as style from . import testing as testing @@ -70,7 +71,6 @@ from .components.plotly import plotly as plotly from .components.radix.primitives.accordion import accordion as accordion from .components.radix.primitives.drawer import drawer as drawer from .components.radix.primitives.form import form as form -from .components.radix.primitives.progress import progress as progress from .components.radix.themes.base import theme as theme from .components.radix.themes.base import theme_panel as theme_panel from .components.radix.themes.color_mode import color_mode as color_mode @@ -105,6 +105,7 @@ from .components.radix.themes.components.hover_card import hover_card as hover_c from .components.radix.themes.components.icon_button import icon_button as icon_button from .components.radix.themes.components.inset import inset as inset from .components.radix.themes.components.popover import popover as popover +from .components.radix.themes.components.progress import progress as progress from .components.radix.themes.components.radio_cards import radio_cards as radio_cards from .components.radix.themes.components.radio_group import radio as radio from .components.radix.themes.components.radio_group import radio_group as radio_group @@ -189,7 +190,6 @@ from .style import toggle_color_mode as toggle_color_mode from .utils.imports import ImportVar as ImportVar from .utils.serializers import serializer as serializer from .vars import Var as Var -from .vars import cached_var as cached_var del compat RADIX_THEMES_MAPPING: dict diff --git a/reflex/app.py b/reflex/app.py index 69a5ff978..a3094885d 100644 --- a/reflex/app.py +++ b/reflex/app.py @@ -33,7 +33,7 @@ from typing import ( from fastapi import FastAPI, HTTPException, Request, UploadFile from fastapi.middleware import cors -from fastapi.responses import StreamingResponse +from fastapi.responses import JSONResponse, StreamingResponse from fastapi.staticfiles import StaticFiles from rich.progress import MofNCompleteColumn, Progress, TimeElapsedColumn from socketio import ASGIApp, AsyncNamespace, AsyncServer @@ -65,7 +65,7 @@ from reflex.components.core.upload import Upload, get_upload_dir from reflex.components.radix import themes from reflex.config import get_config from reflex.event import Event, EventHandler, EventSpec, window_alert -from reflex.model import Model +from reflex.model import Model, get_db_status from reflex.page import ( DECORATED_PAGES, ) @@ -377,6 +377,7 @@ class App(MiddlewareMixin, LifespanMixin, Base): """Add default api endpoints (ping).""" # To test the server. self.api.get(str(constants.Endpoint.PING))(ping) + self.api.get(str(constants.Endpoint.HEALTH))(health) def _add_optional_endpoints(self): """Add optional api endpoints (_upload).""" @@ -442,7 +443,7 @@ class App(MiddlewareMixin, LifespanMixin, Base): raise except TypeError as e: message = str(e) - if "BaseVar" in message or "ComputedVar" in message: + if "Var" in message: raise VarOperationTypeError( "You may be trying to use an invalid Python function on a state var. " "When referencing a var inside your render code, only limited var operations are supported. " @@ -527,9 +528,10 @@ class App(MiddlewareMixin, LifespanMixin, Base): self._enable_state() else: for var in component._get_vars(include_children=True): - if not var._var_data: + var_data = var._get_all_var_data() + if not var_data: continue - if not var._var_data.state: + if not var_data.state: continue self._enable_state() break @@ -1113,6 +1115,7 @@ class App(MiddlewareMixin, LifespanMixin, Base): Task if the event was backgroundable, otherwise None """ substate, handler = state._get_event_handler(event) + if not handler.is_background: return None @@ -1317,6 +1320,38 @@ async def ping() -> str: return "pong" +async def health() -> JSONResponse: + """Health check endpoint to assess the status of the database and Redis services. + + Returns: + JSONResponse: A JSON object with the health status: + - "status" (bool): Overall health, True if all checks pass. + - "db" (bool or str): Database status - True, False, or "NA". + - "redis" (bool or str): Redis status - True, False, or "NA". + """ + health_status = {"status": True} + status_code = 200 + + db_status, redis_status = await asyncio.gather( + get_db_status(), prerequisites.get_redis_status() + ) + + health_status["db"] = db_status + + if redis_status is None: + health_status["redis"] = False + else: + health_status["redis"] = redis_status + + if not health_status["db"] or ( + not health_status["redis"] and redis_status is not None + ): + health_status["status"] = False + status_code = 503 + + return JSONResponse(content=health_status, status_code=status_code) + + def upload(app: App): """Upload a file. diff --git a/reflex/base.py b/reflex/base.py index 2eca63600..5a2a6d2a9 100644 --- a/reflex/base.py +++ b/reflex/base.py @@ -110,14 +110,15 @@ class Base(BaseModel): # pyright: ignore [reportUnboundVariable] var: The variable to add a pydantic field for. default_value: The default value of the field """ + var_name = var._var_name.split(".")[-1] new_field = ModelField.infer( - name=var._var_name, + name=var_name, value=default_value, annotation=var._var_type, class_validators=None, config=cls.__config__, # type: ignore ) - cls.__fields__.update({var._var_name: new_field}) + cls.__fields__.update({var_name: new_field}) def get_value(self, key: str) -> Any: """Get the value of a field. diff --git a/reflex/compiler/compiler.py b/reflex/compiler/compiler.py index 4345e244f..00d4acc22 100644 --- a/reflex/compiler/compiler.py +++ b/reflex/compiler/compiler.py @@ -17,6 +17,7 @@ from reflex.components.component import ( StatefulComponent, ) from reflex.config import get_config +from reflex.ivars.base import LiteralVar from reflex.state import BaseState from reflex.style import SYSTEM_COLOR_MODE from reflex.utils.exec import is_prod_mode @@ -80,8 +81,8 @@ def _compile_contexts(state: Optional[Type[BaseState]], theme: Component | None) The compiled context file. """ appearance = getattr(theme, "appearance", None) - if appearance is None or Var.create_safe(appearance)._var_name == "inherit": - appearance = SYSTEM_COLOR_MODE + if appearance is None or str(LiteralVar.create(appearance)) == '"inherit"': + appearance = LiteralVar.create(SYSTEM_COLOR_MODE) last_compiled_time = str(datetime.now()) return ( diff --git a/reflex/components/base/app_wrap.py b/reflex/components/base/app_wrap.py index 76bf2d99b..7d6a085b4 100644 --- a/reflex/components/base/app_wrap.py +++ b/reflex/components/base/app_wrap.py @@ -2,7 +2,7 @@ from reflex.components.base.fragment import Fragment from reflex.components.component import Component -from reflex.vars import Var +from reflex.ivars.base import ImmutableVar class AppWrap(Fragment): @@ -15,6 +15,4 @@ class AppWrap(Fragment): Returns: A new AppWrap component containing {children}. """ - return super().create( - Var.create("{children}", _var_is_local=False, _var_is_string=False) - ) + return super().create(ImmutableVar.create("children")) diff --git a/reflex/components/base/app_wrap.pyi b/reflex/components/base/app_wrap.pyi index f57f46b02..576f8cd69 100644 --- a/reflex/components/base/app_wrap.pyi +++ b/reflex/components/base/app_wrap.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.base.fragment import Fragment from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class AppWrap(Fragment): @overload @@ -22,50 +22,40 @@ class AppWrap(Fragment): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AppWrap": diff --git a/reflex/components/base/bare.py b/reflex/components/base/bare.py index 0de7307db..2ed0cb590 100644 --- a/reflex/components/base/bare.py +++ b/reflex/components/base/bare.py @@ -7,13 +7,14 @@ from typing import Any, Iterator from reflex.components.component import Component from reflex.components.tags import Tag from reflex.components.tags.tagless import Tagless +from reflex.ivars.base import ImmutableVar from reflex.vars import Var class Bare(Component): """A component with no tag.""" - contents: Var[str] + contents: Var[Any] @classmethod def create(cls, contents: Any) -> Component: @@ -25,13 +26,17 @@ class Bare(Component): Returns: The component. """ - if isinstance(contents, Var) and contents._var_data: + if isinstance(contents, ImmutableVar): + return cls(contents=contents) + if isinstance(contents, Var): contents = contents.to(str) else: contents = str(contents) if contents is not None else "" return cls(contents=contents) # type: ignore def _render(self) -> Tag: + if isinstance(self.contents, ImmutableVar): + return Tagless(contents=f"{{{str(self.contents)}}}") return Tagless(contents=str(self.contents)) def _get_vars(self, include_children: bool = False) -> Iterator[Var]: diff --git a/reflex/components/base/body.pyi b/reflex/components/base/body.pyi index 443712ac9..57ff1b7b7 100644 --- a/reflex/components/base/body.pyi +++ b/reflex/components/base/body.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Body(Component): @overload @@ -22,50 +22,40 @@ class Body(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Body": diff --git a/reflex/components/base/document.pyi b/reflex/components/base/document.pyi index 428decc8e..77065d845 100644 --- a/reflex/components/base/document.pyi +++ b/reflex/components/base/document.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class NextDocumentLib(Component): @overload @@ -22,50 +22,40 @@ class NextDocumentLib(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "NextDocumentLib": @@ -99,50 +89,40 @@ class Html(NextDocumentLib): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Html": @@ -175,50 +155,40 @@ class DocumentHead(NextDocumentLib): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DocumentHead": @@ -251,50 +221,40 @@ class Main(NextDocumentLib): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Main": @@ -327,50 +287,40 @@ class NextScript(NextDocumentLib): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "NextScript": diff --git a/reflex/components/base/error_boundary.py b/reflex/components/base/error_boundary.py index e90f0ed63..058976498 100644 --- a/reflex/components/base/error_boundary.py +++ b/reflex/components/base/error_boundary.py @@ -9,6 +9,8 @@ from reflex.components.component import Component from reflex.components.el import div, p from reflex.constants import Hooks, Imports from reflex.event import EventChain, EventHandler +from reflex.ivars.base import ImmutableVar +from reflex.ivars.function import FunctionVar from reflex.utils.imports import ImportVar from reflex.vars import Var @@ -20,14 +22,14 @@ class ErrorBoundary(Component): tag = "ErrorBoundary" # Fired when the boundary catches an error. - on_error: EventHandler[lambda error, info: [error, info]] = Var.create_safe( # type: ignore - "logFrontendError", _var_is_string=False, _var_is_local=False - ).to(EventChain) + on_error: EventHandler[lambda error, info: [error, info]] = ImmutableVar( # type: ignore + "logFrontendError" + ).to(FunctionVar, EventChain) # Rendered instead of the children when an error is caught. - Fallback_component: Var[Component] = Var.create_safe( - "Fallback", _var_is_string=False, _var_is_local=False - ).to(Component) + Fallback_component: Var[Component] = ImmutableVar.create_safe("Fallback")._replace( + _var_type=Component + ) def add_imports(self) -> dict[str, list[ImportVar]]: """Add imports for the component. @@ -56,7 +58,7 @@ class ErrorBoundary(Component): fallback_container = div( p("Ooops...Unknown Reflex error has occured:"), p( - Var.create("error.message", _var_is_local=False, _var_is_string=False), + ImmutableVar.create("error.message"), color="red", ), p("Please contact the support."), diff --git a/reflex/components/base/error_boundary.pyi b/reflex/components/base/error_boundary.pyi index 5bc260b3c..4777b09e9 100644 --- a/reflex/components/base/error_boundary.pyi +++ b/reflex/components/base/error_boundary.pyi @@ -9,7 +9,7 @@ from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportVar -from reflex.vars import BaseVar, Var +from reflex.vars import Var class ErrorBoundary(Component): def add_imports(self) -> dict[str, list[ImportVar]]: ... @@ -27,53 +27,41 @@ class ErrorBoundary(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ErrorBoundary": diff --git a/reflex/components/base/fragment.pyi b/reflex/components/base/fragment.pyi index 8c6f4c891..fae72cc9c 100644 --- a/reflex/components/base/fragment.pyi +++ b/reflex/components/base/fragment.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Fragment(Component): @overload @@ -22,50 +22,40 @@ class Fragment(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Fragment": diff --git a/reflex/components/base/head.pyi b/reflex/components/base/head.pyi index b5477259d..041457137 100644 --- a/reflex/components/base/head.pyi +++ b/reflex/components/base/head.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component, MemoizationLeaf from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class NextHeadLib(Component): @overload @@ -22,50 +22,40 @@ class NextHeadLib(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "NextHeadLib": @@ -98,50 +88,40 @@ class Head(NextHeadLib, MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Head": diff --git a/reflex/components/base/link.pyi b/reflex/components/base/link.pyi index ecee03ef2..80388a327 100644 --- a/reflex/components/base/link.pyi +++ b/reflex/components/base/link.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class RawLink(Component): @overload @@ -24,50 +24,40 @@ class RawLink(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RawLink": @@ -109,50 +99,40 @@ class ScriptTag(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ScriptTag": diff --git a/reflex/components/base/meta.pyi b/reflex/components/base/meta.pyi index 10e357a2e..372d202f9 100644 --- a/reflex/components/base/meta.pyi +++ b/reflex/components/base/meta.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Title(Component): def render(self) -> dict: ... @@ -23,50 +23,40 @@ class Title(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Title": @@ -104,50 +94,40 @@ class Meta(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Meta": @@ -190,50 +170,40 @@ class Description(Meta): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Description": @@ -276,50 +246,40 @@ class Image(Meta): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Image": diff --git a/reflex/components/base/script.py b/reflex/components/base/script.py index bef2f036b..7b0596966 100644 --- a/reflex/components/base/script.py +++ b/reflex/components/base/script.py @@ -9,6 +9,7 @@ from typing import Literal from reflex.components.component import Component from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var @@ -31,7 +32,7 @@ class Script(Component): # When the script will execute: afterInteractive (defer-like behavior) | beforeInteractive | lazyOnload (async-like behavior) strategy: Var[Literal["afterInteractive", "beforeInteractive", "lazyOnload"]] = ( - Var.create_safe("afterInteractive", _var_is_string=True) + LiteralVar.create("afterInteractive") ) # Triggered when the script is loading diff --git a/reflex/components/base/script.pyi b/reflex/components/base/script.pyi index 5165f5fd4..311485b66 100644 --- a/reflex/components/base/script.pyi +++ b/reflex/components/base/script.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Script(Component): @overload @@ -29,59 +29,43 @@ class Script(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_load: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_load: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ready: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ready: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Script": diff --git a/reflex/components/component.py b/reflex/components/component.py index bb3e9053f..6d4fdded1 100644 --- a/reflex/components/component.py +++ b/reflex/components/component.py @@ -43,11 +43,12 @@ from reflex.event import ( call_event_handler, get_handler_args, ) +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style, format_as_emotion -from reflex.utils import console, format, imports, types +from reflex.utils import format, imports, types from reflex.utils.imports import ImportDict, ImportVar, ParsedImportDict, parse_imports from reflex.utils.serializers import serializer -from reflex.vars import BaseVar, Var, VarData +from reflex.vars import BaseVar, ImmutableVarData, Var, VarData class BaseComponent(Base, ABC): @@ -320,9 +321,8 @@ class Component(BaseComponent, ABC): # Set default values for any props. if types._issubclass(field.type_, Var): field.required = False - field.default = Var.create( - field.default, _var_is_string=isinstance(field.default, str) - ) + if field.default is not None: + field.default = LiteralVar.create(field.default) elif types._issubclass(field.type_, EventHandler): field.required = False @@ -351,10 +351,7 @@ class Component(BaseComponent, ABC): "id": kwargs.get("id"), "children": children, **{ - prop: Var.create( - kwargs[prop], - _var_is_string=False if isinstance(kwargs[prop], str) else None, - ) + prop: LiteralVar.create(kwargs[prop]) for prop in self.get_initial_props() if prop in kwargs }, @@ -401,10 +398,10 @@ class Component(BaseComponent, ABC): passed_types = None try: # Try to create a var from the value. - kwargs[key] = Var.create( - value, - _var_is_string=False if isinstance(value, str) else None, - ) + if isinstance(value, Var): + kwargs[key] = value + else: + kwargs[key] = LiteralVar.create(value) # Check that the var type is not None. if kwargs[key] is None: @@ -448,7 +445,6 @@ class Component(BaseComponent, ABC): raise TypeError( f"Invalid var passed for prop {type(self).__name__}.{key}, expected type {expected_type}, got value {value_name} of type {passed_types or passed_type}." ) - # Check if the key is an event trigger. if key in component_specific_triggers: # Temporarily disable full control for event triggers. @@ -513,7 +509,9 @@ class Component(BaseComponent, ABC): # If it's an event chain var, return it. if isinstance(value, Var): if value._var_type is not EventChain: - raise ValueError(f"Invalid event chain: {value}") + raise ValueError( + f"Invalid event chain: {repr(value)} of type {type(value)}" + ) return value elif isinstance(value, EventChain): # Trust that the caller knows what they're doing passing an EventChain directly @@ -529,15 +527,7 @@ class Component(BaseComponent, ABC): for v in value: if isinstance(v, (EventHandler, EventSpec)): # Call the event handler to get the event. - try: - event = call_event_handler(v, args_spec) - except ValueError as err: - raise ValueError( - f" {err} defined in the `{type(self).__name__}` component" - ) from err - - # Add the event to the chain. - events.append(event) + events.append(call_event_handler(v, args_spec)) elif isinstance(v, Callable): # Call the lambda to get the event chain. result = call_event_fn(v, args_spec) @@ -638,27 +628,6 @@ class Component(BaseComponent, ABC): return _compile_component(self) - def _apply_theme(self, theme: Optional[Component]): - """Apply the theme to this component. - - Deprecated. Use add_style instead. - - Args: - theme: The theme to apply. - """ - pass - - def apply_theme(self, theme: Optional[Component]): - """Apply a theme to the component and its children. - - Args: - theme: The theme to apply. - """ - self._apply_theme(theme) - for child in self.children: - if isinstance(child, Component): - child.apply_theme(theme) - def _exclude_props(self) -> list[str]: """Props to exclude when adding the component props to the Tag. @@ -692,9 +661,7 @@ class Component(BaseComponent, ABC): # Add ref to element if `id` is not None. ref = self.get_ref() if ref is not None: - props["ref"] = Var.create( - ref, _var_is_local=False, _var_is_string=False - ) + props["ref"] = ImmutableVar.create(ref) else: props = props.copy() @@ -768,22 +735,6 @@ class Component(BaseComponent, ABC): from reflex.components.base.fragment import Fragment from reflex.utils.exceptions import ComponentTypeError - # Translate deprecated props to new names. - new_prop_names = [ - prop for prop in cls.get_props() if prop in ["type", "min", "max"] - ] - for prop in new_prop_names: - under_prop = f"{prop}_" - if under_prop in props: - console.deprecate( - f"Underscore suffix for prop `{under_prop}`", - reason=f"for consistency. Use `{prop}` instead.", - deprecation_version="0.4.0", - removal_version="0.6.0", - dedupe=False, - ) - props[prop] = props.pop(under_prop) - # Filter out None props props = {key: value for key, value in props.items() if value is not None} @@ -809,7 +760,7 @@ class Component(BaseComponent, ABC): else ( Fragment.create(*child) if isinstance(child, tuple) - else Bare.create(contents=Var.create(child, _var_is_string=True)) + else Bare.create(contents=LiteralVar.create(child)) ) ) for child in children @@ -900,17 +851,6 @@ class Component(BaseComponent, ABC): new_style.update(component_style) style_vars.append(component_style._var_data) - # 3. User-defined style from `Component.style`. - # Apply theme for retro-compatibility with deprecated _apply_theme API - if type(self)._apply_theme != Component._apply_theme: - console.deprecate( - f"{self.__class__.__name__}._apply_theme", - reason="use add_style instead", - deprecation_version="0.5.0", - removal_version="0.6.0", - ) - self._apply_theme(theme) - # 4. style dict and css props passed to the component instance. new_style.update(self.style) style_vars.append(self.style._var_data) @@ -936,7 +876,12 @@ class Component(BaseComponent, ABC): """ if isinstance(self.style, Var): return {"css": self.style} - return {"css": Var.create(format_as_emotion(self.style))} + emotion_style = format_as_emotion(self.style) + return ( + {"css": LiteralVar.create(emotion_style)} + if emotion_style is not None + else {} + ) def render(self) -> Dict: """Render the component. @@ -1091,10 +1036,10 @@ class Component(BaseComponent, ABC): # Style keeps track of its own VarData instance, so embed in a temp Var that is yielded. if isinstance(self.style, dict) and self.style or isinstance(self.style, Var): vars.append( - BaseVar( + ImmutableVar( _var_name="style", _var_type=str, - _var_data=self.style._var_data, + _var_data=ImmutableVarData.merge(self.style._var_data), ) ) @@ -1113,10 +1058,8 @@ class Component(BaseComponent, ABC): vars.append(comp_prop) elif isinstance(comp_prop, str): # Collapse VarData encoded in f-strings. - var = Var.create_safe( - comp_prop, _var_is_string=isinstance(comp_prop, str) - ) - if var._var_data is not None: + var = LiteralVar.create(comp_prop) + if var._get_all_var_data() is not None: vars.append(var) # Get Vars associated with children. @@ -1124,7 +1067,8 @@ class Component(BaseComponent, ABC): for child in self.children: if not isinstance(child, Component): continue - vars.extend(child._get_vars(include_children=include_children)) + child_vars = child._get_vars(include_children=include_children) + vars.extend(child_vars) return vars @@ -1329,13 +1273,13 @@ class Component(BaseComponent, ABC): other_imports = [] user_hooks = self._get_hooks() - if ( - user_hooks is not None - and isinstance(user_hooks, Var) - and user_hooks._var_data is not None - and user_hooks._var_data.imports - ): - other_imports.append(user_hooks._var_data.imports) + user_hooks_data = ( + VarData.merge(user_hooks._get_all_var_data()) + if user_hooks is not None and isinstance(user_hooks, Var) + else None + ) + if user_hooks_data is not None: + other_imports.append(user_hooks_data.imports) other_imports.extend( hook_imports for hook_imports in self._get_added_hooks().values() ) @@ -1358,8 +1302,9 @@ class Component(BaseComponent, ABC): event_imports = Imports.EVENTS if self.event_triggers else {} # Collect imports from Vars used directly by this component. + var_datas = [var._get_all_var_data() for var in self._get_vars()] var_imports = [ - var._var_data.imports for var in self._get_vars() if var._var_data + var_data.imports for var_data in var_datas if var_data is not None ] added_import_dicts: list[ParsedImportDict] = [] @@ -1427,7 +1372,7 @@ class Component(BaseComponent, ABC): """ ref = self.get_ref() if ref is not None: - return f"const {ref} = useRef(null); {str(Var.create_safe(ref, _var_is_string=False).as_ref())} = {ref};" + return f"const {ref} = useRef(null); {str(ImmutableVar.create_safe(ref).as_ref())} = {ref};" def _get_vars_hooks(self) -> dict[str, None]: """Get the hooks required by vars referenced in this component. @@ -1437,8 +1382,13 @@ class Component(BaseComponent, ABC): """ vars_hooks = {} for var in self._get_vars(): - if var._var_data: - vars_hooks.update(var._var_data.hooks) + var_data = var._get_all_var_data() + if var_data is not None: + vars_hooks.update( + var_data.hooks + if isinstance(var_data.hooks, dict) + else {k: None for k in var_data.hooks} + ) return vars_hooks def _get_events_hooks(self) -> dict[str, None]: @@ -1487,11 +1437,12 @@ class Component(BaseComponent, ABC): def extract_var_hooks(hook: Var): _imports = {} - if hook._var_data is not None: - for sub_hook in hook._var_data.hooks: + var_data = VarData.merge(hook._get_all_var_data()) + if var_data is not None: + for sub_hook in var_data.hooks: code[sub_hook] = {} - if hook._var_data.imports: - _imports = hook._var_data.imports + if var_data.imports: + _imports = var_data.imports if str(hook) in code: code[str(hook)] = imports.merge_imports(code[str(hook)], _imports) else: @@ -1505,6 +1456,7 @@ class Component(BaseComponent, ABC): extract_var_hooks(hook) else: code[hook] = {} + return code def _get_hooks(self) -> str | None: @@ -1561,7 +1513,7 @@ class Component(BaseComponent, ABC): The ref name. """ # do not create a ref if the id is dynamic or unspecified - if self.id is None or isinstance(self.id, BaseVar): + if self.id is None or isinstance(self.id, (BaseVar, ImmutableVar)): return None return format.format_ref(self.id) @@ -1707,7 +1659,7 @@ class CustomComponent(Component): # Handle subclasses of Base. if isinstance(value, Base): - base_value = Var.create(value) + base_value = LiteralVar.create(value) # Track hooks and imports associated with Component instances. if base_value is not None and isinstance(value, Component): @@ -1721,7 +1673,7 @@ class CustomComponent(Component): else: value = base_value else: - value = Var.create(value, _var_is_string=isinstance(value, str)) + value = LiteralVar.create(value) # Set the prop. self.props[format.to_camel_case(key)] = value @@ -1800,19 +1752,19 @@ class CustomComponent(Component): """ return super()._render(props=self.props) - def get_prop_vars(self) -> List[BaseVar]: + def get_prop_vars(self) -> List[ImmutableVar]: """Get the prop vars. Returns: The prop vars. """ return [ - BaseVar( + ImmutableVar( _var_name=name, _var_type=( prop._var_type if types._isinstance(prop, Var) else type(prop) ), - ) + ).guess_type() for name, prop in self.props.items() ] @@ -1825,9 +1777,11 @@ class CustomComponent(Component): Returns: Each var referenced by the component (props, styles, event handlers). """ - return super()._get_vars(include_children=include_children) + [ - prop for prop in self.props.values() if isinstance(prop, Var) - ] + return ( + super()._get_vars(include_children=include_children) + + [prop for prop in self.props.values() if isinstance(prop, Var)] + + self.get_component(self)._get_vars(include_children=include_children) + ) @lru_cache(maxsize=None) # noqa def get_component(self) -> Component: @@ -1981,7 +1935,7 @@ class StatefulComponent(BaseComponent): if not should_memoize: # Determine if any Vars have associated data. for prop_var in component._get_vars(): - if prop_var._var_data: + if prop_var._get_all_var_data(): should_memoize = True break @@ -1996,7 +1950,7 @@ class StatefulComponent(BaseComponent): should_memoize = True break child = cls._child_var(child) - if isinstance(child, Var) and child._var_data: + if isinstance(child, Var) and child._get_all_var_data(): should_memoize = True break @@ -2187,12 +2141,12 @@ class StatefulComponent(BaseComponent): # Calculate Var dependencies accessed by the handler for useCallback dep array. var_deps = ["addEvents", "Event"] for arg in event_args: - if arg._var_data is None: + if arg._get_all_var_data() is None: continue - for hook in arg._var_data.hooks: + for hook in arg._get_all_var_data().hooks: var_deps.extend(cls._get_hook_deps(hook)) memo_var_data = VarData.merge( - *[var._var_data for var in event_args], + *[var._get_all_var_data() for var in event_args], VarData( imports={"react": [ImportVar(tag="useCallback")]}, ), @@ -2200,7 +2154,7 @@ class StatefulComponent(BaseComponent): # Store the memoized function name and hook code for this event trigger. trigger_memo[event_trigger] = ( - Var.create_safe(memo_name, _var_is_string=False)._replace( + ImmutableVar.create_safe(memo_name)._replace( _var_type=EventChain, merge_var_data=memo_var_data ), f"const {memo_name} = useCallback({rendered_chain}, [{', '.join(var_deps)}])", diff --git a/reflex/components/core/banner.py b/reflex/components/core/banner.py index c6b46696c..4c4f587ee 100644 --- a/reflex/components/core/banner.py +++ b/reflex/components/core/banner.py @@ -4,7 +4,6 @@ from __future__ import annotations from typing import Optional -from reflex.components.base.bare import Bare from reflex.components.component import Component from reflex.components.core.cond import cond from reflex.components.el.elements.typography import Div @@ -19,71 +18,64 @@ from reflex.components.radix.themes.typography.text import Text from reflex.components.sonner.toast import Toaster, ToastProps from reflex.constants import Dirs, Hooks, Imports from reflex.constants.compiler import CompileVars -from reflex.utils.imports import ImportDict, ImportVar -from reflex.utils.serializers import serialize -from reflex.vars import Var, VarData +from reflex.ivars.base import ImmutableVar, LiteralVar +from reflex.ivars.function import FunctionStringVar +from reflex.ivars.number import BooleanVar +from reflex.ivars.sequence import LiteralArrayVar +from reflex.utils.imports import ImportVar +from reflex.vars import ImmutableVarData, Var, VarData connect_error_var_data: VarData = VarData( # type: ignore imports=Imports.EVENTS, hooks={Hooks.EVENTS: None}, ) -connect_errors: Var = Var.create_safe( +connect_errors: Var = ImmutableVar.create_safe( value=CompileVars.CONNECT_ERROR, - _var_is_local=True, - _var_is_string=False, _var_data=connect_error_var_data, ) -connection_error: Var = Var.create_safe( - value="(connectErrors.length > 0) ? connectErrors[connectErrors.length - 1].message : ''", - _var_is_local=False, - _var_is_string=False, +connection_error: Var = ImmutableVar.create_safe( + value="((connectErrors.length > 0) ? connectErrors[connectErrors.length - 1].message : '')", _var_data=connect_error_var_data, ) -connection_errors_count: Var = Var.create_safe( +connection_errors_count: Var = ImmutableVar.create_safe( value="connectErrors.length", - _var_is_string=False, - _var_is_local=False, _var_data=connect_error_var_data, ) -has_connection_errors: Var = Var.create_safe( - value="connectErrors.length > 0", - _var_is_string=False, +has_connection_errors: Var = ImmutableVar.create_safe( + value="(connectErrors.length > 0)", _var_data=connect_error_var_data, -).to(bool) +).to(BooleanVar) -has_too_many_connection_errors: Var = Var.create_safe( - value="connectErrors.length >= 2", - _var_is_string=False, +has_too_many_connection_errors: Var = ImmutableVar.create_safe( + value="(connectErrors.length >= 2)", _var_data=connect_error_var_data, -).to(bool) +).to(BooleanVar) -class WebsocketTargetURL(Bare): +class WebsocketTargetURL(ImmutableVar): """A component that renders the websocket target URL.""" - def add_imports(self) -> ImportDict: - """Add imports for the websocket target URL component. - - Returns: - The import dict. - """ - return { - f"/{Dirs.STATE_PATH}": [ImportVar(tag="getBackendURL")], - "/env.json": [ImportVar(tag="env", is_default=True)], - } - @classmethod - def create(cls) -> Component: + def create(cls) -> ImmutableVar: """Create a websocket target URL component. Returns: The websocket target URL component. """ - return super().create(contents="{getBackendURL(env.EVENT).href}") + return ImmutableVar( + _var_name="getBackendURL(env.EVENT).href", + _var_data=ImmutableVarData( + imports={ + "/env.json": [ImportVar(tag="env", is_default=True)], + f"/{Dirs.STATE_PATH}": [ImportVar(tag="getBackendURL")], + }, + ), + _var_type=WebsocketTargetURL, + ) def default_connection_error() -> list[str | Var | Component]: @@ -112,24 +104,34 @@ class ConnectionToaster(Toaster): toast_id = "websocket-error" target_url = WebsocketTargetURL.create() props = ToastProps( # type: ignore - description=Var.create( - f"`Check if server is reachable at ${target_url}`", - _var_is_string=False, - _var_is_local=False, + description=LiteralVar.create( + f"Check if server is reachable at {target_url}", ), close_button=True, duration=120000, id=toast_id, ) - hook = Var.create_safe( - f""" -const toast_props = {serialize(props)}; -const [userDismissed, setUserDismissed] = useState(false); -useEffect(() => {{ - if ({has_too_many_connection_errors}) {{ + + individual_hooks = [ + f"const toast_props = {str(LiteralVar.create(props))};", + f"const [userDismissed, setUserDismissed] = useState(false);", + FunctionStringVar( + "useEffect", + _var_data=VarData( + imports={ + "react": ["useEffect", "useState"], + **dict(target_url._get_all_var_data().imports), # type: ignore + } + ), + ).call( + # TODO: This breaks the assumption that Vars are JS expressions + ImmutableVar.create_safe( + f""" +() => {{ + if ({str(has_too_many_connection_errors)}) {{ if (!userDismissed) {{ toast.error( - `Cannot connect to server: {connection_error}.`, + `Cannot connect to server: ${{{connection_error}}}.`, {{...toast_props, onDismiss: () => setUserDismissed(true)}}, ) }} @@ -137,20 +139,16 @@ useEffect(() => {{ toast.dismiss("{toast_id}"); setUserDismissed(false); // after reconnection reset dismissed state }} -}}, [{connect_errors}]);""", - _var_is_string=False, - ) - imports: ImportDict = { - "react": ["useEffect", "useState"], - **target_url._get_imports(), # type: ignore - } - hook._var_data = VarData.merge( - connect_errors._var_data, - VarData(imports=imports), - ) +}} +""" + ), + LiteralArrayVar.create([connect_errors]), + ), + ] + return [ Hooks.EVENTS, - hook, + *individual_hooks, ] @classmethod @@ -240,6 +238,7 @@ class WifiOffPulse(Icon): Returns: The icon component with default props applied. """ + pulse_var = ImmutableVar.create("pulse") return super().create( "wifi_off", color=props.pop("color", "crimson"), @@ -248,7 +247,7 @@ class WifiOffPulse(Icon): position=props.pop("position", "fixed"), bottom=props.pop("botton", "33px"), right=props.pop("right", "33px"), - animation=Var.create(f"${{pulse}} 1s infinite", _var_is_string=True), + animation=LiteralVar.create(f"{pulse_var} 1s infinite"), **props, ) diff --git a/reflex/components/core/banner.pyi b/reflex/components/core/banner.pyi index b9b6d506f..6327afe0b 100644 --- a/reflex/components/core/banner.pyi +++ b/reflex/components/core/banner.pyi @@ -5,15 +5,15 @@ # ------------------------------------------------------ from typing import Any, Callable, Dict, Literal, Optional, Union, overload -from reflex.components.base.bare import Bare from reflex.components.component import Component from reflex.components.el.elements.typography import Div from reflex.components.lucide.icon import Icon from reflex.components.sonner.toast import Toaster, ToastProps from reflex.event import EventHandler, EventSpec +from reflex.ivars.base import ImmutableVar from reflex.style import Style -from reflex.utils.imports import ImportDict, ImportVar -from reflex.vars import BaseVar, Var, VarData +from reflex.utils.imports import ImportVar +from reflex.vars import Var, VarData connect_error_var_data: VarData connect_errors: Var @@ -22,73 +22,9 @@ connection_errors_count: Var has_connection_errors: Var has_too_many_connection_errors: Var -class WebsocketTargetURL(Bare): - def add_imports(self) -> ImportDict: ... - @overload +class WebsocketTargetURL(ImmutableVar): @classmethod - def create( # type: ignore - cls, - *children, - contents: Optional[Union[Var[str], str]] = None, - style: Optional[Style] = None, - key: Optional[Any] = None, - id: Optional[Any] = None, - class_name: Optional[Any] = None, - autofocus: Optional[bool] = None, - custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - **props, - ) -> "WebsocketTargetURL": - """Create a websocket target URL component. - - Returns: - The websocket target URL component. - """ - ... + def create(cls) -> ImmutableVar: ... # type: ignore def default_connection_error() -> list[str | Var | Component]: ... @@ -140,50 +76,40 @@ class ConnectionToaster(Toaster): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ConnectionToaster": @@ -230,50 +156,40 @@ class ConnectionBanner(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ConnectionBanner": @@ -299,50 +215,40 @@ class ConnectionModal(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ConnectionModal": @@ -369,50 +275,40 @@ class WifiOffPulse(Icon): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "WifiOffPulse": @@ -472,50 +368,40 @@ class ConnectionPulser(Div): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ConnectionPulser": diff --git a/reflex/components/core/client_side_routing.pyi b/reflex/components/core/client_side_routing.pyi index 7562f6f5c..605293ee8 100644 --- a/reflex/components/core/client_side_routing.pyi +++ b/reflex/components/core/client_side_routing.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var route_not_found: Var @@ -26,50 +26,40 @@ class ClientSideRouting(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ClientSideRouting": @@ -105,50 +95,40 @@ class Default404Page(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Default404Page": diff --git a/reflex/components/core/clipboard.pyi b/reflex/components/core/clipboard.pyi index 29ad80c2f..aaeac985c 100644 --- a/reflex/components/core/clipboard.pyi +++ b/reflex/components/core/clipboard.pyi @@ -9,7 +9,7 @@ from reflex.components.base.fragment import Fragment from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportVar -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Clipboard(Fragment): @overload @@ -27,53 +27,41 @@ class Clipboard(Fragment): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_paste: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_paste: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Clipboard": diff --git a/reflex/components/core/cond.py b/reflex/components/core/cond.py index 5d9ab7544..6e6272665 100644 --- a/reflex/components/core/cond.py +++ b/reflex/components/core/cond.py @@ -2,17 +2,17 @@ from __future__ import annotations -from typing import Any, Dict, Optional, Union, overload +from typing import Any, Dict, Optional, overload from reflex.components.base.fragment import Fragment from reflex.components.component import BaseComponent, Component, MemoizationLeaf from reflex.components.tags import CondTag, Tag from reflex.constants import Dirs -from reflex.constants.colors import Color +from reflex.ivars.base import ImmutableVar, LiteralVar +from reflex.ivars.number import ternary_operation from reflex.style import LIGHT_COLOR_MODE, resolved_color_mode -from reflex.utils import format from reflex.utils.imports import ImportDict, ImportVar -from reflex.vars import BaseVar, Var, VarData +from reflex.vars import Var, VarData _IS_TRUE_IMPORT: ImportDict = { f"/{Dirs.STATE_PATH}": [ImportVar(tag="isTrue")], @@ -104,7 +104,7 @@ class Cond(MemoizationLeaf): The import dict for the component. """ cond_imports: dict[str, str | ImportVar | list[str | ImportVar]] = getattr( - self.cond._var_data, "imports", {} + VarData.merge(self.cond._get_all_var_data()), "imports", {} ) return {**cond_imports, **_IS_TRUE_IMPORT} @@ -118,10 +118,10 @@ def cond(condition: Any, c1: Component) -> Component: ... @overload -def cond(condition: Any, c1: Any, c2: Any) -> BaseVar: ... +def cond(condition: Any, c1: Any, c2: Any) -> ImmutableVar: ... -def cond(condition: Any, c1: Any, c2: Any = None): +def cond(condition: Any, c1: Any, c2: Any = None) -> Component | ImmutableVar: """Create a conditional component or Prop. Args: @@ -135,14 +135,10 @@ def cond(condition: Any, c1: Any, c2: Any = None): Raises: ValueError: If the arguments are invalid. """ - var_datas: list[VarData | None] = [ - VarData( # type: ignore - imports=_IS_TRUE_IMPORT, - ), - ] - + if isinstance(condition, Var) and not isinstance(condition, ImmutableVar): + condition._var_is_local = True # Convert the condition to a Var. - cond_var = Var.create(condition) + cond_var = LiteralVar.create(condition) assert cond_var is not None, "The condition must be set." # If the first component is a component, create a Cond component. @@ -151,8 +147,6 @@ def cond(condition: Any, c1: Any, c2: Any = None): c2, BaseComponent ), "Both arguments must be components." return Cond.create(cond_var, c1, c2) - if isinstance(c1, Var): - var_datas.append(c1._var_data) # Otherwise, create a conditional Var. # Check that the second argument is valid. @@ -160,37 +154,21 @@ def cond(condition: Any, c1: Any, c2: Any = None): raise ValueError("Both arguments must be props.") if c2 is None: raise ValueError("For conditional vars, the second argument must be set.") - if isinstance(c2, Var): - var_datas.append(c2._var_data) def create_var(cond_part): - return Var.create_safe( - cond_part, - _var_is_string=isinstance(cond_part, (str, Color)), - ) + return LiteralVar.create(cond_part) # convert the truth and false cond parts into vars so the _var_data can be obtained. c1 = create_var(c1) c2 = create_var(c2) - var_datas.extend([c1._var_data, c2._var_data]) - - c1_type = c1._var_type if isinstance(c1, Var) else type(c1) - c2_type = c2._var_type if isinstance(c2, Var) else type(c2) - - var_type = c1_type if c1_type == c2_type else Union[c1_type, c2_type] # Create the conditional var. - return cond_var._replace( - _var_name=format.format_cond( - cond=cond_var._var_full_name, - true_value=c1, - false_value=c2, - is_prop=True, - ), - _var_type=var_type, - _var_is_local=False, - _var_full_name_needs_state_prefix=False, - merge_var_data=VarData.merge(*var_datas), + return ternary_operation( + cond_var.bool()._replace( # type: ignore + merge_var_data=VarData(imports=_IS_TRUE_IMPORT), + ), # type: ignore + c1, + c2, ) @@ -205,7 +183,7 @@ def color_mode_cond(light: Any, dark: Any = None) -> Var | Component: The conditional component or prop. """ return cond( - resolved_color_mode == Var.create(LIGHT_COLOR_MODE, _var_is_string=True), + resolved_color_mode == LiteralVar.create(LIGHT_COLOR_MODE), light, dark, ) diff --git a/reflex/components/core/debounce.pyi b/reflex/components/core/debounce.pyi index 59e87f366..486fcc284 100644 --- a/reflex/components/core/debounce.pyi +++ b/reflex/components/core/debounce.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Type, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var DEFAULT_DEBOUNCE_TIMEOUT = 300 @@ -31,53 +31,41 @@ class DebounceInput(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DebounceInput": diff --git a/reflex/components/core/foreach.py b/reflex/components/core/foreach.py index 44e0685dd..78e8933d9 100644 --- a/reflex/components/core/foreach.py +++ b/reflex/components/core/foreach.py @@ -9,8 +9,8 @@ from reflex.components.base.fragment import Fragment from reflex.components.component import Component from reflex.components.tags import IterTag from reflex.constants import MemoizationMode +from reflex.ivars.base import ImmutableVar from reflex.state import ComponentState -from reflex.utils import console from reflex.vars import Var @@ -38,14 +38,12 @@ class Foreach(Component): cls, iterable: Var[Iterable] | Iterable, render_fn: Callable, - **props, ) -> Foreach: """Create a foreach component. Args: iterable: The iterable to create components from. render_fn: A function from the render args to the component. - **props: The attributes to pass to each child component (deprecated). Returns: The foreach component. @@ -54,14 +52,7 @@ class Foreach(Component): ForeachVarError: If the iterable is of type Any. TypeError: If the render function is a ComponentState. """ - if props: - console.deprecate( - feature_name="Passing props to rx.foreach", - reason="it does not have the intended effect and may be confusing", - deprecation_version="0.5.0", - removal_version="0.6.0", - ) - iterable = Var.create_safe(iterable, _var_is_string=False) + iterable = ImmutableVar.create_safe(iterable) if iterable._var_type == Any: raise ForeachVarError( f"Could not foreach over var `{iterable._var_full_name}` of type Any. " diff --git a/reflex/components/core/html.pyi b/reflex/components/core/html.pyi index 62bec0063..c3d2ed06f 100644 --- a/reflex/components/core/html.pyi +++ b/reflex/components/core/html.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.el.elements.typography import Div from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Html(Div): @overload @@ -49,50 +49,40 @@ class Html(Div): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Html": diff --git a/reflex/components/core/match.py b/reflex/components/core/match.py index e85739605..3ddef38c6 100644 --- a/reflex/components/core/match.py +++ b/reflex/components/core/match.py @@ -5,13 +5,13 @@ from typing import Any, Dict, List, Optional, Tuple, Union from reflex.components.base import Fragment from reflex.components.component import BaseComponent, Component, MemoizationLeaf -from reflex.components.core.colors import Color from reflex.components.tags import MatchTag, Tag +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style from reflex.utils import format, types from reflex.utils.exceptions import MatchTypeError from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var, VarData +from reflex.vars import ImmutableVarData, Var, VarData class Match(MemoizationLeaf): @@ -27,7 +27,7 @@ class Match(MemoizationLeaf): default: Any @classmethod - def create(cls, cond: Any, *cases) -> Union[Component, BaseVar]: + def create(cls, cond: Any, *cases) -> Union[Component, Var]: """Create a Match Component. Args: @@ -46,7 +46,7 @@ class Match(MemoizationLeaf): cls._validate_return_types(match_cases) - if default is None and types._issubclass(type(match_cases[0][-1]), BaseVar): + if default is None and types._issubclass(type(match_cases[0][-1]), Var): raise ValueError( "For cases with return types as Vars, a default case must be provided" ) @@ -56,7 +56,7 @@ class Match(MemoizationLeaf): ) @classmethod - def _create_condition_var(cls, cond: Any) -> BaseVar: + def _create_condition_var(cls, cond: Any) -> Var: """Convert the condition to a Var. Args: @@ -68,16 +68,16 @@ class Match(MemoizationLeaf): Raises: ValueError: If the condition is not provided. """ - match_cond_var = Var.create(cond, _var_is_string=isinstance(cond, str)) + match_cond_var = LiteralVar.create(cond) if match_cond_var is None: raise ValueError("The condition must be set") - return match_cond_var # type: ignore + return match_cond_var @classmethod def _process_cases( cls, cases: List - ) -> Tuple[List, Optional[Union[BaseVar, BaseComponent]]]: + ) -> Tuple[List, Optional[Union[Var, BaseComponent]]]: """Process the list of match cases and the catchall default case. Args: @@ -94,6 +94,9 @@ class Match(MemoizationLeaf): if len([case for case in cases if not isinstance(case, tuple)]) > 1: raise ValueError("rx.match can only have one default case.") + if not cases: + raise ValueError("rx.match should have at least one case.") + # Get the default case which should be the last non-tuple arg if not isinstance(cases[-1], tuple): default = cases.pop() @@ -103,7 +106,7 @@ class Match(MemoizationLeaf): else default ) - return cases, default # type: ignore + return cases, default @classmethod def _create_case_var_with_var_data(cls, case_element): @@ -117,17 +120,12 @@ class Match(MemoizationLeaf): Returns: The case element Var. """ - _var_data = case_element._var_data if isinstance(case_element, Style) else None # type: ignore - case_element = Var.create( - case_element, - _var_is_string=isinstance(case_element, (str, Color)), - ) - if _var_data is not None: - case_element._var_data = VarData.merge(case_element._var_data, _var_data) # type: ignore + _var_data = case_element._var_data if isinstance(case_element, Style) else None + case_element = LiteralVar.create(case_element, _var_data=_var_data) return case_element @classmethod - def _process_match_cases(cls, cases: List) -> List[List[BaseVar]]: + def _process_match_cases(cls, cases: List) -> List[List[Var]]: """Process the individual match cases. Args: @@ -159,7 +157,7 @@ class Match(MemoizationLeaf): if not isinstance(element, BaseComponent) else element ) - if not isinstance(el, (BaseVar, BaseComponent)): + if not isinstance(el, (Var, BaseComponent)): raise ValueError("Case element must be a var or component") case_list.append(el) @@ -168,7 +166,7 @@ class Match(MemoizationLeaf): return match_cases @classmethod - def _validate_return_types(cls, match_cases: List[List[BaseVar]]) -> None: + def _validate_return_types(cls, match_cases: List[List[Var]]) -> None: """Validate that match cases have the same return types. Args: @@ -182,14 +180,14 @@ class Match(MemoizationLeaf): if types._isinstance(first_case_return, BaseComponent): return_type = BaseComponent - elif types._isinstance(first_case_return, BaseVar): - return_type = BaseVar + elif types._isinstance(first_case_return, Var): + return_type = Var for index, case in enumerate(match_cases): if not types._issubclass(type(case[-1]), return_type): raise MatchTypeError( f"Match cases should have the same return types. Case {index} with return " - f"value `{case[-1]._var_name if isinstance(case[-1], BaseVar) else textwrap.shorten(str(case[-1]), width=250)}`" + f"value `{case[-1]._var_name if isinstance(case[-1], Var) else textwrap.shorten(str(case[-1]), width=250)}`" f" of type {type(case[-1])!r} is not {return_type}" ) @@ -197,9 +195,9 @@ class Match(MemoizationLeaf): def _create_match_cond_var_or_component( cls, match_cond_var: Var, - match_cases: List[List[BaseVar]], - default: Optional[Union[BaseVar, BaseComponent]], - ) -> Union[Component, BaseVar]: + match_cases: List[List[Var]], + default: Optional[Union[Var, BaseComponent]], + ) -> Union[Component, Var]: """Create and return the match condition var or component. Args: @@ -230,28 +228,22 @@ class Match(MemoizationLeaf): # Validate the match cases (as well as the default case) to have Var return types. if any( - case for case in match_cases if not types._isinstance(case[-1], BaseVar) - ) or not types._isinstance(default, BaseVar): + case for case in match_cases if not types._isinstance(case[-1], Var) + ) or not types._isinstance(default, Var): raise ValueError("Return types of match cases should be Vars.") - # match cases and default should all be Vars at this point. - # Retrieve var data of every var in the match cases and default. - var_data = [ - *[el._var_data for case in match_cases for el in case], - default._var_data, # type: ignore - ] - - return match_cond_var._replace( + return ImmutableVar( _var_name=format.format_match( cond=match_cond_var._var_name_unwrapped, match_cases=match_cases, # type: ignore default=default, # type: ignore ), _var_type=default._var_type, # type: ignore - _var_is_local=False, - _var_full_name_needs_state_prefix=False, - _var_is_string=False, - merge_var_data=VarData.merge(*var_data), + _var_data=ImmutableVarData.merge( + match_cond_var._get_all_var_data(), + *[el._get_all_var_data() for case in match_cases for el in case], + default._get_all_var_data(), # type: ignore + ), ) def _render(self) -> Tag: @@ -275,7 +267,7 @@ class Match(MemoizationLeaf): Returns: The import dict. """ - return getattr(self.cond._var_data, "imports", {}) + return getattr(VarData.merge(self.cond._get_all_var_data()), "imports", {}) match = Match.create diff --git a/reflex/components/core/upload.py b/reflex/components/core/upload.py index 3c2113253..df9146c4d 100644 --- a/reflex/components/core/upload.py +++ b/reflex/components/core/upload.py @@ -19,8 +19,10 @@ from reflex.event import ( call_script, parse_args_spec, ) +from reflex.ivars.base import ImmutableCallableVar, ImmutableVar +from reflex.ivars.sequence import LiteralStringVar from reflex.utils.imports import ImportVar -from reflex.vars import BaseVar, CallableVar, Var, VarData +from reflex.vars import ImmutableVarData, Var, VarData DEFAULT_UPLOAD_ID: str = "default" @@ -35,8 +37,8 @@ upload_files_context_var_data: VarData = VarData( ) -@CallableVar -def upload_file(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: +@ImmutableCallableVar +def upload_file(id_: str = DEFAULT_UPLOAD_ID) -> ImmutableVar: """Get the file upload drop trigger. This var is passed to the dropzone component to update the file list when a @@ -48,23 +50,25 @@ def upload_file(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: Returns: A var referencing the file upload drop trigger. """ - id_var = Var.create_safe(id_, _var_is_string=True) + id_var = LiteralStringVar.create(id_) var_name = f"""e => setFilesById(filesById => {{ const updatedFilesById = Object.assign({{}}, filesById); - updatedFilesById[{id_var._var_name_unwrapped}] = e; + updatedFilesById[{str(id_var)}] = e; return updatedFilesById; }}) """ - return BaseVar( + return ImmutableVar( _var_name=var_name, _var_type=EventChain, - _var_data=VarData.merge(upload_files_context_var_data, id_var._var_data), + _var_data=ImmutableVarData.merge( + upload_files_context_var_data, id_var._get_all_var_data() + ), ) -@CallableVar -def selected_files(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: +@ImmutableCallableVar +def selected_files(id_: str = DEFAULT_UPLOAD_ID) -> ImmutableVar: """Get the list of selected files. Args: @@ -73,12 +77,14 @@ def selected_files(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: Returns: A var referencing the list of selected file paths. """ - id_var = Var.create_safe(id_, _var_is_string=True) - return BaseVar( - _var_name=f"(filesById[{id_var._var_name_unwrapped}] ? filesById[{id_var._var_name_unwrapped}].map((f) => (f.path || f.name)) : [])", + id_var = LiteralStringVar.create(id_) + return ImmutableVar( + _var_name=f"(filesById[{str(id_var)}] ? filesById[{str(id_var)}].map((f) => (f.path || f.name)) : [])", _var_type=List[str], - _var_data=VarData.merge(upload_files_context_var_data, id_var._var_data), - ) + _var_data=ImmutableVarData.merge( + upload_files_context_var_data, id_var._get_all_var_data() + ), + ).guess_type() @CallableEventSpec @@ -245,7 +251,7 @@ class Upload(MemoizationLeaf): # The file input to use. upload = Input.create(type="file") upload.special_props = { - BaseVar(_var_name="{...getInputProps()}", _var_type=None) + ImmutableVar(_var_name="...getInputProps()", _var_type=None) } # The dropzone to use. @@ -254,7 +260,9 @@ class Upload(MemoizationLeaf): *children, **{k: v for k, v in props.items() if k not in supported_props}, ) - zone.special_props = {BaseVar(_var_name="{...getRootProps()}", _var_type=None)} + zone.special_props = { + ImmutableVar(_var_name="...getRootProps()", _var_type=None) + } # Create the component. upload_props["id"] = props.get("id", DEFAULT_UPLOAD_ID) diff --git a/reflex/components/core/upload.pyi b/reflex/components/core/upload.pyi index 54bb351de..ff5085514 100644 --- a/reflex/components/core/upload.pyi +++ b/reflex/components/core/upload.pyi @@ -12,16 +12,17 @@ from reflex.event import ( EventHandler, EventSpec, ) +from reflex.ivars.base import ImmutableCallableVar, ImmutableVar from reflex.style import Style -from reflex.vars import BaseVar, CallableVar, Var, VarData +from reflex.vars import Var, VarData DEFAULT_UPLOAD_ID: str upload_files_context_var_data: VarData -@CallableVar -def upload_file(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: ... -@CallableVar -def selected_files(id_: str = DEFAULT_UPLOAD_ID) -> BaseVar: ... +@ImmutableCallableVar +def upload_file(id_: str = DEFAULT_UPLOAD_ID) -> ImmutableVar: ... +@ImmutableCallableVar +def selected_files(id_: str = DEFAULT_UPLOAD_ID) -> ImmutableVar: ... @CallableEventSpec def clear_selected_files(id_: str = DEFAULT_UPLOAD_ID) -> EventSpec: ... def cancel_upload(upload_id: str) -> EventSpec: ... @@ -43,50 +44,40 @@ class UploadFilesProvider(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "UploadFilesProvider": @@ -130,53 +121,41 @@ class Upload(MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_drop: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_drop: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Upload": @@ -227,53 +206,41 @@ class StyledUpload(Upload): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_drop: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_drop: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "StyledUpload": @@ -324,53 +291,41 @@ class UploadNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_drop: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_drop: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "StyledUpload": diff --git a/reflex/components/datadisplay/code.py b/reflex/components/datadisplay/code.py index 47cba3736..779d4c5d3 100644 --- a/reflex/components/datadisplay/code.py +++ b/reflex/components/datadisplay/code.py @@ -2,9 +2,10 @@ from __future__ import annotations -import re from typing import Dict, Literal, Optional, Union +from typing_extensions import get_args + from reflex.components.component import Component from reflex.components.core.cond import color_mode_cond from reflex.components.lucide.icon import Icon @@ -12,6 +13,7 @@ from reflex.components.radix.themes.components.button import Button from reflex.components.radix.themes.layout.box import Box from reflex.constants.colors import Color from reflex.event import set_clipboard +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style from reflex.utils import format from reflex.utils.imports import ImportDict, ImportVar @@ -349,6 +351,20 @@ LiteralCodeLanguage = Literal[ ] +def replace_quotes_with_camel_case(value: str) -> str: + """Replaces quotes in the given string with camel case format. + + Args: + value (str): The string to be processed. + + Returns: + str: The processed string with quotes replaced by camel case. + """ + for theme in get_args(LiteralCodeBlockTheme): + value = value.replace(f'"{theme}"', format.to_camel_case(theme)) + return value + + class CodeBlock(Component): """A code block.""" @@ -389,32 +405,42 @@ class CodeBlock(Component): The import dict. """ imports_: ImportDict = {} - themes = re.findall(r"`(.*?)`", self.theme._var_name) - if not themes: - themes = [self.theme._var_name] + + themeString = str(self.theme) + + selected_themes = [] + + for possibleTheme in get_args(LiteralCodeBlockTheme): + if format.to_camel_case(possibleTheme) in themeString: + selected_themes.append(possibleTheme) + if possibleTheme in themeString: + selected_themes.append(possibleTheme) + + selected_themes = sorted(set(map(self.convert_theme_name, selected_themes))) imports_.update( { - f"react-syntax-highlighter/dist/cjs/styles/prism/{self.convert_theme_name(theme)}": [ + f"react-syntax-highlighter/dist/cjs/styles/prism/{theme}": [ ImportVar( - tag=format.to_camel_case(self.convert_theme_name(theme)), + tag=format.to_camel_case(theme), is_default=True, install=False, ) ] - for theme in themes + for theme in selected_themes } ) if ( self.language is not None - and self.language._var_name in LiteralCodeLanguage.__args__ # type: ignore + and (language_without_quotes := str(self.language).replace('"', "")) + in LiteralCodeLanguage.__args__ # type: ignore ): imports_[ - f"react-syntax-highlighter/dist/cjs/languages/prism/{self.language._var_name}" + f"react-syntax-highlighter/dist/cjs/languages/prism/{language_without_quotes}" ] = [ ImportVar( - tag=format.to_camel_case(self.language._var_name), + tag=format.to_camel_case(language_without_quotes), is_default=True, install=False, ) @@ -425,9 +451,10 @@ class CodeBlock(Component): def _get_custom_code(self) -> Optional[str]: if ( self.language is not None - and self.language._var_name in LiteralCodeLanguage.__args__ # type: ignore + and (language_without_quotes := str(self.language).replace('"', "")) + in LiteralCodeLanguage.__args__ # type: ignore ): - return f"{self.alias}.registerLanguage('{self.language._var_name}', {format.to_camel_case(self.language._var_name)})" + return f"{self.alias}.registerLanguage('{language_without_quotes}', {format.to_camel_case(language_without_quotes)})" @classmethod def create( @@ -453,7 +480,10 @@ class CodeBlock(Component): if "theme" not in props: # Default color scheme responds to global color mode. - props["theme"] = color_mode_cond(light="one-light", dark="one-dark") + props["theme"] = color_mode_cond( + light=ImmutableVar.create_safe("oneLight"), + dark=ImmutableVar.create_safe("oneDark"), + ) # react-syntax-highlighter doesnt have an explicit "light" or "dark" theme so we use one-light and one-dark # themes respectively to ensure code compatibility. @@ -484,7 +514,7 @@ class CodeBlock(Component): if children: props["code"] = children[0] if not isinstance(props["code"], Var): - props["code"] = Var.create(props["code"], _var_is_string=True) + props["code"] = LiteralVar.create(props["code"]) # Create the component. code_block = super().create( @@ -503,18 +533,15 @@ class CodeBlock(Component): def _render(self): out = super()._render() - predicate, qmark, value = self.theme._var_name.partition("?") - out.add_props( - style=Var.create( - format.to_camel_case(f"{predicate}{qmark}{value.replace('`', '')}"), - _var_is_local=False, - _var_is_string=False, - ) - ).remove_props("theme", "code") - if self.code is not None: - out.special_props.add( - Var.create_safe(f"children={str(self.code)}", _var_is_string=False) - ) + + theme = self.theme._replace( + _var_name=replace_quotes_with_camel_case(str(self.theme)) + ) + + out.add_props(style=theme).remove_props("theme", "code").add_props( + children=self.code + ) + return out @staticmethod diff --git a/reflex/components/datadisplay/code.pyi b/reflex/components/datadisplay/code.pyi index a60838b8e..015cc0708 100644 --- a/reflex/components/datadisplay/code.pyi +++ b/reflex/components/datadisplay/code.pyi @@ -10,7 +10,7 @@ from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralCodeBlockTheme = Literal[ "a11y-dark", @@ -341,6 +341,8 @@ LiteralCodeLanguage = Literal[ "zig", ] +def replace_quotes_with_camel_case(value: str) -> str: ... + class CodeBlock(Component): def add_imports(self) -> ImportDict: ... @overload @@ -1030,50 +1032,40 @@ class CodeBlock(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CodeBlock": diff --git a/reflex/components/datadisplay/dataeditor.py b/reflex/components/datadisplay/dataeditor.py index c6d9c1981..f3296e0b7 100644 --- a/reflex/components/datadisplay/dataeditor.py +++ b/reflex/components/datadisplay/dataeditor.py @@ -9,6 +9,7 @@ from reflex.base import Base from reflex.components.component import Component, NoSSRComponent from reflex.components.literals import LiteralRowMarker from reflex.event import EventHandler +from reflex.ivars.base import ImmutableVar from reflex.utils import console, format, types from reflex.utils.imports import ImportDict, ImportVar from reflex.utils.serializers import serializer @@ -293,9 +294,7 @@ class DataEditor(NoSSRComponent): # Define the name of the getData callback associated with this component and assign to get_cell_content. data_callback = f"getData_{editor_id}" - self.get_cell_content = Var.create( - data_callback, _var_is_local=False, _var_is_string=False - ) # type: ignore + self.get_cell_content = ImmutableVar.create(data_callback) # type: ignore code = [f"function {data_callback}([col, row])" "{"] diff --git a/reflex/components/datadisplay/dataeditor.pyi b/reflex/components/datadisplay/dataeditor.pyi index 21ee461c3..b40890b73 100644 --- a/reflex/components/datadisplay/dataeditor.pyi +++ b/reflex/components/datadisplay/dataeditor.pyi @@ -12,7 +12,7 @@ from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict from reflex.utils.serializers import serializer -from reflex.vars import BaseVar, Var +from reflex.vars import Var class GridColumnIcons(Enum): Array = "array" @@ -135,98 +135,86 @@ class DataEditor(NoSSRComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_cell_activated: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_cell_clicked: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_cell_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_cell_edited: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_column_resize: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_delete: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_delete: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_finished_editing: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_group_header_clicked: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_group_header_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_group_header_renamed: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_header_clicked: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_header_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_header_menu_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_item_hovered: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_row_appended: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_selection_cleared: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataEditor": diff --git a/reflex/components/el/__init__.py b/reflex/components/el/__init__.py index 9fe1d89cd..750e65dba 100644 --- a/reflex/components/el/__init__.py +++ b/reflex/components/el/__init__.py @@ -10,7 +10,6 @@ _SUBMODULES: set[str] = {"elements"} _SUBMOD_ATTRS: dict[str, list[str]] = { f"elements.{k}": v for k, v in elements._MAPPING.items() } -_PYRIGHT_IGNORE_IMPORTS = elements._PYRIGHT_IGNORE_IMPORTS __getattr__, __dir__, __all__ = lazy_loader.attach( __name__, diff --git a/reflex/components/el/__init__.pyi b/reflex/components/el/__init__.pyi index d312db84e..adf657b7e 100644 --- a/reflex/components/el/__init__.pyi +++ b/reflex/components/el/__init__.pyi @@ -3,7 +3,6 @@ # This file was generated by `reflex/utils/pyi_generator.py`! # ------------------------------------------------------ -from . import elements from .elements.forms import Button as Button from .elements.forms import Fieldset as Fieldset from .elements.forms import Form as Form @@ -88,36 +87,28 @@ from .elements.inline import u as u from .elements.inline import wbr as wbr from .elements.media import Area as Area from .elements.media import Audio as Audio -from .elements.media import Defs as Defs from .elements.media import Embed as Embed from .elements.media import Iframe as Iframe from .elements.media import Img as Img -from .elements.media import LinearGradient as LinearGradient from .elements.media import Map as Map from .elements.media import Object as Object -from .elements.media import Path as Path from .elements.media import Picture as Picture from .elements.media import Portal as Portal from .elements.media import Source as Source -from .elements.media import Stop as Stop from .elements.media import Svg as Svg from .elements.media import Track as Track from .elements.media import Video as Video from .elements.media import area as area from .elements.media import audio as audio -from .elements.media import defs as defs # type: ignore from .elements.media import embed as embed from .elements.media import iframe as iframe from .elements.media import image as image from .elements.media import img as img -from .elements.media import lineargradient as lineargradient # type: ignore from .elements.media import map as map from .elements.media import object as object -from .elements.media import path as path # type: ignore from .elements.media import picture as picture from .elements.media import portal as portal from .elements.media import source as source -from .elements.media import stop as stop # type: ignore from .elements.media import svg as svg from .elements.media import track as track from .elements.media import video as video @@ -231,5 +222,3 @@ from .elements.typography import ol as ol from .elements.typography import p as p from .elements.typography import pre as pre from .elements.typography import ul as ul - -_PYRIGHT_IGNORE_IMPORTS = elements._PYRIGHT_IGNORE_IMPORTS diff --git a/reflex/components/el/element.pyi b/reflex/components/el/element.pyi index ce87335c3..f18d9008c 100644 --- a/reflex/components/el/element.pyi +++ b/reflex/components/el/element.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Element(Component): @overload @@ -22,50 +22,40 @@ class Element(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Element": diff --git a/reflex/components/el/elements/__init__.py b/reflex/components/el/elements/__init__.py index 024ae8c3d..17fdb77ca 100644 --- a/reflex/components/el/elements/__init__.py +++ b/reflex/components/el/elements/__init__.py @@ -65,11 +65,6 @@ _MAPPING = { "portal", "source", "svg", - "defs", - "lineargradient", - "LinearGradient", - "stop", - "path", ], "metadata": [ "base", @@ -130,13 +125,12 @@ _MAPPING = { } -EXCLUDE = ["del_", "Del", "image", "lineargradient", "LinearGradient"] +EXCLUDE = ["del_", "Del", "image"] for _, v in _MAPPING.items(): v.extend([mod.capitalize() for mod in v if mod not in EXCLUDE]) _SUBMOD_ATTRS: dict[str, list[str]] = _MAPPING -_PYRIGHT_IGNORE_IMPORTS = ["stop", "lineargradient", "path", "defs"] __getattr__, __dir__, __all__ = lazy_loader.attach( __name__, submod_attrs=_SUBMOD_ATTRS, diff --git a/reflex/components/el/elements/__init__.pyi b/reflex/components/el/elements/__init__.pyi index 4f218f361..b35e70dd2 100644 --- a/reflex/components/el/elements/__init__.pyi +++ b/reflex/components/el/elements/__init__.pyi @@ -87,36 +87,28 @@ from .inline import u as u from .inline import wbr as wbr from .media import Area as Area from .media import Audio as Audio -from .media import Defs as Defs from .media import Embed as Embed from .media import Iframe as Iframe from .media import Img as Img -from .media import LinearGradient as LinearGradient from .media import Map as Map from .media import Object as Object -from .media import Path as Path from .media import Picture as Picture from .media import Portal as Portal from .media import Source as Source -from .media import Stop as Stop from .media import Svg as Svg from .media import Track as Track from .media import Video as Video from .media import area as area from .media import audio as audio -from .media import defs as defs # type: ignore from .media import embed as embed from .media import iframe as iframe from .media import image as image from .media import img as img -from .media import lineargradient as lineargradient # type: ignore from .media import map as map from .media import object as object -from .media import path as path # type: ignore from .media import picture as picture from .media import portal as portal from .media import source as source -from .media import stop as stop # type: ignore from .media import svg as svg from .media import track as track from .media import video as video @@ -292,11 +284,6 @@ _MAPPING = { "portal", "source", "svg", - "defs", - "lineargradient", - "LinearGradient", - "stop", - "path", ], "metadata": ["base", "head", "link", "meta", "title", "style"], "other": ["details", "dialog", "summary", "slot", "template", "math", "html"], @@ -348,7 +335,6 @@ _MAPPING = { "Del", ], } -EXCLUDE = ["del_", "Del", "image", "lineargradient", "LinearGradient"] +EXCLUDE = ["del_", "Del", "image"] for _, v in _MAPPING.items(): v.extend([mod.capitalize() for mod in v if mod not in EXCLUDE]) -_PYRIGHT_IGNORE_IMPORTS = ["stop", "lineargradient", "path", "defs"] diff --git a/reflex/components/el/elements/base.pyi b/reflex/components/el/elements/base.pyi index 14ee5b62c..d802cc2ee 100644 --- a/reflex/components/el/elements/base.pyi +++ b/reflex/components/el/elements/base.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.el.element import Element from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class BaseHTML(Element): @overload @@ -46,50 +46,40 @@ class BaseHTML(Element): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "BaseHTML": diff --git a/reflex/components/el/elements/forms.py b/reflex/components/el/elements/forms.py index cdad212aa..f6ad10162 100644 --- a/reflex/components/el/elements/forms.py +++ b/reflex/components/el/elements/forms.py @@ -11,13 +11,14 @@ from reflex.components.el.element import Element from reflex.components.tags.tag import Tag from reflex.constants import Dirs, EventTriggers from reflex.event import EventChain, EventHandler +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.utils.format import format_event_chain from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var, VarData from .base import BaseHTML -FORM_DATA = Var.create("form_data", _var_is_string=False) +FORM_DATA = ImmutableVar.create("form_data") HANDLE_SUBMIT_JS_JINJA2 = Environment().from_string( """ const handleSubmit_{{ handle_submit_unique_name }} = useCallback((ev) => { @@ -184,7 +185,7 @@ class Form(BaseHTML): HANDLE_SUBMIT_JS_JINJA2.render( handle_submit_unique_name=self.handle_submit_unique_name, form_data=FORM_DATA, - field_ref_mapping=str(Var.create_safe(self._get_form_refs())), + field_ref_mapping=str(LiteralVar.create(self._get_form_refs())), on_submit_event_chain=format_event_chain( self.event_triggers[EventTriggers.ON_SUBMIT] ), @@ -197,7 +198,7 @@ class Form(BaseHTML): if EventTriggers.ON_SUBMIT in self.event_triggers: render_tag.add_props( **{ - EventTriggers.ON_SUBMIT: BaseVar( + EventTriggers.ON_SUBMIT: ImmutableVar( _var_name=f"handleSubmit_{self.handle_submit_unique_name}", _var_type=EventChain, ) @@ -212,21 +213,18 @@ class Form(BaseHTML): # when ref start with refs_ it's an array of refs, so we need different method # to collect data if ref.startswith("refs_"): - ref_var = Var.create_safe(ref[:-3], _var_is_string=False).as_ref() - form_refs[ref[5:-3]] = Var.create_safe( + ref_var = ImmutableVar.create_safe(ref[:-3]).as_ref() + form_refs[ref[len("refs_") : -3]] = ImmutableVar.create_safe( f"getRefValues({str(ref_var)})", - _var_is_local=False, - _var_is_string=False, - _var_data=ref_var._var_data, + _var_data=VarData.merge(ref_var._get_all_var_data()), ) else: - ref_var = Var.create_safe(ref, _var_is_string=False).as_ref() - form_refs[ref[4:]] = Var.create_safe( + ref_var = ImmutableVar.create_safe(ref).as_ref() + form_refs[ref[4:]] = ImmutableVar.create_safe( f"getRefValue({str(ref_var)})", - _var_is_local=False, - _var_is_string=False, - _var_data=ref_var._var_data, + _var_data=VarData.merge(ref_var._get_all_var_data()), ) + # print(repr(form_refs)) return form_refs def _get_vars(self, include_children: bool = True) -> Iterator[Var]: @@ -503,7 +501,7 @@ AUTO_HEIGHT_JS = """ const autoHeightOnInput = (e, is_enabled) => { if (is_enabled) { const el = e.target; - el.style.overflowY = "hidden"; + el.style.overflowY = "scroll"; el.style.height = "auto"; el.style.height = (e.target.scrollHeight) + "px"; if (el.form && !el.form.data_resize_on_reset) { @@ -631,7 +629,7 @@ class Textarea(BaseHTML): f"(e) => enterKeySubmitOnKeyDown(e, {self.enter_key_submit._var_name_unwrapped})", _var_is_local=False, _var_is_string=False, - _var_data=self.enter_key_submit._var_data, + _var_data=VarData.merge(self.enter_key_submit._get_all_var_data()), ) ) if self.auto_height is not None: @@ -640,7 +638,7 @@ class Textarea(BaseHTML): f"(e) => autoHeightOnInput(e, {self.auto_height._var_name_unwrapped})", _var_is_local=False, _var_is_string=False, - _var_data=self.auto_height._var_data, + _var_data=VarData.merge(self.auto_height._get_all_var_data()), ) ) return tag diff --git a/reflex/components/el/elements/forms.pyi b/reflex/components/el/elements/forms.pyi index 31a56e9be..7eca3f854 100644 --- a/reflex/components/el/elements/forms.pyi +++ b/reflex/components/el/elements/forms.pyi @@ -9,13 +9,14 @@ from jinja2 import Environment from reflex.components.el.element import Element from reflex.event import EventHandler, EventSpec +from reflex.ivars.base import ImmutableVar from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML -FORM_DATA = Var.create("form_data", _var_is_string=False) +FORM_DATA = ImmutableVar.create("form_data") HANDLE_SUBMIT_JS_JINJA2 = Environment().from_string( "\n const handleSubmit_{{ handle_submit_unique_name }} = useCallback((ev) => {\n const $form = ev.target\n ev.preventDefault()\n const {{ form_data }} = {...Object.fromEntries(new FormData($form).entries()), ...{{ field_ref_mapping }}}\n\n {{ on_submit_event_chain }}\n\n if ({{ reset_on_submit }}) {\n $form.reset()\n }\n })\n " ) @@ -71,50 +72,40 @@ class Button(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Button": @@ -198,50 +189,40 @@ class Datalist(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Datalist": @@ -293,50 +274,40 @@ class Fieldset(Element): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Fieldset": @@ -411,53 +382,41 @@ class Form(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_submit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_submit: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Form": @@ -583,59 +542,45 @@ class Input(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_key_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_key_up: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Input": @@ -743,50 +688,40 @@ class Label(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Label": @@ -861,50 +796,40 @@ class Legend(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Legend": @@ -984,50 +909,40 @@ class Meter(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Meter": @@ -1109,50 +1024,40 @@ class Optgroup(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Optgroup": @@ -1231,50 +1136,40 @@ class Option(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Option": @@ -1354,50 +1249,40 @@ class Output(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Output": @@ -1476,50 +1361,40 @@ class Progress(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Progress": @@ -1605,53 +1480,41 @@ class Select(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Select": @@ -1696,7 +1559,7 @@ class Select(BaseHTML): """ ... -AUTO_HEIGHT_JS = '\nconst autoHeightOnInput = (e, is_enabled) => {\n if (is_enabled) {\n const el = e.target;\n el.style.overflowY = "hidden";\n el.style.height = "auto";\n el.style.height = (e.target.scrollHeight) + "px";\n if (el.form && !el.form.data_resize_on_reset) {\n el.form.addEventListener("reset", () => window.setTimeout(() => autoHeightOnInput(e, is_enabled), 0))\n el.form.data_resize_on_reset = true;\n }\n }\n}\n' +AUTO_HEIGHT_JS = '\nconst autoHeightOnInput = (e, is_enabled) => {\n if (is_enabled) {\n const el = e.target;\n el.style.overflowY = "scroll";\n el.style.height = "auto";\n el.style.height = (e.target.scrollHeight) + "px";\n if (el.form && !el.form.data_resize_on_reset) {\n el.form.addEventListener("reset", () => window.setTimeout(() => autoHeightOnInput(e, is_enabled), 0))\n el.form.data_resize_on_reset = true;\n }\n }\n}\n' ENTER_KEY_SUBMIT_JS = "\nconst enterKeySubmitOnKeyDown = (e, is_enabled) => {\n if (is_enabled && e.which === 13 && !e.shiftKey) {\n e.preventDefault();\n if (!e.repeat) {\n if (e.target.form) {\n e.target.form.requestSubmit();\n }\n }\n }\n}\n" class Textarea(BaseHTML): @@ -1754,59 +1617,45 @@ class Textarea(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_key_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_key_up: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Textarea": diff --git a/reflex/components/el/elements/inline.pyi b/reflex/components/el/elements/inline.pyi index c4cd4286f..dfddf5f10 100644 --- a/reflex/components/el/elements/inline.pyi +++ b/reflex/components/el/elements/inline.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -58,50 +58,40 @@ class A(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "A": @@ -183,50 +173,40 @@ class Abbr(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Abbr": @@ -299,50 +279,40 @@ class B(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "B": @@ -415,50 +385,40 @@ class Bdi(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Bdi": @@ -531,50 +491,40 @@ class Bdo(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Bdo": @@ -647,50 +597,40 @@ class Br(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Br": @@ -763,50 +703,40 @@ class Cite(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Cite": @@ -879,50 +809,40 @@ class Code(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Code": @@ -996,50 +916,40 @@ class Data(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Data": @@ -1113,50 +1023,40 @@ class Dfn(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Dfn": @@ -1229,50 +1129,40 @@ class Em(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Em": @@ -1345,50 +1235,40 @@ class I(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "I": @@ -1461,50 +1341,40 @@ class Kbd(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Kbd": @@ -1577,50 +1447,40 @@ class Mark(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Mark": @@ -1694,50 +1554,40 @@ class Q(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Q": @@ -1811,50 +1661,40 @@ class Rp(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Rp": @@ -1927,50 +1767,40 @@ class Rt(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Rt": @@ -2043,50 +1873,40 @@ class Ruby(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Ruby": @@ -2159,50 +1979,40 @@ class S(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "S": @@ -2275,50 +2085,40 @@ class Samp(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Samp": @@ -2391,50 +2191,40 @@ class Small(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Small": @@ -2507,50 +2297,40 @@ class Span(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Span": @@ -2623,50 +2403,40 @@ class Strong(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Strong": @@ -2739,50 +2509,40 @@ class Sub(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Sub": @@ -2855,50 +2615,40 @@ class Sup(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Sup": @@ -2972,50 +2722,40 @@ class Time(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Time": @@ -3089,50 +2829,40 @@ class U(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "U": @@ -3205,50 +2935,40 @@ class Wbr(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Wbr": diff --git a/reflex/components/el/elements/media.py b/reflex/components/el/elements/media.py index b2bdc9e6f..7f006bf65 100644 --- a/reflex/components/el/elements/media.py +++ b/reflex/components/el/elements/media.py @@ -4,7 +4,6 @@ from typing import Any, Union from reflex import Component, ComponentNamespace from reflex.constants.colors import Color -from reflex.utils import console from reflex.vars import Var as Var from .base import BaseHTML @@ -445,23 +444,3 @@ picture = Picture.create portal = Portal.create source = Source.create svg = SVG() - - -def __getattr__(name: str): - if name in ("defs", "lineargradient", "stop", "path"): - console.deprecate( - f"`rx.el.{name}`", - reason=f"use `rx.el.svg.{'linear_gradient' if name =='lineargradient' else name}`", - deprecation_version="0.5.8", - removal_version="0.6.0", - ) - return ( - LinearGradient.create - if name == "lineargradient" - else globals()[name.capitalize()].create - ) - - try: - return globals()[name] - except KeyError: - raise AttributeError(f"module '{__name__} has no attribute '{name}'") from None diff --git a/reflex/components/el/elements/media.pyi b/reflex/components/el/elements/media.pyi index ba5f14137..cf673ddf9 100644 --- a/reflex/components/el/elements/media.pyi +++ b/reflex/components/el/elements/media.pyi @@ -9,7 +9,7 @@ from reflex import ComponentNamespace from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -62,50 +62,40 @@ class Area(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Area": @@ -199,50 +189,40 @@ class Audio(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Audio": @@ -341,50 +321,40 @@ class Img(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Img": @@ -471,50 +441,40 @@ class Map(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Map": @@ -593,50 +553,40 @@ class Track(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Track": @@ -728,50 +678,40 @@ class Video(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Video": @@ -856,50 +796,40 @@ class Embed(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Embed": @@ -985,50 +915,40 @@ class Iframe(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Iframe": @@ -1115,50 +1035,40 @@ class Object(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Object": @@ -1236,50 +1146,40 @@ class Picture(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Picture": @@ -1352,50 +1252,40 @@ class Portal(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Portal": @@ -1473,50 +1363,40 @@ class Source(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Source": @@ -1597,50 +1477,40 @@ class Svg(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Svg": @@ -1720,50 +1590,40 @@ class Circle(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Circle": @@ -1847,50 +1707,40 @@ class Rect(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Rect": @@ -1972,50 +1822,40 @@ class Polygon(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Polygon": @@ -2090,50 +1930,40 @@ class Defs(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Defs": @@ -2213,50 +2043,40 @@ class LinearGradient(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "LinearGradient": @@ -2343,50 +2163,40 @@ class Stop(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Stop": @@ -2463,50 +2273,40 @@ class Path(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Path": @@ -2589,50 +2389,40 @@ class SVG(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Svg": diff --git a/reflex/components/el/elements/metadata.pyi b/reflex/components/el/elements/metadata.pyi index e08c1d723..cb7e1dca9 100644 --- a/reflex/components/el/elements/metadata.pyi +++ b/reflex/components/el/elements/metadata.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.el.element import Element from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -50,50 +50,40 @@ class Base(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Base": @@ -166,50 +156,40 @@ class Head(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Head": @@ -295,50 +275,40 @@ class Link(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Link": @@ -424,50 +394,40 @@ class Meta(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Meta": @@ -520,50 +480,40 @@ class Title(Element): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Title": @@ -597,50 +547,40 @@ class StyleEl(Element): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "StyleEl": diff --git a/reflex/components/el/elements/other.pyi b/reflex/components/el/elements/other.pyi index 6dc5d0aa1..89b50b085 100644 --- a/reflex/components/el/elements/other.pyi +++ b/reflex/components/el/elements/other.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -48,50 +48,40 @@ class Details(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Details": @@ -166,50 +156,40 @@ class Dialog(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Dialog": @@ -283,50 +263,40 @@ class Summary(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Summary": @@ -399,50 +369,40 @@ class Slot(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Slot": @@ -515,50 +475,40 @@ class Template(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Template": @@ -631,50 +581,40 @@ class Math(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Math": @@ -748,50 +688,40 @@ class Html(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Html": diff --git a/reflex/components/el/elements/scripts.pyi b/reflex/components/el/elements/scripts.pyi index d7858dde8..9923d8c6b 100644 --- a/reflex/components/el/elements/scripts.pyi +++ b/reflex/components/el/elements/scripts.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -47,50 +47,40 @@ class Canvas(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Canvas": @@ -163,50 +153,40 @@ class Noscript(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Noscript": @@ -292,50 +272,40 @@ class Script(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Script": diff --git a/reflex/components/el/elements/sectioning.pyi b/reflex/components/el/elements/sectioning.pyi index a6ea47d9c..2d1cc457d 100644 --- a/reflex/components/el/elements/sectioning.pyi +++ b/reflex/components/el/elements/sectioning.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -47,50 +47,40 @@ class Body(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Body": @@ -163,50 +153,40 @@ class Address(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Address": @@ -279,50 +259,40 @@ class Article(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Article": @@ -395,50 +365,40 @@ class Aside(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Aside": @@ -511,50 +471,40 @@ class Footer(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Footer": @@ -627,50 +577,40 @@ class Header(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Header": @@ -743,50 +683,40 @@ class H1(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H1": @@ -859,50 +789,40 @@ class H2(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H2": @@ -975,50 +895,40 @@ class H3(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H3": @@ -1091,50 +1001,40 @@ class H4(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H4": @@ -1207,50 +1107,40 @@ class H5(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H5": @@ -1323,50 +1213,40 @@ class H6(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "H6": @@ -1439,50 +1319,40 @@ class Main(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Main": @@ -1555,50 +1425,40 @@ class Nav(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Nav": @@ -1671,50 +1531,40 @@ class Section(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Section": diff --git a/reflex/components/el/elements/tables.pyi b/reflex/components/el/elements/tables.pyi index d06d0cf6d..39ca144b8 100644 --- a/reflex/components/el/elements/tables.pyi +++ b/reflex/components/el/elements/tables.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -48,50 +48,40 @@ class Caption(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Caption": @@ -167,50 +157,40 @@ class Col(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Col": @@ -287,50 +267,40 @@ class Colgroup(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Colgroup": @@ -407,50 +377,40 @@ class Table(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Table": @@ -526,50 +486,40 @@ class Tbody(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Tbody": @@ -647,50 +597,40 @@ class Td(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Td": @@ -768,50 +708,40 @@ class Tfoot(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Tfoot": @@ -890,50 +820,40 @@ class Th(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Th": @@ -1012,50 +932,40 @@ class Thead(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Thead": @@ -1130,50 +1040,40 @@ class Tr(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Tr": diff --git a/reflex/components/el/elements/typography.pyi b/reflex/components/el/elements/typography.pyi index a6deb12e4..926376441 100644 --- a/reflex/components/el/elements/typography.pyi +++ b/reflex/components/el/elements/typography.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import BaseHTML @@ -48,50 +48,40 @@ class Blockquote(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Blockquote": @@ -165,50 +155,40 @@ class Dd(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Dd": @@ -281,50 +261,40 @@ class Div(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Div": @@ -397,50 +367,40 @@ class Dl(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Dl": @@ -513,50 +473,40 @@ class Dt(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Dt": @@ -629,50 +579,40 @@ class Figcaption(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Figcaption": @@ -746,50 +686,40 @@ class Hr(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Hr": @@ -863,50 +793,40 @@ class Li(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Li": @@ -980,50 +900,40 @@ class Menu(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Menu": @@ -1100,50 +1010,40 @@ class Ol(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Ol": @@ -1219,50 +1119,40 @@ class P(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "P": @@ -1335,50 +1225,40 @@ class Pre(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Pre": @@ -1451,50 +1331,40 @@ class Ul(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Ul": @@ -1569,50 +1439,40 @@ class Ins(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Ins": @@ -1689,50 +1549,40 @@ class Del(BaseHTML): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Del": diff --git a/reflex/components/gridjs/datatable.py b/reflex/components/gridjs/datatable.py index 6d856cf45..47069843b 100644 --- a/reflex/components/gridjs/datatable.py +++ b/reflex/components/gridjs/datatable.py @@ -6,10 +6,11 @@ from typing import Any, Dict, List, Union from reflex.components.component import Component from reflex.components.tags import Tag +from reflex.ivars.base import ImmutableComputedVar from reflex.utils import types from reflex.utils.imports import ImportDict from reflex.utils.serializers import serialize -from reflex.vars import BaseVar, ComputedVar, Var +from reflex.vars import ComputedVar, Var class Gridjs(Component): @@ -65,14 +66,17 @@ class DataTable(Gridjs): # The annotation should be provided if data is a computed var. We need this to know how to # render pandas dataframes. - if isinstance(data, ComputedVar) and data._var_type == Any: + if ( + isinstance(data, (ComputedVar, ImmutableComputedVar)) + and data._var_type == Any + ): raise ValueError( "Annotation of the computed var assigned to the data field should be provided." ) if ( columns is not None - and isinstance(columns, ComputedVar) + and isinstance(columns, (ComputedVar, ImmutableComputedVar)) and columns._var_type == Any ): raise ValueError( @@ -97,6 +101,8 @@ class DataTable(Gridjs): "column field should be specified when the data field is a list type" ) + print("props", props) + # Create the component. return super().create( *children, @@ -113,17 +119,13 @@ class DataTable(Gridjs): def _render(self) -> Tag: if isinstance(self.data, Var) and types.is_dataframe(self.data._var_type): - self.columns = BaseVar( + self.columns = self.data._replace( _var_name=f"{self.data._var_name}.columns", _var_type=List[Any], - _var_full_name_needs_state_prefix=True, - _var_data=self.data._var_data, ) - self.data = BaseVar( + self.data = self.data._replace( _var_name=f"{self.data._var_name}.data", _var_type=List[List[Any]], - _var_full_name_needs_state_prefix=True, - _var_data=self.data._var_data, ) if types.is_dataframe(type(self.data)): # If given a pandas df break up the data and columns diff --git a/reflex/components/gridjs/datatable.pyi b/reflex/components/gridjs/datatable.pyi index ee8bf6f3a..8f0a427b1 100644 --- a/reflex/components/gridjs/datatable.pyi +++ b/reflex/components/gridjs/datatable.pyi @@ -9,7 +9,7 @@ from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Gridjs(Component): @overload @@ -23,50 +23,40 @@ class Gridjs(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Gridjs": @@ -105,50 +95,40 @@ class DataTable(Gridjs): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataTable": diff --git a/reflex/components/lucide/icon.py b/reflex/components/lucide/icon.py index e9cf9ab82..f593621d2 100644 --- a/reflex/components/lucide/icon.py +++ b/reflex/components/lucide/icon.py @@ -1,7 +1,7 @@ """Lucide Icon component.""" from reflex.components.component import Component -from reflex.utils import console, format +from reflex.utils import format from reflex.vars import Var @@ -36,19 +36,6 @@ class Icon(LucideIconComponent): Returns: The created component. """ - - def map_deprecated_icon_names_05(tag: str) -> str: - new_tag = RENAMED_ICONS_05.get(tag) - if new_tag is not None: - console.deprecate( - feature_name=f"icon {tag}", - reason=f"it was renamed upstream. Use {new_tag} instead.", - deprecation_version="0.4.6", - removal_version="0.6.0", - ) - return new_tag - return tag - if children: if len(children) == 1 and isinstance(children[0], str): props["tag"] = children[0] @@ -62,8 +49,7 @@ class Icon(LucideIconComponent): if ( not isinstance(props["tag"], str) - or map_deprecated_icon_names_05(format.to_snake_case(props["tag"])) - not in LUCIDE_ICON_LIST + or format.to_snake_case(props["tag"]) not in LUCIDE_ICON_LIST ): raise ValueError( f"Invalid icon tag: {props['tag']}. Please use one of the following: {', '.join(LUCIDE_ICON_LIST[0:25])}, ..." @@ -76,116 +62,6 @@ class Icon(LucideIconComponent): return super().create(*children, **props) -RENAMED_ICONS_05 = { - "activity_square": "square_activity", - "alert_circle": "circle_alert", - "alert_octagon": "octagon_alert", - "alert_triangle": "triangle_alert", - "arrow_down_circle": "circle_arrow_down", - "arrow_down_left_from_circle": "circle_arrow_out_down_left", - "arrow_down_left_from_square": "square_arrow_out_down_left", - "arrow_down_left_square": "square_arrow_down_left", - "arrow_down_right_from_circle": "circle_arrow_out_down_right", - "arrow_down_right_from_square": "square_arrow_out_down_right", - "arrow_down_right_square": "square_arrow_down_right", - "arrow_down_square": "square_arrow_down", - "arrow_left_circle": "circle_arrow_left", - "arrow_left_square": "square_arrow_left", - "arrow_right_circle": "circle_arrow_right", - "arrow_right_square": "square_arrow_right", - "arrow_up_circle": "circle_arrow_up", - "arrow_up_left_from_circle": "circle_arrow_out_up_left", - "arrow_up_left_from_square": "square_arrow_out_up_left", - "arrow_up_left_square": "square_arrow_up_left", - "arrow_up_right_from_circle": "circle_arrow_out_up_right", - "arrow_up_right_from_square": "square_arrow_out_up_right", - "arrow_up_right_square": "square_arrow_up_right", - "arrow_up_square": "square_arrow_up", - "asterisk_square": "square_asterisk", - "check_circle": "circle_check_big", - "check_circle_2": "circle_check", - "check_square": "square_check_big", - "check_square_2": "square_check", - "chevron_down_circle": "circle_chevron_down", - "chevron_down_square": "square_chevron_down", - "chevron_left_circle": "circle_chevron_left", - "chevron_left_square": "square_chevron_left", - "chevron_right_circle": "circle_chevron_right", - "chevron_right_square": "square_chevron_right", - "chevron_up_circle": "circle_chevron_up", - "chevron_up_square": "square_chevron_up", - "code_2": "code_xml", - "code_square": "square_code", - "contact_2": "contact_round", - "divide_circle": "circle_divide", - "divide_square": "square_divide", - "dot_square": "square_dot", - "download_cloud": "cloud_download", - "equal_square": "square_equal", - "form_input": "rectangle_ellipsis", - "function_square": "square_function", - "gantt_chart_square": "square_gantt_chart", - "gauge_circle": "circle_gauge", - "globe_2": "earth", - "help_circle": "circle_help", - "helping_hand": "hand_helping", - "ice_cream": "ice_cream_cone", - "ice_cream_2": "ice_cream_bowl", - "indent": "indent_increase", - "kanban_square": "square_kanban", - "kanban_square_dashed": "square_dashed_kanban", - "laptop_2": "laptop_minimal", - "library_square": "square_library", - "loader_2": "loader_circle", - "m_square": "square_m", - "menu_square": "square_menu", - "mic_2": "mic_vocal", - "minus_circle": "circle_minus", - "minus_square": "square_minus", - "more_horizontal": "ellipsis", - "more_vertical": "ellipsis_vertical", - "mouse_pointer_square": "square_mouse_pointer", - "mouse_pointer_square_dashed": "square_dashed_mouse_pointer", - "outdent": "indent_decrease", - "palm_tree": "tree_palm", - "parking_circle": "circle_parking", - "parking_circle_off": "circle_parking_off", - "parking_square": "square_parking", - "parking_square_off": "square_parking_off", - "pause_circle": "circle_pause", - "pause_octagon": "octagon_pause", - "percent_circle": "circle_percent", - "percent_diamond": "diamond_percent", - "percent_square": "square_percent", - "pi_square": "square_pi", - "pilcrow_square": "square_pilcrow", - "play_circle": "circle_play", - "play_square": "square_play", - "plus_circle": "circle_plus", - "plus_square": "square_plus", - "power_circle": "circle_power", - "power_square": "square_power", - "school_2": "university", - "scissors_square": "square_scissors", - "scissors_square_dashed_bottom": "square_bottom_dashed_scissors", - "sigma_square": "square_sigma", - "slash_circle": "circle_slash", - "sliders": "sliders_vertical", - "split_square_horizontal": "square_split_horizontal", - "split_square_vertical": "square_split_vertical", - "stop_circle": "circle_stop", - "subtitles": "captions", - "test_tube_2": "test_tube_diagonal", - "unlock": "lock_open", - "unlock_keyhole": "lock_keyhole_open", - "upload_cloud": "cloud_upload", - "wallet_2": "wallet_minimal", - "wand_2": "wand_sparkles", - "x_circle": "circle_x", - "x_octagon": "octagon_x", - "x_square": "square_x", -} - LUCIDE_ICON_LIST = [ "a_arrow_down", "a_arrow_up", diff --git a/reflex/components/lucide/icon.pyi b/reflex/components/lucide/icon.pyi index 7fc7ee38d..325322b45 100644 --- a/reflex/components/lucide/icon.pyi +++ b/reflex/components/lucide/icon.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class LucideIconComponent(Component): @overload @@ -22,50 +22,40 @@ class LucideIconComponent(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "LucideIconComponent": @@ -99,50 +89,40 @@ class Icon(LucideIconComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Icon": @@ -170,115 +150,6 @@ class Icon(LucideIconComponent): """ ... -RENAMED_ICONS_05 = { - "activity_square": "square_activity", - "alert_circle": "circle_alert", - "alert_octagon": "octagon_alert", - "alert_triangle": "triangle_alert", - "arrow_down_circle": "circle_arrow_down", - "arrow_down_left_from_circle": "circle_arrow_out_down_left", - "arrow_down_left_from_square": "square_arrow_out_down_left", - "arrow_down_left_square": "square_arrow_down_left", - "arrow_down_right_from_circle": "circle_arrow_out_down_right", - "arrow_down_right_from_square": "square_arrow_out_down_right", - "arrow_down_right_square": "square_arrow_down_right", - "arrow_down_square": "square_arrow_down", - "arrow_left_circle": "circle_arrow_left", - "arrow_left_square": "square_arrow_left", - "arrow_right_circle": "circle_arrow_right", - "arrow_right_square": "square_arrow_right", - "arrow_up_circle": "circle_arrow_up", - "arrow_up_left_from_circle": "circle_arrow_out_up_left", - "arrow_up_left_from_square": "square_arrow_out_up_left", - "arrow_up_left_square": "square_arrow_up_left", - "arrow_up_right_from_circle": "circle_arrow_out_up_right", - "arrow_up_right_from_square": "square_arrow_out_up_right", - "arrow_up_right_square": "square_arrow_up_right", - "arrow_up_square": "square_arrow_up", - "asterisk_square": "square_asterisk", - "check_circle": "circle_check_big", - "check_circle_2": "circle_check", - "check_square": "square_check_big", - "check_square_2": "square_check", - "chevron_down_circle": "circle_chevron_down", - "chevron_down_square": "square_chevron_down", - "chevron_left_circle": "circle_chevron_left", - "chevron_left_square": "square_chevron_left", - "chevron_right_circle": "circle_chevron_right", - "chevron_right_square": "square_chevron_right", - "chevron_up_circle": "circle_chevron_up", - "chevron_up_square": "square_chevron_up", - "code_2": "code_xml", - "code_square": "square_code", - "contact_2": "contact_round", - "divide_circle": "circle_divide", - "divide_square": "square_divide", - "dot_square": "square_dot", - "download_cloud": "cloud_download", - "equal_square": "square_equal", - "form_input": "rectangle_ellipsis", - "function_square": "square_function", - "gantt_chart_square": "square_gantt_chart", - "gauge_circle": "circle_gauge", - "globe_2": "earth", - "help_circle": "circle_help", - "helping_hand": "hand_helping", - "ice_cream": "ice_cream_cone", - "ice_cream_2": "ice_cream_bowl", - "indent": "indent_increase", - "kanban_square": "square_kanban", - "kanban_square_dashed": "square_dashed_kanban", - "laptop_2": "laptop_minimal", - "library_square": "square_library", - "loader_2": "loader_circle", - "m_square": "square_m", - "menu_square": "square_menu", - "mic_2": "mic_vocal", - "minus_circle": "circle_minus", - "minus_square": "square_minus", - "more_horizontal": "ellipsis", - "more_vertical": "ellipsis_vertical", - "mouse_pointer_square": "square_mouse_pointer", - "mouse_pointer_square_dashed": "square_dashed_mouse_pointer", - "outdent": "indent_decrease", - "palm_tree": "tree_palm", - "parking_circle": "circle_parking", - "parking_circle_off": "circle_parking_off", - "parking_square": "square_parking", - "parking_square_off": "square_parking_off", - "pause_circle": "circle_pause", - "pause_octagon": "octagon_pause", - "percent_circle": "circle_percent", - "percent_diamond": "diamond_percent", - "percent_square": "square_percent", - "pi_square": "square_pi", - "pilcrow_square": "square_pilcrow", - "play_circle": "circle_play", - "play_square": "square_play", - "plus_circle": "circle_plus", - "plus_square": "square_plus", - "power_circle": "circle_power", - "power_square": "square_power", - "school_2": "university", - "scissors_square": "square_scissors", - "scissors_square_dashed_bottom": "square_bottom_dashed_scissors", - "sigma_square": "square_sigma", - "slash_circle": "circle_slash", - "sliders": "sliders_vertical", - "split_square_horizontal": "square_split_horizontal", - "split_square_vertical": "square_split_vertical", - "stop_circle": "circle_stop", - "subtitles": "captions", - "test_tube_2": "test_tube_diagonal", - "unlock": "lock_open", - "unlock_keyhole": "lock_keyhole_open", - "upload_cloud": "cloud_upload", - "wallet_2": "wallet_minimal", - "wand_2": "wand_sparkles", - "x_circle": "circle_x", - "x_octagon": "octagon_x", - "x_square": "square_x", -} LUCIDE_ICON_LIST = [ "a_arrow_down", "a_arrow_up", diff --git a/reflex/components/markdown/markdown.py b/reflex/components/markdown/markdown.py index db38e7d0e..cd560d00b 100644 --- a/reflex/components/markdown/markdown.py +++ b/reflex/components/markdown/markdown.py @@ -17,29 +17,26 @@ from reflex.components.radix.themes.typography.heading import Heading from reflex.components.radix.themes.typography.link import Link from reflex.components.radix.themes.typography.text import Text from reflex.components.tags.tag import Tag +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.utils import types from reflex.utils.imports import ImportDict, ImportVar from reflex.vars import Var # Special vars used in the component map. -_CHILDREN = Var.create_safe("children", _var_is_local=False, _var_is_string=False) -_PROPS = Var.create_safe("...props", _var_is_local=False, _var_is_string=False) -_MOCK_ARG = Var.create_safe("", _var_is_string=False) +_CHILDREN = ImmutableVar.create_safe("children") +_PROPS = ImmutableVar.create_safe("...props") +_MOCK_ARG = ImmutableVar.create_safe("") # Special remark plugins. -_REMARK_MATH = Var.create_safe("remarkMath", _var_is_local=False, _var_is_string=False) -_REMARK_GFM = Var.create_safe("remarkGfm", _var_is_local=False, _var_is_string=False) -_REMARK_UNWRAP_IMAGES = Var.create_safe( - "remarkUnwrapImages", _var_is_local=False, _var_is_string=False -) -_REMARK_PLUGINS = Var.create_safe([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES]) +_REMARK_MATH = ImmutableVar.create_safe("remarkMath") +_REMARK_GFM = ImmutableVar.create_safe("remarkGfm") +_REMARK_UNWRAP_IMAGES = ImmutableVar.create_safe("remarkUnwrapImages") +_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES]) # Special rehype plugins. -_REHYPE_KATEX = Var.create_safe( - "rehypeKatex", _var_is_local=False, _var_is_string=False -) -_REHYPE_RAW = Var.create_safe("rehypeRaw", _var_is_local=False, _var_is_string=False) -_REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW]) +_REHYPE_KATEX = ImmutableVar.create_safe("rehypeKatex") +_REHYPE_RAW = ImmutableVar.create_safe("rehypeRaw") +_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW]) # These tags do NOT get props passed to them NO_PROPS_TAGS = ("ul", "ol", "li") @@ -173,7 +170,7 @@ class Markdown(Component): ), }, *[ - component(_MOCK_ARG)._get_imports() # type: ignore + component(_MOCK_ARG)._get_all_imports() # type: ignore for component in self.component_map.values() ], CodeBlock.create(theme="light")._get_imports(), # type: ignore, @@ -208,10 +205,11 @@ class Markdown(Component): children_prop = props.pop("children", None) if children_prop is not None: special_props.add( - Var.create_safe(f"children={str(children_prop)}", _var_is_string=False) + Var.create_safe( + f"children={{{str(children_prop)}}}", _var_is_string=False + ) ) children = [] - # Get the component. component = self.component_map[tag](*children, **props).set( special_props=special_props @@ -237,7 +235,7 @@ class Markdown(Component): The formatted component map. """ components = { - tag: f"{{({{node, {_CHILDREN._var_name}, {_PROPS._var_name}}}) => {self.format_component(tag)}}}" + tag: f"{{({{node, {_CHILDREN._var_name}, {_PROPS._var_name}}}) => ({self.format_component(tag)})}}" for tag in self.component_map } @@ -260,7 +258,7 @@ class Markdown(Component): return inline ? ( {self.format_component("code")} ) : ( - {self.format_component("codeblock", language=Var.create_safe("language", _var_is_local=False, _var_is_string=False))} + {self.format_component("codeblock", language=ImmutableVar.create_safe("language"))} ); }}}}""".replace("\n", " ") @@ -287,7 +285,7 @@ class Markdown(Component): function {self._get_component_map_name()} () {{ {formatted_hooks} return ( - {str(Var.create(self.format_component_map()))} + {str(ImmutableVar.create_safe(self.format_component_map()))} ) }} """ @@ -299,14 +297,10 @@ class Markdown(Component): .add_props( remark_plugins=_REMARK_PLUGINS, rehype_plugins=_REHYPE_PLUGINS, + components=ImmutableVar.create_safe( + f"{self._get_component_map_name()}()" + ), ) .remove_props("componentMap", "componentMapHash") ) - tag.special_props.add( - Var.create_safe( - f"components={{{self._get_component_map_name()}()}}", - _var_is_local=True, - _var_is_string=False, - ), - ) return tag diff --git a/reflex/components/markdown/markdown.pyi b/reflex/components/markdown/markdown.pyi index e0eb43454..299cb99ff 100644 --- a/reflex/components/markdown/markdown.pyi +++ b/reflex/components/markdown/markdown.pyi @@ -8,24 +8,21 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var -_CHILDREN = Var.create_safe("children", _var_is_local=False, _var_is_string=False) -_PROPS = Var.create_safe("...props", _var_is_local=False, _var_is_string=False) -_MOCK_ARG = Var.create_safe("", _var_is_string=False) -_REMARK_MATH = Var.create_safe("remarkMath", _var_is_local=False, _var_is_string=False) -_REMARK_GFM = Var.create_safe("remarkGfm", _var_is_local=False, _var_is_string=False) -_REMARK_UNWRAP_IMAGES = Var.create_safe( - "remarkUnwrapImages", _var_is_local=False, _var_is_string=False -) -_REMARK_PLUGINS = Var.create_safe([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES]) -_REHYPE_KATEX = Var.create_safe( - "rehypeKatex", _var_is_local=False, _var_is_string=False -) -_REHYPE_RAW = Var.create_safe("rehypeRaw", _var_is_local=False, _var_is_string=False) -_REHYPE_PLUGINS = Var.create_safe([_REHYPE_KATEX, _REHYPE_RAW]) +_CHILDREN = ImmutableVar.create_safe("children") +_PROPS = ImmutableVar.create_safe("...props") +_MOCK_ARG = ImmutableVar.create_safe("") +_REMARK_MATH = ImmutableVar.create_safe("remarkMath") +_REMARK_GFM = ImmutableVar.create_safe("remarkGfm") +_REMARK_UNWRAP_IMAGES = ImmutableVar.create_safe("remarkUnwrapImages") +_REMARK_PLUGINS = LiteralVar.create([_REMARK_MATH, _REMARK_GFM, _REMARK_UNWRAP_IMAGES]) +_REHYPE_KATEX = ImmutableVar.create_safe("rehypeKatex") +_REHYPE_RAW = ImmutableVar.create_safe("rehypeRaw") +_REHYPE_PLUGINS = LiteralVar.create([_REHYPE_KATEX, _REHYPE_RAW]) NO_PROPS_TAGS = ("ul", "ol", "li") @lru_cache @@ -45,50 +42,40 @@ class Markdown(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Markdown": diff --git a/reflex/components/moment/moment.pyi b/reflex/components/moment/moment.pyi index 5497a5336..05c7ffc96 100644 --- a/reflex/components/moment/moment.pyi +++ b/reflex/components/moment/moment.pyi @@ -10,7 +10,7 @@ from reflex.components.component import NoSSRComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var class MomentDelta(Base): years: Optional[int] @@ -56,53 +56,41 @@ class Moment(NoSSRComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Moment": diff --git a/reflex/components/next/base.pyi b/reflex/components/next/base.pyi index fd561fbec..c8b9934d8 100644 --- a/reflex/components/next/base.pyi +++ b/reflex/components/next/base.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class NextComponent(Component): ... @@ -24,50 +24,40 @@ class NextComponent(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "NextComponent": diff --git a/reflex/components/next/image.py b/reflex/components/next/image.py index 108d17452..817bf590a 100644 --- a/reflex/components/next/image.py +++ b/reflex/components/next/image.py @@ -102,8 +102,4 @@ class Image(NextComponent): # mysteriously, following `sizes` prop is needed to avoid blury images. props["sizes"] = "100vw" - src = props.get("src", None) - if src is not None and not isinstance(src, (Var)): - props["src"] = Var.create(value=src, _var_is_string=True) - return super().create(*children, **props) diff --git a/reflex/components/next/image.pyi b/reflex/components/next/image.pyi index a27a3420c..e6b902cb0 100644 --- a/reflex/components/next/image.pyi +++ b/reflex/components/next/image.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import NextComponent @@ -37,56 +37,42 @@ class Image(NextComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_load: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_load: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Image": diff --git a/reflex/components/next/link.pyi b/reflex/components/next/link.pyi index 06d138176..c25ca8258 100644 --- a/reflex/components/next/link.pyi +++ b/reflex/components/next/link.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class NextLink(Component): @overload @@ -24,50 +24,40 @@ class NextLink(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "NextLink": diff --git a/reflex/components/next/video.pyi b/reflex/components/next/video.pyi index eb28fab46..13b39a4f8 100644 --- a/reflex/components/next/video.pyi +++ b/reflex/components/next/video.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import NextComponent @@ -26,50 +26,40 @@ class Video(NextComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Video": diff --git a/reflex/components/plotly/plotly.pyi b/reflex/components/plotly/plotly.pyi index 219f113bc..c308e160f 100644 --- a/reflex/components/plotly/plotly.pyi +++ b/reflex/components/plotly/plotly.pyi @@ -10,7 +10,7 @@ from reflex.components.component import NoSSRComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils import console -from reflex.vars import BaseVar, Var +from reflex.vars import Var try: from plotly.graph_objects import Figure, layout @@ -46,103 +46,89 @@ class Plotly(NoSSRComponent): autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, on_after_plot: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animated: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animating_frame: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animation_interrupted: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_autosize: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_before_hover: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_button_clicked: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_deselect: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_hover: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_hover: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_redraw: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_redraw: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_relayout: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_relayouting: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_restyle: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_selected: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_selecting: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_transition_interrupted: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_transitioning: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_unhover: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Plotly": diff --git a/reflex/components/radix/__init__.pyi b/reflex/components/radix/__init__.pyi index b61659320..8ba6c242b 100644 --- a/reflex/components/radix/__init__.pyi +++ b/reflex/components/radix/__init__.pyi @@ -8,7 +8,6 @@ from . import themes as themes from .primitives.accordion import accordion as accordion from .primitives.drawer import drawer as drawer from .primitives.form import form as form -from .primitives.progress import progress as progress from .themes.base import theme as theme from .themes.base import theme_panel as theme_panel from .themes.color_mode import color_mode as color_mode @@ -31,6 +30,7 @@ from .themes.components.hover_card import hover_card as hover_card from .themes.components.icon_button import icon_button as icon_button from .themes.components.inset import inset as inset from .themes.components.popover import popover as popover +from .themes.components.progress import progress as progress from .themes.components.radio_cards import radio_cards as radio_cards from .themes.components.radio_group import radio as radio from .themes.components.radio_group import radio_group as radio_group diff --git a/reflex/components/radix/primitives/__init__.pyi b/reflex/components/radix/primitives/__init__.pyi index e7461e9a7..0fec0fc40 100644 --- a/reflex/components/radix/primitives/__init__.pyi +++ b/reflex/components/radix/primitives/__init__.pyi @@ -6,4 +6,3 @@ from .accordion import accordion as accordion from .drawer import drawer as drawer from .form import form as form -from .progress import progress as progress diff --git a/reflex/components/radix/primitives/accordion.py b/reflex/components/radix/primitives/accordion.py index b93bbf284..da32d747b 100644 --- a/reflex/components/radix/primitives/accordion.py +++ b/reflex/components/radix/primitives/accordion.py @@ -11,6 +11,7 @@ from reflex.components.lucide.icon import Icon from reflex.components.radix.primitives.base import RadixPrimitiveComponent from reflex.components.radix.themes.base import LiteralAccentColor, LiteralRadius from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.style import Style from reflex.vars import Var, get_uuid_string_var @@ -102,10 +103,10 @@ class AccordionRoot(AccordionComponent): radius: Var[LiteralRadius] # The time in milliseconds to animate open and close - duration: Var[int] = Var.create_safe(DEFAULT_ANIMATION_DURATION) + duration: Var[int] = LiteralVar.create(DEFAULT_ANIMATION_DURATION) # The easing function to use for the animation. - easing: Var[str] = Var.create_safe(DEFAULT_ANIMATION_EASING, _var_is_string=True) + easing: Var[str] = LiteralVar.create(DEFAULT_ANIMATION_EASING) # Whether to show divider lines between items. show_dividers: Var[bool] @@ -464,14 +465,12 @@ to { Returns: The style of the component. """ - slideDown = Var.create( + slideDown = LiteralVar.create( f"${{slideDown}} var(--animation-duration) var(--animation-easing)", - _var_is_string=True, ) - slideUp = Var.create( + slideUp = LiteralVar.create( f"${{slideUp}} var(--animation-duration) var(--animation-easing)", - _var_is_string=True, ) return { diff --git a/reflex/components/radix/primitives/accordion.pyi b/reflex/components/radix/primitives/accordion.pyi index 7cc1059ab..edf011183 100644 --- a/reflex/components/radix/primitives/accordion.pyi +++ b/reflex/components/radix/primitives/accordion.pyi @@ -10,7 +10,7 @@ from reflex.components.lucide.icon import Icon from reflex.components.radix.primitives.base import RadixPrimitiveComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralAccordionType = Literal["single", "multiple"] LiteralAccordionDir = Literal["ltr", "rtl"] @@ -101,50 +101,40 @@ class AccordionComponent(RadixPrimitiveComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionComponent": @@ -275,53 +265,43 @@ class AccordionRoot(AccordionComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_value_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionRoot": @@ -441,50 +421,40 @@ class AccordionItem(AccordionComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionItem": @@ -595,50 +565,40 @@ class AccordionHeader(AccordionComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionHeader": @@ -745,50 +705,40 @@ class AccordionTrigger(AccordionComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionTrigger": @@ -827,50 +777,40 @@ class AccordionIcon(Icon): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionIcon": @@ -974,50 +914,40 @@ class AccordionContent(AccordionComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AccordionContent": diff --git a/reflex/components/radix/primitives/base.pyi b/reflex/components/radix/primitives/base.pyi index 0ddea6cb5..a94b2263c 100644 --- a/reflex/components/radix/primitives/base.pyi +++ b/reflex/components/radix/primitives/base.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class RadixPrimitiveComponent(Component): @overload @@ -23,50 +23,40 @@ class RadixPrimitiveComponent(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixPrimitiveComponent": @@ -101,50 +91,40 @@ class RadixPrimitiveComponentWithClassName(RadixPrimitiveComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixPrimitiveComponentWithClassName": diff --git a/reflex/components/radix/primitives/drawer.pyi b/reflex/components/radix/primitives/drawer.pyi index dcbebfa15..c40bdf53d 100644 --- a/reflex/components/radix/primitives/drawer.pyi +++ b/reflex/components/radix/primitives/drawer.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.radix.primitives.base import RadixPrimitiveComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class DrawerComponent(RadixPrimitiveComponent): @overload @@ -24,50 +24,40 @@ class DrawerComponent(RadixPrimitiveComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerComponent": @@ -118,53 +108,43 @@ class DrawerRoot(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerRoot": @@ -208,50 +188,40 @@ class DrawerTrigger(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerTrigger": @@ -279,50 +249,40 @@ class DrawerPortal(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerPortal": @@ -357,65 +317,55 @@ class DrawerContent(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerContent": @@ -454,50 +404,40 @@ class DrawerOverlay(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerOverlay": @@ -532,50 +472,40 @@ class DrawerClose(DrawerTrigger): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerClose": @@ -603,50 +533,40 @@ class DrawerTitle(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerTitle": @@ -681,50 +601,40 @@ class DrawerDescription(DrawerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerDescription": @@ -780,53 +690,43 @@ class Drawer(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerRoot": diff --git a/reflex/components/radix/primitives/form.pyi b/reflex/components/radix/primitives/form.pyi index 43bd0bbd2..758630c4a 100644 --- a/reflex/components/radix/primitives/form.pyi +++ b/reflex/components/radix/primitives/form.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.el.elements.forms import Form as HTMLForm from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .base import RadixPrimitiveComponentWithClassName @@ -26,50 +26,40 @@ class FormComponent(RadixPrimitiveComponentWithClassName): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormComponent": @@ -144,56 +134,44 @@ class FormRoot(FormComponent, HTMLForm): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_clear_server_errors: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_submit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_submit: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormRoot": @@ -258,50 +236,40 @@ class FormField(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormField": @@ -339,50 +307,40 @@ class FormLabel(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormLabel": @@ -417,50 +375,40 @@ class FormControl(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormControl": @@ -545,50 +493,40 @@ class FormMessage(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormMessage": @@ -626,50 +564,40 @@ class FormValidityState(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormValidityState": @@ -704,50 +632,40 @@ class FormSubmit(FormComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FormSubmit": @@ -823,56 +741,44 @@ class Form(FormRoot): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_clear_server_errors: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_submit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_submit: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Form": @@ -979,56 +885,44 @@ class FormNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_clear_server_errors: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_submit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_submit: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Form": diff --git a/reflex/components/radix/primitives/progress.pyi b/reflex/components/radix/primitives/progress.pyi index 99609c0fc..f1c817587 100644 --- a/reflex/components/radix/primitives/progress.pyi +++ b/reflex/components/radix/primitives/progress.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.radix.primitives.base import RadixPrimitiveComponentWithClassName from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class ProgressComponent(RadixPrimitiveComponentWithClassName): @overload @@ -24,50 +24,40 @@ class ProgressComponent(RadixPrimitiveComponentWithClassName): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ProgressComponent": @@ -109,50 +99,40 @@ class ProgressRoot(ProgressComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ProgressRoot": @@ -253,50 +233,40 @@ class ProgressIndicator(ProgressComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ProgressIndicator": @@ -404,50 +374,40 @@ class Progress(ProgressRoot): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Progress": @@ -556,50 +516,40 @@ class ProgressNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Progress": diff --git a/reflex/components/radix/primitives/slider.pyi b/reflex/components/radix/primitives/slider.pyi index 0094bc3bb..9ce737df4 100644 --- a/reflex/components/radix/primitives/slider.pyi +++ b/reflex/components/radix/primitives/slider.pyi @@ -9,7 +9,7 @@ from reflex.components.component import Component, ComponentNamespace from reflex.components.radix.primitives.base import RadixPrimitiveComponentWithClassName from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralSliderOrientation = Literal["horizontal", "vertical"] LiteralSliderDir = Literal["ltr", "rtl"] @@ -27,50 +27,40 @@ class SliderComponent(RadixPrimitiveComponentWithClassName): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SliderComponent": @@ -122,56 +112,46 @@ class SliderRoot(SliderComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_value_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_value_commit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SliderRoot": @@ -207,50 +187,40 @@ class SliderTrack(SliderComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SliderTrack": @@ -286,50 +256,40 @@ class SliderRange(SliderComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SliderRange": @@ -365,50 +325,40 @@ class SliderThumb(SliderComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SliderThumb": diff --git a/reflex/components/radix/themes/base.py b/reflex/components/radix/themes/base.py index e0e05cc81..5a7fb2d99 100644 --- a/reflex/components/radix/themes/base.py +++ b/reflex/components/radix/themes/base.py @@ -7,6 +7,7 @@ from typing import Any, Dict, Literal from reflex.components import Component from reflex.components.tags import Tag from reflex.config import get_config +from reflex.ivars.base import ImmutableVar from reflex.utils.imports import ImportDict, ImportVar from reflex.vars import Var @@ -113,6 +114,11 @@ class RadixThemesComponent(Component): component.alias = "RadixThemes" + ( component.tag or component.__class__.__name__ ) + # value = props.get("value") + # if value is not None and component.alias == "RadixThemesSelect.Root": + # lv = LiteralVar.create(value) + # print(repr(lv)) + # print(f"Warning: Value {value} is not used in {component.alias}.") return component @staticmethod @@ -230,10 +236,8 @@ class Theme(RadixThemesComponent): def _render(self, props: dict[str, Any] | None = None) -> Tag: tag = super()._render(props) tag.add_props( - css=Var.create( - "{{...theme.styles.global[':root'], ...theme.styles.global.body}}", - _var_is_local=False, - _var_is_string=False, + css=ImmutableVar.create( + f"{{...theme.styles.global[':root'], ...theme.styles.global.body}}" ), ) return tag diff --git a/reflex/components/radix/themes/base.pyi b/reflex/components/radix/themes/base.pyi index 3014b5013..5aea55d90 100644 --- a/reflex/components/radix/themes/base.pyi +++ b/reflex/components/radix/themes/base.pyi @@ -9,7 +9,7 @@ from reflex.components import Component from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralAlign = Literal["start", "center", "end", "baseline", "stretch"] LiteralJustify = Literal["start", "center", "end", "between"] @@ -103,50 +103,40 @@ class CommonMarginProps(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CommonMarginProps": @@ -187,50 +177,40 @@ class RadixLoadingProp(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixLoadingProp": @@ -264,50 +244,40 @@ class RadixThemesComponent(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixThemesComponent": @@ -343,50 +313,40 @@ class RadixThemesTriggerComponent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixThemesTriggerComponent": @@ -505,50 +465,40 @@ class Theme(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Theme": @@ -595,50 +545,40 @@ class ThemePanel(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ThemePanel": @@ -675,50 +615,40 @@ class RadixThemesColorModeProvider(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadixThemesColorModeProvider": diff --git a/reflex/components/radix/themes/color_mode.py b/reflex/components/radix/themes/color_mode.py index 8243a822a..0331d7184 100644 --- a/reflex/components/radix/themes/color_mode.py +++ b/reflex/components/radix/themes/color_mode.py @@ -17,7 +17,6 @@ rx.text( from __future__ import annotations -import dataclasses from typing import Literal, get_args from reflex.components.component import BaseComponent @@ -25,6 +24,7 @@ from reflex.components.core.cond import Cond, color_mode_cond, cond from reflex.components.lucide.icon import Icon from reflex.components.radix.themes.components.dropdown_menu import dropdown_menu from reflex.components.radix.themes.components.switch import Switch +from reflex.ivars.base import ImmutableVar from reflex.style import ( LIGHT_COLOR_MODE, color_mode, @@ -32,8 +32,7 @@ from reflex.style import ( set_color_mode, toggle_color_mode, ) -from reflex.utils import console -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .components.icon_button import IconButton @@ -100,7 +99,6 @@ class ColorModeIconButton(IconButton): @classmethod def create( cls, - *children, position: LiteralPosition | None = None, allow_system: bool = False, **props, @@ -108,7 +106,6 @@ class ColorModeIconButton(IconButton): """Create a icon button component that calls toggle_color_mode on click. Args: - *children: The children of the component. position: The position of the icon button. Follow document flow if None. allow_system: Allow picking the "system" value for the color mode. **props: The props to pass to the component. @@ -116,14 +113,6 @@ class ColorModeIconButton(IconButton): Returns: The button component. """ - if children: - console.deprecate( - feature_name="passing children to color_mode.button", - reason=", use color_mode_cond and toggle_color_mode instead to build a custom color_mode component", - deprecation_version="0.5.0", - removal_version="0.6.0", - ) - # position is used to set nice defaults for positioning the icon button if isinstance(position, Var): _set_var_default(props, position, "position", "fixed", position) @@ -195,7 +184,7 @@ class ColorModeSwitch(Switch): ) -class ColorModeNamespace(BaseVar): +class ColorModeNamespace(ImmutableVar): """Namespace for color mode components.""" icon = staticmethod(ColorModeIcon.create) @@ -204,5 +193,7 @@ class ColorModeNamespace(BaseVar): color_mode = color_mode_var_and_namespace = ColorModeNamespace( - **dataclasses.asdict(color_mode) + _var_name=color_mode._var_name, + _var_type=color_mode._var_type, + _var_data=color_mode.get_default_value(), ) diff --git a/reflex/components/radix/themes/color_mode.pyi b/reflex/components/radix/themes/color_mode.pyi index 474c4cf36..a746068c3 100644 --- a/reflex/components/radix/themes/color_mode.pyi +++ b/reflex/components/radix/themes/color_mode.pyi @@ -3,7 +3,6 @@ # ------------------- DO NOT EDIT ---------------------- # This file was generated by `reflex/utils/pyi_generator.py`! # ------------------------------------------------------ -import dataclasses from typing import Any, Callable, Dict, Literal, Optional, Union, get_args, overload from reflex.components.component import BaseComponent @@ -12,11 +11,12 @@ from reflex.components.core.cond import Cond from reflex.components.lucide.icon import Icon from reflex.components.radix.themes.components.switch import Switch from reflex.event import EventHandler, EventSpec +from reflex.ivars.base import ImmutableVar from reflex.style import ( Style, color_mode, ) -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .components.icon_button import IconButton @@ -38,50 +38,40 @@ class ColorModeIcon(Cond): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ColorModeIcon": @@ -112,10 +102,6 @@ class ColorModeIconButton(IconButton): def create( # type: ignore cls, *children, - position: Optional[ - Literal["top-left", "top-right", "bottom-left", "bottom-right"] - ] = None, - allow_system: Optional[bool] = False, as_child: Optional[Union[Var[bool], bool]] = None, size: Optional[ Union[ @@ -250,57 +236,46 @@ class ColorModeIconButton(IconButton): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ColorModeIconButton": """Create a icon button component that calls toggle_color_mode on click. Args: - *children: The children of the component. position: The position of the icon button. Follow document flow if None. allow_system: Allow picking the "system" value for the color mode. as_child: Change the default rendered element for the one passed as a child, merging their props and behavior. @@ -454,53 +429,41 @@ class ColorModeSwitch(Switch): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ColorModeSwitch": @@ -533,11 +496,13 @@ class ColorModeSwitch(Switch): """ ... -class ColorModeNamespace(BaseVar): +class ColorModeNamespace(ImmutableVar): icon = staticmethod(ColorModeIcon.create) button = staticmethod(ColorModeIconButton.create) switch = staticmethod(ColorModeSwitch.create) color_mode = color_mode_var_and_namespace = ColorModeNamespace( - **dataclasses.asdict(color_mode) + _var_name=color_mode._var_name, + _var_type=color_mode._var_type, + _var_data=color_mode.get_default_value(), ) diff --git a/reflex/components/radix/themes/components/__init__.pyi b/reflex/components/radix/themes/components/__init__.pyi index 6f6df88fa..29f15e311 100644 --- a/reflex/components/radix/themes/components/__init__.pyi +++ b/reflex/components/radix/themes/components/__init__.pyi @@ -22,6 +22,7 @@ from .hover_card import hover_card as hover_card from .icon_button import icon_button as icon_button from .inset import inset as inset from .popover import popover as popover +from .progress import progress as progress from .radio_cards import radio_cards as radio_cards from .radio_group import radio as radio from .radio_group import radio_group as radio_group diff --git a/reflex/components/radix/themes/components/alert_dialog.pyi b/reflex/components/radix/themes/components/alert_dialog.pyi index 406d5eb2d..4cb9e966c 100644 --- a/reflex/components/radix/themes/components/alert_dialog.pyi +++ b/reflex/components/radix/themes/components/alert_dialog.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent, RadixThemesTriggerComponent @@ -29,53 +29,43 @@ class AlertDialogRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogRoot": @@ -112,50 +102,40 @@ class AlertDialogTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogTrigger": @@ -219,59 +199,49 @@ class AlertDialogContent(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogContent": @@ -325,50 +295,40 @@ class AlertDialogTitle(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogTitle": @@ -404,50 +364,40 @@ class AlertDialogDescription(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogDescription": @@ -483,50 +433,40 @@ class AlertDialogAction(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogAction": @@ -553,50 +493,40 @@ class AlertDialogCancel(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AlertDialogCancel": diff --git a/reflex/components/radix/themes/components/aspect_ratio.pyi b/reflex/components/radix/themes/components/aspect_ratio.pyi index 08109b740..612c67a29 100644 --- a/reflex/components/radix/themes/components/aspect_ratio.pyi +++ b/reflex/components/radix/themes/components/aspect_ratio.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -24,50 +24,40 @@ class AspectRatio(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AspectRatio": diff --git a/reflex/components/radix/themes/components/avatar.pyi b/reflex/components/radix/themes/components/avatar.pyi index 894ee6f67..c0476d543 100644 --- a/reflex/components/radix/themes/components/avatar.pyi +++ b/reflex/components/radix/themes/components/avatar.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -114,50 +114,40 @@ class Avatar(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Avatar": diff --git a/reflex/components/radix/themes/components/badge.pyi b/reflex/components/radix/themes/components/badge.pyi index 74d6dec24..327fe2b90 100644 --- a/reflex/components/radix/themes/components/badge.pyi +++ b/reflex/components/radix/themes/components/badge.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -135,50 +135,40 @@ class Badge(elements.Span, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Badge": diff --git a/reflex/components/radix/themes/components/button.pyi b/reflex/components/radix/themes/components/button.pyi index 877b7630b..95a80c84e 100644 --- a/reflex/components/radix/themes/components/button.pyi +++ b/reflex/components/radix/themes/components/button.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import ( RadixLoadingProp, @@ -158,50 +158,40 @@ class Button(elements.Button, RadixLoadingProp, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Button": diff --git a/reflex/components/radix/themes/components/callout.pyi b/reflex/components/radix/themes/components/callout.pyi index 2085fb4f5..04e1d1317 100644 --- a/reflex/components/radix/themes/components/callout.pyi +++ b/reflex/components/radix/themes/components/callout.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -133,50 +133,40 @@ class CalloutRoot(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CalloutRoot": @@ -257,50 +247,40 @@ class CalloutIcon(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CalloutIcon": @@ -376,50 +356,40 @@ class CalloutText(elements.P, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CalloutText": @@ -578,50 +548,40 @@ class Callout(CalloutRoot): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Callout": @@ -786,50 +746,40 @@ class CalloutNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Callout": diff --git a/reflex/components/radix/themes/components/card.pyi b/reflex/components/radix/themes/components/card.pyi index dc12b7d88..142cc7448 100644 --- a/reflex/components/radix/themes/components/card.pyi +++ b/reflex/components/radix/themes/components/card.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -68,50 +68,40 @@ class Card(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Card": diff --git a/reflex/components/radix/themes/components/checkbox.py b/reflex/components/radix/themes/components/checkbox.py index 4751c4995..f191ce613 100644 --- a/reflex/components/radix/themes/components/checkbox.py +++ b/reflex/components/radix/themes/components/checkbox.py @@ -7,6 +7,7 @@ from reflex.components.core.breakpoints import Responsive from reflex.components.radix.themes.layout.flex import Flex from reflex.components.radix.themes.typography.text import Text from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var from ..base import ( @@ -115,9 +116,7 @@ class HighLevelCheckbox(RadixThemesComponent): on_change: EventHandler[lambda e0: [e0]] @classmethod - def create( - cls, text: Var[str] = Var.create_safe("", _var_is_string=True), **props - ) -> Component: + def create(cls, text: Var[str] = LiteralVar.create(""), **props) -> Component: """Create a checkbox with a label. Args: diff --git a/reflex/components/radix/themes/components/checkbox.pyi b/reflex/components/radix/themes/components/checkbox.pyi index d21018e1d..52441eef4 100644 --- a/reflex/components/radix/themes/components/checkbox.pyi +++ b/reflex/components/radix/themes/components/checkbox.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -115,53 +115,41 @@ class Checkbox(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Checkbox": @@ -294,53 +282,41 @@ class HighLevelCheckbox(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelCheckbox": @@ -470,53 +446,41 @@ class CheckboxNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelCheckbox": diff --git a/reflex/components/radix/themes/components/checkbox_cards.pyi b/reflex/components/radix/themes/components/checkbox_cards.pyi index c35754bde..d7be8a056 100644 --- a/reflex/components/radix/themes/components/checkbox_cards.pyi +++ b/reflex/components/radix/themes/components/checkbox_cards.pyi @@ -9,7 +9,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -148,50 +148,40 @@ class CheckboxCardsRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CheckboxCardsRoot": @@ -233,50 +223,40 @@ class CheckboxCardsItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CheckboxCardsItem": diff --git a/reflex/components/radix/themes/components/checkbox_group.pyi b/reflex/components/radix/themes/components/checkbox_group.pyi index 334ee3dd3..8a730b870 100644 --- a/reflex/components/radix/themes/components/checkbox_group.pyi +++ b/reflex/components/radix/themes/components/checkbox_group.pyi @@ -9,7 +9,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -107,50 +107,40 @@ class CheckboxGroupRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CheckboxGroupRoot": @@ -194,50 +184,40 @@ class CheckboxGroupItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CheckboxGroupItem": diff --git a/reflex/components/radix/themes/components/context_menu.pyi b/reflex/components/radix/themes/components/context_menu.pyi index dbe23ee81..e2f9d01e2 100644 --- a/reflex/components/radix/themes/components/context_menu.pyi +++ b/reflex/components/radix/themes/components/context_menu.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -26,53 +26,43 @@ class ContextMenuRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuRoot": @@ -110,50 +100,40 @@ class ContextMenuTrigger(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuTrigger": @@ -265,65 +245,55 @@ class ContextMenuContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_focus_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuContent": @@ -365,50 +335,40 @@ class ContextMenuSub(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuSub": @@ -445,50 +405,40 @@ class ContextMenuSubTrigger(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuSubTrigger": @@ -526,62 +476,52 @@ class ContextMenuSubContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_focus_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuSubContent": @@ -681,50 +621,40 @@ class ContextMenuItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuItem": @@ -762,50 +692,40 @@ class ContextMenuSeparator(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ContextMenuSeparator": diff --git a/reflex/components/radix/themes/components/data_list.py b/reflex/components/radix/themes/components/data_list.py index e5ce75464..8b95d24c6 100644 --- a/reflex/components/radix/themes/components/data_list.py +++ b/reflex/components/radix/themes/components/data_list.py @@ -29,6 +29,7 @@ class DataListItem(RadixThemesComponent): tag = "DataList.Item" + # The alignment of the data list item within its container. align: Var[Responsive[Literal["start", "center", "end", "baseline", "stretch"]]] @@ -37,12 +38,16 @@ class DataListLabel(RadixThemesComponent): tag = "DataList.Label" + # The width of the component width: Var[Responsive[str]] + # The minimum width of the component min_width: Var[Responsive[str]] + # The maximum width of the component max_width: Var[Responsive[str]] + # The color scheme for the DataList component. color_scheme: Var[LiteralAccentColor] diff --git a/reflex/components/radix/themes/components/data_list.pyi b/reflex/components/radix/themes/components/data_list.pyi index 4fe0541a2..93d00c86b 100644 --- a/reflex/components/radix/themes/components/data_list.pyi +++ b/reflex/components/radix/themes/components/data_list.pyi @@ -9,7 +9,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -60,50 +60,40 @@ class DataListRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataListRoot": @@ -159,50 +149,40 @@ class DataListItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataListItem": @@ -213,6 +193,7 @@ class DataListItem(RadixThemesComponent): Args: *children: Child components. + align: The alignment of the data list item within its container. style: The style of the component. key: A unique key for the component. id: The id for the component. @@ -309,50 +290,40 @@ class DataListLabel(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataListLabel": @@ -363,6 +334,10 @@ class DataListLabel(RadixThemesComponent): Args: *children: Child components. + width: The width of the component + min_width: The minimum width of the component + max_width: The maximum width of the component + color_scheme: The color scheme for the DataList component. style: The style of the component. key: A unique key for the component. id: The id for the component. @@ -388,50 +363,40 @@ class DataListValue(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DataListValue": diff --git a/reflex/components/radix/themes/components/dialog.pyi b/reflex/components/radix/themes/components/dialog.pyi index 0f05ca406..02b1a6c9f 100644 --- a/reflex/components/radix/themes/components/dialog.pyi +++ b/reflex/components/radix/themes/components/dialog.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent, RadixThemesTriggerComponent @@ -27,53 +27,43 @@ class DialogRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogRoot": @@ -110,50 +100,40 @@ class DialogTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogTrigger": @@ -180,50 +160,40 @@ class DialogTitle(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogTitle": @@ -295,65 +265,55 @@ class DialogContent(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogContent": @@ -406,50 +366,40 @@ class DialogDescription(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogDescription": @@ -485,50 +435,40 @@ class DialogClose(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogClose": @@ -561,53 +501,43 @@ class Dialog(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DialogRoot": diff --git a/reflex/components/radix/themes/components/dropdown_menu.pyi b/reflex/components/radix/themes/components/dropdown_menu.pyi index d2b9216e1..df7b23589 100644 --- a/reflex/components/radix/themes/components/dropdown_menu.pyi +++ b/reflex/components/radix/themes/components/dropdown_menu.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent, RadixThemesTriggerComponent @@ -36,53 +36,43 @@ class DropdownMenuRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuRoot": @@ -123,50 +113,40 @@ class DropdownMenuTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuTrigger": @@ -297,65 +277,55 @@ class DropdownMenuContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_focus_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuContent": @@ -410,50 +380,40 @@ class DropdownMenuSubTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuSubTrigger": @@ -482,53 +442,43 @@ class DropdownMenuSub(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuSub": @@ -585,62 +535,52 @@ class DropdownMenuSubContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_focus_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuSubContent": @@ -752,53 +692,41 @@ class DropdownMenuItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_select: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_select: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuItem": @@ -839,50 +767,40 @@ class DropdownMenuSeparator(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DropdownMenuSeparator": diff --git a/reflex/components/radix/themes/components/hover_card.pyi b/reflex/components/radix/themes/components/hover_card.pyi index 0d43f387f..ad56a8302 100644 --- a/reflex/components/radix/themes/components/hover_card.pyi +++ b/reflex/components/radix/themes/components/hover_card.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent, RadixThemesTriggerComponent @@ -30,53 +30,43 @@ class HoverCardRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HoverCardRoot": @@ -116,50 +106,40 @@ class HoverCardTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HoverCardTrigger": @@ -230,50 +210,40 @@ class HoverCardContent(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HoverCardContent": @@ -335,53 +305,43 @@ class HoverCard(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HoverCardRoot": diff --git a/reflex/components/radix/themes/components/icon_button.pyi b/reflex/components/radix/themes/components/icon_button.pyi index 25de63938..b5c75a9b6 100644 --- a/reflex/components/radix/themes/components/icon_button.pyi +++ b/reflex/components/radix/themes/components/icon_button.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import ( RadixLoadingProp, @@ -158,50 +158,40 @@ class IconButton(elements.Button, RadixLoadingProp, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "IconButton": diff --git a/reflex/components/radix/themes/components/inset.pyi b/reflex/components/radix/themes/components/inset.pyi index 0106a23b2..3671d2a5c 100644 --- a/reflex/components/radix/themes/components/inset.pyi +++ b/reflex/components/radix/themes/components/inset.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -133,50 +133,40 @@ class Inset(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Inset": diff --git a/reflex/components/radix/themes/components/popover.pyi b/reflex/components/radix/themes/components/popover.pyi index 82bec124b..d8bd9d1d6 100644 --- a/reflex/components/radix/themes/components/popover.pyi +++ b/reflex/components/radix/themes/components/popover.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent, RadixThemesTriggerComponent @@ -28,53 +28,43 @@ class PopoverRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PopoverRoot": @@ -112,50 +102,40 @@ class PopoverTrigger(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PopoverTrigger": @@ -233,68 +213,58 @@ class PopoverContent(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_focus_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_interact_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PopoverContent": @@ -352,50 +322,40 @@ class PopoverClose(RadixThemesTriggerComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PopoverClose": diff --git a/reflex/components/radix/themes/components/progress.pyi b/reflex/components/radix/themes/components/progress.pyi index 514061ba7..a647e94e6 100644 --- a/reflex/components/radix/themes/components/progress.pyi +++ b/reflex/components/radix/themes/components/progress.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -113,50 +113,40 @@ class Progress(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Progress": diff --git a/reflex/components/radix/themes/components/radio.pyi b/reflex/components/radix/themes/components/radio.pyi index e00a6db58..5c1b303fa 100644 --- a/reflex/components/radix/themes/components/radio.pyi +++ b/reflex/components/radix/themes/components/radio.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -104,50 +104,40 @@ class Radio(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Radio": diff --git a/reflex/components/radix/themes/components/radio_cards.pyi b/reflex/components/radix/themes/components/radio_cards.pyi index 4feb78d20..2c0bf002b 100644 --- a/reflex/components/radix/themes/components/radio_cards.pyi +++ b/reflex/components/radix/themes/components/radio_cards.pyi @@ -9,7 +9,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -162,53 +162,43 @@ class RadioCardsRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_value_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadioCardsRoot": @@ -262,50 +252,40 @@ class RadioCardsItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadioCardsItem": diff --git a/reflex/components/radix/themes/components/radio_group.py b/reflex/components/radix/themes/components/radio_group.py index 20ccbd5b5..174abbac6 100644 --- a/reflex/components/radix/themes/components/radio_group.py +++ b/reflex/components/radix/themes/components/radio_group.py @@ -10,6 +10,9 @@ from reflex.components.core.breakpoints import Responsive from reflex.components.radix.themes.layout.flex import Flex from reflex.components.radix.themes.typography.text import Text from reflex.event import EventHandler +from reflex.ivars.base import ImmutableVar, LiteralVar +from reflex.ivars.sequence import StringVar +from reflex.utils import types from reflex.vars import Var from ..base import ( @@ -27,14 +30,10 @@ class RadioGroupRoot(RadixThemesComponent): tag = "RadioGroup.Root" # The size of the radio group: "1" | "2" | "3" - size: Var[Responsive[Literal["1", "2", "3"]]] = Var.create_safe( - "2", _var_is_string=True - ) + size: Var[Responsive[Literal["1", "2", "3"]]] = LiteralVar.create("2") # The variant of the radio group - variant: Var[Literal["classic", "surface", "soft"]] = Var.create_safe( - "classic", _var_is_string=True - ) + variant: Var[Literal["classic", "surface", "soft"]] = LiteralVar.create("classic") # The color of the radio group color_scheme: Var[LiteralAccentColor] @@ -86,20 +85,16 @@ class HighLevelRadioGroup(RadixThemesComponent): items: Var[List[str]] # The direction of the radio group. - direction: Var[LiteralFlexDirection] = Var.create_safe( - "column", _var_is_string=True - ) + direction: Var[LiteralFlexDirection] = LiteralVar.create("column") # The gap between the items of the radio group. - spacing: Var[LiteralSpacing] = Var.create_safe("2", _var_is_string=True) + spacing: Var[LiteralSpacing] = LiteralVar.create("2") # The size of the radio group. - size: Var[Literal["1", "2", "3"]] = Var.create_safe("2", _var_is_string=True) + size: Var[Literal["1", "2", "3"]] = LiteralVar.create("2") # The variant of the radio group - variant: Var[Literal["classic", "surface", "soft"]] = Var.create_safe( - "classic", _var_is_string=True - ) + variant: Var[Literal["classic", "surface", "soft"]] = LiteralVar.create("classic") # The color of the radio group color_scheme: Var[LiteralAccentColor] @@ -139,6 +134,9 @@ class HighLevelRadioGroup(RadixThemesComponent): Returns: The created radio group component. + + Raises: + TypeError: If the type of items is invalid. """ direction = props.pop("direction", "column") spacing = props.pop("spacing", "2") @@ -147,34 +145,39 @@ class HighLevelRadioGroup(RadixThemesComponent): color_scheme = props.pop("color_scheme", None) default_value = props.pop("default_value", "") - default_value = Var.create(default_value, _var_is_string=True) + if ( + not isinstance(items, (list, Var)) + or isinstance(items, Var) + and not types._issubclass(items._var_type, list) + ): + items_type = type(items) if not isinstance(items, Var) else items._var_type + raise TypeError( + f"The radio group component takes in a list, got {items_type} instead" + ) + + default_value = LiteralVar.create(default_value) # convert only non-strings to json(JSON.stringify) so quotes are not rendered # for string literal types. if isinstance(default_value, str) or ( isinstance(default_value, Var) and default_value._var_type is str ): - default_value = Var.create(default_value, _var_is_string=True) # type: ignore + default_value = LiteralVar.create(default_value) # type: ignore else: - default_value = ( - Var.create(default_value, _var_is_string=False) - .to_string() # type: ignore - ._replace(_var_is_local=False) - ) + default_value = ImmutableVar.create_safe(default_value).to_string() - def radio_group_item(value: str | Var) -> Component: - item_value = Var.create(value, _var_is_string=False) # type: ignore + def radio_group_item(value: Var) -> Component: item_value = rx.cond( - item_value._type() == str, # type: ignore - item_value, - item_value.to_string()._replace(_var_is_local=False), # type: ignore - )._replace(_var_type=str) + value._type() == "string", + value, + value.to_string(), + ).to(StringVar) return Text.create( Flex.create( RadioGroupItem.create( value=item_value, - disabled=props.get("disabled", Var.create(False)), + disabled=props.get("disabled", LiteralVar.create(False)), ), item_value, spacing="2", @@ -183,8 +186,7 @@ class HighLevelRadioGroup(RadixThemesComponent): as_="label", ) - items = Var.create(items) # type: ignore - children = [rx.foreach(items, radio_group_item)] + children = [rx.foreach(LiteralVar.create(items), radio_group_item)] return RadioGroupRoot.create( Flex.create( diff --git a/reflex/components/radix/themes/components/radio_group.pyi b/reflex/components/radix/themes/components/radio_group.pyi index 0452450ff..559607ae5 100644 --- a/reflex/components/radix/themes/components/radio_group.pyi +++ b/reflex/components/radix/themes/components/radio_group.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -112,53 +112,41 @@ class RadioGroupRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadioGroupRoot": @@ -206,50 +194,40 @@ class RadioGroupItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadioGroupItem": @@ -378,50 +356,40 @@ class HighLevelRadioGroup(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelRadioGroup": @@ -451,6 +419,9 @@ class HighLevelRadioGroup(RadixThemesComponent): Returns: The created radio group component. + + Raises: + TypeError: If the type of items is invalid. """ ... @@ -557,50 +528,40 @@ class RadioGroup(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelRadioGroup": @@ -630,6 +591,9 @@ class RadioGroup(ComponentNamespace): Returns: The created radio group component. + + Raises: + TypeError: If the type of items is invalid. """ ... diff --git a/reflex/components/radix/themes/components/scroll_area.pyi b/reflex/components/radix/themes/components/scroll_area.pyi index e7d2018da..8b4e44df5 100644 --- a/reflex/components/radix/themes/components/scroll_area.pyi +++ b/reflex/components/radix/themes/components/scroll_area.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -36,50 +36,40 @@ class ScrollArea(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ScrollArea": diff --git a/reflex/components/radix/themes/components/segmented_control.pyi b/reflex/components/radix/themes/components/segmented_control.pyi index 4ac662e13..f284dab77 100644 --- a/reflex/components/radix/themes/components/segmented_control.pyi +++ b/reflex/components/radix/themes/components/segmented_control.pyi @@ -9,7 +9,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -114,53 +114,41 @@ class SegmentedControlRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SegmentedControlRoot": @@ -202,50 +190,40 @@ class SegmentedControlItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SegmentedControlItem": diff --git a/reflex/components/radix/themes/components/select.pyi b/reflex/components/radix/themes/components/select.pyi index 125ced252..e2657b7ce 100644 --- a/reflex/components/radix/themes/components/select.pyi +++ b/reflex/components/radix/themes/components/select.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -43,56 +43,44 @@ class SelectRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectRoot": @@ -211,50 +199,40 @@ class SelectTrigger(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectTrigger": @@ -380,59 +358,49 @@ class SelectContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_close_auto_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectContent": @@ -476,50 +444,40 @@ class SelectGroup(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectGroup": @@ -557,50 +515,40 @@ class SelectItem(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectItem": @@ -638,50 +586,40 @@ class SelectLabel(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectLabel": @@ -717,50 +655,40 @@ class SelectSeparator(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SelectSeparator": @@ -899,56 +827,44 @@ class HighLevelSelect(SelectRoot): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelSelect": @@ -1107,56 +1023,44 @@ class Select(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HighLevelSelect": diff --git a/reflex/components/radix/themes/components/separator.py b/reflex/components/radix/themes/components/separator.py index fbc445878..81f83194b 100644 --- a/reflex/components/radix/themes/components/separator.py +++ b/reflex/components/radix/themes/components/separator.py @@ -3,6 +3,7 @@ from typing import Literal from reflex.components.core.breakpoints import Responsive +from reflex.ivars.base import LiteralVar from reflex.vars import Var from ..base import ( @@ -19,9 +20,7 @@ class Separator(RadixThemesComponent): tag = "Separator" # The size of the select: "1" | "2" | "3" | "4" - size: Var[Responsive[LiteralSeperatorSize]] = Var.create_safe( - "4", _var_is_string=True - ) + size: Var[Responsive[LiteralSeperatorSize]] = LiteralVar.create("4") # The color of the select color_scheme: Var[LiteralAccentColor] diff --git a/reflex/components/radix/themes/components/separator.pyi b/reflex/components/radix/themes/components/separator.pyi index 0c5dc64ec..15670f51a 100644 --- a/reflex/components/radix/themes/components/separator.pyi +++ b/reflex/components/radix/themes/components/separator.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -113,50 +113,40 @@ class Separator(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Separator": diff --git a/reflex/components/radix/themes/components/skeleton.pyi b/reflex/components/radix/themes/components/skeleton.pyi index 3f2c048f6..d6c6bbb03 100644 --- a/reflex/components/radix/themes/components/skeleton.pyi +++ b/reflex/components/radix/themes/components/skeleton.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixLoadingProp, RadixThemesComponent @@ -43,50 +43,40 @@ class Skeleton(RadixLoadingProp, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Skeleton": diff --git a/reflex/components/radix/themes/components/slider.pyi b/reflex/components/radix/themes/components/slider.pyi index 57fda44d2..362451bfe 100644 --- a/reflex/components/radix/themes/components/slider.pyi +++ b/reflex/components/radix/themes/components/slider.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -133,56 +133,44 @@ class Slider(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_value_commit: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Slider": diff --git a/reflex/components/radix/themes/components/spinner.pyi b/reflex/components/radix/themes/components/spinner.pyi index f061e5813..7fa62734a 100644 --- a/reflex/components/radix/themes/components/spinner.pyi +++ b/reflex/components/radix/themes/components/spinner.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixLoadingProp, RadixThemesComponent @@ -38,50 +38,40 @@ class Spinner(RadixLoadingProp, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Spinner": diff --git a/reflex/components/radix/themes/components/switch.pyi b/reflex/components/radix/themes/components/switch.pyi index cd01cc604..a0f85dbac 100644 --- a/reflex/components/radix/themes/components/switch.pyi +++ b/reflex/components/radix/themes/components/switch.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -118,53 +118,41 @@ class Switch(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Switch": diff --git a/reflex/components/radix/themes/components/table.pyi b/reflex/components/radix/themes/components/table.pyi index 01b4e61c4..9cac240f2 100644 --- a/reflex/components/radix/themes/components/table.pyi +++ b/reflex/components/radix/themes/components/table.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -66,50 +66,40 @@ class TableRoot(elements.Table, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableRoot": @@ -190,50 +180,40 @@ class TableHeader(elements.Thead, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableHeader": @@ -316,50 +296,40 @@ class TableRow(elements.Tr, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableRow": @@ -447,50 +417,40 @@ class TableColumnHeaderCell(elements.Th, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableColumnHeaderCell": @@ -573,50 +533,40 @@ class TableBody(elements.Tbody, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableBody": @@ -703,50 +653,40 @@ class TableCell(elements.Td, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableCell": @@ -838,50 +778,40 @@ class TableRowHeaderCell(elements.Th, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TableRowHeaderCell": diff --git a/reflex/components/radix/themes/components/tabs.pyi b/reflex/components/radix/themes/components/tabs.pyi index 7d324e96d..0fb33b16d 100644 --- a/reflex/components/radix/themes/components/tabs.pyi +++ b/reflex/components/radix/themes/components/tabs.pyi @@ -9,7 +9,7 @@ from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -40,53 +40,41 @@ class TabsRoot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TabsRoot": @@ -136,50 +124,40 @@ class TabsList(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TabsList": @@ -281,50 +259,40 @@ class TabsTrigger(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TabsTrigger": @@ -365,50 +333,40 @@ class TabsContent(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TabsContent": @@ -461,53 +419,41 @@ class Tabs(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TabsRoot": diff --git a/reflex/components/radix/themes/components/text_area.pyi b/reflex/components/radix/themes/components/text_area.pyi index 231158c84..9a8a47873 100644 --- a/reflex/components/radix/themes/components/text_area.pyi +++ b/reflex/components/radix/themes/components/text_area.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -168,59 +168,45 @@ class TextArea(RadixThemesComponent, elements.Textarea): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_key_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_key_up: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TextArea": diff --git a/reflex/components/radix/themes/components/text_field.py b/reflex/components/radix/themes/components/text_field.py index c6d7ddf48..2ab850b13 100644 --- a/reflex/components/radix/themes/components/text_field.py +++ b/reflex/components/radix/themes/components/text_field.py @@ -4,14 +4,11 @@ from __future__ import annotations from typing import Literal, Union -from reflex.components.base.fragment import Fragment from reflex.components.component import Component, ComponentNamespace from reflex.components.core.breakpoints import Responsive from reflex.components.core.debounce import DebounceInput from reflex.components.el import elements from reflex.event import EventHandler -from reflex.style import Style, format_as_emotion -from reflex.utils import console from reflex.vars import Var from ..base import ( @@ -106,80 +103,6 @@ class TextFieldRoot(elements.Div, RadixThemesComponent): return DebounceInput.create(component) return component - @classmethod - def create_root_deprecated(cls, *children, **props) -> Component: - """Create a Fragment component (wrapper for deprecated name). - - Copy the attributes that were previously defined on TextFieldRoot in 0.4.9 to - any child input elements (via custom_attrs). - - Args: - *children: The children of the component. - **props: The properties of the component. - - Returns: - The component. - """ - console.deprecate( - feature_name="rx.input.root", - reason="use rx.input without the .root suffix", - deprecation_version="0.5.0", - removal_version="0.6.0", - ) - inputs = [ - child - for child in children - if isinstance(child, (TextFieldRoot, DebounceInput)) - ] - if not inputs: - # Old-style where no explicit child input was provided - return cls.create(*children, **props) - slots = [child for child in children if isinstance(child, TextFieldSlot)] - carry_props = { - prop: props.pop(prop) - for prop in ["size", "variant", "color_scheme", "radius"] - if prop in props - } - template = cls.create(**props) - for child in inputs: - child.children.extend(slots) - custom_attrs = child.custom_attrs - custom_attrs.update( - { - prop: value - for prop, value in carry_props.items() - if prop not in custom_attrs and getattr(child, prop) is None - } - ) - style = Style(template.style) - style.update(child.style) - child._get_style = lambda style=style: { - "css": Var.create(format_as_emotion(style)) - } - for trigger in template.event_triggers: - if trigger not in child.event_triggers: - child.event_triggers[trigger] = template.event_triggers[trigger] - return Fragment.create(*inputs) - - @classmethod - def create_input_deprecated(cls, *children, **props) -> Component: - """Create a TextFieldRoot component (wrapper for deprecated name). - - Args: - *children: The children of the component. - **props: The properties of the component. - - Returns: - The component. - """ - console.deprecate( - feature_name="rx.input.input", - reason="use rx.input without the .input suffix", - deprecation_version="0.5.0", - removal_version="0.6.0", - ) - return cls.create(*children, **props) - class TextFieldSlot(RadixThemesComponent): """Contains icons or buttons associated with an Input.""" @@ -193,8 +116,6 @@ class TextFieldSlot(RadixThemesComponent): class TextField(ComponentNamespace): """TextField components namespace.""" - root = staticmethod(TextFieldRoot.create_root_deprecated) - input = staticmethod(TextFieldRoot.create_input_deprecated) slot = staticmethod(TextFieldSlot.create) __call__ = staticmethod(TextFieldRoot.create) diff --git a/reflex/components/radix/themes/components/text_field.pyi b/reflex/components/radix/themes/components/text_field.pyi index 86ba7e70f..be58b8e7f 100644 --- a/reflex/components/radix/themes/components/text_field.pyi +++ b/reflex/components/radix/themes/components/text_field.pyi @@ -5,12 +5,12 @@ # ------------------------------------------------------ from typing import Any, Callable, Dict, Literal, Optional, Union, overload -from reflex.components.component import Component, ComponentNamespace +from reflex.components.component import ComponentNamespace from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -149,59 +149,45 @@ class TextFieldRoot(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_key_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_key_up: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TextFieldRoot": @@ -253,11 +239,6 @@ class TextFieldRoot(elements.Div, RadixThemesComponent): """ ... - @classmethod - def create_root_deprecated(cls, *children, **props) -> Component: ... - @classmethod - def create_input_deprecated(cls, *children, **props) -> Component: ... - class TextFieldSlot(RadixThemesComponent): @overload @classmethod @@ -332,50 +313,40 @@ class TextFieldSlot(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TextFieldSlot": @@ -401,8 +372,6 @@ class TextFieldSlot(RadixThemesComponent): ... class TextField(ComponentNamespace): - root = staticmethod(TextFieldRoot.create_root_deprecated) - input = staticmethod(TextFieldRoot.create_input_deprecated) slot = staticmethod(TextFieldSlot.create) @staticmethod @@ -534,59 +503,45 @@ class TextField(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_key_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_key_up: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "TextFieldRoot": diff --git a/reflex/components/radix/themes/components/tooltip.pyi b/reflex/components/radix/themes/components/tooltip.pyi index 0628acff1..a2344958f 100644 --- a/reflex/components/radix/themes/components/tooltip.pyi +++ b/reflex/components/radix/themes/components/tooltip.pyi @@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -62,59 +62,49 @@ class Tooltip(RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_escape_key_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_pointer_down_outside: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Tooltip": diff --git a/reflex/components/radix/themes/layout/base.pyi b/reflex/components/radix/themes/layout/base.pyi index 83e0e018f..21fed38ef 100644 --- a/reflex/components/radix/themes/layout/base.pyi +++ b/reflex/components/radix/themes/layout/base.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import CommonMarginProps, RadixThemesComponent @@ -201,50 +201,40 @@ class LayoutComponent(CommonMarginProps, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "LayoutComponent": diff --git a/reflex/components/radix/themes/layout/box.pyi b/reflex/components/radix/themes/layout/box.pyi index 9c4bd800d..6bcd75cad 100644 --- a/reflex/components/radix/themes/layout/box.pyi +++ b/reflex/components/radix/themes/layout/box.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -48,50 +48,40 @@ class Box(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Box": diff --git a/reflex/components/radix/themes/layout/center.pyi b/reflex/components/radix/themes/layout/center.pyi index bbdf51d07..93f884898 100644 --- a/reflex/components/radix/themes/layout/center.pyi +++ b/reflex/components/radix/themes/layout/center.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .flex import Flex @@ -125,50 +125,40 @@ class Center(Flex): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Center": diff --git a/reflex/components/radix/themes/layout/container.py b/reflex/components/radix/themes/layout/container.py index c0f1c7dc8..4ed18031d 100644 --- a/reflex/components/radix/themes/layout/container.py +++ b/reflex/components/radix/themes/layout/container.py @@ -6,6 +6,7 @@ from typing import Literal from reflex.components.core.breakpoints import Responsive from reflex.components.el import elements +from reflex.ivars.base import LiteralVar from reflex.style import STACK_CHILDREN_FULL_WIDTH from reflex.vars import Var @@ -23,9 +24,7 @@ class Container(elements.Div, RadixThemesComponent): tag = "Container" # The size of the container: "1" - "4" (default "3") - size: Var[Responsive[LiteralContainerSize]] = Var.create_safe( - "3", _var_is_string=True - ) + size: Var[Responsive[LiteralContainerSize]] = LiteralVar.create("3") @classmethod def create( diff --git a/reflex/components/radix/themes/layout/container.pyi b/reflex/components/radix/themes/layout/container.pyi index 4e4c0bae3..3c2013b8e 100644 --- a/reflex/components/radix/themes/layout/container.pyi +++ b/reflex/components/radix/themes/layout/container.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -65,50 +65,40 @@ class Container(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Container": diff --git a/reflex/components/radix/themes/layout/flex.pyi b/reflex/components/radix/themes/layout/flex.pyi index f4e851d09..a49f08262 100644 --- a/reflex/components/radix/themes/layout/flex.pyi +++ b/reflex/components/radix/themes/layout/flex.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -128,50 +128,40 @@ class Flex(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Flex": diff --git a/reflex/components/radix/themes/layout/grid.pyi b/reflex/components/radix/themes/layout/grid.pyi index 1acc6f9b1..c11d1dfcd 100644 --- a/reflex/components/radix/themes/layout/grid.pyi +++ b/reflex/components/radix/themes/layout/grid.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -157,50 +157,40 @@ class Grid(elements.Div, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Grid": diff --git a/reflex/components/radix/themes/layout/list.pyi b/reflex/components/radix/themes/layout/list.pyi index f6cc3141e..bf8da641c 100644 --- a/reflex/components/radix/themes/layout/list.pyi +++ b/reflex/components/radix/themes/layout/list.pyi @@ -9,7 +9,7 @@ from reflex.components.component import Component, ComponentNamespace from reflex.components.el.elements.typography import Li, Ol, Ul from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralListStyleTypeUnordered = Literal["none", "disc", "circle", "square"] LiteralListStyleTypeOrdered = Literal[ @@ -84,50 +84,40 @@ class BaseList(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "BaseList": @@ -191,50 +181,40 @@ class UnorderedList(BaseList, Ul): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "UnorderedList": @@ -315,50 +295,40 @@ class OrderedList(BaseList, Ol): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "OrderedList": @@ -437,50 +407,40 @@ class ListItem(Li): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ListItem": @@ -575,50 +535,40 @@ class List(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "BaseList": diff --git a/reflex/components/radix/themes/layout/section.py b/reflex/components/radix/themes/layout/section.py index d9b27bdf9..a3e58be86 100644 --- a/reflex/components/radix/themes/layout/section.py +++ b/reflex/components/radix/themes/layout/section.py @@ -6,6 +6,7 @@ from typing import Literal from reflex.components.core.breakpoints import Responsive from reflex.components.el import elements +from reflex.ivars.base import LiteralVar from reflex.vars import Var from ..base import RadixThemesComponent @@ -19,9 +20,7 @@ class Section(elements.Section, RadixThemesComponent): tag = "Section" # The size of the section: "1" - "3" (default "2") - size: Var[Responsive[LiteralSectionSize]] = Var.create_safe( - "2", _var_is_string=True - ) + size: Var[Responsive[LiteralSectionSize]] = LiteralVar.create("2") section = Section.create diff --git a/reflex/components/radix/themes/layout/section.pyi b/reflex/components/radix/themes/layout/section.pyi index 31cf355e8..b4e1050d8 100644 --- a/reflex/components/radix/themes/layout/section.pyi +++ b/reflex/components/radix/themes/layout/section.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -62,50 +62,40 @@ class Section(elements.Section, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Section": diff --git a/reflex/components/radix/themes/layout/spacer.pyi b/reflex/components/radix/themes/layout/spacer.pyi index aedd9b041..652c1a0b0 100644 --- a/reflex/components/radix/themes/layout/spacer.pyi +++ b/reflex/components/radix/themes/layout/spacer.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .flex import Flex @@ -125,50 +125,40 @@ class Spacer(Flex): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Spacer": diff --git a/reflex/components/radix/themes/layout/stack.pyi b/reflex/components/radix/themes/layout/stack.pyi index 0296f92ca..4ba630fc2 100644 --- a/reflex/components/radix/themes/layout/stack.pyi +++ b/reflex/components/radix/themes/layout/stack.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.core.breakpoints import Breakpoints from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import LiteralAlign, LiteralSpacing from .flex import Flex @@ -93,50 +93,40 @@ class Stack(Flex): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Stack": @@ -248,50 +238,40 @@ class VStack(Stack): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "VStack": @@ -403,50 +383,40 @@ class HStack(Stack): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "HStack": diff --git a/reflex/components/radix/themes/typography/blockquote.pyi b/reflex/components/radix/themes/typography/blockquote.pyi index 5ffe71355..3ab3c829b 100644 --- a/reflex/components/radix/themes/typography/blockquote.pyi +++ b/reflex/components/radix/themes/typography/blockquote.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -139,50 +139,40 @@ class Blockquote(elements.Blockquote, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Blockquote": diff --git a/reflex/components/radix/themes/typography/code.pyi b/reflex/components/radix/themes/typography/code.pyi index f1fc274e1..f30a39f9a 100644 --- a/reflex/components/radix/themes/typography/code.pyi +++ b/reflex/components/radix/themes/typography/code.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -144,50 +144,40 @@ class Code(elements.Code, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Code": diff --git a/reflex/components/radix/themes/typography/heading.pyi b/reflex/components/radix/themes/typography/heading.pyi index 1dad3b97f..d1fe26218 100644 --- a/reflex/components/radix/themes/typography/heading.pyi +++ b/reflex/components/radix/themes/typography/heading.pyi @@ -9,7 +9,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -164,50 +164,40 @@ class Heading(elements.H1, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Heading": diff --git a/reflex/components/radix/themes/typography/link.pyi b/reflex/components/radix/themes/typography/link.pyi index ab29e8f59..54cebee64 100644 --- a/reflex/components/radix/themes/typography/link.pyi +++ b/reflex/components/radix/themes/typography/link.pyi @@ -12,7 +12,7 @@ from reflex.components.next.link import NextLink from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -176,50 +176,40 @@ class Link(RadixThemesComponent, A, MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Link": diff --git a/reflex/components/radix/themes/typography/text.pyi b/reflex/components/radix/themes/typography/text.pyi index 1d7857a5d..919ed17e0 100644 --- a/reflex/components/radix/themes/typography/text.pyi +++ b/reflex/components/radix/themes/typography/text.pyi @@ -10,7 +10,7 @@ from reflex.components.core.breakpoints import Breakpoints from reflex.components.el import elements from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from ..base import RadixThemesComponent @@ -231,50 +231,40 @@ class Text(elements.Span, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Text": @@ -518,50 +508,40 @@ class Span(Text): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Span": @@ -645,50 +625,40 @@ class Em(elements.Em, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Em": @@ -770,50 +740,40 @@ class Kbd(elements.Kbd, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Kbd": @@ -891,50 +851,40 @@ class Quote(elements.Q, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Quote": @@ -1011,50 +961,40 @@ class Strong(elements.Strong, RadixThemesComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Strong": @@ -1294,50 +1234,40 @@ class TextNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Text": diff --git a/reflex/components/react_player/audio.pyi b/reflex/components/react_player/audio.pyi index f138d3fd8..f84122403 100644 --- a/reflex/components/react_player/audio.pyi +++ b/reflex/components/react_player/audio.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.react_player.react_player import ReactPlayer from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Audio(ReactPlayer): pass @@ -33,98 +33,72 @@ class Audio(ReactPlayer): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_buffer: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_buffer: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_buffer_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_click_preview: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_disable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_duration: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_enable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ended: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ended: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_pause: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_play: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_pause: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_play: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_playback_quality_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_playback_rate_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_progress: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ready: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_seek: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ready: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_seek: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_start: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Audio": diff --git a/reflex/components/react_player/react_player.pyi b/reflex/components/react_player/react_player.pyi index 79e38353a..c9e8ba569 100644 --- a/reflex/components/react_player/react_player.pyi +++ b/reflex/components/react_player/react_player.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.component import NoSSRComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class ReactPlayer(NoSSRComponent): @overload @@ -31,98 +31,72 @@ class ReactPlayer(NoSSRComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_buffer: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_buffer: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_buffer_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_click_preview: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_disable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_duration: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_enable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ended: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ended: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_pause: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_play: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_pause: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_play: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_playback_quality_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_playback_rate_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_progress: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ready: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_seek: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ready: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_seek: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_start: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ReactPlayer": diff --git a/reflex/components/react_player/video.pyi b/reflex/components/react_player/video.pyi index 4016c6f44..7f7c1fda1 100644 --- a/reflex/components/react_player/video.pyi +++ b/reflex/components/react_player/video.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Optional, Union, overload from reflex.components.react_player.react_player import ReactPlayer from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Video(ReactPlayer): pass @@ -33,98 +33,72 @@ class Video(ReactPlayer): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_buffer: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_buffer: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_buffer_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_click_preview: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_disable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_duration: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_enable_pip: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ended: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_error: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ended: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_error: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_pause: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_play: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_pause: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_play: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_playback_quality_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_playback_rate_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_progress: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_ready: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_seek: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_ready: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_seek: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_start: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Video": diff --git a/reflex/components/recharts/cartesian.py b/reflex/components/recharts/cartesian.py index 0f2ec2f32..4c76e82ea 100644 --- a/reflex/components/recharts/cartesian.py +++ b/reflex/components/recharts/cartesian.py @@ -7,6 +7,7 @@ from typing import Any, Dict, List, Union from reflex.constants import EventTriggers from reflex.constants.colors import Color from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var from .recharts import ( @@ -86,7 +87,7 @@ class Axis(Recharts): tick_count: Var[int] # If set false, no axis tick lines will be drawn. - tick_line: Var[bool] = Var.create_safe(False) + tick_line: Var[bool] = LiteralVar.create(False) # The length of tick line. tick_size: Var[int] @@ -95,7 +96,7 @@ class Axis(Recharts): min_tick_gap: Var[int] # The stroke color of axis - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 9)) # The text anchor of axis text_anchor: Var[str] # 'start', 'middle', 'end' @@ -136,7 +137,10 @@ class XAxis(Axis): x_axis_id: Var[Union[str, int]] # Ensures that all datapoints within a chart contribute to its domain calculation, even when they are hidden - include_hidden: Var[bool] = Var.create_safe(False) + include_hidden: Var[bool] = LiteralVar.create(False) + + # The range of the axis. Work best in conjuction with allow_data_overflow. + domain: Var[List] # The range of the axis. Work best in conjuction with allow_data_overflow. domain: Var[List] @@ -190,10 +194,10 @@ class Brush(Recharts): alias = "RechartsBrush" # Stroke color - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 9)) # The fill color of brush. - fill: Var[Union[str, Color]] = Var.create_safe(Color("gray", 2)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 2)) # The key of data displayed in the axis. data_key: Var[Union[str, int]] @@ -293,22 +297,22 @@ class Area(Cartesian): alias = "RechartsArea" # The color of the line stroke. - stroke: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # The width of the line stroke. - stroke_width: Var[int] = Var.create_safe(1) + stroke_width: Var[int] = LiteralVar.create(1) # The color of the area fill. - fill: Var[Union[str, Color]] = Var.create_safe(Color("accent", 5)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 5)) # The interpolation type of area. And customized interpolation function can be set to type. 'basis' | 'basisClosed' | 'basisOpen' | 'bumpX' | 'bumpY' | 'bump' | 'linear' | 'linearClosed' | 'natural' | 'monotoneX' | 'monotoneY' | 'monotone' | 'step' | 'stepBefore' | 'stepAfter' | - type_: Var[LiteralAreaType] = Var.create_safe("monotone", _var_is_string=True) + type_: Var[LiteralAreaType] = LiteralVar.create("monotone") # If false set, dots will not be drawn. If true set, dots will be drawn which have the props calculated internally. dot: Var[Union[bool, Dict[str, Any]]] # The dot is shown when user enter an area chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. - active_dot: Var[Union[bool, Dict[str, Any]]] = Var.create_safe( + active_dot: Var[Union[bool, Dict[str, Any]]] = LiteralVar.create( { "stroke": Color("accent", 2), "fill": Color("accent", 10), @@ -345,7 +349,7 @@ class Bar(Cartesian): stroke_width: Var[int] # The width of the line stroke. - fill: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # If false set, background of bars will not be drawn. If true set, background of bars will be drawn which have the props calculated internally. background: Var[bool] @@ -406,13 +410,13 @@ class Line(Cartesian): type_: Var[LiteralAreaType] # The color of the line stroke. - stroke: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # The width of the line stroke. stroke_width: Var[int] # The dot is shown when mouse enter a line chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. - dot: Var[Union[bool, Dict[str, Any]]] = Var.create_safe( + dot: Var[Union[bool, Dict[str, Any]]] = LiteralVar.create( { "stroke": Color("accent", 10), "fill": Color("accent", 4), @@ -420,7 +424,7 @@ class Line(Cartesian): ) # The dot is shown when user enter an area chart and this chart has tooltip. If false set, no active dot will not be drawn. If true set, active dot will be drawn which have the props calculated internally. - active_dot: Var[Union[bool, Dict[str, Any]]] = Var.create_safe( + active_dot: Var[Union[bool, Dict[str, Any]]] = LiteralVar.create( { "stroke": Color("accent", 2), "fill": Color("accent", 10), @@ -478,7 +482,7 @@ class Scatter(Recharts): line_type: Var[LiteralLineType] # The fill - fill: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # the name name: Var[Union[str, int]] @@ -555,7 +559,7 @@ class Funnel(Recharts): animation_easing: Var[LiteralAnimationEasing] # stroke color - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 3)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 3)) # Valid children components _valid_children: List[str] = ["LabelList", "Cell"] @@ -608,7 +612,7 @@ class ErrorBar(Recharts): width: Var[int] # The stroke color of error bar. - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 8)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 8)) # The stroke width of error bar. stroke_width: Var[int] @@ -798,7 +802,7 @@ class CartesianGrid(Grid): stroke_dasharray: Var[str] # the stroke color of grid - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 7)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 7)) class CartesianAxis(Grid): diff --git a/reflex/components/recharts/cartesian.pyi b/reflex/components/recharts/cartesian.pyi index 498ed7444..0ffbd6c53 100644 --- a/reflex/components/recharts/cartesian.pyi +++ b/reflex/components/recharts/cartesian.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .recharts import ( Recharts, @@ -94,50 +94,40 @@ class Axis(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Axis": @@ -267,50 +257,40 @@ class XAxis(Axis): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "XAxis": @@ -443,50 +423,40 @@ class YAxis(Axis): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "YAxis": @@ -589,50 +559,40 @@ class ZAxis(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ZAxis": @@ -683,9 +643,7 @@ class Brush(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, **props, ) -> "Brush": """Create the component. @@ -770,50 +728,40 @@ class Cartesian(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Cartesian": @@ -945,50 +893,40 @@ class Area(Cartesian): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Area": @@ -1098,55 +1036,45 @@ class Bar(Cartesian): autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, on_animation_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animation_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Bar": @@ -1293,50 +1221,40 @@ class Line(Cartesian): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Line": @@ -1453,50 +1371,40 @@ class Scatter(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Scatter": @@ -1589,55 +1497,45 @@ class Funnel(Recharts): autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, on_animation_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animation_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Funnel": @@ -1686,50 +1584,40 @@ class ErrorBar(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ErrorBar": @@ -1777,50 +1665,40 @@ class Reference(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Reference": @@ -1873,50 +1751,40 @@ class ReferenceLine(Reference): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ReferenceLine": @@ -1974,50 +1842,40 @@ class ReferenceDot(Reference): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ReferenceDot": @@ -2076,50 +1934,40 @@ class ReferenceArea(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ReferenceArea": @@ -2167,50 +2015,40 @@ class Grid(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Grid": @@ -2263,50 +2101,40 @@ class CartesianGrid(Grid): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CartesianGrid": @@ -2374,50 +2202,40 @@ class CartesianAxis(Grid): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CartesianAxis": diff --git a/reflex/components/recharts/charts.py b/reflex/components/recharts/charts.py index 0f52545d0..37b865b1d 100644 --- a/reflex/components/recharts/charts.py +++ b/reflex/components/recharts/charts.py @@ -9,6 +9,7 @@ from reflex.components.recharts.general import ResponsiveContainer from reflex.constants import EventTriggers from reflex.constants.colors import Color from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var from .recharts import ( @@ -156,10 +157,10 @@ class BarChart(CategoricalChartBase): alias = "RechartsBarChart" # The gap between two bar categories, which can be a percent value or a fixed value. Percentage | Number - bar_category_gap: Var[Union[str, int]] = Var.create_safe("10%", _var_is_string=True) # type: ignore + bar_category_gap: Var[Union[str, int]] = LiteralVar.create("10%") # The gap between two bars in the same category, which can be a percent value or a fixed value. Percentage | Number - bar_gap: Var[Union[str, int]] = Var.create_safe(4) # type: ignore + bar_gap: Var[Union[str, int]] = LiteralVar.create(4) # type: ignore # The width of all the bars in the chart. Number bar_size: Var[int] diff --git a/reflex/components/recharts/charts.pyi b/reflex/components/recharts/charts.pyi index 9984bd8c5..48bde7483 100644 --- a/reflex/components/recharts/charts.pyi +++ b/reflex/components/recharts/charts.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .recharts import ( RechartsCharts, @@ -28,50 +28,40 @@ class ChartBase(RechartsCharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ChartBase": @@ -126,50 +116,40 @@ class CategoricalChartBase(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "CategoricalChartBase": @@ -237,50 +217,40 @@ class AreaChart(CategoricalChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "AreaChart": @@ -347,50 +317,40 @@ class BarChart(CategoricalChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "BarChart": @@ -456,50 +416,40 @@ class LineChart(CategoricalChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "LineChart": @@ -571,50 +521,40 @@ class ComposedChart(CategoricalChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ComposedChart": @@ -663,50 +603,40 @@ class PieChart(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PieChart": @@ -753,14 +683,12 @@ class RadarChart(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadarChart": @@ -816,50 +744,40 @@ class RadialBarChart(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadialBarChart": @@ -909,29 +827,27 @@ class ScatterChart(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ScatterChart": @@ -972,50 +888,40 @@ class FunnelChart(ChartBase): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "FunnelChart": @@ -1068,55 +974,45 @@ class Treemap(RechartsCharts): autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, on_animation_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animation_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Treemap": diff --git a/reflex/components/recharts/general.py b/reflex/components/recharts/general.py index 613e6fbf0..4f81ea833 100644 --- a/reflex/components/recharts/general.py +++ b/reflex/components/recharts/general.py @@ -7,6 +7,7 @@ from typing import Any, Dict, List, Union from reflex.components.component import MemoizationLeaf from reflex.constants.colors import Color from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var from .recharts import ( @@ -139,7 +140,7 @@ class GraphingTooltip(Recharts): filter_null: Var[bool] # If set false, no cursor will be drawn when tooltip is active. - cursor: Var[Union[Dict[str, Any], bool]] = Var.create_safe( + cursor: Var[Union[Dict[str, Any], bool]] = LiteralVar.create( { "strokeWidth": 1, "fill": Color("gray", 3), @@ -150,7 +151,7 @@ class GraphingTooltip(Recharts): view_box: Var[Dict[str, Any]] # The style of default tooltip content item which is a li element. DEFAULT: {} - item_style: Var[Dict[str, Any]] = Var.create_safe( + item_style: Var[Dict[str, Any]] = LiteralVar.create( { "color": Color("gray", 12), } @@ -159,7 +160,7 @@ class GraphingTooltip(Recharts): # The style of tooltip wrapper which is a dom element. DEFAULT: {} wrapper_style: Var[Dict[str, Any]] # The style of tooltip content which is a dom element. DEFAULT: {} - content_style: Var[Dict[str, Any]] = Var.create_safe( + content_style: Var[Dict[str, Any]] = LiteralVar.create( { "background": Color("gray", 1), "borderColor": Color("gray", 4), @@ -168,10 +169,10 @@ class GraphingTooltip(Recharts): ) # The style of default tooltip label which is a p element. DEFAULT: {} - label_style: Var[Dict[str, Any]] = Var.create_safe({"color": Color("gray", 11)}) + label_style: Var[Dict[str, Any]] = LiteralVar.create({"color": Color("gray", 11)}) # This option allows the tooltip to extend beyond the viewBox of the chart itself. DEFAULT: { x: false, y: false } - allow_escape_view_box: Var[Dict[str, bool]] = Var.create_safe( + allow_escape_view_box: Var[Dict[str, bool]] = LiteralVar.create( {"x": False, "y": False} ) @@ -231,10 +232,10 @@ class LabelList(Recharts): offset: Var[int] # The fill color of each label - fill: Var[Union[str, Color]] = Var.create_safe(Color("gray", 10)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 10)) # The stroke color of each label - stroke: Var[Union[str, Color]] = Var.create_safe("none", _var_is_string=True) + stroke: Var[Union[str, Color]] = LiteralVar.create("none") responsive_container = ResponsiveContainer.create diff --git a/reflex/components/recharts/general.pyi b/reflex/components/recharts/general.pyi index 9dd2ae19c..be6a0d42f 100644 --- a/reflex/components/recharts/general.pyi +++ b/reflex/components/recharts/general.pyi @@ -9,7 +9,7 @@ from reflex.components.component import MemoizationLeaf from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .recharts import ( Recharts, @@ -33,50 +33,40 @@ class ResponsiveContainer(Recharts, MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "ResponsiveContainer": @@ -169,50 +159,40 @@ class Legend(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Legend": @@ -280,50 +260,40 @@ class GraphingTooltip(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "GraphingTooltip": @@ -421,50 +391,40 @@ class Label(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Label": @@ -551,50 +511,40 @@ class LabelList(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "LabelList": diff --git a/reflex/components/recharts/polar.py b/reflex/components/recharts/polar.py index 64fa00ecd..76347352b 100644 --- a/reflex/components/recharts/polar.py +++ b/reflex/components/recharts/polar.py @@ -7,6 +7,7 @@ from typing import Any, Dict, List, Union from reflex.constants import EventTriggers from reflex.constants.colors import Color from reflex.event import EventHandler +from reflex.ivars.base import LiteralVar from reflex.vars import Var from .recharts import ( @@ -72,10 +73,10 @@ class Pie(Recharts): _valid_children: List[str] = ["Cell", "LabelList"] # Stoke color - stroke: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # Fill color - fill: Var[Union[str, Color]] = Var.create_safe(Color("accent", 3)) + fill: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 3)) def get_event_triggers(self) -> dict[str, Union[Var, Any]]: """Get the event triggers that pass the component's value to the handler. @@ -110,13 +111,13 @@ class Radar(Recharts): dot: Var[bool] # Stoke color - stroke: Var[Union[str, Color]] = Var.create_safe(Color("accent", 9)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("accent", 9)) # Fill color - fill: Var[str] = Var.create_safe(Color("accent", 3)) + fill: Var[str] = LiteralVar.create(Color("accent", 3)) # opacity - fill_opacity: Var[float] = Var.create_safe(0.6) + fill_opacity: Var[float] = LiteralVar.create(0.6) # The type of icon in legend. If set to 'none', no legend item will be rendered. legend_type: Var[str] @@ -218,7 +219,7 @@ class PolarAngleAxis(Recharts): axis_line_type: Var[str] # If false set, tick lines will not be drawn. If true set, tick lines will be drawn which have the props calculated internally. If object set, tick lines will be drawn which have the props mergered by the internal calculated props and the option. - tick_line: Var[Union[bool, Dict[str, Any]]] = Var.create_safe(False) + tick_line: Var[Union[bool, Dict[str, Any]]] = LiteralVar.create(False) # The width or height of tick. tick: Var[Union[int, str]] @@ -230,7 +231,7 @@ class PolarAngleAxis(Recharts): orient: Var[str] # The stroke color of axis - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 10)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 10)) # Allow the axis has duplicated categorys or not when the type of axis is "category". allow_duplicated_category: Var[bool] @@ -292,7 +293,7 @@ class PolarGrid(Recharts): grid_type: Var[LiteralGridType] # The stroke color of grid - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 10)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 10)) # Valid children components _valid_children: List[str] = ["RadarChart", "RadiarBarChart"] @@ -342,10 +343,10 @@ class PolarRadiusAxis(Recharts): _valid_children: List[str] = ["Label"] # The domain of the polar radius axis, specifying the minimum and maximum values. - domain: Var[List[int]] = Var.create_safe([0, 250]) + domain: Var[List[int]] = LiteralVar.create([0, 250]) # The stroke color of axis - stroke: Var[Union[str, Color]] = Var.create_safe(Color("gray", 10)) + stroke: Var[Union[str, Color]] = LiteralVar.create(Color("gray", 10)) def get_event_triggers(self) -> dict[str, Union[Var, Any]]: """Get the event triggers that pass the component's value to the handler. diff --git a/reflex/components/recharts/polar.pyi b/reflex/components/recharts/polar.pyi index d91186296..81fb74b27 100644 --- a/reflex/components/recharts/polar.pyi +++ b/reflex/components/recharts/polar.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, List, Literal, Optional, Union, overload from reflex.constants.colors import Color from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var from .recharts import ( Recharts, @@ -74,23 +74,21 @@ class Pie(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Pie": @@ -155,50 +153,40 @@ class Radar(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Radar": @@ -262,28 +250,26 @@ class RadialBar(Recharts): autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, on_animation_end: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_animation_start: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RadialBar": @@ -341,50 +327,40 @@ class PolarAngleAxis(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PolarAngleAxis": @@ -439,50 +415,40 @@ class PolarGrid(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PolarGrid": @@ -580,23 +546,21 @@ class PolarRadiusAxis(Recharts): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "PolarRadiusAxis": diff --git a/reflex/components/recharts/recharts.pyi b/reflex/components/recharts/recharts.pyi index 409285eb5..695ecab48 100644 --- a/reflex/components/recharts/recharts.pyi +++ b/reflex/components/recharts/recharts.pyi @@ -8,7 +8,7 @@ from typing import Any, Callable, Dict, Literal, Optional, Union, overload from reflex.components.component import Component, MemoizationLeaf, NoSSRComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Recharts(Component): def render(self) -> Dict: ... @@ -23,50 +23,40 @@ class Recharts(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Recharts": @@ -99,50 +89,40 @@ class RechartsCharts(NoSSRComponent, MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "RechartsCharts": diff --git a/reflex/components/sonner/toast.py b/reflex/components/sonner/toast.py index e00eaad4e..c7ec5ca60 100644 --- a/reflex/components/sonner/toast.py +++ b/reflex/components/sonner/toast.py @@ -14,6 +14,7 @@ from reflex.event import ( EventSpec, call_script, ) +from reflex.ivars.base import LiteralVar from reflex.style import Style, resolved_color_mode from reflex.utils import format from reflex.utils.imports import ImportVar @@ -75,6 +76,9 @@ def _toast_callback_signature(toast: Var) -> list[Var]: class ToastProps(PropsBase): """Props for the toast component.""" + # Toast's title, renders above the description. + title: Optional[Union[str, Var]] + # Toast's description, renders underneath the title. description: Optional[Union[str, Var]] @@ -197,21 +201,19 @@ class Toaster(Component): theme: Var[str] = resolved_color_mode # whether to show rich colors - rich_colors: Var[bool] = Var.create_safe(True) + rich_colors: Var[bool] = LiteralVar.create(True) # whether to expand the toast - expand: Var[bool] = Var.create_safe(True) + expand: Var[bool] = LiteralVar.create(True) # the number of toasts that are currently visible visible_toasts: Var[int] # the position of the toast - position: Var[LiteralPosition] = Var.create_safe( - "bottom-right", _var_is_string=True - ) + position: Var[LiteralPosition] = LiteralVar.create("bottom-right") # whether to show the close button - close_button: Var[bool] = Var.create_safe(False) + close_button: Var[bool] = LiteralVar.create(False) # offset of the toast offset: Var[str] @@ -291,7 +293,7 @@ class Toaster(Component): return call_script(toast_action) @staticmethod - def toast_info(message: str, **kwargs): + def toast_info(message: str = "", **kwargs): """Display an info toast message. Args: @@ -304,7 +306,7 @@ class Toaster(Component): return Toaster.send_toast(message, level="info", **kwargs) @staticmethod - def toast_warning(message: str, **kwargs): + def toast_warning(message: str = "", **kwargs): """Display a warning toast message. Args: @@ -317,7 +319,7 @@ class Toaster(Component): return Toaster.send_toast(message, level="warning", **kwargs) @staticmethod - def toast_error(message: str, **kwargs): + def toast_error(message: str = "", **kwargs): """Display an error toast message. Args: @@ -330,7 +332,7 @@ class Toaster(Component): return Toaster.send_toast(message, level="error", **kwargs) @staticmethod - def toast_success(message: str, **kwargs): + def toast_success(message: str = "", **kwargs): """Display a success toast message. Args: @@ -356,7 +358,7 @@ class Toaster(Component): if isinstance(id, Var): dismiss = f"{toast_ref}.dismiss({id._var_name_unwrapped})" - dismiss_var_data = id._var_data + dismiss_var_data = id._get_all_var_data() elif isinstance(id, str): dismiss = f"{toast_ref}.dismiss('{id}')" else: @@ -365,7 +367,7 @@ class Toaster(Component): dismiss, _var_is_string=False, _var_is_local=True, - _var_data=dismiss_var_data, + _var_data=VarData.merge(dismiss_var_data), ) return call_script(dismiss_action) diff --git a/reflex/components/sonner/toast.pyi b/reflex/components/sonner/toast.pyi index c7e626915..bb7191eb8 100644 --- a/reflex/components/sonner/toast.pyi +++ b/reflex/components/sonner/toast.pyi @@ -12,7 +12,7 @@ from reflex.components.props import PropsBase from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.serializers import serializer -from reflex.vars import BaseVar, Var +from reflex.vars import Var LiteralPosition = Literal[ "top-left", @@ -32,6 +32,7 @@ class ToastAction(Base): def serialize_action(action: ToastAction) -> dict: ... class ToastProps(PropsBase): + title: Optional[Union[str, Var]] description: Optional[Union[str, Var]] close_button: Optional[bool] invert: Optional[bool] @@ -65,13 +66,13 @@ class Toaster(Component): message: str = "", level: str | None = None, **props ) -> EventSpec: ... @staticmethod - def toast_info(message: str, **kwargs): ... + def toast_info(message: str = "", **kwargs): ... @staticmethod - def toast_warning(message: str, **kwargs): ... + def toast_warning(message: str = "", **kwargs): ... @staticmethod - def toast_error(message: str, **kwargs): ... + def toast_error(message: str = "", **kwargs): ... @staticmethod - def toast_success(message: str, **kwargs): ... + def toast_success(message: str = "", **kwargs): ... @staticmethod def toast_dismiss(id: Var | str | None = None): ... @overload @@ -120,50 +121,40 @@ class Toaster(Component): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Toaster": diff --git a/reflex/components/suneditor/editor.pyi b/reflex/components/suneditor/editor.pyi index 8a86e0270..b1bc8a830 100644 --- a/reflex/components/suneditor/editor.pyi +++ b/reflex/components/suneditor/editor.pyi @@ -11,7 +11,7 @@ from reflex.components.component import NoSSRComponent from reflex.event import EventHandler, EventSpec from reflex.style import Style from reflex.utils.imports import ImportDict -from reflex.vars import BaseVar, Var +from reflex.vars import Var class EditorButtonList(list, enum.Enum): BASIC = [["font", "fontSize"], ["fontColor"], ["horizontalRule"], ["link", "image"]] @@ -122,77 +122,55 @@ class Editor(NoSSRComponent): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_change: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_copy: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_cut: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_copy: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_cut: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_input: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_load: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_input: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_load: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_paste: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_paste: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_resize_editor: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, toggle_code_view: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, toggle_full_screen: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Editor": diff --git a/reflex/components/tags/iter_tag.py b/reflex/components/tags/iter_tag.py index 95a496b71..0828f8b10 100644 --- a/reflex/components/tags/iter_tag.py +++ b/reflex/components/tags/iter_tag.py @@ -6,7 +6,8 @@ import inspect from typing import TYPE_CHECKING, Any, Callable, List, Tuple, Type, Union, get_args from reflex.components.tags.tag import Tag -from reflex.vars import BaseVar, Var +from reflex.ivars.base import ImmutableVar +from reflex.vars import Var if TYPE_CHECKING: from reflex.components.component import Component @@ -53,10 +54,10 @@ class IterTag(Tag): Returns: The index var. """ - return BaseVar( + return ImmutableVar( _var_name=self.index_var_name, _var_type=int, - ) + ).guess_type() def get_arg_var(self) -> Var: """Get the arg var for the tag (with curly braces). @@ -66,10 +67,10 @@ class IterTag(Tag): Returns: The arg var. """ - return BaseVar( + return ImmutableVar( _var_name=self.arg_var_name, _var_type=self.get_iterable_var_type(), - ) + ).guess_type() def get_index_var_arg(self) -> Var: """Get the index var for the tag (without curly braces). @@ -79,11 +80,10 @@ class IterTag(Tag): Returns: The index var. """ - return BaseVar( + return ImmutableVar( _var_name=self.index_var_name, _var_type=int, - _var_is_local=True, - ) + ).guess_type() def get_arg_var_arg(self) -> Var: """Get the arg var for the tag (without curly braces). @@ -93,11 +93,10 @@ class IterTag(Tag): Returns: The arg var. """ - return BaseVar( + return ImmutableVar( _var_name=self.arg_var_name, _var_type=self.get_iterable_var_type(), - _var_is_local=True, - ) + ).guess_type() def render_component(self) -> Component: """Render the component. diff --git a/reflex/components/tags/tag.py b/reflex/components/tags/tag.py index bacea6a41..9a8cca11f 100644 --- a/reflex/components/tags/tag.py +++ b/reflex/components/tags/tag.py @@ -6,6 +6,7 @@ from typing import Any, Dict, List, Optional, Set, Tuple, Union from reflex.base import Base from reflex.event import EventChain +from reflex.ivars.base import LiteralVar from reflex.utils import format, types from reflex.vars import Var @@ -41,7 +42,7 @@ class Tag(Base): # Convert any props to vars. if "props" in kwargs: kwargs["props"] = { - name: Var.create(value, _var_is_string=False) + name: LiteralVar.create(value) for name, value in kwargs["props"].items() } super().__init__(*args, **kwargs) @@ -63,14 +64,12 @@ class Tag(Base): Returns: The tag with the props added. """ - from reflex.components.core.colors import Color - self.props.update( { - format.to_camel_case(name, allow_hyphens=True): prop - if types._isinstance(prop, Union[EventChain, dict]) - else Var.create( - prop, _var_is_string=isinstance(prop, Color) + format.to_camel_case(name, allow_hyphens=True): ( + prop + if types._isinstance(prop, Union[EventChain, dict]) + else LiteralVar.create(prop) ) # rx.color is always a string for name, prop in kwargs.items() if self.is_valid_prop(prop) diff --git a/reflex/constants/base.py b/reflex/constants/base.py index a858a69b1..d5407902e 100644 --- a/reflex/constants/base.py +++ b/reflex/constants/base.py @@ -45,6 +45,8 @@ class Dirs(SimpleNamespace): REFLEX_JSON = "reflex.json" # The name of the postcss config file. POSTCSS_JS = "postcss.config.js" + # The name of the states directory. + STATES = "states" class Reflex(SimpleNamespace): @@ -103,7 +105,7 @@ class Templates(SimpleNamespace): # The reflex.build backend host REFLEX_BUILD_BACKEND = os.environ.get( - "REFLEX_BUILD_BACKEND", "https://rxh-prod-flexgen.fly.dev" + "REFLEX_BUILD_BACKEND", "https://flexgen-prod-flexgen.fly.dev" ) # The URL to redirect to reflex.build diff --git a/reflex/constants/event.py b/reflex/constants/event.py index 351a1ac52..d454e6ea8 100644 --- a/reflex/constants/event.py +++ b/reflex/constants/event.py @@ -11,6 +11,7 @@ class Endpoint(Enum): EVENT = "_event" UPLOAD = "_upload" AUTH_CODESPACE = "auth-codespace" + HEALTH = "_health" def __str__(self) -> str: """Get the string representation of the endpoint. diff --git a/reflex/event.py b/reflex/event.py index 7e98ade38..b8fed5708 100644 --- a/reflex/event.py +++ b/reflex/event.py @@ -3,6 +3,7 @@ from __future__ import annotations import inspect +import types import urllib.parse from base64 import b64encode from typing import ( @@ -18,9 +19,13 @@ from typing import ( from reflex import constants from reflex.base import Base +from reflex.ivars.base import ImmutableVar, LiteralVar +from reflex.ivars.function import FunctionStringVar, FunctionVar +from reflex.ivars.object import ObjectVar from reflex.utils import format +from reflex.utils.exceptions import EventFnArgMismatch, EventHandlerArgMismatch from reflex.utils.types import ArgsSpec -from reflex.vars import BaseVar, Var +from reflex.vars import ImmutableVarData, Var try: from typing import Annotated @@ -186,7 +191,7 @@ class EventHandler(EventActionsMixin): # Get the function args. fn_args = inspect.getfullargspec(self.fn).args[1:] - fn_args = (Var.create_safe(arg, _var_is_string=False) for arg in fn_args) + fn_args = (ImmutableVar.create_safe(arg) for arg in fn_args) # Construct the payload. values = [] @@ -197,7 +202,7 @@ class EventHandler(EventActionsMixin): # Otherwise, convert to JSON. try: - values.append(Var.create(arg, _var_is_string=isinstance(arg, str))) + values.append(LiteralVar.create(arg)) except TypeError as e: raise EventHandlerTypeError( f"Arguments to event handlers must be Vars or JSON-serializable. Got {arg} of type {type(arg)}." @@ -264,13 +269,13 @@ class EventSpec(EventActionsMixin): # Get the remaining unfilled function args. fn_args = inspect.getfullargspec(self.handler.fn).args[1 + len(self.args) :] - fn_args = (Var.create_safe(arg, _var_is_string=False) for arg in fn_args) + fn_args = (ImmutableVar.create_safe(arg) for arg in fn_args) # Construct the payload. values = [] for arg in args: try: - values.append(Var.create(arg, _var_is_string=isinstance(arg, str))) + values.append(LiteralVar.create(arg)) except TypeError as e: raise EventHandlerTypeError( f"Arguments to event handlers must be Vars or JSON-serializable. Got {arg} of type {type(arg)}." @@ -388,15 +393,16 @@ class FileUpload(Base): upload_id = self.upload_id or DEFAULT_UPLOAD_ID spec_args = [ ( - Var.create_safe("files", _var_is_string=False), - Var.create_safe( - f"filesById[{Var.create_safe(upload_id, _var_is_string=True)._var_name_unwrapped}]", - _var_is_string=False, - )._replace(_var_data=upload_files_context_var_data), + ImmutableVar.create_safe("files"), + ImmutableVar( + _var_name="filesById", + _var_type=Dict[str, Any], + _var_data=ImmutableVarData.merge(upload_files_context_var_data), + ).to(ObjectVar)[LiteralVar.create(upload_id)], ), ( - Var.create_safe("upload_id", _var_is_string=False), - Var.create_safe(upload_id, _var_is_string=True), + ImmutableVar.create_safe("upload_id"), + LiteralVar.create(upload_id), ), ] if self.on_upload_progress is not None: @@ -424,11 +430,10 @@ class FileUpload(Base): formatted_chain = str(format.format_prop(on_upload_progress_chain)) spec_args.append( ( - Var.create_safe("on_upload_progress", _var_is_string=False), - BaseVar( - _var_name=formatted_chain.strip("{}"), - _var_type=EventChain, - ), + ImmutableVar.create_safe("on_upload_progress"), + FunctionStringVar( + formatted_chain.strip("{}"), + ).to(FunctionVar, EventChain), ), ) return EventSpec( @@ -465,8 +470,8 @@ def server_side(name: str, sig: inspect.Signature, **kwargs) -> EventSpec: handler=EventHandler(fn=fn), args=tuple( ( - Var.create_safe(k, _var_is_string=False), - Var.create_safe(v, _var_is_string=isinstance(v, str)), + ImmutableVar.create_safe(k), + LiteralVar.create(v), ) for k, v in kwargs.items() ), @@ -542,7 +547,7 @@ def set_focus(ref: str) -> EventSpec: return server_side( "_set_focus", get_fn_signature(set_focus), - ref=Var.create_safe(format.format_ref(ref), _var_is_string=True), + ref=LiteralVar.create(format.format_ref(ref)), ) @@ -573,7 +578,7 @@ def set_value(ref: str, value: Any) -> EventSpec: return server_side( "_set_value", get_fn_signature(set_value), - ref=Var.create_safe(format.format_ref(ref), _var_is_string=True), + ref=LiteralVar.create(format.format_ref(ref)), value=value, ) @@ -711,15 +716,11 @@ def download( url = "data:text/plain," + urllib.parse.quote(data) elif isinstance(data, Var): # Need to check on the frontend if the Var already looks like a data: URI. - is_data_url = data._replace( - _var_name=( - f"typeof {data._var_full_name} == 'string' && " - f"{data._var_full_name}.startsWith('data:')" - ), - _var_type=bool, - _var_is_string=False, - _var_full_name_needs_state_prefix=False, - ) + + is_data_url = (data._type() == "string") & ( + data.to(str).startswith("data:") + ) # type: ignore + # If it's a data: URI, use it as is, otherwise convert the Var to JSON in a data: URI. url = cond( # type: ignore is_data_url, @@ -757,11 +758,13 @@ def _callback_arg_spec(eval_result): def call_script( javascript_code: str | Var[str], - callback: EventSpec - | EventHandler - | Callable - | List[EventSpec | EventHandler | Callable] - | None = None, + callback: ( + EventSpec + | EventHandler + | Callable + | List[EventSpec | EventHandler | Callable] + | None + ) = None, ) -> EventSpec: """Create an event handler that executes arbitrary javascript code. @@ -830,7 +833,7 @@ def call_event_handler( arg_spec: The lambda that define the argument(s) to pass to the event handler. Raises: - ValueError: if number of arguments expected by event_handler doesn't match the spec. + EventHandlerArgMismatch: if number of arguments expected by event_handler doesn't match the spec. Returns: The event spec from calling the event handler. @@ -842,13 +845,16 @@ def call_event_handler( return event_handler.add_args(*parsed_args) args = inspect.getfullargspec(event_handler.fn).args - if len(args) == len(["self", *parsed_args]): + n_args = len(args) - 1 # subtract 1 for bound self arg + if n_args == len(parsed_args): return event_handler(*parsed_args) # type: ignore else: - source = inspect.getsource(arg_spec) # type: ignore - raise ValueError( - f"number of arguments in {event_handler.fn.__qualname__} " - f"doesn't match the definition of the event trigger '{source.strip().strip(',')}'" + raise EventHandlerArgMismatch( + "The number of arguments accepted by " + f"{event_handler.fn.__qualname__} ({n_args}) " + "does not match the arguments passed by the event trigger: " + f"{[str(v) for v in parsed_args]}\n" + "See https://reflex.dev/docs/events/event-arguments/" ) @@ -865,68 +871,68 @@ def parse_args_spec(arg_spec: ArgsSpec): annotations = get_type_hints(arg_spec) return arg_spec( *[ - BaseVar( - _var_name=f"_{l_arg}", - _var_type=annotations.get(l_arg, FrontendEvent), - _var_is_local=True, + ImmutableVar(f"_{l_arg}").to( + ObjectVar, annotations.get(l_arg, FrontendEvent) ) for l_arg in spec.args ] ) -def call_event_fn(fn: Callable, arg: Union[Var, ArgsSpec]) -> list[EventSpec] | Var: +def call_event_fn(fn: Callable, arg_spec: ArgsSpec) -> list[EventSpec] | Var: """Call a function to a list of event specs. The function should return a single EventSpec, a list of EventSpecs, or a - single Var. If the function takes in an arg, the arg will be passed to the - function. Otherwise, the function will be called with no args. + single Var. The function signature must match the passed arg_spec or + EventFnArgsMismatch will be raised. Args: fn: The function to call. - arg: The argument to pass to the function. + arg_spec: The argument spec for the event trigger. Returns: The event specs from calling the function or a Var. Raises: - EventHandlerValueError: If the lambda has an invalid signature. + EventFnArgMismatch: If the function signature doesn't match the arg spec. + EventHandlerValueError: If the lambda returns an unusable value. """ # Import here to avoid circular imports. from reflex.event import EventHandler, EventSpec from reflex.utils.exceptions import EventHandlerValueError - # Get the args of the lambda. - args = inspect.getfullargspec(fn).args + # Check that fn signature matches arg_spec + fn_args = inspect.getfullargspec(fn).args + n_fn_args = len(fn_args) + if isinstance(fn, types.MethodType): + n_fn_args -= 1 # subtract 1 for bound self arg + parsed_args = parse_args_spec(arg_spec) + if len(parsed_args) != n_fn_args: + raise EventFnArgMismatch( + "The number of arguments accepted by " + f"{fn} ({n_fn_args}) " + "does not match the arguments passed by the event trigger: " + f"{[str(v) for v in parsed_args]}\n" + "See https://reflex.dev/docs/events/event-arguments/" + ) - if isinstance(arg, ArgsSpec): - out = fn(*parse_args_spec(arg)) # type: ignore - else: - # Call the lambda. - if len(args) == 0: - out = fn() - elif len(args) == 1: - out = fn(arg) - else: - raise EventHandlerValueError(f"Lambda {fn} must have 0 or 1 arguments.") + # Call the function with the parsed args. + out = fn(*parsed_args) # If the function returns a Var, assume it's an EventChain and render it directly. if isinstance(out, Var): return out # Convert the output to a list. - if not isinstance(out, List): + if not isinstance(out, list): out = [out] # Convert any event specs to event specs. events = [] for e in out: - # Convert handlers to event specs. if isinstance(e, EventHandler): - if len(args) == 0: - e = e() - elif len(args) == 1: - e = e(arg) # type: ignore + # An un-called EventHandler gets all of the args of the event trigger. + e = call_event_handler(e, arg_spec) # Make sure the event spec is valid. if not isinstance(e, EventSpec): diff --git a/reflex/experimental/__init__.py b/reflex/experimental/__init__.py index 060f7e7f1..0c11deb85 100644 --- a/reflex/experimental/__init__.py +++ b/reflex/experimental/__init__.py @@ -8,7 +8,6 @@ from reflex.components.sonner.toast import toast as toast from ..utils.console import warn from . import hooks as hooks -from . import vars as vars from .assets import asset as asset from .client_state import ClientStateVar as ClientStateVar from .layout import layout as layout @@ -33,19 +32,39 @@ class ExperimentalNamespace(SimpleNamespace): Returns: The toast namespace. """ - if "toast" not in _EMITTED_PROMOTION_WARNINGS: - _EMITTED_PROMOTION_WARNINGS.add("toast") - warn(f"`rx._x.toast` was promoted to `rx.toast`.") + self.register_component_warning("toast") return toast + @property + def progress(self): + """Temporary property returning the toast namespace. + + Remove this property when toast is fully promoted. + + Returns: + The toast namespace. + """ + self.register_component_warning("progress") + return progress + + @staticmethod + def register_component_warning(component_name: str): + """Add component to emitted warnings and throw a warning if it + doesn't exist. + + Args: + component_name: name of the component. + """ + if component_name not in _EMITTED_PROMOTION_WARNINGS: + _EMITTED_PROMOTION_WARNINGS.add(component_name) + warn(f"`rx._x.{component_name}` was promoted to `rx.{component_name}`.") + _x = ExperimentalNamespace( asset=asset, client_state=ClientStateVar.create, hooks=hooks, - vars=vars, layout=layout, - progress=progress, PropsBase=PropsBase, run_in_thread=run_in_thread, ) diff --git a/reflex/experimental/client_state.py b/reflex/experimental/client_state.py index 3033b94dd..af3056c4d 100644 --- a/reflex/experimental/client_state.py +++ b/reflex/experimental/client_state.py @@ -8,8 +8,10 @@ from typing import Any, Callable, Optional, Type, Union from reflex import constants from reflex.event import EventChain, EventHandler, EventSpec, call_script +from reflex.ivars.base import ImmutableVar, LiteralVar +from reflex.ivars.function import FunctionVar from reflex.utils.imports import ImportVar -from reflex.vars import Var, VarData, get_unique_variable_name +from reflex.vars import ImmutableVarData, Var, VarData, get_unique_variable_name NoValue = object() @@ -109,12 +111,11 @@ class ClientStateVar(Var): var_name = get_unique_variable_name() assert isinstance(var_name, str), "var_name must be a string." if default is NoValue: - default_var = Var.create_safe("", _var_is_local=False, _var_is_string=False) - elif not isinstance(default, Var): - default_var = Var.create_safe( - default, - _var_is_string=isinstance(default, str), + default_var = ImmutableVar.create_safe( + "", _var_is_local=False, _var_is_string=False ) + elif not isinstance(default, Var): + default_var = LiteralVar.create(default) else: default_var = default setter_name = f"set{var_name.capitalize()}" @@ -157,12 +158,10 @@ class ClientStateVar(Var): an accessor for the client state variable. """ return ( - Var.create_safe( + ImmutableVar.create_safe( _client_state_ref(self._getter_name) if self._global_ref - else self._getter_name, - _var_is_local=False, - _var_is_string=False, + else self._getter_name ) .to(self._var_type) ._replace( @@ -192,25 +191,18 @@ class ClientStateVar(Var): ) if value is not NoValue: # This is a hack to make it work like an EventSpec taking an arg - value = Var.create_safe(value, _var_is_string=isinstance(value, str)) + value = LiteralVar.create(value) if not value._var_is_string and value._var_full_name.startswith("_"): arg = value._var_name_unwrapped.partition(".")[0] else: arg = "" setter = f"({arg}) => {setter}({value._var_name_unwrapped})" - return ( - Var.create_safe( - setter, - _var_is_local=False, - _var_is_string=False, - ) - .to(EventChain) - ._replace( - merge_var_data=VarData( # type: ignore - imports=_refs_import if self._global_ref else {} - ) - ) - ) + return ImmutableVar( + _var_name=setter, + _var_data=ImmutableVarData( + imports=_refs_import if self._global_ref else {} + ), + ).to(FunctionVar, EventChain) @property def set(self) -> Var: diff --git a/reflex/experimental/layout.pyi b/reflex/experimental/layout.pyi index 68e7e1ecd..8799b4961 100644 --- a/reflex/experimental/layout.pyi +++ b/reflex/experimental/layout.pyi @@ -13,7 +13,7 @@ from reflex.components.radix.themes.layout.box import Box from reflex.event import EventHandler, EventSpec from reflex.state import ComponentState from reflex.style import Style -from reflex.vars import BaseVar, Var +from reflex.vars import Var class Sidebar(Box, MemoizationLeaf): @overload @@ -51,50 +51,40 @@ class Sidebar(Box, MemoizationLeaf): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Sidebar": @@ -146,53 +136,43 @@ class DrawerSidebar(DrawerRoot): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_open_change: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "DrawerSidebar": @@ -227,50 +207,40 @@ class SidebarTrigger(Fragment): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "SidebarTrigger": @@ -322,50 +292,40 @@ class Layout(Box): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Layout": @@ -420,50 +380,40 @@ class LayoutNamespace(ComponentNamespace): class_name: Optional[Any] = None, autofocus: Optional[bool] = None, custom_attrs: Optional[Dict[str, Union[Var, str]]] = None, - on_blur: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, + on_blur: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_context_menu: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_double_click: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_focus: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_mount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_focus: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, + on_mount: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_mouse_down: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_enter: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_leave: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_move: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_out: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_over: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, on_mouse_up: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] - ] = None, - on_scroll: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, + on_scroll: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None, on_unmount: Optional[ - Union[EventHandler, EventSpec, list, Callable, BaseVar] + Union[EventHandler, EventSpec, list, Callable, Var] ] = None, **props, ) -> "Layout": diff --git a/reflex/experimental/vars/base.py b/reflex/experimental/vars/base.py deleted file mode 100644 index 7da1e6537..000000000 --- a/reflex/experimental/vars/base.py +++ /dev/null @@ -1,583 +0,0 @@ -"""Collection of base classes.""" - -from __future__ import annotations - -import dataclasses -import functools -import inspect -import sys -from typing import ( - TYPE_CHECKING, - Any, - Callable, - Dict, - Generic, - List, - Optional, - Set, - Tuple, - Type, - TypeVar, - Union, - overload, -) - -from typing_extensions import ParamSpec, get_origin - -from reflex import constants -from reflex.base import Base -from reflex.utils import serializers, types -from reflex.utils.exceptions import VarTypeError -from reflex.vars import ( - ImmutableVarData, - Var, - VarData, - _decode_var_immutable, - _extract_var_data, - _global_vars, -) - -if TYPE_CHECKING: - from .function import FunctionVar, ToFunctionOperation - from .number import ( - BooleanVar, - NumberVar, - ToBooleanVarOperation, - ToNumberVarOperation, - ) - from .object import ObjectVar, ToObjectOperation - from .sequence import ArrayVar, StringVar, ToArrayOperation, ToStringOperation - -VAR_TYPE = TypeVar("VAR_TYPE") - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ImmutableVar(Var, Generic[VAR_TYPE]): - """Base class for immutable vars.""" - - # The name of the var. - _var_name: str = dataclasses.field() - - # The type of the var. - _var_type: types.GenericType = dataclasses.field(default=Any) - - # Extra metadata associated with the Var - _var_data: Optional[ImmutableVarData] = dataclasses.field(default=None) - - def __str__(self) -> str: - """String representation of the var. Guaranteed to be a valid Javascript expression. - - Returns: - The name of the var. - """ - return self._var_name - - @property - def _var_is_local(self) -> bool: - """Whether this is a local javascript variable. - - Returns: - False - """ - return False - - @property - def _var_is_string(self) -> bool: - """Whether the var is a string literal. - - Returns: - False - """ - return False - - @property - def _var_full_name_needs_state_prefix(self) -> bool: - """Whether the full name of the var needs a _var_state prefix. - - Returns: - False - """ - return False - - def __post_init__(self): - """Post-initialize the var.""" - # Decode any inline Var markup and apply it to the instance - _var_data, _var_name = _decode_var_immutable(self._var_name) - - if _var_data or _var_name != self._var_name: - self.__init__( - _var_name=_var_name, - _var_type=self._var_type, - _var_data=ImmutableVarData.merge(self._var_data, _var_data), - ) - - def __hash__(self) -> int: - """Define a hash function for the var. - - Returns: - The hash of the var. - """ - return hash((self._var_name, self._var_type, self._var_data)) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return self._var_data - - def _replace(self, merge_var_data=None, **kwargs: Any): - """Make a copy of this Var with updated fields. - - Args: - merge_var_data: VarData to merge into the existing VarData. - **kwargs: Var fields to update. - - Returns: - A new ImmutableVar with the updated fields overwriting the corresponding fields in this Var. - - Raises: - TypeError: If _var_is_local, _var_is_string, or _var_full_name_needs_state_prefix is not None. - """ - if kwargs.get("_var_is_local", False) is not False: - raise TypeError( - "The _var_is_local argument is not supported for ImmutableVar." - ) - - if kwargs.get("_var_is_string", False) is not False: - raise TypeError( - "The _var_is_string argument is not supported for ImmutableVar." - ) - - if kwargs.get("_var_full_name_needs_state_prefix", False) is not False: - raise TypeError( - "The _var_full_name_needs_state_prefix argument is not supported for ImmutableVar." - ) - - field_values = dict( - _var_name=kwargs.pop("_var_name", self._var_name), - _var_type=kwargs.pop("_var_type", self._var_type), - _var_data=ImmutableVarData.merge( - kwargs.get("_var_data", self._var_data), merge_var_data - ), - ) - return type(self)(**field_values) - - @classmethod - def create( - cls, - value: Any, - _var_is_local: bool | None = None, - _var_is_string: bool | None = None, - _var_data: VarData | None = None, - ) -> ImmutableVar | Var | None: - """Create a var from a value. - - Args: - value: The value to create the var from. - _var_is_local: Whether the var is local. Deprecated. - _var_is_string: Whether the var is a string literal. Deprecated. - _var_data: Additional hooks and imports associated with the Var. - - Returns: - The var. - - Raises: - VarTypeError: If the value is JSON-unserializable. - TypeError: If _var_is_local or _var_is_string is not None. - """ - if _var_is_local is not None: - raise TypeError( - "The _var_is_local argument is not supported for ImmutableVar." - ) - - if _var_is_string is not None: - raise TypeError( - "The _var_is_string argument is not supported for ImmutableVar." - ) - - from reflex.utils import format - - # Check for none values. - if value is None: - return None - - # If the value is already a var, do nothing. - if isinstance(value, Var): - return value - - # Try to pull the imports and hooks from contained values. - if not isinstance(value, str): - _var_data = VarData.merge(*_extract_var_data(value), _var_data) - - # Try to serialize the value. - type_ = type(value) - if type_ in types.JSONType: - name = value - else: - name, _serialized_type = serializers.serialize(value, get_type=True) - if name is None: - raise VarTypeError( - f"No JSON serializer found for var {value} of type {type_}." - ) - name = name if isinstance(name, str) else format.json_dumps(name) - - return cls( - _var_name=name, - _var_type=type_, - _var_data=( - ImmutableVarData( - state=_var_data.state, - imports=_var_data.imports, - hooks=_var_data.hooks, - ) - if _var_data - else None - ), - ) - - @classmethod - def create_safe( - cls, - value: Any, - _var_is_local: bool | None = None, - _var_is_string: bool | None = None, - _var_data: VarData | None = None, - ) -> Var | ImmutableVar: - """Create a var from a value, asserting that it is not None. - - Args: - value: The value to create the var from. - _var_is_local: Whether the var is local. Deprecated. - _var_is_string: Whether the var is a string literal. Deprecated. - _var_data: Additional hooks and imports associated with the Var. - - Returns: - The var. - """ - var = cls.create( - value, - _var_is_local=_var_is_local, - _var_is_string=_var_is_string, - _var_data=_var_data, - ) - assert var is not None - return var - - def __format__(self, format_spec: str) -> str: - """Format the var into a Javascript equivalent to an f-string. - - Args: - format_spec: The format specifier (Ignored for now). - - Returns: - The formatted var. - """ - hashed_var = hash(self) - - _global_vars[hashed_var] = self - - # Encode the _var_data into the formatted output for tracking purposes. - return f"{constants.REFLEX_VAR_OPENING_TAG}{hashed_var}{constants.REFLEX_VAR_CLOSING_TAG}{self._var_name}" - - @overload - def to( - self, output: Type[NumberVar], var_type: type[int] | type[float] = float - ) -> ToNumberVarOperation: ... - - @overload - def to(self, output: Type[BooleanVar]) -> ToBooleanVarOperation: ... - - @overload - def to( - self, - output: Type[ArrayVar], - var_type: type[list] | type[tuple] | type[set] = list, - ) -> ToArrayOperation: ... - - @overload - def to(self, output: Type[StringVar]) -> ToStringOperation: ... - - @overload - def to( - self, output: Type[ObjectVar], var_type: types.GenericType = dict - ) -> ToObjectOperation: ... - - @overload - def to( - self, output: Type[FunctionVar], var_type: Type[Callable] = Callable - ) -> ToFunctionOperation: ... - - @overload - def to( - self, output: Type[OUTPUT], var_type: types.GenericType | None = None - ) -> OUTPUT: ... - - def to( - self, output: Type[OUTPUT], var_type: types.GenericType | None = None - ) -> Var: - """Convert the var to a different type. - - Args: - output: The output type. - var_type: The type of the var. - - Raises: - TypeError: If the var_type is not a supported type for the output. - - Returns: - The converted var. - """ - from .number import ( - BooleanVar, - NumberVar, - ToBooleanVarOperation, - ToNumberVarOperation, - ) - - fixed_type = ( - var_type - if var_type is None or inspect.isclass(var_type) - else get_origin(var_type) - ) - - if issubclass(output, NumberVar): - if fixed_type is not None and not issubclass(fixed_type, (int, float)): - raise TypeError( - f"Unsupported type {var_type} for NumberVar. Must be int or float." - ) - return ToNumberVarOperation(self, var_type or float) - if issubclass(output, BooleanVar): - return ToBooleanVarOperation(self) - - from .sequence import ArrayVar, StringVar, ToArrayOperation, ToStringOperation - - if issubclass(output, ArrayVar): - if fixed_type is not None and not issubclass( - fixed_type, (list, tuple, set) - ): - raise TypeError( - f"Unsupported type {var_type} for ArrayVar. Must be list, tuple, or set." - ) - return ToArrayOperation(self, var_type or list) - if issubclass(output, StringVar): - return ToStringOperation(self) - - from .object import ObjectVar, ToObjectOperation - - if issubclass(output, ObjectVar): - return ToObjectOperation(self, var_type or dict) - - from .function import FunctionVar, ToFunctionOperation - - if issubclass(output, FunctionVar): - if fixed_type is not None and not issubclass(fixed_type, Callable): - raise TypeError( - f"Unsupported type {var_type} for FunctionVar. Must be Callable." - ) - return ToFunctionOperation(self, var_type or Callable) - - return output( - _var_name=self._var_name, - _var_type=self._var_type if var_type is None else var_type, - _var_data=self._var_data, - ) - - def guess_type(self) -> ImmutableVar: - """Guess the type of the var. - - Returns: - The guessed type. - """ - from .number import NumberVar - from .object import ObjectVar - from .sequence import ArrayVar, StringVar - - if self._var_type is Any: - return self - - var_type = self._var_type - - fixed_type = var_type if inspect.isclass(var_type) else get_origin(var_type) - - if issubclass(fixed_type, (int, float)): - return self.to(NumberVar, var_type) - if issubclass(fixed_type, dict): - return self.to(ObjectVar, var_type) - if issubclass(fixed_type, (list, tuple, set)): - return self.to(ArrayVar, var_type) - if issubclass(fixed_type, str): - return self.to(StringVar) - if issubclass(fixed_type, Base): - return self.to(ObjectVar, var_type) - return self - - -OUTPUT = TypeVar("OUTPUT", bound=ImmutableVar) - - -class LiteralVar(ImmutableVar): - """Base class for immutable literal vars.""" - - @classmethod - def create( - cls, - value: Any, - _var_data: VarData | None = None, - ) -> Var: - """Create a var from a value. - - Args: - value: The value to create the var from. - _var_data: Additional hooks and imports associated with the Var. - - Returns: - The var. - - Raises: - TypeError: If the value is not a supported type for LiteralVar. - """ - if isinstance(value, Var): - if _var_data is None: - return value - return value._replace(merge_var_data=_var_data) - - if value is None: - return ImmutableVar.create_safe("null", _var_data=_var_data) - - from .object import LiteralObjectVar - - if isinstance(value, Base): - return LiteralObjectVar( - value.dict(), _var_type=type(value), _var_data=_var_data - ) - - from .number import LiteralBooleanVar, LiteralNumberVar - from .sequence import LiteralArrayVar, LiteralStringVar - - if isinstance(value, str): - return LiteralStringVar.create(value, _var_data=_var_data) - - type_mapping = { - int: LiteralNumberVar, - float: LiteralNumberVar, - bool: LiteralBooleanVar, - dict: LiteralObjectVar, - list: LiteralArrayVar, - tuple: LiteralArrayVar, - set: LiteralArrayVar, - } - - constructor = type_mapping.get(type(value)) - - if constructor is None: - raise TypeError(f"Unsupported type {type(value)} for LiteralVar.") - - return constructor(value, _var_data=_var_data) - - def __post_init__(self): - """Post-initialize the var.""" - - def json(self) -> str: - """Serialize the var to a JSON string. - - Raises: - NotImplementedError: If the method is not implemented. - """ - raise NotImplementedError( - "LiteralVar subclasses must implement the json method." - ) - - -P = ParamSpec("P") -T = TypeVar("T", bound=ImmutableVar) - - -def var_operation(*, output: Type[T]) -> Callable[[Callable[P, str]], Callable[P, T]]: - """Decorator for creating a var operation. - - Example: - ```python - @var_operation(output=NumberVar) - def add(a: NumberVar, b: NumberVar): - return f"({a} + {b})" - ``` - - Args: - output: The output type of the operation. - - Returns: - The decorator. - """ - - def decorator(func: Callable[P, str], output=output): - @functools.wraps(func) - def wrapper(*args: P.args, **kwargs: P.kwargs) -> T: - args_vars = [ - LiteralVar.create(arg) if not isinstance(arg, Var) else arg - for arg in args - ] - kwargs_vars = { - key: LiteralVar.create(value) if not isinstance(value, Var) else value - for key, value in kwargs.items() - } - return output( - _var_name=func(*args_vars, **kwargs_vars), # type: ignore - _var_data=VarData.merge( - *[arg._get_all_var_data() for arg in args if isinstance(arg, Var)], - *[ - arg._get_all_var_data() - for arg in kwargs.values() - if isinstance(arg, Var) - ], - ), - ) - - return wrapper - - return decorator - - -def unionize(*args: Type) -> Type: - """Unionize the types. - - Args: - args: The types to unionize. - - Returns: - The unionized types. - """ - if not args: - return Any - first, *rest = args - if not rest: - return first - return Union[first, unionize(*rest)] - - -def figure_out_type(value: Any) -> Type: - """Figure out the type of the value. - - Args: - value: The value to figure out the type of. - - Returns: - The type of the value. - """ - if isinstance(value, list): - return List[unionize(*(figure_out_type(v) for v in value))] - if isinstance(value, set): - return Set[unionize(*(figure_out_type(v) for v in value))] - if isinstance(value, tuple): - return Tuple[unionize(*(figure_out_type(v) for v in value)), ...] - if isinstance(value, dict): - return Dict[ - unionize(*(figure_out_type(k) for k in value)), - unionize(*(figure_out_type(v) for v in value.values())), - ] - return type(value) diff --git a/reflex/experimental/vars/function.py b/reflex/experimental/vars/function.py deleted file mode 100644 index 4514a482d..000000000 --- a/reflex/experimental/vars/function.py +++ /dev/null @@ -1,290 +0,0 @@ -"""Immutable function vars.""" - -from __future__ import annotations - -import dataclasses -import sys -from functools import cached_property -from typing import Any, Callable, Optional, Tuple, Type, Union - -from reflex.experimental.vars.base import ImmutableVar, LiteralVar -from reflex.vars import ImmutableVarData, Var, VarData - - -class FunctionVar(ImmutableVar[Callable]): - """Base class for immutable function vars.""" - - def __call__(self, *args: Var | Any) -> ArgsFunctionOperation: - """Call the function with the given arguments. - - Args: - *args: The arguments to call the function with. - - Returns: - The function call operation. - """ - return ArgsFunctionOperation( - ("...args",), - VarOperationCall(self, *args, ImmutableVar.create_safe("...args")), - ) - - def call(self, *args: Var | Any) -> VarOperationCall: - """Call the function with the given arguments. - - Args: - *args: The arguments to call the function with. - - Returns: - The function call operation. - """ - return VarOperationCall(self, *args) - - -class FunctionStringVar(FunctionVar): - """Base class for immutable function vars from a string.""" - - def __init__(self, func: str, _var_data: VarData | None = None) -> None: - """Initialize the function var. - - Args: - func: The function to call. - _var_data: Additional hooks and imports associated with the Var. - """ - super(FunctionVar, self).__init__( - _var_name=func, - _var_type=Callable, - _var_data=ImmutableVarData.merge(_var_data), - ) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class VarOperationCall(ImmutableVar): - """Base class for immutable vars that are the result of a function call.""" - - _func: Optional[FunctionVar] = dataclasses.field(default=None) - _args: Tuple[Union[Var, Any], ...] = dataclasses.field(default_factory=tuple) - - def __init__( - self, func: FunctionVar, *args: Var | Any, _var_data: VarData | None = None - ): - """Initialize the function call var. - - Args: - func: The function to call. - *args: The arguments to call the function with. - _var_data: Additional hooks and imports associated with the Var. - """ - super(VarOperationCall, self).__init__( - _var_name="", - _var_type=Any, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_func", func) - object.__setattr__(self, "_args", args) - object.__delattr__(self, "_var_name") - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"({str(self._func)}({', '.join([str(LiteralVar.create(arg)) for arg in self._args])}))" - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._func._get_all_var_data() if self._func is not None else None, - *[var._get_all_var_data() for var in self._args], - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - def __post_init__(self): - """Post-initialize the var.""" - pass - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArgsFunctionOperation(FunctionVar): - """Base class for immutable function defined via arguments and return expression.""" - - _args_names: Tuple[str, ...] = dataclasses.field(default_factory=tuple) - _return_expr: Union[Var, Any] = dataclasses.field(default=None) - - def __init__( - self, - args_names: Tuple[str, ...], - return_expr: Var | Any, - _var_data: VarData | None = None, - ) -> None: - """Initialize the function with arguments var. - - Args: - args_names: The names of the arguments. - return_expr: The return expression of the function. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArgsFunctionOperation, self).__init__( - _var_name=f"", - _var_type=Callable, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_args_names", args_names) - object.__setattr__(self, "_return_expr", return_expr) - object.__delattr__(self, "_var_name") - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"(({', '.join(self._args_names)}) => ({str(LiteralVar.create(self._return_expr))}))" - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._return_expr._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - def __post_init__(self): - """Post-initialize the var.""" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToFunctionOperation(FunctionVar): - """Base class of converting a var to a function.""" - - _original_var: Var = dataclasses.field( - default_factory=lambda: LiteralVar.create(None) - ) - - def __init__( - self, - original_var: Var, - _var_type: Type[Callable] = Callable, - _var_data: VarData | None = None, - ) -> None: - """Initialize the function with arguments var. - - Args: - original_var: The original var to convert to a function. - _var_type: The type of the function. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ToFunctionOperation, self).__init__( - _var_name=f"", - _var_type=_var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_original_var", original_var) - object.__delattr__(self, "_var_name") - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return str(self._original_var) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._original_var._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data diff --git a/reflex/experimental/vars/number.py b/reflex/experimental/vars/number.py deleted file mode 100644 index 6bd3a7ff7..000000000 --- a/reflex/experimental/vars/number.py +++ /dev/null @@ -1,1458 +0,0 @@ -"""Immutable number vars.""" - -from __future__ import annotations - -import dataclasses -import json -import sys -from functools import cached_property -from typing import Any, Union - -from reflex.experimental.vars.base import ( - ImmutableVar, - LiteralVar, -) -from reflex.vars import ImmutableVarData, Var, VarData - - -class NumberVar(ImmutableVar[Union[int, float]]): - """Base class for immutable number vars.""" - - def __add__(self, other: number_types | boolean_types) -> NumberAddOperation: - """Add two numbers. - - Args: - other: The other number. - - Returns: - The number addition operation. - """ - return NumberAddOperation(self, +other) - - def __radd__(self, other: number_types | boolean_types) -> NumberAddOperation: - """Add two numbers. - - Args: - other: The other number. - - Returns: - The number addition operation. - """ - return NumberAddOperation(+other, self) - - def __sub__(self, other: number_types | boolean_types) -> NumberSubtractOperation: - """Subtract two numbers. - - Args: - other: The other number. - - Returns: - The number subtraction operation. - """ - return NumberSubtractOperation(self, +other) - - def __rsub__(self, other: number_types | boolean_types) -> NumberSubtractOperation: - """Subtract two numbers. - - Args: - other: The other number. - - Returns: - The number subtraction operation. - """ - return NumberSubtractOperation(+other, self) - - def __abs__(self) -> NumberAbsoluteOperation: - """Get the absolute value of the number. - - Returns: - The number absolute operation. - """ - return NumberAbsoluteOperation(self) - - def __mul__(self, other: number_types | boolean_types) -> NumberMultiplyOperation: - """Multiply two numbers. - - Args: - other: The other number. - - Returns: - The number multiplication operation. - """ - return NumberMultiplyOperation(self, +other) - - def __rmul__(self, other: number_types | boolean_types) -> NumberMultiplyOperation: - """Multiply two numbers. - - Args: - other: The other number. - - Returns: - The number multiplication operation. - """ - return NumberMultiplyOperation(+other, self) - - def __truediv__(self, other: number_types | boolean_types) -> NumberTrueDivision: - """Divide two numbers. - - Args: - other: The other number. - - Returns: - The number true division operation. - """ - return NumberTrueDivision(self, +other) - - def __rtruediv__(self, other: number_types | boolean_types) -> NumberTrueDivision: - """Divide two numbers. - - Args: - other: The other number. - - Returns: - The number true division operation. - """ - return NumberTrueDivision(+other, self) - - def __floordiv__(self, other: number_types | boolean_types) -> NumberFloorDivision: - """Floor divide two numbers. - - Args: - other: The other number. - - Returns: - The number floor division operation. - """ - return NumberFloorDivision(self, +other) - - def __rfloordiv__(self, other: number_types | boolean_types) -> NumberFloorDivision: - """Floor divide two numbers. - - Args: - other: The other number. - - Returns: - The number floor division operation. - """ - return NumberFloorDivision(+other, self) - - def __mod__(self, other: number_types | boolean_types) -> NumberModuloOperation: - """Modulo two numbers. - - Args: - other: The other number. - - Returns: - The number modulo operation. - """ - return NumberModuloOperation(self, +other) - - def __rmod__(self, other: number_types | boolean_types) -> NumberModuloOperation: - """Modulo two numbers. - - Args: - other: The other number. - - Returns: - The number modulo operation. - """ - return NumberModuloOperation(+other, self) - - def __pow__(self, other: number_types | boolean_types) -> NumberExponentOperation: - """Exponentiate two numbers. - - Args: - other: The other number. - - Returns: - The number exponent operation. - """ - return NumberExponentOperation(self, +other) - - def __rpow__(self, other: number_types | boolean_types) -> NumberExponentOperation: - """Exponentiate two numbers. - - Args: - other: The other number. - - Returns: - The number exponent operation. - """ - return NumberExponentOperation(+other, self) - - def __neg__(self) -> NumberNegateOperation: - """Negate the number. - - Returns: - The number negation operation. - """ - return NumberNegateOperation(self) - - def __and__(self, other: number_types | boolean_types) -> BooleanAndOperation: - """Boolean AND two numbers. - - Args: - other: The other number. - - Returns: - The boolean AND operation. - """ - boolified_other = other.bool() if isinstance(other, Var) else bool(other) - return BooleanAndOperation(self.bool(), boolified_other) - - def __rand__(self, other: number_types | boolean_types) -> BooleanAndOperation: - """Boolean AND two numbers. - - Args: - other: The other number. - - Returns: - The boolean AND operation. - """ - boolified_other = other.bool() if isinstance(other, Var) else bool(other) - return BooleanAndOperation(boolified_other, self.bool()) - - def __or__(self, other: number_types | boolean_types) -> BooleanOrOperation: - """Boolean OR two numbers. - - Args: - other: The other number. - - Returns: - The boolean OR operation. - """ - boolified_other = other.bool() if isinstance(other, Var) else bool(other) - return BooleanOrOperation(self.bool(), boolified_other) - - def __ror__(self, other: number_types | boolean_types) -> BooleanOrOperation: - """Boolean OR two numbers. - - Args: - other: The other number. - - Returns: - The boolean OR operation. - """ - boolified_other = other.bool() if isinstance(other, Var) else bool(other) - return BooleanOrOperation(boolified_other, self.bool()) - - def __invert__(self) -> BooleanNotOperation: - """Boolean NOT the number. - - Returns: - The boolean NOT operation. - """ - return BooleanNotOperation(self.bool()) - - def __pos__(self) -> NumberVar: - """Positive the number. - - Returns: - The number. - """ - return self - - def __round__(self) -> NumberRoundOperation: - """Round the number. - - Returns: - The number round operation. - """ - return NumberRoundOperation(self) - - def __ceil__(self) -> NumberCeilOperation: - """Ceil the number. - - Returns: - The number ceil operation. - """ - return NumberCeilOperation(self) - - def __floor__(self) -> NumberFloorOperation: - """Floor the number. - - Returns: - The number floor operation. - """ - return NumberFloorOperation(self) - - def __trunc__(self) -> NumberTruncOperation: - """Trunc the number. - - Returns: - The number trunc operation. - """ - return NumberTruncOperation(self) - - def __lt__(self, other: number_types | boolean_types) -> LessThanOperation: - """Less than comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return LessThanOperation(self, +other) - - def __le__(self, other: number_types | boolean_types) -> LessThanOrEqualOperation: - """Less than or equal comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return LessThanOrEqualOperation(self, +other) - - def __eq__(self, other: number_types | boolean_types) -> EqualOperation: - """Equal comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return EqualOperation(self, +other) - - def __ne__(self, other: number_types | boolean_types) -> NotEqualOperation: - """Not equal comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return NotEqualOperation(self, +other) - - def __gt__(self, other: number_types | boolean_types) -> GreaterThanOperation: - """Greater than comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return GreaterThanOperation(self, +other) - - def __ge__( - self, other: number_types | boolean_types - ) -> GreaterThanOrEqualOperation: - """Greater than or equal comparison. - - Args: - other: The other number. - - Returns: - The result of the comparison. - """ - return GreaterThanOrEqualOperation(self, +other) - - def bool(self) -> NotEqualOperation: - """Boolean conversion. - - Returns: - The boolean value of the number. - """ - return NotEqualOperation(self, 0) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class BinaryNumberOperation(NumberVar): - """Base class for immutable number vars that are the result of a binary operation.""" - - a: number_types = dataclasses.field(default=0) - b: number_types = dataclasses.field(default=0) - - def __init__( - self, - a: number_types, - b: number_types, - _var_data: VarData | None = None, - ): - """Initialize the binary number operation var. - - Args: - a: The first number. - b: The second number. - _var_data: Additional hooks and imports associated with the Var. - """ - super(BinaryNumberOperation, self).__init__( - _var_name="", - _var_type=float, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__(self, "b", b) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses - """ - raise NotImplementedError( - "BinaryNumberOperation must implement _cached_var_name" - ) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(BinaryNumberOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return ImmutableVarData.merge( - first_value._get_all_var_data(), - second_value._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class UnaryNumberOperation(NumberVar): - """Base class for immutable number vars that are the result of a unary operation.""" - - a: number_types = dataclasses.field(default=0) - - def __init__( - self, - a: number_types, - _var_data: VarData | None = None, - ): - """Initialize the unary number operation var. - - Args: - a: The number. - _var_data: Additional hooks and imports associated with the Var. - """ - super(UnaryNumberOperation, self).__init__( - _var_name="", - _var_type=float, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError( - "UnaryNumberOperation must implement _cached_var_name" - ) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(UnaryNumberOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return ImmutableVarData.merge(value._get_all_var_data(), self._var_data) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class NumberAddOperation(BinaryNumberOperation): - """Base class for immutable number vars that are the result of an addition operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} + {str(second_value)})" - - -class NumberSubtractOperation(BinaryNumberOperation): - """Base class for immutable number vars that are the result of a subtraction operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} - {str(second_value)})" - - -class NumberAbsoluteOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of an absolute operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"Math.abs({str(value)})" - - -class NumberMultiplyOperation(BinaryNumberOperation): - """Base class for immutable number vars that are the result of a multiplication operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} * {str(second_value)})" - - -class NumberNegateOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of a negation operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"-({str(value)})" - - -class NumberTrueDivision(BinaryNumberOperation): - """Base class for immutable number vars that are the result of a true division operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} / {str(second_value)})" - - -class NumberFloorDivision(BinaryNumberOperation): - """Base class for immutable number vars that are the result of a floor division operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"Math.floor({str(first_value)} / {str(second_value)})" - - -class NumberModuloOperation(BinaryNumberOperation): - """Base class for immutable number vars that are the result of a modulo operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} % {str(second_value)})" - - -class NumberExponentOperation(BinaryNumberOperation): - """Base class for immutable number vars that are the result of an exponent operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralNumberVar(self.b) - return f"({str(first_value)} ** {str(second_value)})" - - -class NumberRoundOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of a round operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"Math.round({str(value)})" - - -class NumberCeilOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of a ceil operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"Math.ceil({str(value)})" - - -class NumberFloorOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of a floor operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"Math.floor({str(value)})" - - -class NumberTruncOperation(UnaryNumberOperation): - """Base class for immutable number vars that are the result of a trunc operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralNumberVar(self.a) - return f"Math.trunc({str(value)})" - - -class BooleanVar(ImmutableVar[bool]): - """Base class for immutable boolean vars.""" - - def __and__(self, other: bool) -> BooleanAndOperation: - """AND two booleans. - - Args: - other: The other boolean. - - Returns: - The boolean AND operation. - """ - return BooleanAndOperation(self, other) - - def __rand__(self, other: bool) -> BooleanAndOperation: - """AND two booleans. - - Args: - other: The other boolean. - - Returns: - The boolean AND operation. - """ - return BooleanAndOperation(other, self) - - def __or__(self, other: bool) -> BooleanOrOperation: - """OR two booleans. - - Args: - other: The other boolean. - - Returns: - The boolean OR operation. - """ - return BooleanOrOperation(self, other) - - def __ror__(self, other: bool) -> BooleanOrOperation: - """OR two booleans. - - Args: - other: The other boolean. - - Returns: - The boolean OR operation. - """ - return BooleanOrOperation(other, self) - - def __invert__(self) -> BooleanNotOperation: - """NOT the boolean. - - Returns: - The boolean NOT operation. - """ - return BooleanNotOperation(self) - - def __int__(self) -> BooleanToIntOperation: - """Convert the boolean to an int. - - Returns: - The boolean to int operation. - """ - return BooleanToIntOperation(self) - - def __pos__(self) -> BooleanToIntOperation: - """Convert the boolean to an int. - - Returns: - The boolean to int operation. - """ - return BooleanToIntOperation(self) - - def bool(self) -> BooleanVar: - """Boolean conversion. - - Returns: - The boolean value of the boolean. - """ - return self - - def __lt__(self, other: boolean_types | number_types) -> LessThanOperation: - """Less than comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return LessThanOperation(+self, +other) - - def __le__(self, other: boolean_types | number_types) -> LessThanOrEqualOperation: - """Less than or equal comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return LessThanOrEqualOperation(+self, +other) - - def __eq__(self, other: boolean_types | number_types) -> EqualOperation: - """Equal comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return EqualOperation(+self, +other) - - def __ne__(self, other: boolean_types | number_types) -> NotEqualOperation: - """Not equal comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return NotEqualOperation(+self, +other) - - def __gt__(self, other: boolean_types | number_types) -> GreaterThanOperation: - """Greater than comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return GreaterThanOperation(+self, +other) - - def __ge__( - self, other: boolean_types | number_types - ) -> GreaterThanOrEqualOperation: - """Greater than or equal comparison. - - Args: - other: The other boolean. - - Returns: - The result of the comparison. - """ - return GreaterThanOrEqualOperation(+self, +other) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class BooleanToIntOperation(NumberVar): - """Base class for immutable number vars that are the result of a boolean to int operation.""" - - a: boolean_types = dataclasses.field(default=False) - - def __init__( - self, - a: boolean_types, - _var_data: VarData | None = None, - ): - """Initialize the boolean to int operation var. - - Args: - a: The boolean. - _var_data: Additional hooks and imports associated with the Var. - """ - super(BooleanToIntOperation, self).__init__( - _var_name="", - _var_type=int, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"({str(self.a)} ? 1 : 0)" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(BooleanToIntOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data() if isinstance(self.a, Var) else None, - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class NumberComparisonOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of a comparison operation.""" - - a: number_types = dataclasses.field(default=0) - b: number_types = dataclasses.field(default=0) - - def __init__( - self, - a: number_types, - b: number_types, - _var_data: VarData | None = None, - ): - """Initialize the comparison operation var. - - Args: - a: The first value. - b: The second value. - _var_data: Additional hooks and imports associated with the Var. - """ - super(NumberComparisonOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__(self, "b", b) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError("ComparisonOperation must implement _cached_var_name") - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(NumberComparisonOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return ImmutableVarData.merge( - first_value._get_all_var_data(), second_value._get_all_var_data() - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class GreaterThanOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of a greater than operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} > {str(second_value)})" - - -class GreaterThanOrEqualOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of a greater than or equal operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} >= {str(second_value)})" - - -class LessThanOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of a less than operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} < {str(second_value)})" - - -class LessThanOrEqualOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of a less than or equal operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} <= {str(second_value)})" - - -class EqualOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of an equal operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} == {str(second_value)})" - - -class NotEqualOperation(NumberComparisonOperation): - """Base class for immutable boolean vars that are the result of a not equal operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} != {str(second_value)})" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LogicalOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of a logical operation.""" - - a: boolean_types = dataclasses.field(default=False) - b: boolean_types = dataclasses.field(default=False) - - def __init__( - self, a: boolean_types, b: boolean_types, _var_data: VarData | None = None - ): - """Initialize the logical operation var. - - Args: - a: The first value. - b: The second value. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LogicalOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__(self, "b", b) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError("LogicalOperation must implement _cached_var_name") - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(LogicalOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return ImmutableVarData.merge( - first_value._get_all_var_data(), second_value._get_all_var_data() - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class BooleanAndOperation(LogicalOperation): - """Base class for immutable boolean vars that are the result of a logical AND operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} && {str(second_value)})" - - -class BooleanOrOperation(LogicalOperation): - """Base class for immutable boolean vars that are the result of a logical OR operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - first_value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - second_value = self.b if isinstance(self.b, Var) else LiteralVar.create(self.b) - return f"({str(first_value)} || {str(second_value)})" - - -class BooleanNotOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of a logical NOT operation.""" - - a: boolean_types = dataclasses.field() - - def __init__(self, a: boolean_types, _var_data: VarData | None = None): - """Initialize the logical NOT operation var. - - Args: - a: The value. - _var_data: Additional hooks and imports associated with the Var. - """ - super(BooleanNotOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - return f"!({str(value)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(BooleanNotOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - value = self.a if isinstance(self.a, Var) else LiteralVar.create(self.a) - return ImmutableVarData.merge(value._get_all_var_data()) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LiteralBooleanVar(LiteralVar, BooleanVar): - """Base class for immutable literal boolean vars.""" - - _var_value: bool = dataclasses.field(default=False) - - def __init__( - self, - _var_value: bool, - _var_data: VarData | None = None, - ): - """Initialize the boolean var. - - Args: - _var_value: The value of the var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LiteralBooleanVar, self).__init__( - _var_name="true" if _var_value else "false", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_var_value", _var_value) - - def __hash__(self) -> int: - """Hash the var. - - Returns: - The hash of the var. - """ - return hash((self.__class__.__name__, self._var_value)) - - def json(self) -> str: - """Get the JSON representation of the var. - - Returns: - The JSON representation of the var. - """ - return "true" if self._var_value else "false" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LiteralNumberVar(LiteralVar, NumberVar): - """Base class for immutable literal number vars.""" - - _var_value: float | int = dataclasses.field(default=0) - - def __init__( - self, - _var_value: float | int, - _var_data: VarData | None = None, - ): - """Initialize the number var. - - Args: - _var_value: The value of the var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LiteralNumberVar, self).__init__( - _var_name=str(_var_value), - _var_type=type(_var_value), - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_var_value", _var_value) - - def __hash__(self) -> int: - """Hash the var. - - Returns: - The hash of the var. - """ - return hash((self.__class__.__name__, self._var_value)) - - def json(self) -> str: - """Get the JSON representation of the var. - - Returns: - The JSON representation of the var. - """ - return json.dumps(self._var_value) - - -number_types = Union[NumberVar, LiteralNumberVar, int, float] -boolean_types = Union[BooleanVar, LiteralBooleanVar, bool] - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToNumberVarOperation(NumberVar): - """Base class for immutable number vars that are the result of a number operation.""" - - _original_value: Var = dataclasses.field( - default_factory=lambda: LiteralNumberVar(0) - ) - - def __init__( - self, - _original_value: Var, - _var_type: type[int] | type[float] = float, - _var_data: VarData | None = None, - ): - """Initialize the number var. - - Args: - _original_value: The original value. - _var_type: The type of the Var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ToNumberVarOperation, self).__init__( - _var_name="", - _var_type=_var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_original_value", _original_value) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return str(self._original_value) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ToNumberVarOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._original_value._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToBooleanVarOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of a boolean operation.""" - - _original_value: Var = dataclasses.field( - default_factory=lambda: LiteralBooleanVar(False) - ) - - def __init__( - self, - _original_value: Var, - _var_data: VarData | None = None, - ): - """Initialize the boolean var. - - Args: - _original_value: The original value. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ToBooleanVarOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_original_value", _original_value) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return str(self._original_value) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ToBooleanVarOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._original_value._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data diff --git a/reflex/experimental/vars/object.py b/reflex/experimental/vars/object.py deleted file mode 100644 index a227f0d7c..000000000 --- a/reflex/experimental/vars/object.py +++ /dev/null @@ -1,804 +0,0 @@ -"""Classes for immutable object vars.""" - -from __future__ import annotations - -import dataclasses -import sys -import typing -from functools import cached_property -from inspect import isclass -from typing import ( - Any, - Dict, - List, - NoReturn, - Tuple, - Type, - TypeVar, - Union, - get_args, - overload, -) - -from typing_extensions import get_origin - -from reflex.experimental.vars.base import ( - ImmutableVar, - LiteralVar, - figure_out_type, -) -from reflex.experimental.vars.number import NumberVar -from reflex.experimental.vars.sequence import ArrayVar, StringVar -from reflex.utils.exceptions import VarAttributeError -from reflex.utils.types import GenericType, get_attribute_access_type -from reflex.vars import ImmutableVarData, Var, VarData - -OBJECT_TYPE = TypeVar("OBJECT_TYPE") - -KEY_TYPE = TypeVar("KEY_TYPE") -VALUE_TYPE = TypeVar("VALUE_TYPE") - -ARRAY_INNER_TYPE = TypeVar("ARRAY_INNER_TYPE") - -OTHER_KEY_TYPE = TypeVar("OTHER_KEY_TYPE") - - -class ObjectVar(ImmutableVar[OBJECT_TYPE]): - """Base class for immutable object vars.""" - - @overload - def _key_type(self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]]) -> KEY_TYPE: ... - - @overload - def _key_type(self) -> Type: ... - - def _key_type(self) -> Type: - """Get the type of the keys of the object. - - Returns: - The type of the keys of the object. - """ - fixed_type = ( - self._var_type if isclass(self._var_type) else get_origin(self._var_type) - ) - args = get_args(self._var_type) if issubclass(fixed_type, dict) else () - return args[0] if args else Any - - @overload - def _value_type(self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]]) -> VALUE_TYPE: ... - - @overload - def _value_type(self) -> Type: ... - - def _value_type(self) -> Type: - """Get the type of the values of the object. - - Returns: - The type of the values of the object. - """ - fixed_type = ( - self._var_type if isclass(self._var_type) else get_origin(self._var_type) - ) - args = get_args(self._var_type) if issubclass(fixed_type, dict) else () - return args[1] if args else Any - - @overload - def keys( - self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], - ) -> ArrayVar[List[KEY_TYPE]]: ... - - @overload - def keys(self) -> ArrayVar: ... - - def keys(self) -> ArrayVar: - """Get the keys of the object. - - Returns: - The keys of the object. - """ - return ObjectKeysOperation(self) - - @overload - def values( - self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], - ) -> ArrayVar[List[VALUE_TYPE]]: ... - - @overload - def values(self) -> ArrayVar: ... - - def values(self) -> ArrayVar: - """Get the values of the object. - - Returns: - The values of the object. - """ - return ObjectValuesOperation(self) - - @overload - def entries( - self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], - ) -> ArrayVar[List[Tuple[KEY_TYPE, VALUE_TYPE]]]: ... - - @overload - def entries(self) -> ArrayVar: ... - - def entries(self) -> ArrayVar: - """Get the entries of the object. - - Returns: - The entries of the object. - """ - return ObjectEntriesOperation(self) - - def merge(self, other: ObjectVar) -> ObjectMergeOperation: - """Merge two objects. - - Args: - other: The other object to merge. - - Returns: - The merged object. - """ - return ObjectMergeOperation(self, other) - - # NoReturn is used here to catch when key value is Any - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, NoReturn]], - key: Var | Any, - ) -> ImmutableVar: ... - - @overload - def __getitem__( - self: ( - ObjectVar[Dict[KEY_TYPE, int]] - | ObjectVar[Dict[KEY_TYPE, float]] - | ObjectVar[Dict[KEY_TYPE, int | float]] - ), - key: Var | Any, - ) -> NumberVar: ... - - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, str]], - key: Var | Any, - ) -> StringVar: ... - - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, list[ARRAY_INNER_TYPE]]], - key: Var | Any, - ) -> ArrayVar[list[ARRAY_INNER_TYPE]]: ... - - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, set[ARRAY_INNER_TYPE]]], - key: Var | Any, - ) -> ArrayVar[set[ARRAY_INNER_TYPE]]: ... - - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, tuple[ARRAY_INNER_TYPE, ...]]], - key: Var | Any, - ) -> ArrayVar[tuple[ARRAY_INNER_TYPE, ...]]: ... - - @overload - def __getitem__( - self: ObjectVar[Dict[KEY_TYPE, dict[OTHER_KEY_TYPE, VALUE_TYPE]]], - key: Var | Any, - ) -> ObjectVar[dict[OTHER_KEY_TYPE, VALUE_TYPE]]: ... - - def __getitem__(self, key: Var | Any) -> ImmutableVar: - """Get an item from the object. - - Args: - key: The key to get from the object. - - Returns: - The item from the object. - """ - return ObjectItemOperation(self, key).guess_type() - - # NoReturn is used here to catch when key value is Any - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, NoReturn]], - name: str, - ) -> ImmutableVar: ... - - @overload - def __getattr__( - self: ( - ObjectVar[Dict[KEY_TYPE, int]] - | ObjectVar[Dict[KEY_TYPE, float]] - | ObjectVar[Dict[KEY_TYPE, int | float]] - ), - name: str, - ) -> NumberVar: ... - - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, str]], - name: str, - ) -> StringVar: ... - - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, list[ARRAY_INNER_TYPE]]], - name: str, - ) -> ArrayVar[list[ARRAY_INNER_TYPE]]: ... - - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, set[ARRAY_INNER_TYPE]]], - name: str, - ) -> ArrayVar[set[ARRAY_INNER_TYPE]]: ... - - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, tuple[ARRAY_INNER_TYPE, ...]]], - name: str, - ) -> ArrayVar[tuple[ARRAY_INNER_TYPE, ...]]: ... - - @overload - def __getattr__( - self: ObjectVar[Dict[KEY_TYPE, dict[OTHER_KEY_TYPE, VALUE_TYPE]]], - name: str, - ) -> ObjectVar[dict[OTHER_KEY_TYPE, VALUE_TYPE]]: ... - - def __getattr__(self, name) -> ImmutableVar: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Raises: - VarAttributeError: The State var has no such attribute or may have been annotated wrongly. - - Returns: - The attribute of the var. - """ - fixed_type = ( - self._var_type if isclass(self._var_type) else get_origin(self._var_type) - ) - if not issubclass(fixed_type, dict): - attribute_type = get_attribute_access_type(self._var_type, name) - if attribute_type is None: - raise VarAttributeError( - f"The State var `{self._var_name}` has no attribute '{name}' or may have been annotated " - f"wrongly." - ) - return ObjectItemOperation(self, name, attribute_type).guess_type() - else: - return ObjectItemOperation(self, name).guess_type() - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LiteralObjectVar(LiteralVar, ObjectVar[OBJECT_TYPE]): - """Base class for immutable literal object vars.""" - - _var_value: Dict[Union[Var, Any], Union[Var, Any]] = dataclasses.field( - default_factory=dict - ) - - def __init__( - self: LiteralObjectVar[OBJECT_TYPE], - _var_value: OBJECT_TYPE, - _var_type: Type[OBJECT_TYPE] | None = None, - _var_data: VarData | None = None, - ): - """Initialize the object var. - - Args: - _var_value: The value of the var. - _var_type: The type of the var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LiteralObjectVar, self).__init__( - _var_name="", - _var_type=(figure_out_type(_var_value) if _var_type is None else _var_type), - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, - "_var_value", - _var_value, - ) - object.__delattr__(self, "_var_name") - - def _key_type(self) -> Type: - """Get the type of the keys of the object. - - Returns: - The type of the keys of the object. - """ - args_list = typing.get_args(self._var_type) - return args_list[0] if args_list else Any - - def _value_type(self) -> Type: - """Get the type of the values of the object. - - Returns: - The type of the values of the object. - """ - args_list = typing.get_args(self._var_type) - return args_list[1] if args_list else Any - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return ( - "({ " - + ", ".join( - [ - f"[{str(LiteralVar.create(key))}] : {str(LiteralVar.create(value))}" - for key, value in self._var_value.items() - ] - ) - + " })" - ) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - *[ - value._get_all_var_data() - for key, value in self._var_value - if isinstance(value, Var) - ], - *[ - key._get_all_var_data() - for key, value in self._var_value - if isinstance(key, Var) - ], - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - def json(self) -> str: - """Get the JSON representation of the object. - - Returns: - The JSON representation of the object. - """ - return ( - "{" - + ", ".join( - [ - f"{LiteralVar.create(key).json()}:{LiteralVar.create(value).json()}" - for key, value in self._var_value.items() - ] - ) - + "}" - ) - - def __hash__(self) -> int: - """Get the hash of the var. - - Returns: - The hash of the var. - """ - return hash((self.__class__.__name__, self._var_name)) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ObjectToArrayOperation(ArrayVar): - """Base class for object to array operations.""" - - value: ObjectVar = dataclasses.field(default_factory=lambda: LiteralObjectVar({})) - - def __init__( - self, - _var_value: ObjectVar, - _var_type: Type = list, - _var_data: VarData | None = None, - ): - """Initialize the object to array operation. - - Args: - _var_value: The value of the operation. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectToArrayOperation, self).__init__( - _var_name="", - _var_type=_var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "value", _var_value) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Raises: - NotImplementedError: Must implement _cached_var_name. - """ - raise NotImplementedError( - "ObjectToArrayOperation must implement _cached_var_name" - ) - - def __getattr__(self, name): - """Get an attribute of the operation. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the operation. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the operation. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.value._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - -class ObjectKeysOperation(ObjectToArrayOperation): - """Operation to get the keys of an object.""" - - def __init__( - self, - value: ObjectVar, - _var_data: VarData | None = None, - ): - """Initialize the object keys operation. - - Args: - value: The value of the operation. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectKeysOperation, self).__init__( - value, List[value._key_type()], _var_data - ) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return f"Object.keys({self.value._var_name})" - - -class ObjectValuesOperation(ObjectToArrayOperation): - """Operation to get the values of an object.""" - - def __init__( - self, - value: ObjectVar, - _var_data: VarData | None = None, - ): - """Initialize the object values operation. - - Args: - value: The value of the operation. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectValuesOperation, self).__init__( - value, List[value._value_type()], _var_data - ) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return f"Object.values({self.value._var_name})" - - -class ObjectEntriesOperation(ObjectToArrayOperation): - """Operation to get the entries of an object.""" - - def __init__( - self, - value: ObjectVar, - _var_data: VarData | None = None, - ): - """Initialize the object entries operation. - - Args: - value: The value of the operation. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectEntriesOperation, self).__init__( - value, List[Tuple[value._key_type(), value._value_type()]], _var_data - ) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return f"Object.entries({self.value._var_name})" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ObjectMergeOperation(ObjectVar): - """Operation to merge two objects.""" - - left: ObjectVar = dataclasses.field(default_factory=lambda: LiteralObjectVar({})) - right: ObjectVar = dataclasses.field(default_factory=lambda: LiteralObjectVar({})) - - def __init__( - self, - left: ObjectVar, - right: ObjectVar, - _var_data: VarData | None = None, - ): - """Initialize the object merge operation. - - Args: - left: The left object to merge. - right: The right object to merge. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectMergeOperation, self).__init__( - _var_name="", - _var_type=left._var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "left", left) - object.__setattr__(self, "right", right) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return f"Object.assign({self.left._var_name}, {self.right._var_name})" - - def __getattr__(self, name): - """Get an attribute of the operation. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the operation. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the operation. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.left._get_all_var_data(), - self.right._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ObjectItemOperation(ImmutableVar): - """Operation to get an item from an object.""" - - value: ObjectVar = dataclasses.field(default_factory=lambda: LiteralObjectVar({})) - key: Var | Any = dataclasses.field(default_factory=lambda: LiteralVar.create(None)) - - def __init__( - self, - value: ObjectVar, - key: Var | Any, - _var_type: GenericType | None = None, - _var_data: VarData | None = None, - ): - """Initialize the object item operation. - - Args: - value: The value of the operation. - key: The key to get from the object. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ObjectItemOperation, self).__init__( - _var_name="", - _var_type=value._value_type() if _var_type is None else _var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "value", value) - object.__setattr__( - self, "key", key if isinstance(key, Var) else LiteralVar.create(key) - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return f"{str(self.value)}[{str(self.key)}]" - - def __getattr__(self, name): - """Get an attribute of the operation. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the operation. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the operation. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.value._get_all_var_data(), - self.key._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToObjectOperation(ObjectVar): - """Operation to convert a var to an object.""" - - _original_var: Var = dataclasses.field(default_factory=lambda: LiteralObjectVar({})) - - def __init__( - self, - _original_var: Var, - _var_type: Type = dict, - _var_data: VarData | None = None, - ): - """Initialize the to object operation. - - Args: - _original_var: The original var to convert. - _var_type: The type of the var. - _var_data: Additional hooks and imports associated with the operation. - """ - super(ToObjectOperation, self).__init__( - _var_name="", - _var_type=_var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_original_var", _original_var) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the operation. - - Returns: - The name of the operation. - """ - return str(self._original_var) - - def __getattr__(self, name): - """Get an attribute of the operation. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the operation. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the operation. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self._original_var._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data diff --git a/reflex/experimental/vars/sequence.py b/reflex/experimental/vars/sequence.py deleted file mode 100644 index f622159a6..000000000 --- a/reflex/experimental/vars/sequence.py +++ /dev/null @@ -1,1764 +0,0 @@ -"""Collection of string classes and utilities.""" - -from __future__ import annotations - -import dataclasses -import functools -import inspect -import json -import re -import sys -import typing -from functools import cached_property -from typing import ( - TYPE_CHECKING, - Any, - Dict, - List, - Literal, - Set, - Tuple, - TypeVar, - Union, - overload, -) - -from typing_extensions import get_origin - -from reflex import constants -from reflex.constants.base import REFLEX_VAR_OPENING_TAG -from reflex.experimental.vars.base import ( - ImmutableVar, - LiteralVar, - figure_out_type, - unionize, -) -from reflex.experimental.vars.number import ( - BooleanVar, - LiteralNumberVar, - NotEqualOperation, - NumberVar, -) -from reflex.utils.types import GenericType -from reflex.vars import ImmutableVarData, Var, VarData, _global_vars - -if TYPE_CHECKING: - from .object import ObjectVar - - -class StringVar(ImmutableVar[str]): - """Base class for immutable string vars.""" - - def __add__(self, other: StringVar | str) -> ConcatVarOperation: - """Concatenate two strings. - - Args: - other: The other string. - - Returns: - The string concatenation operation. - """ - return ConcatVarOperation(self, other) - - def __radd__(self, other: StringVar | str) -> ConcatVarOperation: - """Concatenate two strings. - - Args: - other: The other string. - - Returns: - The string concatenation operation. - """ - return ConcatVarOperation(other, self) - - def __mul__(self, other: int) -> ConcatVarOperation: - """Concatenate two strings. - - Args: - other: The other string. - - Returns: - The string concatenation operation. - """ - return ConcatVarOperation(*[self for _ in range(other)]) - - def __rmul__(self, other: int) -> ConcatVarOperation: - """Concatenate two strings. - - Args: - other: The other string. - - Returns: - The string concatenation operation. - """ - return ConcatVarOperation(*[self for _ in range(other)]) - - @overload - def __getitem__(self, i: slice) -> ArrayJoinOperation: ... - - @overload - def __getitem__(self, i: int | NumberVar) -> StringItemOperation: ... - - def __getitem__( - self, i: slice | int | NumberVar - ) -> ArrayJoinOperation | StringItemOperation: - """Get a slice of the string. - - Args: - i: The slice. - - Returns: - The string slice operation. - """ - if isinstance(i, slice): - return self.split()[i].join() - return StringItemOperation(self, i) - - def length(self) -> NumberVar: - """Get the length of the string. - - Returns: - The string length operation. - """ - return self.split().length() - - def lower(self) -> StringLowerOperation: - """Convert the string to lowercase. - - Returns: - The string lower operation. - """ - return StringLowerOperation(self) - - def upper(self) -> StringUpperOperation: - """Convert the string to uppercase. - - Returns: - The string upper operation. - """ - return StringUpperOperation(self) - - def strip(self) -> StringStripOperation: - """Strip the string. - - Returns: - The string strip operation. - """ - return StringStripOperation(self) - - def bool(self) -> NotEqualOperation: - """Boolean conversion. - - Returns: - The boolean value of the string. - """ - return NotEqualOperation(self.length(), 0) - - def reversed(self) -> ArrayJoinOperation: - """Reverse the string. - - Returns: - The string reverse operation. - """ - return self.split().reverse().join() - - def contains(self, other: StringVar | str) -> StringContainsOperation: - """Check if the string contains another string. - - Args: - other: The other string. - - Returns: - The string contains operation. - """ - return StringContainsOperation(self, other) - - def split(self, separator: StringVar | str = "") -> StringSplitOperation: - """Split the string. - - Args: - separator: The separator. - - Returns: - The string split operation. - """ - return StringSplitOperation(self, separator) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class StringToStringOperation(StringVar): - """Base class for immutable string vars that are the result of a string to string operation.""" - - a: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - - def __init__(self, a: StringVar | str, _var_data: VarData | None = None): - """Initialize the string to string operation var. - - Args: - a: The string. - _var_data: Additional hooks and imports associated with the Var. - """ - super(StringToStringOperation, self).__init__( - _var_name="", - _var_type=str, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, "a", a if isinstance(a, Var) else LiteralStringVar.create(a) - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError( - "StringToStringOperation must implement _cached_var_name" - ) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(StringToStringOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data() if isinstance(self.a, Var) else None, - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class StringLowerOperation(StringToStringOperation): - """Base class for immutable string vars that are the result of a string lower operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.toLowerCase()" - - -class StringUpperOperation(StringToStringOperation): - """Base class for immutable string vars that are the result of a string upper operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.toUpperCase()" - - -class StringStripOperation(StringToStringOperation): - """Base class for immutable string vars that are the result of a string strip operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.trim()" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class StringContainsOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of a string contains operation.""" - - a: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - b: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - - def __init__( - self, a: StringVar | str, b: StringVar | str, _var_data: VarData | None = None - ): - """Initialize the string contains operation var. - - Args: - a: The first string. - b: The second string. - _var_data: Additional hooks and imports associated with the Var. - """ - super(StringContainsOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, "a", a if isinstance(a, Var) else LiteralStringVar.create(a) - ) - object.__setattr__( - self, "b", b if isinstance(b, Var) else LiteralStringVar.create(b) - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.includes({str(self.b)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(StringContainsOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.b._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class StringItemOperation(StringVar): - """Base class for immutable string vars that are the result of a string item operation.""" - - a: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - i: NumberVar = dataclasses.field(default_factory=lambda: LiteralNumberVar(0)) - - def __init__( - self, a: StringVar | str, i: int | NumberVar, _var_data: VarData | None = None - ): - """Initialize the string item operation var. - - Args: - a: The string. - i: The index. - _var_data: Additional hooks and imports associated with the Var. - """ - super(StringItemOperation, self).__init__( - _var_name="", - _var_type=str, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, "a", a if isinstance(a, Var) else LiteralStringVar.create(a) - ) - object.__setattr__(self, "i", i if isinstance(i, Var) else LiteralNumberVar(i)) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.at({str(self.i)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(StringItemOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.i._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class ArrayJoinOperation(StringVar): - """Base class for immutable string vars that are the result of an array join operation.""" - - a: ArrayVar = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - b: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - - def __init__( - self, a: ArrayVar, b: StringVar | str, _var_data: VarData | None = None - ): - """Initialize the array join operation var. - - Args: - a: The array. - b: The separator. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArrayJoinOperation, self).__init__( - _var_name="", - _var_type=str, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__( - self, "b", b if isinstance(b, Var) else LiteralStringVar.create(b) - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.join({str(self.b)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArrayJoinOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.b._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -# Compile regex for finding reflex var tags. -_decode_var_pattern_re = ( - rf"{constants.REFLEX_VAR_OPENING_TAG}(.*?){constants.REFLEX_VAR_CLOSING_TAG}" -) -_decode_var_pattern = re.compile(_decode_var_pattern_re, flags=re.DOTALL) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LiteralStringVar(LiteralVar, StringVar): - """Base class for immutable literal string vars.""" - - _var_value: str = dataclasses.field(default="") - - def __init__( - self, - _var_value: str, - _var_data: VarData | None = None, - ): - """Initialize the string var. - - Args: - _var_value: The value of the var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LiteralStringVar, self).__init__( - _var_name=f'"{_var_value}"', - _var_type=str, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "_var_value", _var_value) - - @classmethod - def create( - cls, - value: str, - _var_data: VarData | None = None, - ) -> LiteralStringVar | ConcatVarOperation: - """Create a var from a string value. - - Args: - value: The value to create the var from. - _var_data: Additional hooks and imports associated with the Var. - - Returns: - The var. - """ - if REFLEX_VAR_OPENING_TAG in value: - strings_and_vals: list[Var | str] = [] - offset = 0 - - # Initialize some methods for reading json. - var_data_config = VarData().__config__ - - def json_loads(s): - try: - return var_data_config.json_loads(s) - except json.decoder.JSONDecodeError: - return var_data_config.json_loads( - var_data_config.json_loads(f'"{s}"') - ) - - # Find all tags - while m := _decode_var_pattern.search(value): - start, end = m.span() - if start > 0: - strings_and_vals.append(value[:start]) - - serialized_data = m.group(1) - - if serialized_data.isnumeric() or ( - serialized_data[0] == "-" and serialized_data[1:].isnumeric() - ): - # This is a global immutable var. - var = _global_vars[int(serialized_data)] - strings_and_vals.append(var) - value = value[(end + len(var._var_name)) :] - else: - data = json_loads(serialized_data) - string_length = data.pop("string_length", None) - var_data = VarData.parse_obj(data) - - # Use string length to compute positions of interpolations. - if string_length is not None: - realstart = start + offset - var_data.interpolations = [ - (realstart, realstart + string_length) - ] - strings_and_vals.append( - ImmutableVar.create_safe( - value[end : (end + string_length)], _var_data=var_data - ) - ) - value = value[(end + string_length) :] - - offset += end - start - - if value: - strings_and_vals.append(value) - - return ConcatVarOperation(*strings_and_vals, _var_data=_var_data) - - return LiteralStringVar( - value, - _var_data=_var_data, - ) - - def __hash__(self) -> int: - """Get the hash of the var. - - Returns: - The hash of the var. - """ - return hash((self.__class__.__name__, self._var_value)) - - def json(self) -> str: - """Get the JSON representation of the var. - - Returns: - The JSON representation of the var. - """ - return json.dumps(self._var_value) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ConcatVarOperation(StringVar): - """Representing a concatenation of literal string vars.""" - - _var_value: Tuple[Union[Var, str], ...] = dataclasses.field(default_factory=tuple) - - def __init__(self, *value: Var | str, _var_data: VarData | None = None): - """Initialize the operation of concatenating literal string vars. - - Args: - value: The values to concatenate. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ConcatVarOperation, self).__init__( - _var_name="", _var_data=ImmutableVarData.merge(_var_data), _var_type=str - ) - object.__setattr__(self, "_var_value", value) - object.__delattr__(self, "_var_name") - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return ( - "(" - + "+".join( - [ - str(element) if isinstance(element, Var) else f'"{element}"' - for element in self._var_value - ] - ) - + ")" - ) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - *[ - var._get_all_var_data() - for var in self._var_value - if isinstance(var, Var) - ], - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - def __post_init__(self): - """Post-initialize the var.""" - pass - - -ARRAY_VAR_TYPE = TypeVar("ARRAY_VAR_TYPE", bound=Union[List, Tuple, Set]) - -OTHER_TUPLE = TypeVar("OTHER_TUPLE") - -INNER_ARRAY_VAR = TypeVar("INNER_ARRAY_VAR") - -KEY_TYPE = TypeVar("KEY_TYPE") -VALUE_TYPE = TypeVar("VALUE_TYPE") - - -class ArrayVar(ImmutableVar[ARRAY_VAR_TYPE]): - """Base class for immutable array vars.""" - - from reflex.experimental.vars.sequence import StringVar - - def join(self, sep: StringVar | str = "") -> ArrayJoinOperation: - """Join the elements of the array. - - Args: - sep: The separator between elements. - - Returns: - The joined elements. - """ - from reflex.experimental.vars.sequence import ArrayJoinOperation - - return ArrayJoinOperation(self, sep) - - def reverse(self) -> ArrayVar[ARRAY_VAR_TYPE]: - """Reverse the array. - - Returns: - The reversed array. - """ - return ArrayReverseOperation(self) - - @overload - def __getitem__(self, i: slice) -> ArrayVar[ARRAY_VAR_TYPE]: ... - - @overload - def __getitem__( - self: ( - ArrayVar[Tuple[int, OTHER_TUPLE]] - | ArrayVar[Tuple[float, OTHER_TUPLE]] - | ArrayVar[Tuple[int | float, OTHER_TUPLE]] - ), - i: Literal[0, -2], - ) -> NumberVar: ... - - @overload - def __getitem__( - self: ( - ArrayVar[Tuple[OTHER_TUPLE, int]] - | ArrayVar[Tuple[OTHER_TUPLE, float]] - | ArrayVar[Tuple[OTHER_TUPLE, int | float]] - ), - i: Literal[1, -1], - ) -> NumberVar: ... - - @overload - def __getitem__( - self: ArrayVar[Tuple[str, OTHER_TUPLE]], i: Literal[0, -2] - ) -> StringVar: ... - - @overload - def __getitem__( - self: ArrayVar[Tuple[OTHER_TUPLE, str]], i: Literal[1, -1] - ) -> StringVar: ... - - @overload - def __getitem__( - self: ArrayVar[Tuple[bool, OTHER_TUPLE]], i: Literal[0, -2] - ) -> BooleanVar: ... - - @overload - def __getitem__( - self: ArrayVar[Tuple[OTHER_TUPLE, bool]], i: Literal[1, -1] - ) -> BooleanVar: ... - - @overload - def __getitem__( - self: ( - ARRAY_VAR_OF_LIST_ELEMENT[int] - | ARRAY_VAR_OF_LIST_ELEMENT[float] - | ARRAY_VAR_OF_LIST_ELEMENT[int | float] - ), - i: int | NumberVar, - ) -> NumberVar: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[str], i: int | NumberVar - ) -> StringVar: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[bool], i: int | NumberVar - ) -> BooleanVar: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[List[INNER_ARRAY_VAR]], - i: int | NumberVar, - ) -> ArrayVar[List[INNER_ARRAY_VAR]]: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[Set[INNER_ARRAY_VAR]], - i: int | NumberVar, - ) -> ArrayVar[Set[INNER_ARRAY_VAR]]: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[Tuple[INNER_ARRAY_VAR, ...]], - i: int | NumberVar, - ) -> ArrayVar[Tuple[INNER_ARRAY_VAR, ...]]: ... - - @overload - def __getitem__( - self: ARRAY_VAR_OF_LIST_ELEMENT[Dict[KEY_TYPE, VALUE_TYPE]], - i: int | NumberVar, - ) -> ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]]: ... - - @overload - def __getitem__(self, i: int | NumberVar) -> ImmutableVar: ... - - def __getitem__( - self, i: slice | int | NumberVar - ) -> ArrayVar[ARRAY_VAR_TYPE] | ImmutableVar: - """Get a slice of the array. - - Args: - i: The slice. - - Returns: - The array slice operation. - """ - if isinstance(i, slice): - return ArraySliceOperation(self, i) - return ArrayItemOperation(self, i).guess_type() - - def length(self) -> NumberVar: - """Get the length of the array. - - Returns: - The length of the array. - """ - return ArrayLengthOperation(self) - - @overload - @classmethod - def range(cls, stop: int | NumberVar, /) -> ArrayVar[List[int]]: ... - - @overload - @classmethod - def range( - cls, - start: int | NumberVar, - end: int | NumberVar, - step: int | NumberVar = 1, - /, - ) -> ArrayVar[List[int]]: ... - - @classmethod - def range( - cls, - first_endpoint: int | NumberVar, - second_endpoint: int | NumberVar | None = None, - step: int | NumberVar | None = None, - ) -> ArrayVar[List[int]]: - """Create a range of numbers. - - Args: - first_endpoint: The end of the range if second_endpoint is not provided, otherwise the start of the range. - second_endpoint: The end of the range. - step: The step of the range. - - Returns: - The range of numbers. - """ - if second_endpoint is None: - start = 0 - end = first_endpoint - else: - start = first_endpoint - end = second_endpoint - - return RangeOperation(start, end, step or 1) - - def contains(self, other: Any) -> BooleanVar: - """Check if the array contains an element. - - Args: - other: The element to check for. - - Returns: - The array contains operation. - """ - return ArrayContainsOperation(self, other) - - -LIST_ELEMENT = TypeVar("LIST_ELEMENT") - -ARRAY_VAR_OF_LIST_ELEMENT = Union[ - ArrayVar[List[LIST_ELEMENT]], - ArrayVar[Set[LIST_ELEMENT]], - ArrayVar[Tuple[LIST_ELEMENT, ...]], -] - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class LiteralArrayVar(LiteralVar, ArrayVar[ARRAY_VAR_TYPE]): - """Base class for immutable literal array vars.""" - - _var_value: Union[ - List[Union[Var, Any]], Set[Union[Var, Any]], Tuple[Union[Var, Any], ...] - ] = dataclasses.field(default_factory=list) - - def __init__( - self: LiteralArrayVar[ARRAY_VAR_TYPE], - _var_value: ARRAY_VAR_TYPE, - _var_type: type[ARRAY_VAR_TYPE] | None = None, - _var_data: VarData | None = None, - ): - """Initialize the array var. - - Args: - _var_value: The value of the var. - _var_type: The type of the var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(LiteralArrayVar, self).__init__( - _var_name="", - _var_data=ImmutableVarData.merge(_var_data), - _var_type=(figure_out_type(_var_value) if _var_type is None else _var_type), - ) - object.__setattr__(self, "_var_value", _var_value) - object.__delattr__(self, "_var_name") - - def __getattr__(self, name): - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute of the var. - """ - if name == "_var_name": - return self._cached_var_name - return super(type(self), self).__getattr__(name) - - @functools.cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return ( - "[" - + ", ".join( - [str(LiteralVar.create(element)) for element in self._var_value] - ) - + "]" - ) - - @functools.cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - *[ - var._get_all_var_data() - for var in self._var_value - if isinstance(var, Var) - ], - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - """Wrapper method for cached property. - - Returns: - The VarData of the components and all of its children. - """ - return self._cached_get_all_var_data - - def __hash__(self) -> int: - """Get the hash of the var. - - Returns: - The hash of the var. - """ - return hash((self.__class__.__name__, self._var_name)) - - def json(self) -> str: - """Get the JSON representation of the var. - - Returns: - The JSON representation of the var. - """ - return ( - "[" - + ", ".join( - [LiteralVar.create(element).json() for element in self._var_value] - ) - + "]" - ) - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class StringSplitOperation(ArrayVar): - """Base class for immutable array vars that are the result of a string split operation.""" - - a: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - b: StringVar = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - - def __init__( - self, a: StringVar | str, b: StringVar | str, _var_data: VarData | None = None - ): - """Initialize the string split operation var. - - Args: - a: The string. - b: The separator. - _var_data: Additional hooks and imports associated with the Var. - """ - super(StringSplitOperation, self).__init__( - _var_name="", - _var_type=List[str], - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, "a", a if isinstance(a, Var) else LiteralStringVar.create(a) - ) - object.__setattr__( - self, "b", b if isinstance(b, Var) else LiteralStringVar.create(b) - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.split({str(self.b)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(StringSplitOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.b._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArrayToArrayOperation(ArrayVar): - """Base class for immutable array vars that are the result of an array to array operation.""" - - a: ArrayVar = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - - def __init__(self, a: ArrayVar, _var_data: VarData | None = None): - """Initialize the array to array operation var. - - Args: - a: The string. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArrayToArrayOperation, self).__init__( - _var_name="", - _var_type=a._var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError( - "ArrayToArrayOperation must implement _cached_var_name" - ) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArrayToArrayOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data() if isinstance(self.a, Var) else None, - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArraySliceOperation(ArrayVar): - """Base class for immutable string vars that are the result of a string slice operation.""" - - a: ArrayVar = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - _slice: slice = dataclasses.field(default_factory=lambda: slice(None, None, None)) - - def __init__(self, a: ArrayVar, _slice: slice, _var_data: VarData | None = None): - """Initialize the string slice operation var. - - Args: - a: The string. - _slice: The slice. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArraySliceOperation, self).__init__( - _var_name="", - _var_type=a._var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__(self, "_slice", _slice) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - - Raises: - ValueError: If the slice step is zero. - """ - start, end, step = self._slice.start, self._slice.stop, self._slice.step - - normalized_start = ( - LiteralVar.create(start) - if start is not None - else ImmutableVar.create_safe("undefined") - ) - normalized_end = ( - LiteralVar.create(end) - if end is not None - else ImmutableVar.create_safe("undefined") - ) - if step is None: - return ( - f"{str(self.a)}.slice({str(normalized_start)}, {str(normalized_end)})" - ) - if not isinstance(step, Var): - if step < 0: - actual_start = end + 1 if end is not None else 0 - actual_end = start + 1 if start is not None else self.a.length() - return str( - ArraySliceOperation( - ArrayReverseOperation( - ArraySliceOperation(self.a, slice(actual_start, actual_end)) - ), - slice(None, None, -step), - ) - ) - if step == 0: - raise ValueError("slice step cannot be zero") - return f"{str(self.a)}.slice({str(normalized_start)}, {str(normalized_end)}).filter((_, i) => i % {str(step)} === 0)" - - actual_start_reverse = end + 1 if end is not None else 0 - actual_end_reverse = start + 1 if start is not None else self.a.length() - - return f"{str(self.step)} > 0 ? {str(self.a)}.slice({str(normalized_start)}, {str(normalized_end)}).filter((_, i) => i % {str(step)} === 0) : {str(self.a)}.slice({str(actual_start_reverse)}, {str(actual_end_reverse)}).reverse().filter((_, i) => i % {str(-step)} === 0)" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArraySliceOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), - *[ - slice_value._get_all_var_data() - for slice_value in ( - self._slice.start, - self._slice.stop, - self._slice.step, - ) - if slice_value is not None and isinstance(slice_value, Var) - ], - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class ArrayReverseOperation(ArrayToArrayOperation): - """Base class for immutable string vars that are the result of a string reverse operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.reverse()" - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArrayToNumberOperation(NumberVar): - """Base class for immutable number vars that are the result of an array to number operation.""" - - a: ArrayVar = dataclasses.field( - default_factory=lambda: LiteralArrayVar([]), - ) - - def __init__(self, a: ArrayVar, _var_data: VarData | None = None): - """Initialize the string to number operation var. - - Args: - a: The array. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArrayToNumberOperation, self).__init__( - _var_name="", - _var_type=int, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a if isinstance(a, Var) else LiteralArrayVar(a)) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Raises: - NotImplementedError: Must be implemented by subclasses. - """ - raise NotImplementedError( - "StringToNumberOperation must implement _cached_var_name" - ) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArrayToNumberOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge(self.a._get_all_var_data(), self._var_data) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -class ArrayLengthOperation(ArrayToNumberOperation): - """Base class for immutable number vars that are the result of an array length operation.""" - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.length" - - -def is_tuple_type(t: GenericType) -> bool: - """Check if a type is a tuple type. - - Args: - t: The type to check. - - Returns: - Whether the type is a tuple type. - """ - if inspect.isclass(t): - return issubclass(t, tuple) - return get_origin(t) is tuple - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArrayItemOperation(ImmutableVar): - """Base class for immutable array vars that are the result of an array item operation.""" - - a: ArrayVar = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - i: NumberVar = dataclasses.field(default_factory=lambda: LiteralNumberVar(0)) - - def __init__( - self, - a: ArrayVar, - i: NumberVar | int, - _var_data: VarData | None = None, - ): - """Initialize the array item operation var. - - Args: - a: The array. - i: The index. - _var_data: Additional hooks and imports associated with the Var. - """ - args = typing.get_args(a._var_type) - if args and isinstance(i, int) and is_tuple_type(a._var_type): - element_type = args[i % len(args)] - else: - element_type = unionize(*args) - super(ArrayItemOperation, self).__init__( - _var_name="", - _var_type=element_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a if isinstance(a, Var) else LiteralArrayVar(a)) - object.__setattr__( - self, - "i", - i if isinstance(i, Var) else LiteralNumberVar(i), - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.at({str(self.i)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArrayItemOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.i._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class RangeOperation(ArrayVar): - """Base class for immutable array vars that are the result of a range operation.""" - - start: NumberVar = dataclasses.field(default_factory=lambda: LiteralNumberVar(0)) - end: NumberVar = dataclasses.field(default_factory=lambda: LiteralNumberVar(0)) - step: NumberVar = dataclasses.field(default_factory=lambda: LiteralNumberVar(1)) - - def __init__( - self, - start: NumberVar | int, - end: NumberVar | int, - step: NumberVar | int, - _var_data: VarData | None = None, - ): - """Initialize the range operation var. - - Args: - start: The start of the range. - end: The end of the range. - step: The step of the range. - _var_data: Additional hooks and imports associated with the Var. - """ - super(RangeOperation, self).__init__( - _var_name="", - _var_type=List[int], - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, - "start", - start if isinstance(start, Var) else LiteralNumberVar(start), - ) - object.__setattr__( - self, - "end", - end if isinstance(end, Var) else LiteralNumberVar(end), - ) - object.__setattr__( - self, - "step", - step if isinstance(step, Var) else LiteralNumberVar(step), - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - start, end, step = self.start, self.end, self.step - return f"Array.from({{ length: ({str(end)} - {str(start)}) / {str(step)} }}, (_, i) => {str(start)} + i * {str(step)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(RangeOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.start._get_all_var_data(), - self.end._get_all_var_data(), - self.step._get_all_var_data(), - self._var_data, - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ArrayContainsOperation(BooleanVar): - """Base class for immutable boolean vars that are the result of an array contains operation.""" - - a: ArrayVar = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - b: Var = dataclasses.field(default_factory=lambda: LiteralVar.create(None)) - - def __init__(self, a: ArrayVar, b: Any | Var, _var_data: VarData | None = None): - """Initialize the array contains operation var. - - Args: - a: The array. - b: The element to check for. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ArrayContainsOperation, self).__init__( - _var_name="", - _var_type=bool, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__(self, "a", a) - object.__setattr__(self, "b", b if isinstance(b, Var) else LiteralVar.create(b)) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return f"{str(self.a)}.includes({str(self.b)})" - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ArrayContainsOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.a._get_all_var_data(), self.b._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToStringOperation(StringVar): - """Base class for immutable string vars that are the result of a to string operation.""" - - original_var: Var = dataclasses.field( - default_factory=lambda: LiteralStringVar.create("") - ) - - def __init__(self, original_var: Var, _var_data: VarData | None = None): - """Initialize the to string operation var. - - Args: - original_var: The original var. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ToStringOperation, self).__init__( - _var_name="", - _var_type=str, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, - "original_var", - original_var, - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return str(self.original_var) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ToStringOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.original_var._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data - - -@dataclasses.dataclass( - eq=False, - frozen=True, - **{"slots": True} if sys.version_info >= (3, 10) else {}, -) -class ToArrayOperation(ArrayVar): - """Base class for immutable array vars that are the result of a to array operation.""" - - original_var: Var = dataclasses.field(default_factory=lambda: LiteralArrayVar([])) - - def __init__( - self, - original_var: Var, - _var_type: type[list] | type[set] | type[tuple] = list, - _var_data: VarData | None = None, - ): - """Initialize the to array operation var. - - Args: - original_var: The original var. - _var_type: The type of the array. - _var_data: Additional hooks and imports associated with the Var. - """ - super(ToArrayOperation, self).__init__( - _var_name="", - _var_type=_var_type, - _var_data=ImmutableVarData.merge(_var_data), - ) - object.__setattr__( - self, - "original_var", - original_var, - ) - object.__delattr__(self, "_var_name") - - @cached_property - def _cached_var_name(self) -> str: - """The name of the var. - - Returns: - The name of the var. - """ - return str(self.original_var) - - def __getattr__(self, name: str) -> Any: - """Get an attribute of the var. - - Args: - name: The name of the attribute. - - Returns: - The attribute value. - """ - if name == "_var_name": - return self._cached_var_name - getattr(super(ToArrayOperation, self), name) - - @cached_property - def _cached_get_all_var_data(self) -> ImmutableVarData | None: - """Get all VarData associated with the Var. - - Returns: - The VarData of the components and all of its children. - """ - return ImmutableVarData.merge( - self.original_var._get_all_var_data(), self._var_data - ) - - def _get_all_var_data(self) -> ImmutableVarData | None: - return self._cached_get_all_var_data diff --git a/reflex/experimental/vars/__init__.py b/reflex/ivars/__init__.py similarity index 93% rename from reflex/experimental/vars/__init__.py rename to reflex/ivars/__init__.py index 8fa5196ff..2c1837510 100644 --- a/reflex/experimental/vars/__init__.py +++ b/reflex/ivars/__init__.py @@ -12,7 +12,6 @@ from .number import LiteralNumberVar as LiteralNumberVar from .number import NumberVar as NumberVar from .object import LiteralObjectVar as LiteralObjectVar from .object import ObjectVar as ObjectVar -from .sequence import ArrayJoinOperation as ArrayJoinOperation from .sequence import ArrayVar as ArrayVar from .sequence import ConcatVarOperation as ConcatVarOperation from .sequence import LiteralArrayVar as LiteralArrayVar diff --git a/reflex/ivars/base.py b/reflex/ivars/base.py new file mode 100644 index 000000000..4cd3550dd --- /dev/null +++ b/reflex/ivars/base.py @@ -0,0 +1,1912 @@ +"""Collection of base classes.""" + +from __future__ import annotations + +import contextlib +import dataclasses +import datetime +import dis +import functools +import inspect +import json +import sys +import warnings +from types import CodeType, FunctionType +from typing import ( + TYPE_CHECKING, + Any, + Callable, + Dict, + Generic, + List, + Literal, + NoReturn, + Optional, + Sequence, + Set, + Tuple, + Type, + TypeVar, + Union, + cast, + get_args, + overload, +) + +from typing_extensions import ParamSpec, get_type_hints, override + +from reflex import constants +from reflex.base import Base +from reflex.constants.colors import Color +from reflex.utils import console, imports, serializers, types +from reflex.utils.exceptions import VarDependencyError, VarTypeError, VarValueError +from reflex.utils.format import format_state_name +from reflex.utils.types import get_origin +from reflex.vars import ( + ComputedVar, + ImmutableVarData, + Var, + VarData, + _decode_var_immutable, + _extract_var_data, + _global_vars, +) + +if TYPE_CHECKING: + from reflex.state import BaseState + + from .function import FunctionVar, ToFunctionOperation + from .number import ( + BooleanVar, + NumberVar, + ToBooleanVarOperation, + ToNumberVarOperation, + ) + from .object import ObjectVar, ToObjectOperation + from .sequence import ArrayVar, StringVar, ToArrayOperation, ToStringOperation + + +VAR_TYPE = TypeVar("VAR_TYPE") + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ImmutableVar(Var, Generic[VAR_TYPE]): + """Base class for immutable vars.""" + + # The name of the var. + _var_name: str = dataclasses.field() + + # The type of the var. + _var_type: types.GenericType = dataclasses.field(default=Any) + + # Extra metadata associated with the Var + _var_data: Optional[ImmutableVarData] = dataclasses.field(default=None) + + def __str__(self) -> str: + """String representation of the var. Guaranteed to be a valid Javascript expression. + + Returns: + The name of the var. + """ + return self._var_name + + @property + def _var_is_local(self) -> bool: + """Whether this is a local javascript variable. + + Returns: + False + """ + return False + + @property + def _var_is_string(self) -> bool: + """Whether the var is a string literal. + + Returns: + False + """ + return False + + @property + def _var_full_name_needs_state_prefix(self) -> bool: + """Whether the full name of the var needs a _var_state prefix. + + Returns: + False + """ + return False + + def __post_init__(self): + """Post-initialize the var.""" + # Decode any inline Var markup and apply it to the instance + _var_data, _var_name = _decode_var_immutable(self._var_name) + + if _var_data or _var_name != self._var_name: + self.__init__( + _var_name=_var_name, + _var_type=self._var_type, + _var_data=ImmutableVarData.merge(self._var_data, _var_data), + ) + + def __hash__(self) -> int: + """Define a hash function for the var. + + Returns: + The hash of the var. + """ + return hash((self._var_name, self._var_type, self._var_data)) + + def _get_all_var_data(self) -> ImmutableVarData | None: + """Get all VarData associated with the Var. + + Returns: + The VarData of the components and all of its children. + """ + return self._var_data + + def _replace(self, merge_var_data=None, **kwargs: Any): + """Make a copy of this Var with updated fields. + + Args: + merge_var_data: VarData to merge into the existing VarData. + **kwargs: Var fields to update. + + Returns: + A new ImmutableVar with the updated fields overwriting the corresponding fields in this Var. + + Raises: + TypeError: If _var_is_local, _var_is_string, or _var_full_name_needs_state_prefix is not None. + """ + if kwargs.get("_var_is_local", False) is not False: + raise TypeError( + "The _var_is_local argument is not supported for ImmutableVar." + ) + + if kwargs.get("_var_is_string", False) is not False: + raise TypeError( + "The _var_is_string argument is not supported for ImmutableVar." + ) + + if kwargs.get("_var_full_name_needs_state_prefix", False) is not False: + raise TypeError( + "The _var_full_name_needs_state_prefix argument is not supported for ImmutableVar." + ) + + return dataclasses.replace( + self, + _var_data=ImmutableVarData.merge( + kwargs.get("_var_data", self._var_data), merge_var_data + ), + **kwargs, + ) + + @classmethod + def create( + cls, + value: Any, + _var_is_local: bool | None = None, + _var_is_string: bool | None = None, + _var_data: VarData | None = None, + ) -> ImmutableVar | Var | None: + """Create a var from a value. + + Args: + value: The value to create the var from. + _var_is_local: Whether the var is local. Deprecated. + _var_is_string: Whether the var is a string literal. Deprecated. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + + Raises: + VarTypeError: If the value is JSON-unserializable. + TypeError: If _var_is_local or _var_is_string is not None. + """ + if _var_is_local is not None: + raise TypeError( + "The _var_is_local argument is not supported for ImmutableVar." + ) + + if _var_is_string is not None: + raise TypeError( + "The _var_is_string argument is not supported for ImmutableVar." + ) + + from reflex.utils import format + + # Check for none values. + if value is None: + return None + + # If the value is already a var, do nothing. + if isinstance(value, Var): + return value + + # Try to pull the imports and hooks from contained values. + if not isinstance(value, str): + _var_data = VarData.merge(*_extract_var_data(value), _var_data) + + # Try to serialize the value. + type_ = type(value) + if type_ in types.JSONType: + name = value + else: + name, _serialized_type = serializers.serialize(value, get_type=True) + if name is None: + raise VarTypeError( + f"No JSON serializer found for var {value} of type {type_}." + ) + name = name if isinstance(name, str) else format.json_dumps(name) + + return cls( + _var_name=name, + _var_type=type_, + _var_data=( + ImmutableVarData( + state=_var_data.state, + imports=_var_data.imports, + hooks=_var_data.hooks, + ) + if _var_data + else None + ), + ) + + @classmethod + def create_safe( + cls, + value: Any, + _var_is_local: bool | None = None, + _var_is_string: bool | None = None, + _var_data: VarData | None = None, + ) -> Var | ImmutableVar: + """Create a var from a value, asserting that it is not None. + + Args: + value: The value to create the var from. + _var_is_local: Whether the var is local. Deprecated. + _var_is_string: Whether the var is a string literal. Deprecated. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + var = cls.create( + value, + _var_is_local=_var_is_local, + _var_is_string=_var_is_string, + _var_data=_var_data, + ) + assert var is not None + return var + + def __format__(self, format_spec: str) -> str: + """Format the var into a Javascript equivalent to an f-string. + + Args: + format_spec: The format specifier (Ignored for now). + + Returns: + The formatted var. + """ + hashed_var = hash(self) + + _global_vars[hashed_var] = self + + # Encode the _var_data into the formatted output for tracking purposes. + return f"{constants.REFLEX_VAR_OPENING_TAG}{hashed_var}{constants.REFLEX_VAR_CLOSING_TAG}{self._var_name}" + + @overload + def to( + self, output: Type[NumberVar], var_type: type[int] | type[float] = float + ) -> ToNumberVarOperation: ... + + @overload + def to(self, output: Type[BooleanVar]) -> ToBooleanVarOperation: ... + + @overload + def to( + self, + output: Type[ArrayVar], + var_type: type[list] | type[tuple] | type[set] = list, + ) -> ToArrayOperation: ... + + @overload + def to(self, output: Type[StringVar]) -> ToStringOperation: ... + + @overload + def to( + self, output: Type[ObjectVar], var_type: types.GenericType = dict + ) -> ToObjectOperation: ... + + @overload + def to( + self, output: Type[FunctionVar], var_type: Type[Callable] = Callable + ) -> ToFunctionOperation: ... + + @overload + def to( + self, + output: Type[OUTPUT] | types.GenericType, + var_type: types.GenericType | None = None, + ) -> OUTPUT: ... + + def to( + self, + output: Type[OUTPUT] | types.GenericType, + var_type: types.GenericType | None = None, + ) -> Var: + """Convert the var to a different type. + + Args: + output: The output type. + var_type: The type of the var. + + Raises: + TypeError: If the var_type is not a supported type for the output. + + Returns: + The converted var. + """ + from .function import FunctionVar, ToFunctionOperation + from .number import ( + BooleanVar, + NumberVar, + ToBooleanVarOperation, + ToNumberVarOperation, + ) + from .object import ObjectVar, ToObjectOperation + from .sequence import ArrayVar, StringVar, ToArrayOperation, ToStringOperation + + base_type = var_type + if types.is_optional(base_type): + base_type = types.get_args(base_type)[0] + + fixed_type = get_origin(base_type) or base_type + + fixed_output_type = get_origin(output) or output + + # If the first argument is a python type, we map it to the corresponding Var type. + if fixed_output_type is dict: + return self.to(ObjectVar, output) + if fixed_output_type in (list, tuple, set): + return self.to(ArrayVar, output) + if fixed_output_type in (int, float): + return self.to(NumberVar, output) + if fixed_output_type is str: + return self.to(StringVar, output) + if fixed_output_type is bool: + return self.to(BooleanVar, output) + + if issubclass(output, NumberVar): + if fixed_type is not None: + if fixed_type is Union: + inner_types = get_args(base_type) + if not all(issubclass(t, (int, float)) for t in inner_types): + raise TypeError( + f"Unsupported type {var_type} for NumberVar. Must be int or float." + ) + + elif not issubclass(fixed_type, (int, float)): + raise TypeError( + f"Unsupported type {var_type} for NumberVar. Must be int or float." + ) + return ToNumberVarOperation.create(self, var_type or float) + + if issubclass(output, BooleanVar): + return ToBooleanVarOperation.create(self) + + if issubclass(output, ArrayVar): + if fixed_type is not None and not issubclass( + fixed_type, (list, tuple, set) + ): + raise TypeError( + f"Unsupported type {var_type} for ArrayVar. Must be list, tuple, or set." + ) + return ToArrayOperation.create(self, var_type or list) + + if issubclass(output, StringVar): + return ToStringOperation.create(self) + + if issubclass(output, (ObjectVar, Base)): + return ToObjectOperation.create(self, var_type or dict) + + if issubclass(output, FunctionVar): + # if fixed_type is not None and not issubclass(fixed_type, Callable): + # raise TypeError( + # f"Unsupported type {var_type} for FunctionVar. Must be Callable." + # ) + return ToFunctionOperation.create(self, var_type or Callable) + + # If we can't determine the first argument, we just replace the _var_type. + if not issubclass(output, Var) or var_type is None: + return dataclasses.replace( + self, + _var_type=output, + ) + + # We couldn't determine the output type to be any other Var type, so we replace the _var_type. + if var_type is not None: + return dataclasses.replace( + self, + _var_type=var_type, + ) + + return self + + def guess_type(self) -> ImmutableVar: + """Guesses the type of the variable based on its `_var_type` attribute. + + Returns: + ImmutableVar: The guessed type of the variable. + + Raises: + TypeError: If the type is not supported for guessing. + """ + from .number import BooleanVar, NumberVar + from .object import ObjectVar + from .sequence import ArrayVar, StringVar + + var_type = self._var_type + if types.is_optional(var_type): + var_type = types.get_args(var_type)[0] + + if var_type is Any: + return self + + fixed_type = get_origin(var_type) or var_type + + if fixed_type is Union: + inner_types = get_args(var_type) + if int in inner_types and float in inner_types: + return self.to(NumberVar, self._var_type) + return self + + if not inspect.isclass(fixed_type): + raise TypeError(f"Unsupported type {var_type} for guess_type.") + + if issubclass(fixed_type, bool): + return self.to(BooleanVar, self._var_type) + if issubclass(fixed_type, (int, float)): + return self.to(NumberVar, self._var_type) + if issubclass(fixed_type, dict): + return self.to(ObjectVar, self._var_type) + if issubclass(fixed_type, (list, tuple, set)): + return self.to(ArrayVar, self._var_type) + if issubclass(fixed_type, str): + return self.to(StringVar) + if issubclass(fixed_type, Base): + return self.to(ObjectVar, self._var_type) + return self + + def get_default_value(self) -> Any: + """Get the default value of the var. + + Returns: + The default value of the var. + + Raises: + ImportError: If the var is a dataframe and pandas is not installed. + """ + if types.is_optional(self._var_type): + return None + + type_ = ( + get_origin(self._var_type) + if types.is_generic_alias(self._var_type) + else self._var_type + ) + if type_ is Literal: + args = get_args(self._var_type) + return args[0] if args else None + if issubclass(type_, str): + return "" + if issubclass(type_, types.get_args(Union[int, float])): + return 0 + if issubclass(type_, bool): + return False + if issubclass(type_, list): + return [] + if issubclass(type_, dict): + return {} + if issubclass(type_, tuple): + return () + if types.is_dataframe(type_): + try: + import pandas as pd + + return pd.DataFrame() + except ImportError as e: + raise ImportError( + "Please install pandas to use dataframes in your app." + ) from e + return set() if issubclass(type_, set) else None + + def get_setter_name(self, include_state: bool = True) -> str: + """Get the name of the var's generated setter function. + + Args: + include_state: Whether to include the state name in the setter name. + + Returns: + The name of the setter function. + """ + var_name_parts = self._var_name.split(".") + setter = constants.SETTER_PREFIX + var_name_parts[-1] + if self._var_data is None: + return setter + if not include_state or self._var_data.state == "": + return setter + return ".".join((self._var_data.state, setter)) + + def get_setter(self) -> Callable[[BaseState, Any], None]: + """Get the var's setter function. + + Returns: + A function that that creates a setter for the var. + """ + actual_name = self._var_name.split(".")[-1] + + def setter(state: BaseState, value: Any): + """Get the setter for the var. + + Args: + state: The state within which we add the setter function. + value: The value to set. + """ + if self._var_type in [int, float]: + try: + value = self._var_type(value) + setattr(state, actual_name, value) + except ValueError: + console.debug( + f"{type(state).__name__}.{self._var_name}: Failed conversion of {value} to '{self._var_type.__name__}'. Value not set.", + ) + else: + setattr(state, actual_name, value) + + setter.__qualname__ = self.get_setter_name() + + return setter + + def __eq__(self, other: Var | Any) -> BooleanVar: + """Check if the current variable is equal to the given variable. + + Args: + other (Var | Any): The variable to compare with. + + Returns: + BooleanVar: A BooleanVar object representing the result of the equality check. + """ + from .number import equal_operation + + return equal_operation(self, other) + + def __ne__(self, other: Var | Any) -> BooleanVar: + """Check if the current object is not equal to the given object. + + Parameters: + other (Var | Any): The object to compare with. + + Returns: + BooleanVar: A BooleanVar object representing the result of the comparison. + """ + from .number import equal_operation + + return ~equal_operation(self, other) + + def __gt__(self, other: Var | Any) -> BooleanVar: + """Compare the current instance with another variable and return a BooleanVar representing the result of the greater than operation. + + Args: + other (Var | Any): The variable to compare with. + + Returns: + BooleanVar: A BooleanVar representing the result of the greater than operation. + """ + from .number import greater_than_operation + + return greater_than_operation(self, other) + + def __ge__(self, other: Var | Any) -> BooleanVar: + """Check if the value of this variable is greater than or equal to the value of another variable or object. + + Args: + other (Var | Any): The variable or object to compare with. + + Returns: + BooleanVar: A BooleanVar object representing the result of the comparison. + """ + from .number import greater_than_or_equal_operation + + return greater_than_or_equal_operation(self, other) + + def __lt__(self, other: Var | Any) -> BooleanVar: + """Compare the current instance with another variable using the less than (<) operator. + + Args: + other: The variable to compare with. + + Returns: + A `BooleanVar` object representing the result of the comparison. + """ + from .number import less_than_operation + + return less_than_operation(self, other) + + def __le__(self, other: Var | Any) -> BooleanVar: + """Compare if the current instance is less than or equal to the given value. + + Args: + other: The value to compare with. + + Returns: + A BooleanVar object representing the result of the comparison. + """ + from .number import less_than_or_equal_operation + + return less_than_or_equal_operation(self, other) + + def bool(self) -> BooleanVar: + """Convert the var to a boolean. + + Returns: + The boolean var. + """ + from .number import boolify + + return boolify(self) + + def __and__(self, other: Var | Any) -> ImmutableVar: + """Perform a logical AND operation on the current instance and another variable. + + Args: + other: The variable to perform the logical AND operation with. + + Returns: + A `BooleanVar` object representing the result of the logical AND operation. + """ + return and_operation(self, other) + + def __rand__(self, other: Var | Any) -> ImmutableVar: + """Perform a logical AND operation on the current instance and another variable. + + Args: + other: The variable to perform the logical AND operation with. + + Returns: + A `BooleanVar` object representing the result of the logical AND operation. + """ + return and_operation(other, self) + + def __or__(self, other: Var | Any) -> ImmutableVar: + """Perform a logical OR operation on the current instance and another variable. + + Args: + other: The variable to perform the logical OR operation with. + + Returns: + A `BooleanVar` object representing the result of the logical OR operation. + """ + return or_operation(self, other) + + def __ror__(self, other: Var | Any) -> ImmutableVar: + """Perform a logical OR operation on the current instance and another variable. + + Args: + other: The variable to perform the logical OR operation with. + + Returns: + A `BooleanVar` object representing the result of the logical OR operation. + """ + return or_operation(other, self) + + def __invert__(self) -> BooleanVar: + """Perform a logical NOT operation on the current instance. + + Returns: + A `BooleanVar` object representing the result of the logical NOT operation. + """ + return ~self.bool() + + def to_string(self) -> ImmutableVar: + """Convert the var to a string. + + Returns: + The string var. + """ + from .function import JSON_STRINGIFY + from .sequence import StringVar + + return JSON_STRINGIFY.call(self).to(StringVar) + + def as_ref(self) -> ImmutableVar: + """Get a reference to the var. + + Returns: + The reference to the var. + """ + from .object import ObjectVar + + refs = ImmutableVar( + _var_name="refs", + _var_data=ImmutableVarData( + imports={ + f"/{constants.Dirs.STATE_PATH}": [imports.ImportVar(tag="refs")] + } + ), + ).to(ObjectVar) + return refs[LiteralVar.create(str(self))] + + def _type(self) -> StringVar: + """Returns the type of the object. + + This method uses the `typeof` function from the `FunctionStringVar` class + to determine the type of the object. + + Returns: + StringVar: A string variable representing the type of the object. + """ + from .function import FunctionStringVar + from .sequence import StringVar + + type_of = FunctionStringVar("typeof") + return type_of.call(self).to(StringVar) + + +OUTPUT = TypeVar("OUTPUT", bound=ImmutableVar) + + +class LiteralVar(ImmutableVar): + """Base class for immutable literal vars.""" + + @classmethod + def create( + cls, + value: Any, + _var_data: VarData | None = None, + ) -> Var: + """Create a var from a value. + + Args: + value: The value to create the var from. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + + Raises: + TypeError: If the value is not a supported type for LiteralVar. + """ + from .number import LiteralBooleanVar, LiteralNumberVar + from .object import LiteralObjectVar + from .sequence import LiteralArrayVar, LiteralStringVar + + if isinstance(value, Var): + if _var_data is None: + return value + return value._replace(merge_var_data=_var_data) + + if isinstance(value, str): + return LiteralStringVar.create(value, _var_data=_var_data) + + if isinstance(value, bool): + return LiteralBooleanVar.create(value, _var_data=_var_data) + + if isinstance(value, (int, float)): + return LiteralNumberVar.create(value, _var_data=_var_data) + + if isinstance(value, dict): + return LiteralObjectVar.create(value, _var_data=_var_data) + + if isinstance(value, Color): + return LiteralStringVar.create(f"{value}", _var_data=_var_data) + + if isinstance(value, (list, tuple, set)): + return LiteralArrayVar.create(value, _var_data=_var_data) + + if value is None: + return ImmutableVar.create_safe("null", _var_data=_var_data) + + from reflex.event import EventChain, EventSpec + from reflex.utils.format import get_event_handler_parts + + from .function import ArgsFunctionOperation, FunctionStringVar + from .object import LiteralObjectVar + + if isinstance(value, EventSpec): + event_name = LiteralVar.create( + ".".join(filter(None, get_event_handler_parts(value.handler))) + ) + event_args = LiteralVar.create( + {str(name): value for name, value in value.args} + ) + event_client_name = LiteralVar.create(value.client_handler_name) + return FunctionStringVar("Event").call( + event_name, + event_args, + *([event_client_name] if value.client_handler_name else []), + ) + + if isinstance(value, EventChain): + sig = inspect.signature(value.args_spec) # type: ignore + if sig.parameters: + arg_def = tuple((f"_{p}" for p in sig.parameters)) + arg_def_expr = LiteralVar.create( + [ImmutableVar.create_safe(arg) for arg in arg_def] + ) + else: + # add a default argument for addEvents if none were specified in value.args_spec + # used to trigger the preventDefault() on the event. + arg_def = ("...args",) + arg_def_expr = ImmutableVar.create_safe("args") + + return ArgsFunctionOperation.create( + arg_def, + FunctionStringVar.create("addEvents").call( + LiteralVar.create( + [LiteralVar.create(event) for event in value.events] + ), + arg_def_expr, + LiteralVar.create(value.event_actions), + ), + ) + + try: + from plotly.graph_objects import Figure, layout + from plotly.io import to_json + + if isinstance(value, Figure): + return LiteralObjectVar.create( + json.loads(str(to_json(value))), + _var_type=Figure, + _var_data=_var_data, + ) + + if isinstance(value, layout.Template): + return LiteralObjectVar.create( + { + "data": json.loads(str(to_json(value.data))), + "layout": json.loads(str(to_json(value.layout))), + }, + _var_type=layout.Template, + _var_data=_var_data, + ) + except ImportError: + pass + + try: + import base64 + import io + + from PIL.Image import MIME + from PIL.Image import Image as Img + + if isinstance(value, Img): + with io.BytesIO() as buffer: + image_format = getattr(value, "format", None) or "PNG" + value.save(buffer, format=image_format) + try: + # Newer method to get the mime type, but does not always work. + mimetype = value.get_format_mimetype() # type: ignore + except AttributeError: + try: + # Fallback method + mimetype = MIME[image_format] + except KeyError: + # Unknown mime_type: warn and return image/png and hope the browser can sort it out. + warnings.warn( # noqa: B028 + f"Unknown mime type for {value} {image_format}. Defaulting to image/png" + ) + mimetype = "image/png" + return LiteralStringVar.create( + f"data:{mimetype};base64,{base64.b64encode(buffer.getvalue()).decode()}", + _var_data=_var_data, + ) + except ImportError: + pass + + if isinstance(value, Base): + return LiteralObjectVar.create( + {k: (None if callable(v) else v) for k, v in value.dict().items()}, + _var_type=type(value), + _var_data=_var_data, + ) + + raise TypeError( + f"Unsupported type {type(value)} for LiteralVar. Tried to create a LiteralVar from {value}." + ) + + def __post_init__(self): + """Post-initialize the var.""" + + def json(self) -> str: + """Serialize the var to a JSON string. + + Raises: + NotImplementedError: If the method is not implemented. + """ + raise NotImplementedError( + "LiteralVar subclasses must implement the json method." + ) + + +P = ParamSpec("P") +T = TypeVar("T") + + +# NoReturn is used to match CustomVarOperationReturn with no type hint. +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[NoReturn]], +) -> Callable[P, ImmutableVar]: ... + + +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[bool]], +) -> Callable[P, BooleanVar]: ... + + +NUMBER_T = TypeVar("NUMBER_T", int, float, Union[int, float]) + + +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[NUMBER_T]], +) -> Callable[P, NumberVar[NUMBER_T]]: ... + + +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[str]], +) -> Callable[P, StringVar]: ... + + +LIST_T = TypeVar("LIST_T", bound=Union[List[Any], Tuple, Set]) + + +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[LIST_T]], +) -> Callable[P, ArrayVar[LIST_T]]: ... + + +OBJECT_TYPE = TypeVar("OBJECT_TYPE", bound=Dict) + + +@overload +def var_operation( + func: Callable[P, CustomVarOperationReturn[OBJECT_TYPE]], +) -> Callable[P, ObjectVar[OBJECT_TYPE]]: ... + + +def var_operation( + func: Callable[P, CustomVarOperationReturn[T]], +) -> Callable[P, ImmutableVar[T]]: + """Decorator for creating a var operation. + + Example: + ```python + @var_operation + def add(a: NumberVar, b: NumberVar): + return custom_var_operation(f"{a} + {b}") + ``` + + Args: + func: The function to decorate. + + Returns: + The decorated function. + """ + + @functools.wraps(func) + def wrapper(*args: P.args, **kwargs: P.kwargs) -> ImmutableVar[T]: + func_args = list(inspect.signature(func).parameters) + args_vars = { + func_args[i]: (LiteralVar.create(arg) if not isinstance(arg, Var) else arg) + for i, arg in enumerate(args) + } + kwargs_vars = { + key: LiteralVar.create(value) if not isinstance(value, Var) else value + for key, value in kwargs.items() + } + + return CustomVarOperation.create( + args=tuple(list(args_vars.items()) + list(kwargs_vars.items())), + return_var=func(*args_vars.values(), **kwargs_vars), # type: ignore + ).guess_type() + + return wrapper + + +def unionize(*args: Type) -> Type: + """Unionize the types. + + Args: + args: The types to unionize. + + Returns: + The unionized types. + """ + if not args: + return Any + first, *rest = args + if not rest: + return first + return Union[first, unionize(*rest)] + + +def figure_out_type(value: Any) -> types.GenericType: + """Figure out the type of the value. + + Args: + value: The value to figure out the type of. + + Returns: + The type of the value. + """ + if isinstance(value, list): + return List[unionize(*(figure_out_type(v) for v in value))] + if isinstance(value, set): + return Set[unionize(*(figure_out_type(v) for v in value))] + if isinstance(value, tuple): + return Tuple[unionize(*(figure_out_type(v) for v in value)), ...] + if isinstance(value, dict): + return Dict[ + unionize(*(figure_out_type(k) for k in value)), + unionize(*(figure_out_type(v) for v in value.values())), + ] + if isinstance(value, Var): + return value._var_type + return type(value) + + +class cached_property_no_lock(functools.cached_property): + """A special version of functools.cached_property that does not use a lock.""" + + def __init__(self, func): + """Initialize the cached_property_no_lock. + + Args: + func: The function to cache. + """ + super().__init__(func) + self.lock = contextlib.nullcontext() + + +class CachedVarOperation: + """Base class for cached var operations to lower boilerplate code.""" + + def __post_init__(self): + """Post-initialize the CachedVarOperation.""" + object.__delattr__(self, "_var_name") + + def __getattr__(self, name: str) -> Any: + """Get an attribute of the var. + + Args: + name: The name of the attribute. + + Returns: + The attribute. + """ + if name == "_var_name": + return self._cached_var_name + + parent_classes = inspect.getmro(self.__class__) + + return parent_classes[parent_classes.index(CachedVarOperation) + 1].__getattr__( # type: ignore + self, name + ) + + def _get_all_var_data(self) -> ImmutableVarData | None: + """Get all VarData associated with the Var. + + Returns: + The VarData of the components and all of its children. + """ + return self._cached_get_all_var_data + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get the cached VarData. + + Returns: + The cached VarData. + """ + return ImmutableVarData.merge( + *map( + lambda value: ( + value._get_all_var_data() if isinstance(value, Var) else None + ), + map( + lambda field: getattr(self, field.name), + dataclasses.fields(self), # type: ignore + ), + ), + self._var_data, + ) + + def __hash__(self) -> int: + """Calculate the hash of the object. + + Returns: + The hash of the object. + """ + return hash( + ( + self.__class__.__name__, + *[ + getattr(self, field.name) + for field in dataclasses.fields(self) # type: ignore + if field.name not in ["_var_name", "_var_data", "_var_type"] + ], + ) + ) + + +def and_operation(a: Var | Any, b: Var | Any) -> ImmutableVar: + """Perform a logical AND operation on two variables. + + Args: + a: The first variable. + b: The second variable. + + Returns: + The result of the logical AND operation. + """ + return _and_operation(a, b) # type: ignore + + +@var_operation +def _and_operation(a: ImmutableVar, b: ImmutableVar): + """Perform a logical AND operation on two variables. + + Args: + a: The first variable. + b: The second variable. + + Returns: + The result of the logical AND operation. + """ + return var_operation_return( + js_expression=f"({a} && {b})", + var_type=unionize(a._var_type, b._var_type), + ) + + +def or_operation(a: Var | Any, b: Var | Any) -> ImmutableVar: + """Perform a logical OR operation on two variables. + + Args: + a: The first variable. + b: The second variable. + + Returns: + The result of the logical OR operation. + """ + return _or_operation(a, b) # type: ignore + + +@var_operation +def _or_operation(a: ImmutableVar, b: ImmutableVar): + """Perform a logical OR operation on two variables. + + Args: + a: The first variable. + b: The second variable. + + Returns: + The result of the logical OR operation. + """ + return var_operation_return( + js_expression=f"({a} || {b})", + var_type=unionize(a._var_type, b._var_type), + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ImmutableCallableVar(ImmutableVar): + """Decorate a Var-returning function to act as both a Var and a function. + + This is used as a compatibility shim for replacing Var objects in the + API with functions that return a family of Var. + """ + + fn: Callable[..., Var] = dataclasses.field( + default_factory=lambda: lambda: ImmutableVar(_var_name="undefined") + ) + original_var: Var = dataclasses.field( + default_factory=lambda: ImmutableVar(_var_name="undefined") + ) + + def __init__(self, fn: Callable[..., Var]): + """Initialize a CallableVar. + + Args: + fn: The function to decorate (must return Var) + """ + original_var = fn() + super(ImmutableCallableVar, self).__init__( + _var_name=original_var._var_name, + _var_type=original_var._var_type, + _var_data=ImmutableVarData.merge(original_var._get_all_var_data()), + ) + object.__setattr__(self, "fn", fn) + object.__setattr__(self, "original_var", original_var) + + def __call__(self, *args, **kwargs) -> Var: + """Call the decorated function. + + Args: + *args: The args to pass to the function. + **kwargs: The kwargs to pass to the function. + + Returns: + The Var returned from calling the function. + """ + return self.fn(*args, **kwargs) + + def __hash__(self) -> int: + """Calculate the hash of the object. + + Returns: + The hash of the object. + """ + return hash((self.__class__.__name__, self.original_var)) + + +RETURN_TYPE = TypeVar("RETURN_TYPE") + +DICT_KEY = TypeVar("DICT_KEY") +DICT_VAL = TypeVar("DICT_VAL") + +LIST_INSIDE = TypeVar("LIST_INSIDE") + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ImmutableComputedVar(ImmutableVar[RETURN_TYPE]): + """A field with computed getters.""" + + # Whether to track dependencies and cache computed values + _cache: bool = dataclasses.field(default=False) + + # Whether the computed var is a backend var + _backend: bool = dataclasses.field(default=False) + + # The initial value of the computed var + _initial_value: RETURN_TYPE | types.Unset = dataclasses.field(default=types.Unset()) + + # Explicit var dependencies to track + _static_deps: set[str] = dataclasses.field(default_factory=set) + + # Whether var dependencies should be auto-determined + _auto_deps: bool = dataclasses.field(default=True) + + # Interval at which the computed var should be updated + _update_interval: Optional[datetime.timedelta] = dataclasses.field(default=None) + + _fget: Callable[[BaseState], RETURN_TYPE] = dataclasses.field( + default_factory=lambda: lambda _: None + ) # type: ignore + + def __init__( + self, + fget: Callable[[BASE_STATE], RETURN_TYPE], + initial_value: RETURN_TYPE | types.Unset = types.Unset(), + cache: bool = False, + deps: Optional[List[Union[str, Var]]] = None, + auto_deps: bool = True, + interval: Optional[Union[int, datetime.timedelta]] = None, + backend: bool | None = None, + **kwargs, + ): + """Initialize a ComputedVar. + + Args: + fget: The getter function. + initial_value: The initial value of the computed var. + cache: Whether to cache the computed value. + deps: Explicit var dependencies to track. + auto_deps: Whether var dependencies should be auto-determined. + interval: Interval at which the computed var should be updated. + backend: Whether the computed var is a backend var. + **kwargs: additional attributes to set on the instance + + Raises: + TypeError: If the computed var dependencies are not Var instances or var names. + """ + hints = get_type_hints(fget) + hint = hints.get("return", Any) + + kwargs["_var_name"] = kwargs.pop("_var_name", fget.__name__) + kwargs["_var_type"] = kwargs.pop("_var_type", hint) + + super(ImmutableComputedVar, self).__init__( + _var_name=kwargs.pop("_var_name"), + _var_type=kwargs.pop("_var_type"), + _var_data=ImmutableVarData.merge(kwargs.pop("_var_data", None)), + ) + + if backend is None: + backend = fget.__name__.startswith("_") + + object.__setattr__(self, "_backend", backend) + object.__setattr__(self, "_initial_value", initial_value) + object.__setattr__(self, "_cache", cache) + + if isinstance(interval, int): + interval = datetime.timedelta(seconds=interval) + + object.__setattr__(self, "_update_interval", interval) + + if deps is None: + deps = [] + else: + for dep in deps: + if isinstance(dep, Var): + continue + if isinstance(dep, str) and dep != "": + continue + raise TypeError( + "ComputedVar dependencies must be Var instances or var names (non-empty strings)." + ) + object.__setattr__( + self, + "_static_deps", + {dep._var_name if isinstance(dep, Var) else dep for dep in deps}, + ) + object.__setattr__(self, "_auto_deps", auto_deps) + + object.__setattr__(self, "_fget", fget) + + @override + def _replace(self, merge_var_data=None, **kwargs: Any) -> ImmutableComputedVar: + """Replace the attributes of the ComputedVar. + + Args: + merge_var_data: VarData to merge into the existing VarData. + **kwargs: Var fields to update. + + Returns: + The new ComputedVar instance. + + Raises: + TypeError: If kwargs contains keys that are not allowed. + """ + field_values = dict( + fget=kwargs.pop("fget", self._fget), + initial_value=kwargs.pop("initial_value", self._initial_value), + cache=kwargs.pop("cache", self._cache), + deps=kwargs.pop("deps", self._static_deps), + auto_deps=kwargs.pop("auto_deps", self._auto_deps), + interval=kwargs.pop("interval", self._update_interval), + backend=kwargs.pop("backend", self._backend), + _var_name=kwargs.pop("_var_name", self._var_name), + _var_type=kwargs.pop("_var_type", self._var_type), + _var_data=kwargs.pop( + "_var_data", VarData.merge(self._var_data, merge_var_data) + ), + ) + + if kwargs: + unexpected_kwargs = ", ".join(kwargs.keys()) + raise TypeError(f"Unexpected keyword arguments: {unexpected_kwargs}") + + return ImmutableComputedVar(**field_values) + + @property + def _cache_attr(self) -> str: + """Get the attribute used to cache the value on the instance. + + Returns: + An attribute name. + """ + return f"__cached_{self._var_name}" + + @property + def _last_updated_attr(self) -> str: + """Get the attribute used to store the last updated timestamp. + + Returns: + An attribute name. + """ + return f"__last_updated_{self._var_name}" + + def needs_update(self, instance: BaseState) -> bool: + """Check if the computed var needs to be updated. + + Args: + instance: The state instance that the computed var is attached to. + + Returns: + True if the computed var needs to be updated, False otherwise. + """ + if self._update_interval is None: + return False + last_updated = getattr(instance, self._last_updated_attr, None) + if last_updated is None: + return True + return datetime.datetime.now() - last_updated > self._update_interval + + @overload + def __get__( + self: ImmutableComputedVar[int] | ImmutableComputedVar[float], + instance: None, + owner: Type, + ) -> NumberVar: ... + + @overload + def __get__( + self: ImmutableComputedVar[str], + instance: None, + owner: Type, + ) -> StringVar: ... + + @overload + def __get__( + self: ImmutableComputedVar[dict[DICT_KEY, DICT_VAL]], + instance: None, + owner: Type, + ) -> ObjectVar[dict[DICT_KEY, DICT_VAL]]: ... + + @overload + def __get__( + self: ImmutableComputedVar[list[LIST_INSIDE]], + instance: None, + owner: Type, + ) -> ArrayVar[list[LIST_INSIDE]]: ... + + @overload + def __get__( + self: ImmutableComputedVar[set[LIST_INSIDE]], + instance: None, + owner: Type, + ) -> ArrayVar[set[LIST_INSIDE]]: ... + + @overload + def __get__( + self: ImmutableComputedVar[tuple[LIST_INSIDE, ...]], + instance: None, + owner: Type, + ) -> ArrayVar[tuple[LIST_INSIDE, ...]]: ... + + @overload + def __get__( + self, instance: None, owner: Type + ) -> ImmutableComputedVar[RETURN_TYPE]: ... + + @overload + def __get__(self, instance: BaseState, owner: Type) -> RETURN_TYPE: ... + + def __get__(self, instance: BaseState | None, owner): + """Get the ComputedVar value. + + If the value is already cached on the instance, return the cached value. + + Args: + instance: the instance of the class accessing this computed var. + owner: the class that this descriptor is attached to. + + Returns: + The value of the var for the given instance. + """ + if instance is None: + from reflex.state import BaseState + + path_to_function = self.fget.__qualname__.split(".") + class_name_where_defined = ( + path_to_function[-2] if len(path_to_function) > 1 else owner.__name__ + ) + + def contains_class_name(states: Sequence[Type]) -> bool: + return any(c.__name__ == class_name_where_defined for c in states) + + def is_not_mixin(state: Type[BaseState]) -> bool: + return not state._mixin + + def length_of_state(state: Type[BaseState]) -> int: + return len(inspect.getmro(state)) + + class_where_defined = cast( + Type[BaseState], + min( + filter( + lambda state: state.__module__ == self.fget.__module__, + filter( + is_not_mixin, + filter( + lambda state: contains_class_name( + inspect.getmro(state) + ), + inspect.getmro(owner), + ), + ), + ), + default=owner, + key=length_of_state, + ), + ) + + return self._replace( + _var_name=format_state_name(class_where_defined.get_full_name()) + + "." + + self._var_name, + merge_var_data=ImmutableVarData.from_state(class_where_defined), + ).guess_type() + + if not self._cache: + return self.fget(instance) + + # handle caching + if not hasattr(instance, self._cache_attr) or self.needs_update(instance): + # Set cache attr on state instance. + setattr(instance, self._cache_attr, self.fget(instance)) + # Ensure the computed var gets serialized to redis. + instance._was_touched = True + # Set the last updated timestamp on the state instance. + setattr(instance, self._last_updated_attr, datetime.datetime.now()) + return getattr(instance, self._cache_attr) + + def _deps( + self, + objclass: Type, + obj: FunctionType | CodeType | None = None, + self_name: Optional[str] = None, + ) -> set[str]: + """Determine var dependencies of this ComputedVar. + + Save references to attributes accessed on "self". Recursively called + when the function makes a method call on "self" or define comprehensions + or nested functions that may reference "self". + + Args: + objclass: the class obj this ComputedVar is attached to. + obj: the object to disassemble (defaults to the fget function). + self_name: if specified, look for this name in LOAD_FAST and LOAD_DEREF instructions. + + Returns: + A set of variable names accessed by the given obj. + + Raises: + VarValueError: if the function references the get_state, parent_state, or substates attributes + (cannot track deps in a related state, only implicitly via parent state). + """ + if not self._auto_deps: + return self._static_deps + d = self._static_deps.copy() + if obj is None: + fget = self._fget + if fget is not None: + obj = cast(FunctionType, fget) + else: + return set() + with contextlib.suppress(AttributeError): + # unbox functools.partial + obj = cast(FunctionType, obj.func) # type: ignore + with contextlib.suppress(AttributeError): + # unbox EventHandler + obj = cast(FunctionType, obj.fn) # type: ignore + + if self_name is None and isinstance(obj, FunctionType): + try: + # the first argument to the function is the name of "self" arg + self_name = obj.__code__.co_varnames[0] + except (AttributeError, IndexError): + self_name = None + if self_name is None: + # cannot reference attributes on self if method takes no args + return set() + + invalid_names = ["get_state", "parent_state", "substates", "get_substate"] + self_is_top_of_stack = False + for instruction in dis.get_instructions(obj): + if ( + instruction.opname in ("LOAD_FAST", "LOAD_DEREF") + and instruction.argval == self_name + ): + # bytecode loaded the class instance to the top of stack, next load instruction + # is referencing an attribute on self + self_is_top_of_stack = True + continue + if self_is_top_of_stack and instruction.opname in ( + "LOAD_ATTR", + "LOAD_METHOD", + ): + try: + ref_obj = getattr(objclass, instruction.argval) + except Exception: + ref_obj = None + if instruction.argval in invalid_names: + raise VarValueError( + f"Cached var {self._var_full_name} cannot access arbitrary state via `{instruction.argval}`." + ) + if callable(ref_obj): + # recurse into callable attributes + d.update( + self._deps( + objclass=objclass, + obj=ref_obj, + ) + ) + # recurse into property fget functions + elif isinstance(ref_obj, property) and not isinstance( + ref_obj, ImmutableComputedVar + ): + d.update( + self._deps( + objclass=objclass, + obj=ref_obj.fget, # type: ignore + ) + ) + elif ( + instruction.argval in objclass.backend_vars + or instruction.argval in objclass.vars + ): + # var access + d.add(instruction.argval) + elif instruction.opname == "LOAD_CONST" and isinstance( + instruction.argval, CodeType + ): + # recurse into nested functions / comprehensions, which can reference + # instance attributes from the outer scope + d.update( + self._deps( + objclass=objclass, + obj=instruction.argval, + self_name=self_name, + ) + ) + self_is_top_of_stack = False + return d + + def mark_dirty(self, instance) -> None: + """Mark this ComputedVar as dirty. + + Args: + instance: the state instance that needs to recompute the value. + """ + with contextlib.suppress(AttributeError): + delattr(instance, self._cache_attr) + + def _determine_var_type(self) -> Type: + """Get the type of the var. + + Returns: + The type of the var. + """ + hints = get_type_hints(self._fget) + if "return" in hints: + return hints["return"] + return Any + + @property + def __class__(self) -> Type: + """Get the class of the var. + + Returns: + The class of the var. + """ + return ComputedVar + + @property + def fget(self) -> Callable[[BaseState], RETURN_TYPE]: + """Get the getter function. + + Returns: + The getter function. + """ + return self._fget + + +if TYPE_CHECKING: + BASE_STATE = TypeVar("BASE_STATE", bound=BaseState) + + +@overload +def immutable_computed_var( + fget: None = None, + initial_value: Any | types.Unset = types.Unset(), + cache: bool = False, + deps: Optional[List[Union[str, Var]]] = None, + auto_deps: bool = True, + interval: Optional[Union[datetime.timedelta, int]] = None, + backend: bool | None = None, + **kwargs, +) -> Callable[ + [Callable[[BASE_STATE], RETURN_TYPE]], ImmutableComputedVar[RETURN_TYPE] +]: ... + + +@overload +def immutable_computed_var( + fget: Callable[[BASE_STATE], RETURN_TYPE], + initial_value: RETURN_TYPE | types.Unset = types.Unset(), + cache: bool = False, + deps: Optional[List[Union[str, Var]]] = None, + auto_deps: bool = True, + interval: Optional[Union[datetime.timedelta, int]] = None, + backend: bool | None = None, + **kwargs, +) -> ImmutableComputedVar[RETURN_TYPE]: ... + + +def immutable_computed_var( + fget: Callable[[BASE_STATE], Any] | None = None, + initial_value: Any | types.Unset = types.Unset(), + cache: bool = False, + deps: Optional[List[Union[str, Var]]] = None, + auto_deps: bool = True, + interval: Optional[Union[datetime.timedelta, int]] = None, + backend: bool | None = None, + **kwargs, +) -> ( + ImmutableComputedVar | Callable[[Callable[[BASE_STATE], Any]], ImmutableComputedVar] +): + """A ComputedVar decorator with or without kwargs. + + Args: + fget: The getter function. + initial_value: The initial value of the computed var. + cache: Whether to cache the computed value. + deps: Explicit var dependencies to track. + auto_deps: Whether var dependencies should be auto-determined. + interval: Interval at which the computed var should be updated. + backend: Whether the computed var is a backend var. + **kwargs: additional attributes to set on the instance + + Returns: + A ComputedVar instance. + + Raises: + ValueError: If caching is disabled and an update interval is set. + VarDependencyError: If user supplies dependencies without caching. + """ + if cache is False and interval is not None: + raise ValueError("Cannot set update interval without caching.") + + if cache is False and (deps is not None or auto_deps is False): + raise VarDependencyError("Cannot track dependencies without caching.") + + if fget is not None: + return ImmutableComputedVar(fget, cache=cache) + + def wrapper(fget: Callable[[BASE_STATE], Any]) -> ImmutableComputedVar: + return ImmutableComputedVar( + fget, + initial_value=initial_value, + cache=cache, + deps=deps, + auto_deps=auto_deps, + interval=interval, + backend=backend, + **kwargs, + ) + + return wrapper + + +RETURN = TypeVar("RETURN") + + +class CustomVarOperationReturn(ImmutableVar[RETURN]): + """Base class for custom var operations.""" + + @classmethod + def create( + cls, + js_expression: str, + _var_type: Type[RETURN] | None = None, + _var_data: VarData | None = None, + ) -> CustomVarOperationReturn[RETURN]: + """Create a CustomVarOperation. + + Args: + js_expression: The JavaScript expression to evaluate. + _var_type: The type of the var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The CustomVarOperation. + """ + return CustomVarOperationReturn( + _var_name=js_expression, + _var_type=_var_type or Any, + _var_data=ImmutableVarData.merge(_var_data), + ) + + +def var_operation_return( + js_expression: str, + var_type: Type[RETURN] | None = None, +) -> CustomVarOperationReturn[RETURN]: + """Shortcut for creating a CustomVarOperationReturn. + + Args: + js_expression: The JavaScript expression to evaluate. + var_type: The type of the var. + + Returns: + The CustomVarOperationReturn. + """ + return CustomVarOperationReturn.create(js_expression, var_type) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class CustomVarOperation(CachedVarOperation, ImmutableVar[T]): + """Base class for custom var operations.""" + + _args: Tuple[Tuple[str, Var], ...] = dataclasses.field(default_factory=tuple) + + _return: CustomVarOperationReturn[T] = dataclasses.field( + default_factory=lambda: CustomVarOperationReturn.create("") + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """Get the cached var name. + + Returns: + The cached var name. + """ + return str(self._return) + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get the cached VarData. + + Returns: + The cached VarData. + """ + return ImmutableVarData.merge( + *map( + lambda arg: arg[1]._get_all_var_data(), + self._args, + ), + self._return._get_all_var_data(), + self._var_data, + ) + + @classmethod + def create( + cls, + args: Tuple[Tuple[str, Var], ...], + return_var: CustomVarOperationReturn[T], + _var_data: VarData | None = None, + ) -> CustomVarOperation[T]: + """Create a CustomVarOperation. + + Args: + args: The arguments to the operation. + return_var: The return var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The CustomVarOperation. + """ + return CustomVarOperation( + _var_name="", + _var_type=return_var._var_type, + _var_data=ImmutableVarData.merge(_var_data), + _args=args, + _return=return_var, + ) diff --git a/reflex/ivars/function.py b/reflex/ivars/function.py new file mode 100644 index 000000000..1a987b1cf --- /dev/null +++ b/reflex/ivars/function.py @@ -0,0 +1,223 @@ +"""Immutable function vars.""" + +from __future__ import annotations + +import dataclasses +import sys +from typing import Any, Callable, Optional, Tuple, Type, Union + +from reflex.utils.types import GenericType +from reflex.vars import ImmutableVarData, Var, VarData + +from .base import CachedVarOperation, ImmutableVar, LiteralVar, cached_property_no_lock + + +class FunctionVar(ImmutableVar[Callable]): + """Base class for immutable function vars.""" + + def __call__(self, *args: Var | Any) -> ArgsFunctionOperation: + """Call the function with the given arguments. + + Args: + *args: The arguments to call the function with. + + Returns: + The function call operation. + """ + return ArgsFunctionOperation.create( + ("...args",), + VarOperationCall.create(self, *args, ImmutableVar.create_safe("...args")), + ) + + def call(self, *args: Var | Any) -> VarOperationCall: + """Call the function with the given arguments. + + Args: + *args: The arguments to call the function with. + + Returns: + The function call operation. + """ + return VarOperationCall.create(self, *args) + + +class FunctionStringVar(FunctionVar): + """Base class for immutable function vars from a string.""" + + @classmethod + def create( + cls, + func: str, + _var_type: Type[Callable] = Callable, + _var_data: VarData | None = None, + ) -> FunctionStringVar: + """Create a new function var from a string. + + Args: + func: The function to call. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The function var. + """ + return cls( + _var_name=func, + _var_type=_var_type, + _var_data=ImmutableVarData.merge(_var_data), + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class VarOperationCall(CachedVarOperation, ImmutableVar): + """Base class for immutable vars that are the result of a function call.""" + + _func: Optional[FunctionVar] = dataclasses.field(default=None) + _args: Tuple[Union[Var, Any], ...] = dataclasses.field(default_factory=tuple) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return f"({str(self._func)}({', '.join([str(LiteralVar.create(arg)) for arg in self._args])}))" + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get all the var data associated with the var. + + Returns: + All the var data associated with the var. + """ + return ImmutableVarData.merge( + self._func._get_all_var_data() if self._func is not None else None, + *[LiteralVar.create(arg)._get_all_var_data() for arg in self._args], + self._var_data, + ) + + @classmethod + def create( + cls, + func: FunctionVar, + *args: Var | Any, + _var_type: GenericType = Any, + _var_data: VarData | None = None, + ) -> VarOperationCall: + """Create a new function call var. + + Args: + func: The function to call. + *args: The arguments to call the function with. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The function call var. + """ + return cls( + _var_name="", + _var_type=_var_type, + _var_data=ImmutableVarData.merge(_var_data), + _func=func, + _args=args, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ArgsFunctionOperation(CachedVarOperation, FunctionVar): + """Base class for immutable function defined via arguments and return expression.""" + + _args_names: Tuple[str, ...] = dataclasses.field(default_factory=tuple) + _return_expr: Union[Var, Any] = dataclasses.field(default=None) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return f"(({', '.join(self._args_names)}) => ({str(LiteralVar.create(self._return_expr))}))" + + @classmethod + def create( + cls, + args_names: Tuple[str, ...], + return_expr: Var | Any, + _var_type: GenericType = Callable, + _var_data: VarData | None = None, + ) -> ArgsFunctionOperation: + """Create a new function var. + + Args: + args_names: The names of the arguments. + return_expr: The return expression of the function. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The function var. + """ + return cls( + _var_name="", + _var_type=_var_type, + _var_data=ImmutableVarData.merge(_var_data), + _args_names=args_names, + _return_expr=return_expr, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToFunctionOperation(CachedVarOperation, FunctionVar): + """Base class of converting a var to a function.""" + + _original_var: Var = dataclasses.field( + default_factory=lambda: LiteralVar.create(None) + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return str(self._original_var) + + @classmethod + def create( + cls, + original_var: Var, + _var_type: GenericType = Callable, + _var_data: VarData | None = None, + ) -> ToFunctionOperation: + """Create a new function var. + + Args: + original_var: The original var to convert to a function. + _var_type: The type of the function. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The function var. + """ + return cls( + _var_name="", + _var_type=_var_type, + _var_data=ImmutableVarData.merge(_var_data), + _original_var=original_var, + ) + + +JSON_STRINGIFY = FunctionStringVar.create("JSON.stringify") diff --git a/reflex/ivars/number.py b/reflex/ivars/number.py new file mode 100644 index 000000000..68c856d18 --- /dev/null +++ b/reflex/ivars/number.py @@ -0,0 +1,1009 @@ +"""Immutable number vars.""" + +from __future__ import annotations + +import dataclasses +import json +import sys +from typing import Any, Callable, TypeVar, Union + +from reflex.vars import ImmutableVarData, Var, VarData + +from .base import ( + CachedVarOperation, + CustomVarOperationReturn, + ImmutableVar, + LiteralVar, + cached_property_no_lock, + unionize, + var_operation, + var_operation_return, +) + +NUMBER_T = TypeVar("NUMBER_T", int, float, Union[int, float]) + + +class NumberVar(ImmutableVar[NUMBER_T]): + """Base class for immutable number vars.""" + + def __add__(self, other: number_types | boolean_types): + """Add two numbers. + + Args: + other: The other number. + + Returns: + The number addition operation. + """ + return number_add_operation(self, +other) + + def __radd__(self, other: number_types | boolean_types): + """Add two numbers. + + Args: + other: The other number. + + Returns: + The number addition operation. + """ + return number_add_operation(+other, self) + + def __sub__(self, other: number_types | boolean_types): + """Subtract two numbers. + + Args: + other: The other number. + + Returns: + The number subtraction operation. + """ + return number_subtract_operation(self, +other) + + def __rsub__(self, other: number_types | boolean_types): + """Subtract two numbers. + + Args: + other: The other number. + + Returns: + The number subtraction operation. + """ + return number_subtract_operation(+other, self) + + def __abs__(self): + """Get the absolute value of the number. + + Returns: + The number absolute operation. + """ + return number_abs_operation(self) + + def __mul__(self, other: number_types | boolean_types): + """Multiply two numbers. + + Args: + other: The other number. + + Returns: + The number multiplication operation. + """ + return number_multiply_operation(self, +other) + + def __rmul__(self, other: number_types | boolean_types): + """Multiply two numbers. + + Args: + other: The other number. + + Returns: + The number multiplication operation. + """ + return number_multiply_operation(+other, self) + + def __truediv__(self, other: number_types | boolean_types): + """Divide two numbers. + + Args: + other: The other number. + + Returns: + The number true division operation. + """ + return number_true_division_operation(self, +other) + + def __rtruediv__(self, other: number_types | boolean_types): + """Divide two numbers. + + Args: + other: The other number. + + Returns: + The number true division operation. + """ + return number_true_division_operation(+other, self) + + def __floordiv__(self, other: number_types | boolean_types): + """Floor divide two numbers. + + Args: + other: The other number. + + Returns: + The number floor division operation. + """ + return number_floor_division_operation(self, +other) + + def __rfloordiv__(self, other: number_types | boolean_types): + """Floor divide two numbers. + + Args: + other: The other number. + + Returns: + The number floor division operation. + """ + return number_floor_division_operation(+other, self) + + def __mod__(self, other: number_types | boolean_types): + """Modulo two numbers. + + Args: + other: The other number. + + Returns: + The number modulo operation. + """ + return number_modulo_operation(self, +other) + + def __rmod__(self, other: number_types | boolean_types): + """Modulo two numbers. + + Args: + other: The other number. + + Returns: + The number modulo operation. + """ + return number_modulo_operation(+other, self) + + def __pow__(self, other: number_types | boolean_types): + """Exponentiate two numbers. + + Args: + other: The other number. + + Returns: + The number exponent operation. + """ + return number_exponent_operation(self, +other) + + def __rpow__(self, other: number_types | boolean_types): + """Exponentiate two numbers. + + Args: + other: The other number. + + Returns: + The number exponent operation. + """ + return number_exponent_operation(+other, self) + + def __neg__(self): + """Negate the number. + + Returns: + The number negation operation. + """ + return number_negate_operation(self) + + def __invert__(self): + """Boolean NOT the number. + + Returns: + The boolean NOT operation. + """ + return boolean_not_operation(self.bool()) + + def __pos__(self) -> NumberVar: + """Positive the number. + + Returns: + The number. + """ + return self + + def __round__(self): + """Round the number. + + Returns: + The number round operation. + """ + return number_round_operation(self) + + def __ceil__(self): + """Ceil the number. + + Returns: + The number ceil operation. + """ + return number_ceil_operation(self) + + def __floor__(self): + """Floor the number. + + Returns: + The number floor operation. + """ + return number_floor_operation(self) + + def __trunc__(self): + """Trunc the number. + + Returns: + The number trunc operation. + """ + return number_trunc_operation(self) + + def __lt__(self, other: Any): + """Less than comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return less_than_operation(self, +other) + return less_than_operation(self, other) + + def __le__(self, other: Any): + """Less than or equal comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return less_than_or_equal_operation(self, +other) + return less_than_or_equal_operation(self, other) + + def __eq__(self, other: Any): + """Equal comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return equal_operation(self, +other) + return equal_operation(self, other) + + def __ne__(self, other: Any): + """Not equal comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return not_equal_operation(self, +other) + return not_equal_operation(self, other) + + def __gt__(self, other: Any): + """Greater than comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return greater_than_operation(self, +other) + return greater_than_operation(self, other) + + def __ge__(self, other: Any): + """Greater than or equal comparison. + + Args: + other: The other number. + + Returns: + The result of the comparison. + """ + if isinstance(other, (NumberVar, BooleanVar, int, float, bool)): + return greater_than_or_equal_operation(self, +other) + return greater_than_or_equal_operation(self, other) + + def bool(self): + """Boolean conversion. + + Returns: + The boolean value of the number. + """ + return self != 0 + + +def binary_number_operation( + func: Callable[[NumberVar, NumberVar], str], +) -> Callable[[number_types, number_types], NumberVar]: + """Decorator to create a binary number operation. + + Args: + func: The binary number operation function. + + Returns: + The binary number operation. + """ + + @var_operation + def operation(lhs: NumberVar, rhs: NumberVar): + return var_operation_return( + js_expression=func(lhs, rhs), + var_type=unionize(lhs._var_type, rhs._var_type), + ) + + def wrapper(lhs: number_types, rhs: number_types) -> NumberVar: + """Create the binary number operation. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The binary number operation. + """ + return operation(lhs, rhs) # type: ignore + + return wrapper + + +@binary_number_operation +def number_add_operation(lhs: NumberVar, rhs: NumberVar): + """Add two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number addition operation. + """ + return f"({lhs} + {rhs})" + + +@binary_number_operation +def number_subtract_operation(lhs: NumberVar, rhs: NumberVar): + """Subtract two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number subtraction operation. + """ + return f"({lhs} - {rhs})" + + +@var_operation +def number_abs_operation(value: NumberVar): + """Get the absolute value of the number. + + Args: + value: The number. + + Returns: + The number absolute operation. + """ + return var_operation_return( + js_expression=f"Math.abs({value})", var_type=value._var_type + ) + + +@binary_number_operation +def number_multiply_operation(lhs: NumberVar, rhs: NumberVar): + """Multiply two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number multiplication operation. + """ + return f"({lhs} * {rhs})" + + +@var_operation +def number_negate_operation( + value: NumberVar[NUMBER_T], +) -> CustomVarOperationReturn[NUMBER_T]: + """Negate the number. + + Args: + value: The number. + + Returns: + The number negation operation. + """ + return var_operation_return(js_expression=f"-({value})", var_type=value._var_type) + + +@binary_number_operation +def number_true_division_operation(lhs: NumberVar, rhs: NumberVar): + """Divide two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number true division operation. + """ + return f"({lhs} / {rhs})" + + +@binary_number_operation +def number_floor_division_operation(lhs: NumberVar, rhs: NumberVar): + """Floor divide two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number floor division operation. + """ + return f"Math.floor({lhs} / {rhs})" + + +@binary_number_operation +def number_modulo_operation(lhs: NumberVar, rhs: NumberVar): + """Modulo two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number modulo operation. + """ + return f"({lhs} % {rhs})" + + +@binary_number_operation +def number_exponent_operation(lhs: NumberVar, rhs: NumberVar): + """Exponentiate two numbers. + + Args: + lhs: The first number. + rhs: The second number. + + Returns: + The number exponent operation. + """ + return f"({lhs} ** {rhs})" + + +@var_operation +def number_round_operation(value: NumberVar): + """Round the number. + + Args: + value: The number. + + Returns: + The number round operation. + """ + return var_operation_return(js_expression=f"Math.round({value})", var_type=int) + + +@var_operation +def number_ceil_operation(value: NumberVar): + """Ceil the number. + + Args: + value: The number. + + Returns: + The number ceil operation. + """ + return var_operation_return(js_expression=f"Math.ceil({value})", var_type=int) + + +@var_operation +def number_floor_operation(value: NumberVar): + """Floor the number. + + Args: + value: The number. + + Returns: + The number floor operation. + """ + return var_operation_return(js_expression=f"Math.floor({value})", var_type=int) + + +@var_operation +def number_trunc_operation(value: NumberVar): + """Trunc the number. + + Args: + value: The number. + + Returns: + The number trunc operation. + """ + return var_operation_return(js_expression=f"Math.trunc({value})", var_type=int) + + +class BooleanVar(ImmutableVar[bool]): + """Base class for immutable boolean vars.""" + + def __invert__(self): + """NOT the boolean. + + Returns: + The boolean NOT operation. + """ + return boolean_not_operation(self) + + def __int__(self): + """Convert the boolean to an int. + + Returns: + The boolean to int operation. + """ + return boolean_to_number_operation(self) + + def __pos__(self): + """Convert the boolean to an int. + + Returns: + The boolean to int operation. + """ + return boolean_to_number_operation(self) + + def bool(self) -> BooleanVar: + """Boolean conversion. + + Returns: + The boolean value of the boolean. + """ + return self + + def __lt__(self, other: boolean_types | number_types): + """Less than comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return less_than_operation(+self, +other) + + def __le__(self, other: boolean_types | number_types): + """Less than or equal comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return less_than_or_equal_operation(+self, +other) + + def __eq__(self, other: boolean_types | number_types): + """Equal comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return equal_operation(+self, +other) + + def __ne__(self, other: boolean_types | number_types): + """Not equal comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return not_equal_operation(+self, +other) + + def __gt__(self, other: boolean_types | number_types): + """Greater than comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return greater_than_operation(+self, +other) + + def __ge__(self, other: boolean_types | number_types): + """Greater than or equal comparison. + + Args: + other: The other boolean. + + Returns: + The result of the comparison. + """ + return greater_than_or_equal_operation(+self, +other) + + +@var_operation +def boolean_to_number_operation(value: BooleanVar): + """Convert the boolean to a number. + + Args: + value: The boolean. + + Returns: + The boolean to number operation. + """ + return var_operation_return(js_expression=f"Number({value})", var_type=int) + + +def comparison_operator( + func: Callable[[Var, Var], str], +) -> Callable[[Var | Any, Var | Any], BooleanVar]: + """Decorator to create a comparison operation. + + Args: + func: The comparison operation function. + + Returns: + The comparison operation. + """ + + @var_operation + def operation(lhs: Var, rhs: Var): + return var_operation_return( + js_expression=func(lhs, rhs), + var_type=bool, + ) + + def wrapper(lhs: Var | Any, rhs: Var | Any) -> BooleanVar: + """Create the comparison operation. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The comparison operation. + """ + return operation(lhs, rhs) + + return wrapper + + +@comparison_operator +def greater_than_operation(lhs: Var, rhs: Var): + """Greater than comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} > {rhs})" + + +@comparison_operator +def greater_than_or_equal_operation(lhs: Var, rhs: Var): + """Greater than or equal comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} >= {rhs})" + + +@comparison_operator +def less_than_operation(lhs: Var, rhs: Var): + """Less than comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} < {rhs})" + + +@comparison_operator +def less_than_or_equal_operation(lhs: Var, rhs: Var): + """Less than or equal comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} <= {rhs})" + + +@comparison_operator +def equal_operation(lhs: Var, rhs: Var): + """Equal comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} === {rhs})" + + +@comparison_operator +def not_equal_operation(lhs: Var, rhs: Var): + """Not equal comparison. + + Args: + lhs: The first value. + rhs: The second value. + + Returns: + The result of the comparison. + """ + return f"({lhs} !== {rhs})" + + +@var_operation +def boolean_not_operation(value: BooleanVar): + """Boolean NOT the boolean. + + Args: + value: The boolean. + + Returns: + The boolean NOT operation. + """ + return var_operation_return(js_expression=f"!({value})", var_type=bool) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class LiteralBooleanVar(LiteralVar, BooleanVar): + """Base class for immutable literal boolean vars.""" + + _var_value: bool = dataclasses.field(default=False) + + def json(self) -> str: + """Get the JSON representation of the var. + + Returns: + The JSON representation of the var. + """ + return "true" if self._var_value else "false" + + def __hash__(self) -> int: + """Calculate the hash value of the object. + + Returns: + int: The hash value of the object. + """ + return hash((self.__class__.__name__, self._var_value)) + + @classmethod + def create(cls, value: bool, _var_data: VarData | None = None): + """Create the boolean var. + + Args: + value: The value of the var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The boolean var. + """ + return cls( + _var_name="true" if value else "false", + _var_type=bool, + _var_data=ImmutableVarData.merge(_var_data), + _var_value=value, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class LiteralNumberVar(LiteralVar, NumberVar): + """Base class for immutable literal number vars.""" + + _var_value: float | int = dataclasses.field(default=0) + + def json(self) -> str: + """Get the JSON representation of the var. + + Returns: + The JSON representation of the var. + """ + return json.dumps(self._var_value) + + def __hash__(self) -> int: + """Calculate the hash value of the object. + + Returns: + int: The hash value of the object. + """ + return hash((self.__class__.__name__, self._var_value)) + + @classmethod + def create(cls, value: float | int, _var_data: VarData | None = None): + """Create the number var. + + Args: + value: The value of the var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The number var. + """ + return cls( + _var_name=str(value), + _var_type=type(value), + _var_data=ImmutableVarData.merge(_var_data), + _var_value=value, + ) + + +number_types = Union[NumberVar, int, float] +boolean_types = Union[BooleanVar, bool] + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToNumberVarOperation(CachedVarOperation, NumberVar): + """Base class for immutable number vars that are the result of a number operation.""" + + _original_value: Var = dataclasses.field( + default_factory=lambda: LiteralNumberVar.create(0) + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return str(self._original_value) + + @classmethod + def create( + cls, + value: Var, + _var_type: type[int] | type[float] = float, + _var_data: VarData | None = None, + ): + """Create the number var. + + Args: + value: The value of the var. + _var_type: The type of the Var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The number var. + """ + return cls( + _var_name="", + _var_type=_var_type, + _var_data=ImmutableVarData.merge(_var_data), + _original_value=value, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToBooleanVarOperation(CachedVarOperation, BooleanVar): + """Base class for immutable boolean vars that are the result of a boolean operation.""" + + _original_value: Var = dataclasses.field( + default_factory=lambda: LiteralBooleanVar.create(False) + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return str(self._original_value) + + @classmethod + def create( + cls, + value: Var, + _var_data: VarData | None = None, + ): + """Create the boolean var. + + Args: + value: The value of the var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The boolean var. + """ + return cls( + _var_name="", + _var_type=bool, + _var_data=ImmutableVarData.merge(_var_data), + _original_value=value, + ) + + +@var_operation +def boolify(value: Var): + """Convert the value to a boolean. + + Args: + value: The value. + + Returns: + The boolean value. + """ + return var_operation_return( + js_expression=f"Boolean({value})", + var_type=bool, + ) + + +@var_operation +def ternary_operation(condition: BooleanVar, if_true: Var, if_false: Var): + """Create a ternary operation. + + Args: + condition: The condition. + if_true: The value if the condition is true. + if_false: The value if the condition is false. + + Returns: + The ternary operation. + """ + return var_operation_return( + js_expression=f"({condition} ? {if_true} : {if_false})", + var_type=unionize(if_true._var_type, if_false._var_type), + ) diff --git a/reflex/ivars/object.py b/reflex/ivars/object.py new file mode 100644 index 000000000..49a21226f --- /dev/null +++ b/reflex/ivars/object.py @@ -0,0 +1,574 @@ +"""Classes for immutable object vars.""" + +from __future__ import annotations + +import dataclasses +import sys +import typing +from inspect import isclass +from typing import ( + Any, + Dict, + List, + NoReturn, + Tuple, + Type, + TypeVar, + Union, + get_args, + overload, +) + +from reflex.utils import types +from reflex.utils.exceptions import VarAttributeError +from reflex.utils.types import GenericType, get_attribute_access_type, get_origin +from reflex.vars import ImmutableVarData, Var, VarData + +from .base import ( + CachedVarOperation, + ImmutableVar, + LiteralVar, + cached_property_no_lock, + figure_out_type, + var_operation, + var_operation_return, +) +from .number import BooleanVar, NumberVar +from .sequence import ArrayVar, StringVar + +OBJECT_TYPE = TypeVar("OBJECT_TYPE", bound=Dict) + +KEY_TYPE = TypeVar("KEY_TYPE") +VALUE_TYPE = TypeVar("VALUE_TYPE") + +ARRAY_INNER_TYPE = TypeVar("ARRAY_INNER_TYPE") + +OTHER_KEY_TYPE = TypeVar("OTHER_KEY_TYPE") + + +class ObjectVar(ImmutableVar[OBJECT_TYPE]): + """Base class for immutable object vars.""" + + def _key_type(self) -> Type: + """Get the type of the keys of the object. + + Returns: + The type of the keys of the object. + """ + return str + + @overload + def _value_type( + self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], + ) -> Type[VALUE_TYPE]: ... + + @overload + def _value_type(self) -> Type: ... + + def _value_type(self) -> Type: + """Get the type of the values of the object. + + Returns: + The type of the values of the object. + """ + fixed_type = get_origin(self._var_type) or self._var_type + if not isclass(fixed_type): + return Any + args = get_args(self._var_type) if issubclass(fixed_type, dict) else () + return args[1] if args else Any + + def keys(self) -> ArrayVar[List[str]]: + """Get the keys of the object. + + Returns: + The keys of the object. + """ + return object_keys_operation(self) + + @overload + def values( + self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], + ) -> ArrayVar[List[VALUE_TYPE]]: ... + + @overload + def values(self) -> ArrayVar: ... + + def values(self) -> ArrayVar: + """Get the values of the object. + + Returns: + The values of the object. + """ + return object_values_operation(self) + + @overload + def entries( + self: ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]], + ) -> ArrayVar[List[Tuple[str, VALUE_TYPE]]]: ... + + @overload + def entries(self) -> ArrayVar: ... + + def entries(self) -> ArrayVar: + """Get the entries of the object. + + Returns: + The entries of the object. + """ + return object_entries_operation(self) + + def merge(self, other: ObjectVar): + """Merge two objects. + + Args: + other: The other object to merge. + + Returns: + The merged object. + """ + return object_merge_operation(self, other) + + # NoReturn is used here to catch when key value is Any + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, NoReturn]], + key: Var | Any, + ) -> ImmutableVar: ... + + @overload + def __getitem__( + self: ( + ObjectVar[Dict[KEY_TYPE, int]] + | ObjectVar[Dict[KEY_TYPE, float]] + | ObjectVar[Dict[KEY_TYPE, int | float]] + ), + key: Var | Any, + ) -> NumberVar: ... + + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, str]], + key: Var | Any, + ) -> StringVar: ... + + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, list[ARRAY_INNER_TYPE]]], + key: Var | Any, + ) -> ArrayVar[list[ARRAY_INNER_TYPE]]: ... + + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, set[ARRAY_INNER_TYPE]]], + key: Var | Any, + ) -> ArrayVar[set[ARRAY_INNER_TYPE]]: ... + + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, tuple[ARRAY_INNER_TYPE, ...]]], + key: Var | Any, + ) -> ArrayVar[tuple[ARRAY_INNER_TYPE, ...]]: ... + + @overload + def __getitem__( + self: ObjectVar[Dict[KEY_TYPE, dict[OTHER_KEY_TYPE, VALUE_TYPE]]], + key: Var | Any, + ) -> ObjectVar[dict[OTHER_KEY_TYPE, VALUE_TYPE]]: ... + + def __getitem__(self, key: Var | Any) -> ImmutableVar: + """Get an item from the object. + + Args: + key: The key to get from the object. + + Returns: + The item from the object. + """ + return ObjectItemOperation.create(self, key).guess_type() + + # NoReturn is used here to catch when key value is Any + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, NoReturn]], + name: str, + ) -> ImmutableVar: ... + + @overload + def __getattr__( + self: ( + ObjectVar[Dict[KEY_TYPE, int]] + | ObjectVar[Dict[KEY_TYPE, float]] + | ObjectVar[Dict[KEY_TYPE, int | float]] + ), + name: str, + ) -> NumberVar: ... + + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, str]], + name: str, + ) -> StringVar: ... + + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, list[ARRAY_INNER_TYPE]]], + name: str, + ) -> ArrayVar[list[ARRAY_INNER_TYPE]]: ... + + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, set[ARRAY_INNER_TYPE]]], + name: str, + ) -> ArrayVar[set[ARRAY_INNER_TYPE]]: ... + + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, tuple[ARRAY_INNER_TYPE, ...]]], + name: str, + ) -> ArrayVar[tuple[ARRAY_INNER_TYPE, ...]]: ... + + @overload + def __getattr__( + self: ObjectVar[Dict[KEY_TYPE, dict[OTHER_KEY_TYPE, VALUE_TYPE]]], + name: str, + ) -> ObjectVar[dict[OTHER_KEY_TYPE, VALUE_TYPE]]: ... + + def __getattr__(self, name) -> ImmutableVar: + """Get an attribute of the var. + + Args: + name: The name of the attribute. + + Raises: + VarAttributeError: The State var has no such attribute or may have been annotated wrongly. + + Returns: + The attribute of the var. + """ + if name.startswith("__") and name.endswith("__"): + return getattr(super(type(self), self), name) + + var_type = self._var_type + + if types.is_optional(var_type): + var_type = get_args(var_type)[0] + + fixed_type = var_type if isclass(var_type) else get_origin(var_type) + if isclass(fixed_type) and not issubclass(fixed_type, dict): + attribute_type = get_attribute_access_type(var_type, name) + if attribute_type is None: + raise VarAttributeError( + f"The State var `{str(self)}` has no attribute '{name}' or may have been annotated " + f"wrongly." + ) + return ObjectItemOperation.create(self, name, attribute_type).guess_type() + else: + return ObjectItemOperation.create(self, name).guess_type() + + def contains(self, key: Var | Any) -> BooleanVar: + """Check if the object contains a key. + + Args: + key: The key to check. + + Returns: + The result of the check. + """ + return object_has_own_property_operation(self, key) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class LiteralObjectVar(CachedVarOperation, ObjectVar[OBJECT_TYPE], LiteralVar): + """Base class for immutable literal object vars.""" + + _var_value: Dict[Union[Var, Any], Union[Var, Any]] = dataclasses.field( + default_factory=dict + ) + + def _key_type(self) -> Type: + """Get the type of the keys of the object. + + Returns: + The type of the keys of the object. + """ + args_list = typing.get_args(self._var_type) + return args_list[0] if args_list else Any + + def _value_type(self) -> Type: + """Get the type of the values of the object. + + Returns: + The type of the values of the object. + """ + args_list = typing.get_args(self._var_type) + return args_list[1] if args_list else Any + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return ( + "({ " + + ", ".join( + [ + f"[{str(LiteralVar.create(key))}] : {str(LiteralVar.create(value))}" + for key, value in self._var_value.items() + ] + ) + + " })" + ) + + def json(self) -> str: + """Get the JSON representation of the object. + + Returns: + The JSON representation of the object. + """ + return ( + "{" + + ", ".join( + [ + f"{LiteralVar.create(key).json()}:{LiteralVar.create(value).json()}" + for key, value in self._var_value.items() + ] + ) + + "}" + ) + + def __hash__(self) -> int: + """Get the hash of the var. + + Returns: + The hash of the var. + """ + return hash((self.__class__.__name__, self._var_name)) + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get all the var data. + + Returns: + The var data. + """ + return ImmutableVarData.merge( + *[LiteralVar.create(var)._get_all_var_data() for var in self._var_value], + *[ + LiteralVar.create(var)._get_all_var_data() + for var in self._var_value.values() + ], + self._var_data, + ) + + @classmethod + def create( + cls, + _var_value: OBJECT_TYPE, + _var_type: GenericType | None = None, + _var_data: VarData | None = None, + ) -> LiteralObjectVar[OBJECT_TYPE]: + """Create the literal object var. + + Args: + _var_value: The value of the var. + _var_type: The type of the var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The literal object var. + """ + return LiteralObjectVar( + _var_name="", + _var_type=(figure_out_type(_var_value) if _var_type is None else _var_type), + _var_data=ImmutableVarData.merge(_var_data), + _var_value=_var_value, + ) + + +@var_operation +def object_keys_operation(value: ObjectVar): + """Get the keys of an object. + + Args: + value: The object to get the keys from. + + Returns: + The keys of the object. + """ + return var_operation_return( + js_expression=f"Object.keys({value})", + var_type=List[str], + ) + + +@var_operation +def object_values_operation(value: ObjectVar): + """Get the values of an object. + + Args: + value: The object to get the values from. + + Returns: + The values of the object. + """ + return var_operation_return( + js_expression=f"Object.values({value})", + var_type=List[value._value_type()], + ) + + +@var_operation +def object_entries_operation(value: ObjectVar): + """Get the entries of an object. + + Args: + value: The object to get the entries from. + + Returns: + The entries of the object. + """ + return var_operation_return( + js_expression=f"Object.entries({value})", + var_type=List[Tuple[str, value._value_type()]], + ) + + +@var_operation +def object_merge_operation(lhs: ObjectVar, rhs: ObjectVar): + """Merge two objects. + + Args: + lhs: The first object to merge. + rhs: The second object to merge. + + Returns: + The merged object. + """ + return var_operation_return( + js_expression=f"({{...{lhs}, ...{rhs}}})", + var_type=Dict[ + Union[lhs._key_type(), rhs._key_type()], + Union[lhs._value_type(), rhs._value_type()], + ], + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ObjectItemOperation(CachedVarOperation, ImmutableVar): + """Operation to get an item from an object.""" + + _object: ObjectVar = dataclasses.field( + default_factory=lambda: LiteralObjectVar.create({}) + ) + _key: Var | Any = dataclasses.field(default_factory=lambda: LiteralVar.create(None)) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the operation. + + Returns: + The name of the operation. + """ + if types.is_optional(self._object._var_type): + return f"{str(self._object)}?.[{str(self._key)}]" + return f"{str(self._object)}[{str(self._key)}]" + + @classmethod + def create( + cls, + object: ObjectVar, + key: Var | Any, + _var_type: GenericType | None = None, + _var_data: VarData | None = None, + ) -> ObjectItemOperation: + """Create the object item operation. + + Args: + object: The object to get the item from. + key: The key to get from the object. + _var_type: The type of the item. + _var_data: Additional hooks and imports associated with the operation. + + Returns: + The object item operation. + """ + return cls( + _var_name="", + _var_type=object._value_type() if _var_type is None else _var_type, + _var_data=ImmutableVarData.merge(_var_data), + _object=object, + _key=key if isinstance(key, Var) else LiteralVar.create(key), + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToObjectOperation(CachedVarOperation, ObjectVar): + """Operation to convert a var to an object.""" + + _original_var: Var = dataclasses.field( + default_factory=lambda: LiteralObjectVar.create({}) + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the operation. + + Returns: + The name of the operation. + """ + return str(self._original_var) + + @classmethod + def create( + cls, + original_var: Var, + _var_type: GenericType | None = None, + _var_data: VarData | None = None, + ) -> ToObjectOperation: + """Create the to object operation. + + Args: + original_var: The original var to convert. + _var_type: The type of the var. + _var_data: Additional hooks and imports associated with the operation. + + Returns: + The to object operation. + """ + return cls( + _var_name="", + _var_type=dict if _var_type is None else _var_type, + _var_data=ImmutableVarData.merge(_var_data), + _original_var=original_var, + ) + + +@var_operation +def object_has_own_property_operation(object: ObjectVar, key: Var): + """Check if an object has a key. + + Args: + object: The object to check. + key: The key to check. + + Returns: + The result of the check. + """ + return var_operation_return( + js_expression=f"{object}.hasOwnProperty({key})", + var_type=bool, + ) diff --git a/reflex/ivars/sequence.py b/reflex/ivars/sequence.py new file mode 100644 index 000000000..25586e4df --- /dev/null +++ b/reflex/ivars/sequence.py @@ -0,0 +1,1151 @@ +"""Collection of string classes and utilities.""" + +from __future__ import annotations + +import dataclasses +import inspect +import json +import re +import sys +import typing +from typing import ( + TYPE_CHECKING, + Any, + Dict, + List, + Literal, + Set, + Tuple, + Type, + TypeVar, + Union, + overload, +) + +from reflex import constants +from reflex.constants.base import REFLEX_VAR_OPENING_TAG +from reflex.utils.types import GenericType, get_origin +from reflex.vars import ( + ImmutableVarData, + Var, + VarData, + _global_vars, +) + +from .base import ( + CachedVarOperation, + CustomVarOperationReturn, + ImmutableVar, + LiteralVar, + cached_property_no_lock, + figure_out_type, + unionize, + var_operation, + var_operation_return, +) +from .number import ( + BooleanVar, + LiteralNumberVar, + NumberVar, +) + +if TYPE_CHECKING: + from .object import ObjectVar + + +class StringVar(ImmutableVar[str]): + """Base class for immutable string vars.""" + + def __add__(self, other: StringVar | str) -> ConcatVarOperation: + """Concatenate two strings. + + Args: + other: The other string. + + Returns: + The string concatenation operation. + """ + return ConcatVarOperation.create(self, other) + + def __radd__(self, other: StringVar | str) -> ConcatVarOperation: + """Concatenate two strings. + + Args: + other: The other string. + + Returns: + The string concatenation operation. + """ + return ConcatVarOperation.create(other, self) + + def __mul__(self, other: NumberVar | int) -> StringVar: + """Multiply the sequence by a number or an integer. + + Args: + other (NumberVar | int): The number or integer to multiply the sequence by. + + Returns: + StringVar: The resulting sequence after multiplication. + """ + return (self.split() * other).join() + + def __rmul__(self, other: NumberVar | int) -> StringVar: + """Multiply the sequence by a number or an integer. + + Args: + other (NumberVar | int): The number or integer to multiply the sequence by. + + Returns: + StringVar: The resulting sequence after multiplication. + """ + return (self.split() * other).join() + + def __getitem__(self, i: slice | int | NumberVar) -> StringVar: + """Get a slice of the string. + + Args: + i: The slice. + + Returns: + The string slice operation. + """ + if isinstance(i, slice): + return self.split()[i].join() + return string_item_operation(self, i) + + def length(self) -> NumberVar: + """Get the length of the string. + + Returns: + The string length operation. + """ + return self.split().length() + + def lower(self) -> StringVar: + """Convert the string to lowercase. + + Returns: + The string lower operation. + """ + return string_lower_operation(self) + + def upper(self) -> StringVar: + """Convert the string to uppercase. + + Returns: + The string upper operation. + """ + return string_upper_operation(self) + + def strip(self) -> StringVar: + """Strip the string. + + Returns: + The string strip operation. + """ + return string_strip_operation(self) + + def bool(self): + """Boolean conversion. + + Returns: + The boolean value of the string. + """ + return self.length() != 0 + + def reversed(self) -> StringVar: + """Reverse the string. + + Returns: + The string reverse operation. + """ + return self.split().reverse().join() + + def contains(self, other: StringVar | str) -> BooleanVar: + """Check if the string contains another string. + + Args: + other: The other string. + + Returns: + The string contains operation. + """ + return string_contains_operation(self, other) + + def split(self, separator: StringVar | str = "") -> ArrayVar[List[str]]: + """Split the string. + + Args: + separator: The separator. + + Returns: + The string split operation. + """ + return string_split_operation(self, separator) + + def startswith(self, prefix: StringVar | str) -> BooleanVar: + """Check if the string starts with a prefix. + + Args: + prefix: The prefix. + + Returns: + The string starts with operation. + """ + return string_starts_with_operation(self, prefix) + + +@var_operation +def string_lower_operation(string: StringVar): + """Convert a string to lowercase. + + Args: + string: The string to convert. + + Returns: + The lowercase string. + """ + return var_operation_return(js_expression=f"{string}.toLowerCase()", var_type=str) + + +@var_operation +def string_upper_operation(string: StringVar): + """Convert a string to uppercase. + + Args: + string: The string to convert. + + Returns: + The uppercase string. + """ + return var_operation_return(js_expression=f"{string}.toUpperCase()", var_type=str) + + +@var_operation +def string_strip_operation(string: StringVar): + """Strip a string. + + Args: + string: The string to strip. + + Returns: + The stripped string. + """ + return var_operation_return(js_expression=f"{string}.trim()", var_type=str) + + +@var_operation +def string_contains_operation(haystack: StringVar, needle: StringVar | str): + """Check if a string contains another string. + + Args: + haystack: The haystack. + needle: The needle. + + Returns: + The string contains operation. + """ + return var_operation_return( + js_expression=f"{haystack}.includes({needle})", var_type=bool + ) + + +@var_operation +def string_starts_with_operation(full_string: StringVar, prefix: StringVar | str): + """Check if a string starts with a prefix. + + Args: + full_string: The full string. + prefix: The prefix. + + Returns: + Whether the string starts with the prefix. + """ + return var_operation_return( + js_expression=f"{full_string}.startsWith({prefix})", var_type=bool + ) + + +@var_operation +def string_item_operation(string: StringVar, index: NumberVar | int): + """Get an item from a string. + + Args: + string: The string. + index: The index of the item. + + Returns: + The item from the string. + """ + return var_operation_return(js_expression=f"{string}.at({index})", var_type=str) + + +@var_operation +def array_join_operation(array: ArrayVar, sep: StringVar | str = ""): + """Join the elements of an array. + + Args: + array: The array. + sep: The separator. + + Returns: + The joined elements. + """ + return var_operation_return(js_expression=f"{array}.join({sep})", var_type=str) + + +# Compile regex for finding reflex var tags. +_decode_var_pattern_re = ( + rf"{constants.REFLEX_VAR_OPENING_TAG}(.*?){constants.REFLEX_VAR_CLOSING_TAG}" +) +_decode_var_pattern = re.compile(_decode_var_pattern_re, flags=re.DOTALL) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class LiteralStringVar(LiteralVar, StringVar): + """Base class for immutable literal string vars.""" + + _var_value: str = dataclasses.field(default="") + + @classmethod + def create( + cls, + value: str, + _var_data: VarData | None = None, + ) -> LiteralStringVar | ConcatVarOperation: + """Create a var from a string value. + + Args: + value: The value to create the var from. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + if REFLEX_VAR_OPENING_TAG in value: + strings_and_vals: list[Var | str] = [] + offset = 0 + + # Initialize some methods for reading json. + var_data_config = VarData().__config__ + + def json_loads(s): + try: + return var_data_config.json_loads(s) + except json.decoder.JSONDecodeError: + return var_data_config.json_loads( + var_data_config.json_loads(f'"{s}"') + ) + + # Find all tags + while m := _decode_var_pattern.search(value): + start, end = m.span() + + strings_and_vals.append(value[:start]) + + serialized_data = m.group(1) + + if serialized_data.isnumeric() or ( + serialized_data[0] == "-" and serialized_data[1:].isnumeric() + ): + # This is a global immutable var. + var = _global_vars[int(serialized_data)] + strings_and_vals.append(var) + value = value[(end + len(var._var_name)) :] + else: + data = json_loads(serialized_data) + string_length = data.pop("string_length", None) + var_data = VarData.parse_obj(data) + + # Use string length to compute positions of interpolations. + if string_length is not None: + realstart = start + offset + var_data.interpolations = [ + (realstart, realstart + string_length) + ] + var_content = value[end : (end + string_length)] + if ( + var_content[0] == "{" + and var_content[-1] == "}" + and strings_and_vals + and strings_and_vals[-1][-1] == "$" + ): + strings_and_vals[-1] = strings_and_vals[-1][:-1] + var_content = "(" + var_content[1:-1] + ")" + strings_and_vals.append( + ImmutableVar.create_safe(var_content, _var_data=var_data) + ) + value = value[(end + string_length) :] + + offset += end - start + + strings_and_vals.append(value) + + filtered_strings_and_vals = [ + s for s in strings_and_vals if isinstance(s, Var) or s + ] + + if len(filtered_strings_and_vals) == 1: + return filtered_strings_and_vals[0].to(StringVar) # type: ignore + + return ConcatVarOperation.create( + *filtered_strings_and_vals, + _var_data=_var_data, + ) + + return LiteralStringVar( + _var_name=json.dumps(value), + _var_type=str, + _var_data=ImmutableVarData.merge(_var_data), + _var_value=value, + ) + + def __hash__(self) -> int: + """Get the hash of the var. + + Returns: + The hash of the var. + """ + return hash((self.__class__.__name__, self._var_value)) + + def json(self) -> str: + """Get the JSON representation of the var. + + Returns: + The JSON representation of the var. + """ + return json.dumps(self._var_value) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ConcatVarOperation(CachedVarOperation, StringVar): + """Representing a concatenation of literal string vars.""" + + _var_value: Tuple[Var, ...] = dataclasses.field(default_factory=tuple) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + list_of_strs: List[Union[str, Var]] = [] + last_string = "" + for var in self._var_value: + if isinstance(var, LiteralStringVar): + last_string += var._var_value + else: + if last_string: + list_of_strs.append(last_string) + last_string = "" + list_of_strs.append(var) + + if last_string: + list_of_strs.append(last_string) + + list_of_strs_filtered = [ + str(LiteralVar.create(s)) for s in list_of_strs if isinstance(s, Var) or s + ] + + if len(list_of_strs_filtered) == 1: + return list_of_strs_filtered[0] + + return "(" + "+".join(list_of_strs_filtered) + ")" + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get all the VarData associated with the Var. + + Returns: + The VarData associated with the Var. + """ + return ImmutableVarData.merge( + *[ + var._get_all_var_data() + for var in self._var_value + if isinstance(var, Var) + ], + self._var_data, + ) + + @classmethod + def create( + cls, + *value: Var | str, + _var_data: VarData | None = None, + ) -> ConcatVarOperation: + """Create a var from a string value. + + Args: + value: The values to concatenate. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + return cls( + _var_name="", + _var_type=str, + _var_data=ImmutableVarData.merge(_var_data), + _var_value=tuple(map(LiteralVar.create, value)), + ) + + +ARRAY_VAR_TYPE = TypeVar("ARRAY_VAR_TYPE", bound=Union[List, Tuple, Set]) + +OTHER_TUPLE = TypeVar("OTHER_TUPLE") + +INNER_ARRAY_VAR = TypeVar("INNER_ARRAY_VAR") + +KEY_TYPE = TypeVar("KEY_TYPE") +VALUE_TYPE = TypeVar("VALUE_TYPE") + + +class ArrayVar(ImmutableVar[ARRAY_VAR_TYPE]): + """Base class for immutable array vars.""" + + def join(self, sep: StringVar | str = "") -> StringVar: + """Join the elements of the array. + + Args: + sep: The separator between elements. + + Returns: + The joined elements. + """ + return array_join_operation(self, sep) + + def reverse(self) -> ArrayVar[ARRAY_VAR_TYPE]: + """Reverse the array. + + Returns: + The reversed array. + """ + return array_reverse_operation(self) + + def __add__(self, other: ArrayVar[ARRAY_VAR_TYPE]) -> ArrayVar[ARRAY_VAR_TYPE]: + """Concatenate two arrays. + + Parameters: + other (ArrayVar[ARRAY_VAR_TYPE]): The other array to concatenate. + + Returns: + ArrayConcatOperation: The concatenation of the two arrays. + """ + return array_concat_operation(self, other) + + @overload + def __getitem__(self, i: slice) -> ArrayVar[ARRAY_VAR_TYPE]: ... + + @overload + def __getitem__( + self: ( + ArrayVar[Tuple[int, OTHER_TUPLE]] + | ArrayVar[Tuple[float, OTHER_TUPLE]] + | ArrayVar[Tuple[int | float, OTHER_TUPLE]] + ), + i: Literal[0, -2], + ) -> NumberVar: ... + + @overload + def __getitem__( + self: ( + ArrayVar[Tuple[OTHER_TUPLE, int]] + | ArrayVar[Tuple[OTHER_TUPLE, float]] + | ArrayVar[Tuple[OTHER_TUPLE, int | float]] + ), + i: Literal[1, -1], + ) -> NumberVar: ... + + @overload + def __getitem__( + self: ArrayVar[Tuple[str, OTHER_TUPLE]], i: Literal[0, -2] + ) -> StringVar: ... + + @overload + def __getitem__( + self: ArrayVar[Tuple[OTHER_TUPLE, str]], i: Literal[1, -1] + ) -> StringVar: ... + + @overload + def __getitem__( + self: ArrayVar[Tuple[bool, OTHER_TUPLE]], i: Literal[0, -2] + ) -> BooleanVar: ... + + @overload + def __getitem__( + self: ArrayVar[Tuple[OTHER_TUPLE, bool]], i: Literal[1, -1] + ) -> BooleanVar: ... + + @overload + def __getitem__( + self: ( + ARRAY_VAR_OF_LIST_ELEMENT[int] + | ARRAY_VAR_OF_LIST_ELEMENT[float] + | ARRAY_VAR_OF_LIST_ELEMENT[int | float] + ), + i: int | NumberVar, + ) -> NumberVar: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[str], i: int | NumberVar + ) -> StringVar: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[bool], i: int | NumberVar + ) -> BooleanVar: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[List[INNER_ARRAY_VAR]], + i: int | NumberVar, + ) -> ArrayVar[List[INNER_ARRAY_VAR]]: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[Set[INNER_ARRAY_VAR]], + i: int | NumberVar, + ) -> ArrayVar[Set[INNER_ARRAY_VAR]]: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[Tuple[INNER_ARRAY_VAR, ...]], + i: int | NumberVar, + ) -> ArrayVar[Tuple[INNER_ARRAY_VAR, ...]]: ... + + @overload + def __getitem__( + self: ARRAY_VAR_OF_LIST_ELEMENT[Dict[KEY_TYPE, VALUE_TYPE]], + i: int | NumberVar, + ) -> ObjectVar[Dict[KEY_TYPE, VALUE_TYPE]]: ... + + @overload + def __getitem__(self, i: int | NumberVar) -> ImmutableVar: ... + + def __getitem__( + self, i: slice | int | NumberVar + ) -> ArrayVar[ARRAY_VAR_TYPE] | ImmutableVar: + """Get a slice of the array. + + Args: + i: The slice. + + Returns: + The array slice operation. + """ + if isinstance(i, slice): + return ArraySliceOperation.create(self, i) + return array_item_operation(self, i) + + def length(self) -> NumberVar: + """Get the length of the array. + + Returns: + The length of the array. + """ + return array_length_operation(self) + + @overload + @classmethod + def range(cls, stop: int | NumberVar, /) -> ArrayVar[List[int]]: ... + + @overload + @classmethod + def range( + cls, + start: int | NumberVar, + end: int | NumberVar, + step: int | NumberVar = 1, + /, + ) -> ArrayVar[List[int]]: ... + + @classmethod + def range( + cls, + first_endpoint: int | NumberVar, + second_endpoint: int | NumberVar | None = None, + step: int | NumberVar | None = None, + ) -> ArrayVar[List[int]]: + """Create a range of numbers. + + Args: + first_endpoint: The end of the range if second_endpoint is not provided, otherwise the start of the range. + second_endpoint: The end of the range. + step: The step of the range. + + Returns: + The range of numbers. + """ + if second_endpoint is None: + start = 0 + end = first_endpoint + else: + start = first_endpoint + end = second_endpoint + + return array_range_operation(start, end, step or 1) + + def contains(self, other: Any) -> BooleanVar: + """Check if the array contains an element. + + Args: + other: The element to check for. + + Returns: + The array contains operation. + """ + return array_contains_operation(self, other) + + def __mul__(self, other: NumberVar | int) -> ArrayVar[ARRAY_VAR_TYPE]: + """Multiply the sequence by a number or integer. + + Parameters: + other (NumberVar | int): The number or integer to multiply the sequence by. + + Returns: + ArrayVar[ARRAY_VAR_TYPE]: The result of multiplying the sequence by the given number or integer. + """ + return repeat_array_operation(self, other) + + __rmul__ = __mul__ # type: ignore + + +LIST_ELEMENT = TypeVar("LIST_ELEMENT") + +ARRAY_VAR_OF_LIST_ELEMENT = Union[ + ArrayVar[List[LIST_ELEMENT]], + ArrayVar[Set[LIST_ELEMENT]], + ArrayVar[Tuple[LIST_ELEMENT, ...]], +] + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class LiteralArrayVar(CachedVarOperation, LiteralVar, ArrayVar[ARRAY_VAR_TYPE]): + """Base class for immutable literal array vars.""" + + _var_value: Union[ + List[Union[Var, Any]], Set[Union[Var, Any]], Tuple[Union[Var, Any], ...] + ] = dataclasses.field(default_factory=list) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return ( + "[" + + ", ".join( + [str(LiteralVar.create(element)) for element in self._var_value] + ) + + "]" + ) + + @cached_property_no_lock + def _cached_get_all_var_data(self) -> ImmutableVarData | None: + """Get all the VarData associated with the Var. + + Returns: + The VarData associated with the Var. + """ + return ImmutableVarData.merge( + *[ + LiteralVar.create(element)._get_all_var_data() + for element in self._var_value + ], + self._var_data, + ) + + def __hash__(self) -> int: + """Get the hash of the var. + + Returns: + The hash of the var. + """ + return hash((self.__class__.__name__, self._var_name)) + + def json(self) -> str: + """Get the JSON representation of the var. + + Returns: + The JSON representation of the var. + """ + return ( + "[" + + ", ".join( + [LiteralVar.create(element).json() for element in self._var_value] + ) + + "]" + ) + + @classmethod + def create( + cls, + value: ARRAY_VAR_TYPE, + _var_type: Type[ARRAY_VAR_TYPE] | None = None, + _var_data: VarData | None = None, + ) -> LiteralArrayVar[ARRAY_VAR_TYPE]: + """Create a var from a string value. + + Args: + value: The value to create the var from. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + return cls( + _var_name="", + _var_type=figure_out_type(value) if _var_type is None else _var_type, + _var_data=ImmutableVarData.merge(_var_data), + _var_value=value, + ) + + +@var_operation +def string_split_operation(string: StringVar, sep: StringVar | str = ""): + """Split a string. + + Args: + string: The string to split. + sep: The separator. + + Returns: + The split string. + """ + return var_operation_return( + js_expression=f"{string}.split({sep})", var_type=List[str] + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ArraySliceOperation(CachedVarOperation, ArrayVar): + """Base class for immutable string vars that are the result of a string slice operation.""" + + _array: ArrayVar = dataclasses.field( + default_factory=lambda: LiteralArrayVar.create([]) + ) + _start: NumberVar | int = dataclasses.field(default_factory=lambda: 0) + _stop: NumberVar | int = dataclasses.field(default_factory=lambda: 0) + _step: NumberVar | int = dataclasses.field(default_factory=lambda: 1) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + + Raises: + ValueError: If the slice step is zero. + """ + start, end, step = self._start, self._stop, self._step + + normalized_start = ( + LiteralVar.create(start) + if start is not None + else ImmutableVar.create_safe("undefined") + ) + normalized_end = ( + LiteralVar.create(end) + if end is not None + else ImmutableVar.create_safe("undefined") + ) + if step is None: + return f"{str(self._array)}.slice({str(normalized_start)}, {str(normalized_end)})" + if not isinstance(step, Var): + if step < 0: + actual_start = end + 1 if end is not None else 0 + actual_end = start + 1 if start is not None else self._array.length() + return str(self._array[actual_start:actual_end].reverse()[::-step]) + if step == 0: + raise ValueError("slice step cannot be zero") + return f"{str(self._array)}.slice({str(normalized_start)}, {str(normalized_end)}).filter((_, i) => i % {str(step)} === 0)" + + actual_start_reverse = end + 1 if end is not None else 0 + actual_end_reverse = start + 1 if start is not None else self._array.length() + + return f"{str(self.step)} > 0 ? {str(self._array)}.slice({str(normalized_start)}, {str(normalized_end)}).filter((_, i) => i % {str(step)} === 0) : {str(self._array)}.slice({str(actual_start_reverse)}, {str(actual_end_reverse)}).reverse().filter((_, i) => i % {str(-step)} === 0)" + + @classmethod + def create( + cls, + array: ArrayVar, + slice: slice, + _var_data: VarData | None = None, + ) -> ArraySliceOperation: + """Create a var from a string value. + + Args: + array: The array. + slice: The slice. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + return cls( + _var_name="", + _var_type=array._var_type, + _var_data=ImmutableVarData.merge(_var_data), + _array=array, + _start=slice.start, + _stop=slice.stop, + _step=slice.step, + ) + + +@var_operation +def array_reverse_operation( + array: ArrayVar[ARRAY_VAR_TYPE], +) -> CustomVarOperationReturn[ARRAY_VAR_TYPE]: + """Reverse an array. + + Args: + array: The array to reverse. + + Returns: + The reversed array. + """ + return var_operation_return( + js_expression=f"{array}.slice().reverse()", + var_type=array._var_type, + ) + + +@var_operation +def array_length_operation(array: ArrayVar): + """Get the length of an array. + + Args: + array: The array. + + Returns: + The length of the array. + """ + return var_operation_return( + js_expression=f"{array}.length", + var_type=int, + ) + + +def is_tuple_type(t: GenericType) -> bool: + """Check if a type is a tuple type. + + Args: + t: The type to check. + + Returns: + Whether the type is a tuple type. + """ + if inspect.isclass(t): + return issubclass(t, tuple) + return get_origin(t) is tuple + + +@var_operation +def array_item_operation(array: ArrayVar, index: NumberVar | int): + """Get an item from an array. + + Args: + array: The array. + index: The index of the item. + + Returns: + The item from the array. + """ + args = typing.get_args(array._var_type) + if args and isinstance(index, LiteralNumberVar) and is_tuple_type(array._var_type): + index_value = int(index._var_value) + element_type = args[index_value % len(args)] + else: + element_type = unionize(*args) + + return var_operation_return( + js_expression=f"{str(array)}.at({str(index)})", + var_type=element_type, + ) + + +@var_operation +def array_range_operation( + start: NumberVar | int, stop: NumberVar | int, step: NumberVar | int +): + """Create a range of numbers. + + Args: + start: The start of the range. + stop: The end of the range. + step: The step of the range. + + Returns: + The range of numbers. + """ + return var_operation_return( + js_expression=f"Array.from({{ length: ({str(stop)} - {str(start)}) / {str(step)} }}, (_, i) => {str(start)} + i * {str(step)})", + var_type=List[int], + ) + + +@var_operation +def array_contains_operation(haystack: ArrayVar, needle: Any | Var): + """Check if an array contains an element. + + Args: + haystack: The array to check. + needle: The element to check for. + + Returns: + The array contains operation. + """ + return var_operation_return( + js_expression=f"{haystack}.includes({needle})", + var_type=bool, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToStringOperation(CachedVarOperation, StringVar): + """Base class for immutable string vars that are the result of a to string operation.""" + + _original_var: Var = dataclasses.field( + default_factory=lambda: LiteralStringVar.create("") + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return str(self._original_var) + + @classmethod + def create( + cls, + original_var: Var, + _var_data: VarData | None = None, + ) -> ToStringOperation: + """Create a var from a string value. + + Args: + original_var: The original var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + return cls( + _var_name="", + _var_type=str, + _var_data=ImmutableVarData.merge(_var_data), + _original_var=original_var, + ) + + +@dataclasses.dataclass( + eq=False, + frozen=True, + **{"slots": True} if sys.version_info >= (3, 10) else {}, +) +class ToArrayOperation(CachedVarOperation, ArrayVar): + """Base class for immutable array vars that are the result of a to array operation.""" + + _original_var: Var = dataclasses.field( + default_factory=lambda: LiteralArrayVar.create([]) + ) + + @cached_property_no_lock + def _cached_var_name(self) -> str: + """The name of the var. + + Returns: + The name of the var. + """ + return str(self._original_var) + + @classmethod + def create( + cls, + original_var: Var, + _var_type: type[list] | type[set] | type[tuple] | None = None, + _var_data: VarData | None = None, + ) -> ToArrayOperation: + """Create a var from a string value. + + Args: + original_var: The original var. + _var_data: Additional hooks and imports associated with the Var. + + Returns: + The var. + """ + return cls( + _var_name="", + _var_type=list if _var_type is None else _var_type, + _var_data=ImmutableVarData.merge(_var_data), + _original_var=original_var, + ) + + +@var_operation +def repeat_array_operation( + array: ArrayVar[ARRAY_VAR_TYPE], count: NumberVar | int +) -> CustomVarOperationReturn[ARRAY_VAR_TYPE]: + """Repeat an array a number of times. + + Args: + array: The array to repeat. + count: The number of times to repeat the array. + + Returns: + The repeated array. + """ + return var_operation_return( + js_expression=f"Array.from({{ length: {count} }}).flatMap(() => {array})", + var_type=array._var_type, + ) + + +@var_operation +def array_concat_operation( + lhs: ArrayVar[ARRAY_VAR_TYPE], rhs: ArrayVar[ARRAY_VAR_TYPE] +) -> CustomVarOperationReturn[ARRAY_VAR_TYPE]: + """Concatenate two arrays. + + Args: + lhs: The left-hand side array. + rhs: The right-hand side array. + + Returns: + The concatenated array. + """ + return var_operation_return( + js_expression=f"[...{lhs}, ...{rhs}]", + var_type=Union[lhs._var_type, rhs._var_type], + ) diff --git a/reflex/model.py b/reflex/model.py index 71e26f76a..fefb1f9e9 100644 --- a/reflex/model.py +++ b/reflex/model.py @@ -15,6 +15,7 @@ import alembic.runtime.environment import alembic.script import alembic.util import sqlalchemy +import sqlalchemy.exc import sqlalchemy.orm from reflex import constants @@ -51,6 +52,27 @@ def get_engine(url: str | None = None) -> sqlalchemy.engine.Engine: return sqlmodel.create_engine(url, echo=echo_db_query, connect_args=connect_args) +async def get_db_status() -> bool: + """Checks the status of the database connection. + + Attempts to connect to the database and execute a simple query to verify connectivity. + + Returns: + bool: The status of the database connection: + - True: The database is accessible. + - False: The database is not accessible. + """ + status = True + try: + engine = get_engine() + with engine.connect() as connection: + connection.execute(sqlalchemy.text("SELECT 1")) + except sqlalchemy.exc.OperationalError: + status = False + + return status + + SQLModelOrSqlAlchemy = Union[ Type[sqlmodel.SQLModel], Type[sqlalchemy.orm.DeclarativeBase] ] diff --git a/reflex/state.py b/reflex/state.py index 228530fda..c94adb39d 100644 --- a/reflex/state.py +++ b/reflex/state.py @@ -11,6 +11,7 @@ import os import uuid from abc import ABC, abstractmethod from collections import defaultdict +from pathlib import Path from types import FunctionType, MethodType from typing import ( TYPE_CHECKING, @@ -23,6 +24,7 @@ from typing import ( Optional, Sequence, Set, + Tuple, Type, Union, cast, @@ -32,6 +34,7 @@ import dill from sqlalchemy.orm import DeclarativeBase from reflex.config import get_config +from reflex.ivars.base import ImmutableComputedVar, ImmutableVar, immutable_computed_var try: import pydantic.v1 as pydantic @@ -51,19 +54,23 @@ from reflex.event import ( EventSpec, fix_events, ) -from reflex.utils import console, format, prerequisites, types +from reflex.utils import console, format, path_ops, prerequisites, types from reflex.utils.exceptions import ImmutableStateError, LockExpiredError from reflex.utils.exec import is_testing_env from reflex.utils.serializers import SerializedType, serialize, serializer from reflex.utils.types import override -from reflex.vars import BaseVar, ComputedVar, Var, computed_var +from reflex.vars import ( + ComputedVar, + ImmutableVarData, + Var, +) if TYPE_CHECKING: from reflex.components.component import Component Delta = Dict[str, Any] -var = computed_var +var = immutable_computed_var # If the state is this large, it's considered a performance issue. @@ -299,10 +306,10 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): vars: ClassVar[Dict[str, Var]] = {} # The base vars of the class. - base_vars: ClassVar[Dict[str, BaseVar]] = {} + base_vars: ClassVar[Dict[str, ImmutableVar]] = {} # The computed vars of the class. - computed_vars: ClassVar[Dict[str, ComputedVar]] = {} + computed_vars: ClassVar[Dict[str, Union[ComputedVar, ImmutableComputedVar]]] = {} # Vars inherited by the parent state. inherited_vars: ClassVar[Dict[str, Var]] = {} @@ -415,7 +422,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): return f"{self.__class__.__name__}({self.dict()})" @classmethod - def _get_computed_vars(cls) -> list[ComputedVar]: + def _get_computed_vars(cls) -> list[Union[ComputedVar, ImmutableComputedVar]]: """Helper function to get all computed vars of a instance. Returns: @@ -425,7 +432,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): v for mixin in cls._mixins() + [cls] for v in mixin.__dict__.values() - if isinstance(v, ComputedVar) + if isinstance(v, (ComputedVar, ImmutableComputedVar)) ] @classmethod @@ -521,13 +528,18 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): # Set the base and computed vars. cls.base_vars = { - f.name: BaseVar(_var_name=f.name, _var_type=f.outer_type_)._var_set_state( - cls - ) + f.name: ImmutableVar( + _var_name=format.format_state_name(cls.get_full_name()) + "." + f.name, + _var_type=f.outer_type_, + _var_data=ImmutableVarData.from_state(cls), + ).guess_type() for f in cls.get_fields().values() if f.name not in cls.get_skip_vars() } - cls.computed_vars = {v._var_name: v._var_set_state(cls) for v in computed_vars} + cls.computed_vars = { + v._var_name: v._replace(merge_var_data=ImmutableVarData.from_state(cls)) + for v in computed_vars + } cls.vars = { **cls.inherited_vars, **cls.base_vars, @@ -548,12 +560,12 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): for mixin in cls._mixins(): for name, value in mixin.__dict__.items(): - if isinstance(value, ComputedVar): + if isinstance(value, (ComputedVar, ImmutableComputedVar)): fget = cls._copy_fn(value.fget) - newcv = value._replace(fget=fget) + newcv = value._replace( + fget=fget, _var_data=ImmutableVarData.from_state(cls) + ) # cleanup refs to mixin cls in var_data - newcv._var_data = None - newcv._var_set_state(cls) setattr(cls, name, newcv) cls.computed_vars[newcv._var_name] = newcv cls.vars[newcv._var_name] = newcv @@ -847,7 +859,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): return getattr(substate, name) @classmethod - def _init_var(cls, prop: BaseVar): + def _init_var(cls, prop: ImmutableVar): """Initialize a variable. Args: @@ -890,8 +902,11 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): ) # create the variable based on name and type - var = BaseVar(_var_name=name, _var_type=type_) - var._var_set_state(cls) + var = ImmutableVar( + _var_name=format.format_state_name(cls.get_full_name()) + "." + name, + _var_type=type_, + _var_data=ImmutableVarData.from_state(cls), + ).guess_type() # add the pydantic field dynamically (must be done before _init_var) cls.add_field(var, default_value) @@ -910,13 +925,18 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): cls._init_var_dependency_dicts() @classmethod - def _set_var(cls, prop: BaseVar): + def _set_var(cls, prop: ImmutableVar): """Set the var as a class member. Args: prop: The var instance to set. """ - setattr(cls, prop._var_name, prop) + acutal_var_name = ( + prop._var_name + if "." not in prop._var_name + else prop._var_name.split(".")[-1] + ) + setattr(cls, acutal_var_name, prop) @classmethod def _create_event_handler(cls, fn): @@ -936,7 +956,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): cls.setvar = cls.event_handlers["setvar"] = EventHandlerSetVar(state_cls=cls) @classmethod - def _create_setter(cls, prop: BaseVar): + def _create_setter(cls, prop: ImmutableVar): """Create a setter for the var. Args: @@ -949,14 +969,17 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): setattr(cls, setter_name, event_handler) @classmethod - def _set_default_value(cls, prop: BaseVar): + def _set_default_value(cls, prop: ImmutableVar): """Set the default value for the var. Args: prop: The var to set the default value for. """ # Get the pydantic field for the var. - field = cls.get_fields()[prop._var_name] + if "." in prop._var_name: + field = cls.get_fields()[prop._var_name.split(".")[-1]] + else: + field = cls.get_fields()[prop._var_name] if field.required: default_value = prop.get_default_value() if default_value is not None: @@ -968,7 +991,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): and not types.is_optional(prop._var_type) ): # Ensure frontend uses null coalescing when accessing. - prop._var_type = Optional[prop._var_type] + object.__setattr__(prop, "_var_type", Optional[prop._var_type]) @staticmethod def _get_base_functions() -> dict[str, FunctionType]: @@ -1774,7 +1797,7 @@ class BaseState(Base, ABC, extra=pydantic.Extra.allow): # Include initial computed vars. prop_name: ( cv._initial_value - if isinstance(cv, ComputedVar) + if isinstance(cv, (ComputedVar, ImmutableComputedVar)) and not isinstance(cv._initial_value, types.Unset) else self.get_value(getattr(self, prop_name)) ) @@ -2272,11 +2295,12 @@ class StateProxy(wrapt.ObjectProxy): Returns: The state update. """ + original_mutable = self._self_mutable self._self_mutable = True try: return self.__wrapped__._as_state_update(*args, **kwargs) finally: - self._self_mutable = False + self._self_mutable = original_mutable class StateUpdate(Base): @@ -2318,7 +2342,7 @@ class StateManager(Base, ABC): token_expiration=config.redis_token_expiration, lock_expiration=config.redis_lock_expiration, ) - return StateManagerMemory(state=state) + return StateManagerDisk(state=state) @abstractmethod async def get_state(self, token: str) -> BaseState: @@ -2425,6 +2449,258 @@ class StateManagerMemory(StateManager): await self.set_state(token, state) +def _default_token_expiration() -> int: + """Get the default token expiration time. + + Returns: + The default token expiration time. + """ + return get_config().redis_token_expiration + + +def _serialize_type(type_: Any) -> str: + """Serialize a type. + + Args: + type_: The type to serialize. + + Returns: + The serialized type. + """ + if not inspect.isclass(type_): + return f"{type_}" + return f"{type_.__module__}.{type_.__qualname__}" + + +def state_to_schema( + state: BaseState, +) -> List[ + Tuple[ + str, + str, + Any, + Union[bool, None], + ] +]: + """Convert a state to a schema. + + Args: + state: The state to convert to a schema. + + Returns: + The schema. + """ + return list( + sorted( + ( + field_name, + model_field.name, + _serialize_type(model_field.type_), + ( + model_field.required + if isinstance(model_field.required, bool) + else None + ), + ) + for field_name, model_field in state.__fields__.items() + ) + ) + + +class StateManagerDisk(StateManager): + """A state manager that stores states in memory.""" + + # The mapping of client ids to states. + states: Dict[str, BaseState] = {} + + # The mutex ensures the dict of mutexes is updated exclusively + _state_manager_lock = asyncio.Lock() + + # The dict of mutexes for each client + _states_locks: Dict[str, asyncio.Lock] = pydantic.PrivateAttr({}) + + # The token expiration time (s). + token_expiration: int = pydantic.Field(default_factory=_default_token_expiration) + + class Config: + """The Pydantic config.""" + + fields = { + "_states_locks": {"exclude": True}, + } + keep_untouched = (functools.cached_property,) + + def __init__(self, state: Type[BaseState]): + """Create a new state manager. + + Args: + state: The state class to use. + """ + super().__init__(state=state) + + path_ops.mkdir(self.states_directory) + + self._purge_expired_states() + + @functools.cached_property + def states_directory(self) -> Path: + """Get the states directory. + + Returns: + The states directory. + """ + return prerequisites.get_web_dir() / constants.Dirs.STATES + + def _purge_expired_states(self): + """Purge expired states from the disk.""" + import time + + for path in path_ops.ls(self.states_directory): + # check path is a pickle file + if path.suffix != ".pkl": + continue + + # load last edited field from file + last_edited = path.stat().st_mtime + + # check if the file is older than the token expiration time + if time.time() - last_edited > self.token_expiration: + # remove the file + path.unlink() + + def token_path(self, token: str) -> Path: + """Get the path for a token. + + Args: + token: The token to get the path for. + + Returns: + The path for the token. + """ + return (self.states_directory / f"{token}.pkl").absolute() + + async def load_state(self, token: str, root_state: BaseState) -> BaseState: + """Load a state object based on the provided token. + + Args: + token: The token used to identify the state object. + root_state: The root state object. + + Returns: + The loaded state object. + """ + if token in self.states: + return self.states[token] + + client_token, substate_address = _split_substate_key(token) + + token_path = self.token_path(token) + + if token_path.exists(): + try: + with token_path.open(mode="rb") as file: + (substate_schema, substate) = dill.load(file) + if substate_schema == state_to_schema(substate): + await self.populate_substates(client_token, substate, root_state) + return substate + except Exception: + pass + + return root_state.get_substate(substate_address.split(".")[1:]) + + async def populate_substates( + self, client_token: str, state: BaseState, root_state: BaseState + ): + """Populate the substates of a state object. + + Args: + client_token: The client token. + state: The state object to populate. + root_state: The root state object. + """ + for substate in state.get_substates(): + substate_token = _substate_key(client_token, substate) + + substate = await self.load_state(substate_token, root_state) + + state.substates[substate.get_name()] = substate + substate.parent_state = state + + @override + async def get_state( + self, + token: str, + ) -> BaseState: + """Get the state for a token. + + Args: + token: The token to get the state for. + + Returns: + The state for the token. + """ + client_token, substate_address = _split_substate_key(token) + + root_state_token = _substate_key(client_token, substate_address.split(".")[0]) + + return await self.load_state( + root_state_token, self.state(_reflex_internal_init=True) + ) + + async def set_state_for_substate(self, client_token: str, substate: BaseState): + """Set the state for a substate. + + Args: + client_token: The client token. + substate: The substate to set. + """ + substate_token = _substate_key(client_token, substate) + + self.states[substate_token] = substate + + state_dilled = dill.dumps((state_to_schema(substate), substate)) + if not self.states_directory.exists(): + self.states_directory.mkdir(parents=True, exist_ok=True) + self.token_path(substate_token).write_bytes(state_dilled) + + for substate_substate in substate.substates.values(): + await self.set_state_for_substate(client_token, substate_substate) + + @override + async def set_state(self, token: str, state: BaseState): + """Set the state for a token. + + Args: + token: The token to set the state for. + state: The state to set. + """ + client_token, substate = _split_substate_key(token) + await self.set_state_for_substate(client_token, state) + + @override + @contextlib.asynccontextmanager + async def modify_state(self, token: str) -> AsyncIterator[BaseState]: + """Modify the state for a token while holding exclusive lock. + + Args: + token: The token to modify the state for. + + Yields: + The state for the token. + """ + # Memory state manager ignores the substate suffix and always returns the top-level state. + client_token, substate = _split_substate_key(token) + if client_token not in self._states_locks: + async with self._state_manager_lock: + if client_token not in self._states_locks: + self._states_locks[client_token] = asyncio.Lock() + + async with self._states_locks[client_token]: + state = await self.get_state(token) + yield state + await self.set_state(token, state) + + # Workaround https://github.com/cloudpipe/cloudpickle/issues/408 for dynamic pydantic classes if not isinstance(State.validate.__func__, FunctionType): cython_function_or_method = type(State.validate.__func__) @@ -2453,15 +2729,6 @@ def _default_lock_expiration() -> int: return get_config().redis_lock_expiration -def _default_token_expiration() -> int: - """Get the default token expiration time. - - Returns: - The default token expiration time. - """ - return get_config().redis_token_expiration - - class StateManagerRedis(StateManager): """A state manager that stores states in redis.""" diff --git a/reflex/style.py b/reflex/style.py index 69e93ed39..a2083f634 100644 --- a/reflex/style.py +++ b/reflex/style.py @@ -7,9 +7,11 @@ from typing import Any, Literal, Tuple, Type from reflex import constants from reflex.components.core.breakpoints import Breakpoints, breakpoints_values from reflex.event import EventChain +from reflex.ivars.base import ImmutableCallableVar, ImmutableVar, LiteralVar +from reflex.ivars.function import FunctionVar from reflex.utils import format from reflex.utils.imports import ImportVar -from reflex.vars import BaseVar, CallableVar, Var, VarData +from reflex.vars import ImmutableVarData, Var, VarData VarData.update_forward_refs() # Ensure all type definitions are resolved @@ -25,7 +27,7 @@ color_mode_imports = { } -def _color_mode_var(_var_name: str, _var_type: Type = str) -> BaseVar: +def _color_mode_var(_var_name: str, _var_type: Type = str) -> ImmutableVar: """Create a Var that destructs the _var_name from ColorModeContext. Args: @@ -33,24 +35,22 @@ def _color_mode_var(_var_name: str, _var_type: Type = str) -> BaseVar: _var_type: The type of the Var. Returns: - The BaseVar for accessing _var_name from ColorModeContext. + The Var that resolves to the color mode. """ - return BaseVar( + return ImmutableVar( _var_name=_var_name, _var_type=_var_type, - _var_is_local=False, - _var_is_string=False, - _var_data=VarData( + _var_data=ImmutableVarData( imports=color_mode_imports, hooks={f"const {{ {_var_name} }} = useContext(ColorModeContext)": None}, ), - ) + ).guess_type() -@CallableVar +@ImmutableCallableVar def set_color_mode( new_color_mode: LiteralColorMode | Var[LiteralColorMode] | None = None, -) -> BaseVar[EventChain]: +) -> Var[EventChain]: """Create an EventChain Var that sets the color mode to a specific value. Note: `set_color_mode` is not a real event and cannot be triggered from a @@ -70,11 +70,14 @@ def set_color_mode( return base_setter if not isinstance(new_color_mode, Var): - new_color_mode = Var.create_safe(new_color_mode, _var_is_string=True) - return base_setter._replace( - _var_name=f"() => {base_setter._var_name}({new_color_mode._var_name_unwrapped})", - merge_var_data=new_color_mode._var_data, - ) + new_color_mode = LiteralVar.create(new_color_mode) + + return ImmutableVar( + f"() => {str(base_setter)}({str(new_color_mode)})", + _var_data=ImmutableVarData.merge( + base_setter._get_all_var_data(), new_color_mode._get_all_var_data() + ), + ).to(FunctionVar, EventChain) # Var resolves to the current color mode for the app ("light", "dark" or "system") @@ -111,7 +114,9 @@ def media_query(breakpoint_expr: str): return f"@media screen and (min-width: {breakpoint_expr})" -def convert_item(style_item: str | Var) -> tuple[str, VarData | None]: +def convert_item( + style_item: int | str | Var, +) -> tuple[str | Var, VarData | ImmutableVarData | None]: """Format a single value in a style dictionary. Args: @@ -121,21 +126,20 @@ def convert_item(style_item: str | Var) -> tuple[str, VarData | None]: The formatted style item and any associated VarData. """ if isinstance(style_item, Var): - # If the value is a Var, extract the var_data and cast as str. - return str(style_item), style_item._var_data + return style_item, style_item._get_all_var_data() + + # if isinstance(style_item, str) and REFLEX_VAR_OPENING_TAG not in style_item: + # return style_item, None # Otherwise, convert to Var to collapse VarData encoded in f-string. - new_var = Var.create(style_item, _var_is_string=False) - if new_var is not None and new_var._var_data: - # The wrapped backtick is used to identify the Var for interpolation. - return f"`{str(new_var)}`", new_var._var_data - - return style_item, None + new_var = LiteralVar.create(style_item) + var_data = new_var._get_all_var_data() if new_var is not None else None + return new_var, var_data def convert_list( responsive_list: list[str | dict | Var], -) -> tuple[list[str | dict], VarData | None]: +) -> tuple[list[str | dict[str, Var | list | dict]], VarData | None]: """Format a responsive value list. Args: @@ -157,7 +161,9 @@ def convert_list( return converted_value, VarData.merge(*item_var_datas) -def convert(style_dict): +def convert( + style_dict: dict[str, Var | dict | list | str], +) -> tuple[dict[str, str | list | dict], VarData | None]: """Format a style dictionary. Args: @@ -175,7 +181,11 @@ def convert(style_dict): for key, value in style_dict.items(): keys = format_style_key(key) - if isinstance(value, dict): + if isinstance(value, Var): + return_val = value + new_var_data = value._get_all_var_data() + update_out_dict(return_val, keys) + elif isinstance(value, dict): # Recursively format nested style dictionaries. return_val, new_var_data = convert(value) update_out_dict(return_val, keys) @@ -254,10 +264,10 @@ class Style(dict): value: The value to set. """ # Create a Var to collapse VarData encoded in f-string. - _var = Var.create(value, _var_is_string=False) + _var = LiteralVar.create(value) if _var is not None: # Carry the imports/hooks when setting a Var as a value. - self._var_data = VarData.merge(self._var_data, _var._var_data) + self._var_data = VarData.merge(self._var_data, _var._get_all_var_data()) super().__setitem__(key, value) diff --git a/reflex/testing.py b/reflex/testing.py index c52396fc6..503db6c2f 100644 --- a/reflex/testing.py +++ b/reflex/testing.py @@ -45,6 +45,8 @@ import reflex.utils.prerequisites import reflex.utils.processes from reflex.state import ( BaseState, + StateManager, + StateManagerDisk, StateManagerMemory, StateManagerRedis, reload_state_module, @@ -126,7 +128,7 @@ class AppHarness: frontend_output_thread: Optional[threading.Thread] = None backend_thread: Optional[threading.Thread] = None backend: Optional[uvicorn.Server] = None - state_manager: Optional[StateManagerMemory | StateManagerRedis] = None + state_manager: Optional[StateManager] = None _frontends: list["WebDriver"] = dataclasses.field(default_factory=list) _decorated_pages: list = dataclasses.field(default_factory=list) @@ -290,6 +292,8 @@ class AppHarness: if isinstance(self.app_instance._state_manager, StateManagerRedis): # Create our own redis connection for testing. self.state_manager = StateManagerRedis.create(self.app_instance.state) + elif isinstance(self.app_instance._state_manager, StateManagerDisk): + self.state_manager = StateManagerDisk.create(self.app_instance.state) else: self.state_manager = self.app_instance._state_manager @@ -327,7 +331,8 @@ class AppHarness: ) ) self.backend.shutdown = self._get_backend_shutdown_handler() - self.backend_thread = threading.Thread(target=self.backend.run) + with chdir(self.app_path): + self.backend_thread = threading.Thread(target=self.backend.run) self.backend_thread.start() async def _reset_backend_state_manager(self): @@ -787,7 +792,7 @@ class AppHarness: raise RuntimeError("App is not running.") state_manager = self.app_instance.state_manager assert isinstance( - state_manager, StateManagerMemory + state_manager, (StateManagerMemory, StateManagerDisk) ), "Only works with memory state manager" if not self._poll_for( target=lambda: state_manager.states, diff --git a/reflex/utils/exceptions.py b/reflex/utils/exceptions.py index d219dcf0c..8c1a1f07f 100644 --- a/reflex/utils/exceptions.py +++ b/reflex/utils/exceptions.py @@ -79,3 +79,11 @@ class LockExpiredError(ReflexError): class MatchTypeError(ReflexError, TypeError): """Raised when the return types of match cases are different.""" + + +class EventHandlerArgMismatch(ReflexError, TypeError): + """Raised when the number of args accepted by an EventHandler is differs from that provided by the event trigger.""" + + +class EventFnArgMismatch(ReflexError, TypeError): + """Raised when the number of args accepted by a lambda differs from that provided by the event trigger.""" diff --git a/reflex/utils/exec.py b/reflex/utils/exec.py index 77df98116..417d6fbe7 100644 --- a/reflex/utils/exec.py +++ b/reflex/utils/exec.py @@ -18,22 +18,11 @@ from reflex import constants from reflex.config import get_config from reflex.utils import console, path_ops from reflex.utils.prerequisites import get_web_dir -from reflex.utils.watch import AssetFolderWatch # For uvicorn windows bug fix (#2335) frontend_process = None -def start_watching_assets_folder(root): - """Start watching assets folder. - - Args: - root: root path of the project. - """ - asset_watch = AssetFolderWatch(root) - asset_watch.start() - - def detect_package_change(json_file_path: str) -> str: """Calculates the SHA-256 hash of a JSON file and returns it as a hexadecimal string. @@ -149,8 +138,6 @@ def run_frontend(root: Path, port: str, backend_present=True): """ from reflex.utils import prerequisites - # Start watching asset folder. - start_watching_assets_folder(root) # validate dependencies before run prerequisites.validate_frontend_dependencies(init=False) @@ -215,7 +202,6 @@ def run_backend( log_level=loglevel.value, reload=True, reload_dirs=[config.app_name], - reload_excludes=[str(web_dir)], ) diff --git a/reflex/utils/format.py b/reflex/utils/format.py index 59bbbd91c..e7d85a93e 100644 --- a/reflex/utils/format.py +++ b/reflex/utils/format.py @@ -272,8 +272,10 @@ def format_f_string_prop(prop: BaseVar) -> str: Returns: The formatted string. """ + from reflex.ivars.base import VarData + s = prop._var_full_name - var_data = prop._var_data + var_data = VarData.merge(prop._get_all_var_data()) interps = var_data.interpolations if var_data else [] parts: List[str] = [] @@ -421,6 +423,7 @@ def format_prop( # import here to avoid circular import. from reflex.event import EventChain from reflex.utils import serializers + from reflex.vars import VarData try: # Handle var props. @@ -428,7 +431,8 @@ def format_prop( if not prop._var_is_local or prop._var_is_string: return str(prop) if isinstance(prop, BaseVar) and types._issubclass(prop._var_type, str): - if prop._var_data and prop._var_data.interpolations: + var_data = VarData.merge(prop._get_all_var_data()) + if var_data and var_data.interpolations: return format_f_string_prop(prop) return format_string(prop._var_full_name) prop = prop._var_full_name @@ -483,11 +487,26 @@ def format_props(*single_props, **key_value_props) -> list[str]: The formatted props list. """ # Format all the props. + from reflex.ivars.base import ImmutableVar, LiteralVar + return [ - f"{name}={format_prop(prop)}" + ( + f"{name}={format_prop(prop)}" + if isinstance(prop, Var) and not isinstance(prop, ImmutableVar) + else ( + f"{name}={{{format_prop(prop if isinstance(prop, Var) else LiteralVar.create(prop))}}}" + ) + ) for name, prop in sorted(key_value_props.items()) if prop is not None - ] + [str(prop) for prop in single_props] + ] + [ + ( + str(prop) + if isinstance(prop, Var) and not isinstance(prop, ImmutableVar) + else f"{{{str(LiteralVar.create(prop))}}}" + ) + for prop in single_props + ] def get_event_handler_parts(handler: EventHandler) -> tuple[str, str]: @@ -502,13 +521,13 @@ def get_event_handler_parts(handler: EventHandler) -> tuple[str, str]: # Get the class that defines the event handler. parts = handler.fn.__qualname__.split(".") - # If there's no enclosing class, just return the function name. - if len(parts) == 1: - return ("", parts[-1]) - # Get the state full name state_full_name = handler.state_full_name + # If there's no enclosing class, just return the function name. + if not state_full_name: + return ("", parts[-1]) + # Get the function name name = parts[-1] @@ -613,11 +632,13 @@ def format_event_chain( def format_queue_events( - events: EventSpec - | EventHandler - | Callable - | List[EventSpec | EventHandler | Callable] - | None = None, + events: ( + EventSpec + | EventHandler + | Callable + | List[EventSpec | EventHandler | Callable] + | None + ) = None, args_spec: Optional[ArgsSpec] = None, ) -> Var[EventChain]: """Format a list of event handler / event spec as a javascript callback. @@ -645,11 +666,10 @@ def format_queue_events( call_event_fn, call_event_handler, ) + from reflex.ivars import FunctionVar, ImmutableVar if not events: - return Var.create_safe( - "() => null", _var_is_string=False, _var_is_local=False - ).to(EventChain) + return ImmutableVar("(() => null)").to(FunctionVar, EventChain) # If no spec is provided, the function will take no arguments. def _default_args_spec(): @@ -682,12 +702,10 @@ def format_queue_events( # Return the final code snippet, expecting queueEvents, processEvent, and socket to be in scope. # Typically this snippet will _only_ run from within an rx.call_script eval context. - return Var.create_safe( + return ImmutableVar( f"{arg_def} => {{queueEvents([{','.join(payloads)}], {constants.CompileVars.SOCKET}); " f"processEvent({constants.CompileVars.SOCKET})}}", - _var_is_string=False, - _var_is_local=False, - ).to(EventChain) + ).to(FunctionVar, EventChain) def format_query_params(router_data: dict[str, Any]) -> dict[str, str]: @@ -786,8 +804,8 @@ def format_array_ref(refs: str, idx: Var | None) -> str: """ clean_ref = re.sub(r"[^\w]+", "_", refs) if idx is not None: - idx._var_is_local = True - return f"refs_{clean_ref}[{idx}]" + # idx._var_is_local = True + return f"refs_{clean_ref}[{str(idx)}]" return f"refs_{clean_ref}" @@ -938,7 +956,9 @@ def format_data_editor_cell(cell: Any): Returns: The formatted cell. """ + from reflex.ivars.base import ImmutableVar + return { - "kind": Var.create(value="GridCellKind.Text", _var_is_string=False), + "kind": ImmutableVar.create("GridCellKind.Text"), "data": cell, } diff --git a/reflex/utils/net.py b/reflex/utils/net.py new file mode 100644 index 000000000..83e25559c --- /dev/null +++ b/reflex/utils/net.py @@ -0,0 +1,43 @@ +"""Helpers for downloading files from the network.""" + +import os + +import httpx + +from . import console + + +def _httpx_verify_kwarg() -> bool: + """Get the value of the HTTPX verify keyword argument. + + Returns: + True if SSL verification is enabled, False otherwise + """ + ssl_no_verify = os.environ.get("SSL_NO_VERIFY", "").lower() in ["true", "1", "yes"] + return not ssl_no_verify + + +def get(url: str, **kwargs) -> httpx.Response: + """Make an HTTP GET request. + + Args: + url: The URL to request. + **kwargs: Additional keyword arguments to pass to httpx.get. + + Returns: + The response object. + + Raises: + httpx.ConnectError: If the connection cannot be established. + """ + kwargs.setdefault("verify", _httpx_verify_kwarg()) + try: + return httpx.get(url, **kwargs) + except httpx.ConnectError as err: + if "CERTIFICATE_VERIFY_FAILED" in str(err): + # If the error is a certificate verification error, recommend mitigating steps. + console.error( + f"Certificate verification failed for {url}. Set environment variable SSL_CERT_FILE to the " + "path of the certificate file or SSL_NO_VERIFY=1 to disable verification." + ) + raise diff --git a/reflex/utils/path_ops.py b/reflex/utils/path_ops.py index 39f2138f8..21065db99 100644 --- a/reflex/utils/path_ops.py +++ b/reflex/utils/path_ops.py @@ -81,6 +81,18 @@ def mkdir(path: str | Path): Path(path).mkdir(parents=True, exist_ok=True) +def ls(path: str | Path) -> list[Path]: + """List the contents of a directory. + + Args: + path: The path to the directory. + + Returns: + A list of paths to the contents of the directory. + """ + return list(Path(path).iterdir()) + + def ln(src: str | Path, dest: str | Path, overwrite: bool = False) -> bool: """Create a symbolic link. @@ -197,4 +209,4 @@ def find_replace(directory: str | Path, find: str, replace: str): filepath = Path(root, file) text = filepath.read_text(encoding="utf-8") text = re.sub(find, replace, text) - filepath.write_text(text) + filepath.write_text(text, encoding="utf-8") diff --git a/reflex/utils/prerequisites.py b/reflex/utils/prerequisites.py index f71f707ee..e061207f4 100644 --- a/reflex/utils/prerequisites.py +++ b/reflex/utils/prerequisites.py @@ -28,13 +28,14 @@ import typer from alembic.util.exc import CommandError from packaging import version from redis import Redis as RedisSync +from redis import exceptions from redis.asyncio import Redis from reflex import constants, model from reflex.base import Base from reflex.compiler import templates from reflex.config import Config, get_config -from reflex.utils import console, path_ops, processes +from reflex.utils import console, net, path_ops, processes from reflex.utils.format import format_library_name from reflex.utils.registry import _get_best_registry @@ -80,7 +81,7 @@ def check_latest_package_version(package_name: str): # Get the latest version from PyPI current_version = importlib.metadata.version(package_name) url = f"https://pypi.org/pypi/{package_name}/json" - response = httpx.get(url) + response = net.get(url) latest_version = response.json()["info"]["version"] if ( version.parse(current_version) < version.parse(latest_version) @@ -324,24 +325,43 @@ def parse_redis_url() -> str | dict | None: """Parse the REDIS_URL in config if applicable. Returns: - If redis-py syntax, return the URL as it is. Otherwise, return the host/port/db as a dict. + If url is non-empty, return the URL as it is. + + Raises: + ValueError: If the REDIS_URL is not a supported scheme. """ config = get_config() if not config.redis_url: return None - if config.redis_url.startswith(("redis://", "rediss://", "unix://")): - return config.redis_url - console.deprecate( - feature_name="host[:port] style redis urls", - reason="redis-py url syntax is now being used", - deprecation_version="0.3.6", - removal_version="0.6.0", - ) - redis_url, has_port, redis_port = config.redis_url.partition(":") - if not has_port: - redis_port = 6379 - console.info(f"Using redis at {config.redis_url}") - return dict(host=redis_url, port=int(redis_port), db=0) + if not config.redis_url.startswith(("redis://", "rediss://", "unix://")): + raise ValueError( + "REDIS_URL must start with 'redis://', 'rediss://', or 'unix://'." + ) + return config.redis_url + + +async def get_redis_status() -> bool | None: + """Checks the status of the Redis connection. + + Attempts to connect to Redis and send a ping command to verify connectivity. + + Returns: + bool or None: The status of the Redis connection: + - True: Redis is accessible and responding. + - False: Redis is not accessible due to a connection error. + - None: Redis not used i.e redis_url is not set in rxconfig. + """ + try: + status = True + redis_client = get_redis_sync() + if redis_client is not None: + redis_client.ping() + else: + status = None + except exceptions.RedisError: + status = False + + return status def validate_app_name(app_name: str | None = None) -> str: @@ -670,7 +690,7 @@ def download_and_run(url: str, *args, show_status: bool = False, **env): """ # Download the script console.debug(f"Downloading {url}") - response = httpx.get(url) + response = net.get(url) if response.status_code != httpx.codes.OK: response.raise_for_status() @@ -700,11 +720,11 @@ def download_and_extract_fnm_zip(): try: # Download the FNM zip release. # TODO: show progress to improve UX - with httpx.stream("GET", url, follow_redirects=True) as response: - response.raise_for_status() - with open(fnm_zip_file, "wb") as output_file: - for chunk in response.iter_bytes(): - output_file.write(chunk) + response = net.get(url, follow_redirects=True) + response.raise_for_status() + with open(fnm_zip_file, "wb") as output_file: + for chunk in response.iter_bytes(): + output_file.write(chunk) # Extract the downloaded zip file. with zipfile.ZipFile(fnm_zip_file, "r") as zip_ref: @@ -1222,7 +1242,7 @@ def fetch_app_templates(version: str) -> dict[str, Template]: """ def get_release_by_tag(tag: str) -> dict | None: - response = httpx.get(constants.Reflex.RELEASES_URL) + response = net.get(constants.Reflex.RELEASES_URL) response.raise_for_status() releases = response.json() for release in releases: @@ -1243,7 +1263,7 @@ def fetch_app_templates(version: str) -> dict[str, Template]: else: templates_url = asset["browser_download_url"] - templates_data = httpx.get(templates_url, follow_redirects=True).json()["templates"] + templates_data = net.get(templates_url, follow_redirects=True).json()["templates"] for template in templates_data: if template["name"] == "blank": @@ -1286,7 +1306,7 @@ def create_config_init_app_from_remote_template(app_name: str, template_url: str zip_file_path = Path(temp_dir) / "template.zip" try: # Note: following redirects can be risky. We only allow this for reflex built templates at the moment. - response = httpx.get(template_url, follow_redirects=True) + response = net.get(template_url, follow_redirects=True) console.debug(f"Server responded download request: {response}") response.raise_for_status() except httpx.HTTPError as he: @@ -1417,7 +1437,7 @@ def initialize_main_module_index_from_generation(app_name: str, generation_hash: generation_hash: The generation hash from reflex.build. """ # Download the reflex code for the generation. - resp = httpx.get( + resp = net.get( constants.Templates.REFLEX_BUILD_CODE_URL.format( generation_hash=generation_hash ) diff --git a/reflex/utils/pyi_generator.py b/reflex/utils/pyi_generator.py index d279e3910..f96a4c046 100644 --- a/reflex/utils/pyi_generator.py +++ b/reflex/utils/pyi_generator.py @@ -433,7 +433,7 @@ def _generate_component_create_functiondef( ast.arg( arg=trigger, annotation=ast.Name( - id="Optional[Union[EventHandler, EventSpec, list, Callable, BaseVar]]" + id="Optional[Union[EventHandler, EventSpec, list, Callable, Var]]" ), ), ast.Constant(value=None), diff --git a/reflex/utils/types.py b/reflex/utils/types.py index 32438b9e6..6c21aa679 100644 --- a/reflex/utils/types.py +++ b/reflex/utils/types.py @@ -6,7 +6,7 @@ import contextlib import inspect import sys import types -from functools import cached_property, wraps +from functools import cached_property, lru_cache, wraps from typing import ( Any, Callable, @@ -21,9 +21,11 @@ from typing import ( Union, _GenericAlias, # type: ignore get_args, - get_origin, get_type_hints, ) +from typing import ( + get_origin as get_origin_og, +) import sqlalchemy @@ -133,6 +135,20 @@ class Unset: return False +@lru_cache() +def get_origin(tp): + """Get the origin of a class. + + Args: + tp: The class to get the origin of. + + Returns: + The origin of the class. + """ + return get_origin_og(tp) + + +@lru_cache() def is_generic_alias(cls: GenericType) -> bool: """Check whether the class is a generic alias. @@ -157,6 +173,7 @@ def is_none(cls: GenericType) -> bool: return cls is type(None) or cls is None +@lru_cache() def is_union(cls: GenericType) -> bool: """Check if a class is a Union. @@ -169,6 +186,7 @@ def is_union(cls: GenericType) -> bool: return get_origin(cls) in UnionTypes +@lru_cache() def is_literal(cls: GenericType) -> bool: """Check if a class is a Literal. @@ -222,9 +240,14 @@ def get_attribute_access_type(cls: GenericType, name: str) -> GenericType | None """ from reflex.model import Model - attr = getattr(cls, name, None) + try: + attr = getattr(cls, name, None) + except NotImplementedError: + attr = None + if hint := get_property_hint(attr): return hint + if ( hasattr(cls, "__fields__") and name in cls.__fields__ @@ -314,6 +337,7 @@ def get_attribute_access_type(cls: GenericType, name: str) -> GenericType | None return None # Attribute is not accessible. +@lru_cache() def get_base_class(cls: GenericType) -> Type: """Get the base class of a class. @@ -491,10 +515,18 @@ def is_backend_base_variable(name: str, cls: Type) -> bool: return False if callable(value): return False + from reflex.ivars.base import ImmutableComputedVar from reflex.vars import ComputedVar if isinstance( - value, (types.FunctionType, property, cached_property, ComputedVar) + value, + ( + types.FunctionType, + property, + cached_property, + ComputedVar, + ImmutableComputedVar, + ), ): return False diff --git a/reflex/utils/watch.py b/reflex/utils/watch.py deleted file mode 100644 index 39b177695..000000000 --- a/reflex/utils/watch.py +++ /dev/null @@ -1,96 +0,0 @@ -"""General utility functions.""" - -import contextlib -import os -import shutil -import time - -from watchdog.events import FileSystemEvent, FileSystemEventHandler -from watchdog.observers import Observer - -from reflex.constants import Dirs -from reflex.utils.prerequisites import get_web_dir - - -class AssetFolderWatch: - """Asset folder watch class.""" - - def __init__(self, root): - """Initialize the Watch Class. - - Args: - root: root path of the public. - """ - self.path = str(root / Dirs.APP_ASSETS) - self.event_handler = AssetFolderHandler(root) - - def start(self): - """Start watching asset folder.""" - self.observer = Observer() - self.observer.schedule(self.event_handler, self.path, recursive=True) - self.observer.start() - - -class AssetFolderHandler(FileSystemEventHandler): - """Asset folder event handler.""" - - def __init__(self, root): - """Initialize the AssetFolderHandler Class. - - Args: - root: root path of the public. - """ - super().__init__() - self.root = root - - def on_modified(self, event: FileSystemEvent): - """Event handler when a file or folder was modified. - - This is called every time after a file is created, modified and deleted. - - Args: - event: Event information. - """ - dest_path = self.get_dest_path(event.src_path) - - # wait 1 sec for fully saved - time.sleep(1) - - if os.path.isfile(event.src_path): - with contextlib.suppress(PermissionError): - shutil.copyfile(event.src_path, dest_path) - if os.path.isdir(event.src_path): - if os.path.exists(dest_path): - shutil.rmtree(dest_path) - with contextlib.suppress(PermissionError): - shutil.copytree(event.src_path, dest_path) - - def on_deleted(self, event: FileSystemEvent): - """Event hander when a file or folder was deleted. - - Args: - event: Event infomation. - """ - dest_path = self.get_dest_path(event.src_path) - - if os.path.isfile(dest_path): - # when event is about a file, pass - # this will be deleted at on_modified function - return - - if os.path.exists(dest_path): - shutil.rmtree(dest_path) - - def get_dest_path(self, src_path: str) -> str: - """Get public file path. - - Args: - src_path: The asset file path. - - Returns: - The public file path. - """ - return src_path.replace( - str(self.root / Dirs.APP_ASSETS), - str(self.root / get_web_dir() / Dirs.PUBLIC), - ) diff --git a/reflex/vars.py b/reflex/vars.py index 795ab4759..13481b962 100644 --- a/reflex/vars.py +++ b/reflex/vars.py @@ -6,7 +6,6 @@ import contextlib import dataclasses import datetime import dis -import functools import inspect import json import random @@ -29,7 +28,6 @@ from typing import ( _GenericAlias, # type: ignore cast, get_args, - get_origin, get_type_hints, ) @@ -51,7 +49,7 @@ from reflex.utils.imports import ( ParsedImportDict, parse_imports, ) -from reflex.utils.types import override +from reflex.utils.types import get_origin, override if TYPE_CHECKING: from reflex.state import BaseState @@ -182,15 +180,14 @@ class VarData(Base): var_data.interpolations if isinstance(var_data, VarData) else [] ) - return ( - cls( + if state or _imports or hooks or interpolations: + return cls( state=state, imports=_imports, hooks=hooks, interpolations=interpolations, ) - or None - ) + return None def __bool__(self) -> bool: """Check if the var data is non-empty. @@ -302,14 +299,13 @@ class ImmutableVarData: else {k: None for k in var_data.hooks} ) - return ( - ImmutableVarData( + if state or _imports or hooks: + return ImmutableVarData( state=state, imports=_imports, hooks=hooks, ) - or None - ) + return None def __bool__(self) -> bool: """Check if the var data is non-empty. @@ -345,6 +341,33 @@ class ImmutableVarData: == imports.collapse_imports(other.imports) ) + @classmethod + def from_state(cls, state: Type[BaseState] | str) -> ImmutableVarData: + """Set the state of the var. + + Args: + state: The state to set or the full name of the state. + + Returns: + The var with the set state. + """ + from reflex.utils import format + + state_name = state if isinstance(state, str) else state.get_full_name() + new_var_data = ImmutableVarData( + state=state_name, + hooks={ + "const {0} = useContext(StateContexts.{0})".format( + format.format_state_name(state_name) + ): None + }, + imports={ + f"/{constants.Dirs.CONTEXTS_PATH}": [ImportVar(tag="StateContexts")], + "react": [ImportVar(tag="useContext")], + }, + ) + return new_var_data + def _decode_var_immutable(value: str) -> tuple[ImmutableVarData | None, str]: """Decode the state name from a formatted var. @@ -384,7 +407,7 @@ def _decode_var_immutable(value: str) -> tuple[ImmutableVarData | None, str]: ): # This is a global immutable var. var = _global_vars[int(serialized_data)] - var_data = var._var_data + var_data = var._get_all_var_data() if var_data is not None: realstart = start + offset @@ -727,7 +750,10 @@ class Var: try: return json.loads(self._var_name) except ValueError: - return self._var_name + try: + return json.loads(self.json()) + except (ValueError, NotImplementedError): + return self._var_name def equals(self, other: Var) -> bool: """Check if two vars are equal. @@ -738,6 +764,16 @@ class Var: Returns: Whether the vars are equal. """ + from reflex.ivars import ImmutableVar + + if isinstance(other, ImmutableVar) or isinstance(self, ImmutableVar): + return ( + self._var_name == other._var_name + and self._var_type == other._var_type + and ImmutableVarData.merge(self._get_all_var_data()) + == ImmutableVarData.merge(other._get_all_var_data()) + ) + return ( self._var_name == other._var_name and self._var_type == other._var_type @@ -800,11 +836,19 @@ class Var: """ from reflex.utils import format - out = ( - self._var_full_name - if self._var_is_local - else format.wrap(self._var_full_name, "{") - ) + if self._var_is_local: + console.deprecate( + feature_name="Local Vars", + reason=( + "Setting _var_is_local to True does not have any effect anymore. " + "Use the new ImmutableVar instead." + ), + deprecation_version="0.5.9", + removal_version="0.6.0", + ) + out = self._var_full_name + else: + out = format.wrap(self._var_full_name, "{") if self._var_is_string: out = format.format_string(out) return out @@ -1009,7 +1053,6 @@ class Var: return self._replace( _var_name=f"{self._var_name}{'?' if is_optional else ''}.{name}", _var_type=type_, - _var_is_string=False, ) if name in REPLACED_NAMES: @@ -2488,7 +2531,6 @@ def computed_var( auto_deps: bool = True, interval: Optional[Union[datetime.timedelta, int]] = None, backend: bool | None = None, - _deprecated_cached_var: bool = False, **kwargs, ) -> ComputedVar | Callable[[Callable[[BaseState], Any]], ComputedVar]: """A ComputedVar decorator with or without kwargs. @@ -2501,7 +2543,6 @@ def computed_var( auto_deps: Whether var dependencies should be auto-determined. interval: Interval at which the computed var should be updated. backend: Whether the computed var is a backend var. - _deprecated_cached_var: Indicate usage of deprecated cached_var partial function. **kwargs: additional attributes to set on the instance Returns: @@ -2511,14 +2552,6 @@ def computed_var( ValueError: If caching is disabled and an update interval is set. VarDependencyError: If user supplies dependencies without caching. """ - if _deprecated_cached_var: - console.deprecate( - feature_name="cached_var", - reason=("Use @rx.var(cache=True) instead of @rx.cached_var."), - deprecation_version="0.5.6", - removal_version="0.6.0", - ) - if cache is False and interval is not None: raise ValueError("Cannot set update interval without caching.") @@ -2543,10 +2576,6 @@ def computed_var( return wrapper -# Partial function of computed_var with cache=True -cached_var = functools.partial(computed_var, cache=True, _deprecated_cached_var=True) - - class CallableVar(BaseVar): """Decorate a Var-returning function to act as both a Var and a function. diff --git a/reflex/vars.pyi b/reflex/vars.pyi index 47d433374..8c923f03e 100644 --- a/reflex/vars.pyi +++ b/reflex/vars.pyi @@ -63,6 +63,8 @@ class ImmutableVarData: def merge( cls, *others: ImmutableVarData | VarData | None ) -> ImmutableVarData | None: ... + @classmethod + def from_state(cls, state: Type[BaseState] | str) -> ImmutableVarData: ... def _decode_var_immutable(value: str) -> tuple[ImmutableVarData, str]: ... @@ -150,8 +152,9 @@ class Var: @property def _var_full_name(self) -> str: ... def _var_set_state(self, state: Type[BaseState] | str) -> Any: ... - def _get_all_var_data(self) -> VarData: ... + def _get_all_var_data(self) -> VarData | ImmutableVarData: ... def json(self) -> str: ... + def _type(self) -> Var: ... @dataclass(eq=False) class BaseVar(Var): diff --git a/tests/components/base/test_bare.py b/tests/components/base/test_bare.py index 264d136cb..adc7ac1b0 100644 --- a/tests/components/base/test_bare.py +++ b/tests/components/base/test_bare.py @@ -1,16 +1,21 @@ import pytest from reflex.components.base.bare import Bare +from reflex.ivars.base import ImmutableVar + +STATE_VAR = ImmutableVar.create_safe("default_state.name") @pytest.mark.parametrize( "contents,expected", [ - ("hello", "hello"), - ("{}", "{}"), - (None, ""), - ("${default_state.name}", "${default_state.name}"), - ("{state.name}", "{state.name}"), + ("hello", '{"hello"}'), + ("{}", '{"{}"}'), + (None, '{""}'), + (STATE_VAR, "{default_state.name}"), + # This behavior is now unsupported. + # ("${default_state.name}", "${default_state.name}"), + # ("{state.name}", "{state.name}"), ], ) def test_fstrings(contents, expected): diff --git a/tests/components/base/test_script.py b/tests/components/base/test_script.py index 372178d5f..c6b67da11 100644 --- a/tests/components/base/test_script.py +++ b/tests/components/base/test_script.py @@ -13,7 +13,7 @@ def test_script_inline(): assert render_dict["name"] == "Script" assert not render_dict["contents"] assert len(render_dict["children"]) == 1 - assert render_dict["children"][0]["contents"] == "{`let x = 42`}" + assert render_dict["children"][0]["contents"] == '{"let x = 42"}' def test_script_src(): @@ -23,7 +23,7 @@ def test_script_src(): assert render_dict["name"] == "Script" assert not render_dict["contents"] assert not render_dict["children"] - assert "src={`foo.js`}" in render_dict["props"] + assert 'src={"foo.js"}' in render_dict["props"] def test_script_neither(): @@ -58,14 +58,14 @@ def test_script_event_handler(): ) render_dict = component.render() assert ( - f'onReady={{(...args) => addEvents([Event("{EvState.get_full_name()}.on_ready", {{}})], args, {{}})}}' + f'onReady={{((...args) => ((addEvents([(Event("{EvState.get_full_name()}.on_ready", ({{ }})))], args, ({{ }})))))}}' in render_dict["props"] ) assert ( - f'onLoad={{(...args) => addEvents([Event("{EvState.get_full_name()}.on_load", {{}})], args, {{}})}}' + f'onLoad={{((...args) => ((addEvents([(Event("{EvState.get_full_name()}.on_load", ({{ }})))], args, ({{ }})))))}}' in render_dict["props"] ) assert ( - f'onError={{(...args) => addEvents([Event("{EvState.get_full_name()}.on_error", {{}})], args, {{}})}}' + f'onError={{((...args) => ((addEvents([(Event("{EvState.get_full_name()}.on_error", ({{ }})))], args, ({{ }})))))}}' in render_dict["props"] ) diff --git a/tests/components/core/test_banner.py b/tests/components/core/test_banner.py index 184a65cc9..f46ee16b1 100644 --- a/tests/components/core/test_banner.py +++ b/tests/components/core/test_banner.py @@ -9,8 +9,11 @@ from reflex.components.radix.themes.typography.text import Text def test_websocket_target_url(): url = WebsocketTargetURL.create() - _imports = url._get_all_imports(collapse=True) - assert tuple(_imports) == ("/utils/state", "/env.json") + var_data = url._get_all_var_data() + assert var_data is not None + assert sorted(tuple((key for key, _ in var_data.imports))) == sorted( + ("/utils/state", "/env.json") + ) def test_connection_banner(): diff --git a/tests/components/core/test_colors.py b/tests/components/core/test_colors.py index 0c14c8a7c..ace7adad6 100644 --- a/tests/components/core/test_colors.py +++ b/tests/components/core/test_colors.py @@ -3,7 +3,7 @@ import pytest import reflex as rx from reflex.components.datadisplay.code import CodeBlock from reflex.constants.colors import Color -from reflex.vars import Var +from reflex.ivars.base import LiteralVar class ColorState(rx.State): @@ -18,38 +18,38 @@ color_state_name = ColorState.get_full_name().replace(".", "__") def create_color_var(color): - return Var.create(color) + return LiteralVar.create(color) @pytest.mark.parametrize( "color, expected", [ - (create_color_var(rx.color("mint")), "var(--mint-7)"), - (create_color_var(rx.color("mint", 3)), "var(--mint-3)"), - (create_color_var(rx.color("mint", 3, True)), "var(--mint-a3)"), + (create_color_var(rx.color("mint")), '"var(--mint-7)"'), + (create_color_var(rx.color("mint", 3)), '"var(--mint-3)"'), + (create_color_var(rx.color("mint", 3, True)), '"var(--mint-a3)"'), ( create_color_var(rx.color(ColorState.color, ColorState.shade)), # type: ignore - f"var(--${{{color_state_name}.color}}-${{{color_state_name}.shade}})", + f'("var(--"+{str(color_state_name)}.color+"-"+{str(color_state_name)}.shade+")")', ), ( create_color_var(rx.color(f"{ColorState.color}", f"{ColorState.shade}")), # type: ignore - f"var(--${{{color_state_name}.color}}-${{{color_state_name}.shade}})", + f'("var(--"+{str(color_state_name)}.color+"-"+{str(color_state_name)}.shade+")")', ), ( create_color_var( rx.color(f"{ColorState.color_part}ato", f"{ColorState.shade}") # type: ignore ), - f"var(--${{{color_state_name}.color_part}}ato-${{{color_state_name}.shade}})", + f'("var(--"+{str(color_state_name)}.color_part+"ato-"+{str(color_state_name)}.shade+")")', ), ( create_color_var(f'{rx.color(ColorState.color, f"{ColorState.shade}")}'), # type: ignore - f"var(--${{{color_state_name}.color}}-${{{color_state_name}.shade}})", + f'("var(--"+{str(color_state_name)}.color+"-"+{str(color_state_name)}.shade+")")', ), ( create_color_var( f'{rx.color(f"{ColorState.color}", f"{ColorState.shade}")}' # type: ignore ), - f"var(--${{{color_state_name}.color}}-${{{color_state_name}.shade}})", + f'("var(--"+{str(color_state_name)}.color+"-"+{str(color_state_name)}.shade+")")', ), ], ) @@ -67,11 +67,11 @@ def test_color(color, expected): [ ( rx.cond(True, rx.color("mint"), rx.color("tomato", 5)), - "{isTrue(true) ? `var(--mint-7)` : `var(--tomato-5)`}", + '(true ? "var(--mint-7)" : "var(--tomato-5)")', ), ( rx.cond(True, rx.color(ColorState.color), rx.color(ColorState.color, 5)), # type: ignore - f"{{isTrue(true) ? `var(--${{{color_state_name}.color}}-7)` : `var(--${{{color_state_name}.color}}-5)`}}", + f'(true ? ("var(--"+{str(color_state_name)}.color+"-7)") : ("var(--"+{str(color_state_name)}.color+"-5)"))', ), ( rx.match( @@ -80,9 +80,9 @@ def test_color(color, expected): ("second", rx.color("tomato", 5)), rx.color(ColorState.color, 2), # type: ignore ), - "{(() => { switch (JSON.stringify(`condition`)) {case JSON.stringify(`first`): return (`var(--mint-7)`);" - " break;case JSON.stringify(`second`): return (`var(--tomato-5)`); break;default: " - f"return (`var(--${{{color_state_name}.color}}-2)`); break;}};}})()}}", + '(() => { switch (JSON.stringify("condition")) {case JSON.stringify("first"): return ("var(--mint-7)");' + ' break;case JSON.stringify("second"): return ("var(--tomato-5)"); break;default: ' + f'return (("var(--"+{str(color_state_name)}.color+"-2)")); break;}};}})()', ), ( rx.match( @@ -91,10 +91,10 @@ def test_color(color, expected): ("second", rx.color(ColorState.color, 5)), # type: ignore rx.color(ColorState.color, 2), # type: ignore ), - "{(() => { switch (JSON.stringify(`condition`)) {case JSON.stringify(`first`): " - f"return (`var(--${{{color_state_name}.color}}-7)`); break;case JSON.stringify(`second`): " - f"return (`var(--${{{color_state_name}.color}}-5)`); break;default: " - f"return (`var(--${{{color_state_name}.color}}-2)`); break;}};}})()}}", + '(() => { switch (JSON.stringify("condition")) {case JSON.stringify("first"): ' + f'return (("var(--"+{str(color_state_name)}.color+"-7)")); break;case JSON.stringify("second"): ' + f'return (("var(--"+{str(color_state_name)}.color+"-5)")); break;default: ' + f'return (("var(--"+{str(color_state_name)}.color+"-2)")); break;}};}})()', ), ], ) @@ -105,12 +105,12 @@ def test_color_with_conditionals(cond_var, expected): @pytest.mark.parametrize( "color, expected", [ - (create_color_var(rx.color("red")), "{`var(--red-7)`}"), - (create_color_var(rx.color("green", shade=1)), "{`var(--green-1)`}"), - (create_color_var(rx.color("blue", alpha=True)), "{`var(--blue-a7)`}"), - ("red", "red"), - ("green", "green"), - ("blue", "blue"), + (create_color_var(rx.color("red")), '"var(--red-7)"'), + (create_color_var(rx.color("green", shade=1)), '"var(--green-1)"'), + (create_color_var(rx.color("blue", alpha=True)), '"var(--blue-a7)"'), + ("red", '"red"'), + ("green", '"green"'), + ("blue", '"blue"'), ], ) def test_radix_color(color, expected): @@ -122,4 +122,4 @@ def test_radix_color(color, expected): expected (str): The expected custom_style string, radix or literal """ code_block = CodeBlock.create("Hello World", background_color=color) - assert code_block.custom_style["backgroundColor"].__format__("") == expected # type: ignore + assert str(code_block.custom_style["backgroundColor"]) == expected # type: ignore diff --git a/tests/components/core/test_cond.py b/tests/components/core/test_cond.py index e18be2217..53f8e0640 100644 --- a/tests/components/core/test_cond.py +++ b/tests/components/core/test_cond.py @@ -6,9 +6,10 @@ import pytest from reflex.components.base.fragment import Fragment from reflex.components.core.cond import Cond, cond from reflex.components.radix.themes.typography.text import Text +from reflex.ivars.base import ImmutableVar, LiteralVar, immutable_computed_var from reflex.state import BaseState, State from reflex.utils.format import format_state_name -from reflex.vars import BaseVar, Var, computed_var +from reflex.vars import Var @pytest.fixture @@ -21,8 +22,8 @@ def cond_state(request): def test_f_string_cond_interpolation(): # make sure backticks inside interpolation don't get escaped - var = Var.create(f"x {cond(True, 'a', 'b')}") - assert str(var) == "x ${isTrue(true) ? `a` : `b`}" + var = LiteralVar.create(f"x {cond(True, 'a', 'b')}") + assert str(var) == '("x "+(true ? "a" : "b"))' @pytest.mark.parametrize( @@ -57,7 +58,7 @@ def test_validate_cond(cond_state: BaseState): [true_value_text] = true_value["children"] assert true_value_text["name"] == "RadixThemesText" - assert true_value_text["children"][0]["contents"] == "{`cond is True`}" + assert true_value_text["children"][0]["contents"] == '{"cond is True"}' # false value false_value = condition["false_value"] @@ -65,7 +66,7 @@ def test_validate_cond(cond_state: BaseState): [false_value_text] = false_value["children"] assert false_value_text["name"] == "RadixThemesText" - assert false_value_text["children"][0]["contents"] == "{`cond is False`}" + assert false_value_text["children"][0]["contents"] == '{"cond is False"}' @pytest.mark.parametrize( @@ -93,10 +94,10 @@ def test_prop_cond(c1: Any, c2: Any): assert isinstance(prop_cond, Var) if not isinstance(c1, Var): - c1 = json.dumps(c1).replace('"', "`") + c1 = json.dumps(c1) if not isinstance(c2, Var): - c2 = json.dumps(c2).replace('"', "`") - assert str(prop_cond) == f"{{isTrue(true) ? {c1} : {c2}}}" + c2 = json.dumps(c2) + assert str(prop_cond) == f"(true ? {c1} : {c2})" def test_cond_no_mix(): @@ -125,23 +126,22 @@ def test_cond_computed_var(): """Test if cond works with computed vars.""" class CondStateComputed(State): - @computed_var + @immutable_computed_var def computed_int(self) -> int: return 0 - @computed_var + @immutable_computed_var def computed_str(self) -> str: return "a string" comp = cond(True, CondStateComputed.computed_int, CondStateComputed.computed_str) # TODO: shouln't this be a ComputedVar? - assert isinstance(comp, BaseVar) + assert isinstance(comp, ImmutableVar) state_name = format_state_name(CondStateComputed.get_full_name()) assert ( - str(comp) - == f"{{isTrue(true) ? {state_name}.computed_int : {state_name}.computed_str}}" + str(comp) == f"(true ? {state_name}.computed_int : {state_name}.computed_str)" ) assert comp._var_type == Union[int, str] diff --git a/tests/components/core/test_debounce.py b/tests/components/core/test_debounce.py index 8ad15ea58..95feb7ae6 100644 --- a/tests/components/core/test_debounce.py +++ b/tests/components/core/test_debounce.py @@ -4,8 +4,8 @@ import pytest import reflex as rx from reflex.components.core.debounce import DEFAULT_DEBOUNCE_TIMEOUT +from reflex.ivars.base import LiteralVar from reflex.state import BaseState -from reflex.vars import BaseVar def test_create_no_child(): @@ -60,11 +60,7 @@ def test_render_child_props(): assert "css" in tag.props and isinstance(tag.props["css"], rx.Var) for prop in ["foo", "bar", "baz", "quuc"]: assert prop in str(tag.props["css"]) - assert tag.props["value"].equals( - BaseVar( - _var_name="real", _var_type=str, _var_is_local=True, _var_is_string=False - ) - ) + assert tag.props["value"].equals(LiteralVar.create("real")) assert len(tag.props["onChange"].events) == 1 assert tag.props["onChange"].events[0].handler == S.on_change assert tag.contents == "" @@ -156,11 +152,7 @@ def test_render_child_props_recursive(): assert "css" in tag.props and isinstance(tag.props["css"], rx.Var) for prop in ["foo", "bar", "baz", "quuc"]: assert prop in str(tag.props["css"]) - assert tag.props["value"].equals( - BaseVar( - _var_name="outer", _var_type=str, _var_is_local=True, _var_is_string=False - ) - ) + assert tag.props["value"].equals(LiteralVar.create("outer")) assert tag.props["forceNotifyOnBlur"]._var_name == "false" assert tag.props["forceNotifyByEnter"]._var_name == "false" assert tag.props["debounceTimeout"]._var_name == "42" diff --git a/tests/components/core/test_foreach.py b/tests/components/core/test_foreach.py index 6e4fa6b5e..f1fae2577 100644 --- a/tests/components/core/test_foreach.py +++ b/tests/components/core/test_foreach.py @@ -278,7 +278,7 @@ def test_foreach_component_styles(): ) ) component._add_style_recursive({box: {"color": "red"}}) - assert 'css={{"color": "red"}}' in str(component) + assert 'css={({ ["color"] : "red" })}' in str(component) def test_foreach_component_state(): diff --git a/tests/components/core/test_html.py b/tests/components/core/test_html.py index 325bdcaf9..4847e1d5a 100644 --- a/tests/components/core/test_html.py +++ b/tests/components/core/test_html.py @@ -1,6 +1,7 @@ import pytest from reflex.components.core.html import Html +from reflex.state import State def test_html_no_children(): @@ -15,8 +16,26 @@ def test_html_many_children(): def test_html_create(): html = Html.create("

Hello !

") - assert str(html.dangerouslySetInnerHTML) == '{"__html": "

Hello !

"}' # type: ignore + assert str(html.dangerouslySetInnerHTML) == '({ ["__html"] : "

Hello !

" })' # type: ignore assert ( str(html) - == '
Hello !

"}}/>' + == '
Hello !

" })}/>' + ) + + +def test_html_fstring_create(): + class TestState(State): + """The app state.""" + + myvar: str = "Blue" + + html = Html.create(f"

Hello {TestState.myvar}!

") + + assert ( + str(html.dangerouslySetInnerHTML) # type: ignore + == f'({{ ["__html"] : ("

Hello "+{str(TestState.myvar)}+"!

") }})' + ) + assert ( + str(html) + == f'
' # type: ignore ) diff --git a/tests/components/core/test_match.py b/tests/components/core/test_match.py index 883386ebd..1843b914d 100644 --- a/tests/components/core/test_match.py +++ b/tests/components/core/test_match.py @@ -1,4 +1,4 @@ -from typing import Tuple +from typing import Dict, List, Tuple import pytest @@ -6,7 +6,7 @@ import reflex as rx from reflex.components.core.match import Match from reflex.state import BaseState from reflex.utils.exceptions import MatchTypeError -from reflex.vars import BaseVar +from reflex.vars import Var class MatchState(BaseState): @@ -35,7 +35,7 @@ def test_match_components(): [match_child] = match_dict["children"] assert match_child["name"] == "match" - assert str(match_child["cond"]) == f"{{{MatchState.get_name()}.value}}" + assert str(match_child["cond"]) == f"{MatchState.get_name()}.value" match_cases = match_child["match_cases"] assert len(match_cases) == 6 @@ -44,7 +44,7 @@ def test_match_components(): assert match_cases[0][0]._var_type == int first_return_value_render = match_cases[0][1].render() assert first_return_value_render["name"] == "RadixThemesText" - assert first_return_value_render["children"][0]["contents"] == "{`first value`}" + assert first_return_value_render["children"][0]["contents"] == '{"first value"}' assert match_cases[1][0]._var_name == "2" assert match_cases[1][0]._var_type == int @@ -52,36 +52,36 @@ def test_match_components(): assert match_cases[1][1]._var_type == int second_return_value_render = match_cases[1][2].render() assert second_return_value_render["name"] == "RadixThemesText" - assert second_return_value_render["children"][0]["contents"] == "{`second value`}" + assert second_return_value_render["children"][0]["contents"] == '{"second value"}' assert match_cases[2][0]._var_name == "[1, 2]" - assert match_cases[2][0]._var_type == list + assert match_cases[2][0]._var_type == List[int] third_return_value_render = match_cases[2][1].render() assert third_return_value_render["name"] == "RadixThemesText" - assert third_return_value_render["children"][0]["contents"] == "{`third value`}" + assert third_return_value_render["children"][0]["contents"] == '{"third value"}' - assert match_cases[3][0]._var_name == "random" + assert match_cases[3][0]._var_name == '"random"' assert match_cases[3][0]._var_type == str fourth_return_value_render = match_cases[3][1].render() assert fourth_return_value_render["name"] == "RadixThemesText" - assert fourth_return_value_render["children"][0]["contents"] == "{`fourth value`}" + assert fourth_return_value_render["children"][0]["contents"] == '{"fourth value"}' - assert match_cases[4][0]._var_name == '{"foo": "bar"}' - assert match_cases[4][0]._var_type == dict + assert match_cases[4][0]._var_name == '({ ["foo"] : "bar" })' + assert match_cases[4][0]._var_type == Dict[str, str] fifth_return_value_render = match_cases[4][1].render() assert fifth_return_value_render["name"] == "RadixThemesText" - assert fifth_return_value_render["children"][0]["contents"] == "{`fifth value`}" + assert fifth_return_value_render["children"][0]["contents"] == '{"fifth value"}' - assert match_cases[5][0]._var_name == f"(({MatchState.get_name()}.num) + (1))" + assert match_cases[5][0]._var_name == f"({MatchState.get_name()}.num + 1)" assert match_cases[5][0]._var_type == int fifth_return_value_render = match_cases[5][1].render() assert fifth_return_value_render["name"] == "RadixThemesText" - assert fifth_return_value_render["children"][0]["contents"] == "{`sixth value`}" + assert fifth_return_value_render["children"][0]["contents"] == '{"sixth value"}' default = match_child["default"].render() assert default["name"] == "RadixThemesText" - assert default["children"][0]["contents"] == "{`default value`}" + assert default["children"][0]["contents"] == '{"default value"}' @pytest.mark.parametrize( @@ -99,12 +99,12 @@ def test_match_components(): (MatchState.string, f"{MatchState.value} - string"), "default value", ), - f"(() => {{ switch (JSON.stringify({MatchState.get_name()}.value)) {{case JSON.stringify(1): return (`first`); break;case JSON.stringify(2): case JSON.stringify(3): return " - "(`second value`); break;case JSON.stringify([1, 2]): return (`third-value`); break;case JSON.stringify(`random`): " - 'return (`fourth_value`); break;case JSON.stringify({"foo": "bar"}): return (`fifth value`); ' - f"break;case JSON.stringify((({MatchState.get_name()}.num) + (1))): return (`sixth value`); break;case JSON.stringify(`${{{MatchState.get_name()}.value}} - string`): " - f"return ({MatchState.get_name()}.string); break;case JSON.stringify({MatchState.get_name()}.string): return (`${{{MatchState.get_name()}.value}} - string`); break;default: " - "return (`default value`); break;};})()", + f'(() => {{ switch (JSON.stringify({MatchState.get_name()}.value)) {{case JSON.stringify(1): return ("first"); break;case JSON.stringify(2): case JSON.stringify(3): return ' + '("second value"); break;case JSON.stringify([1, 2]): return ("third-value"); break;case JSON.stringify("random"): ' + 'return ("fourth_value"); break;case JSON.stringify(({ ["foo"] : "bar" })): return ("fifth value"); ' + f'break;case JSON.stringify(({MatchState.get_name()}.num + 1)): return ("sixth value"); break;case JSON.stringify(({MatchState.get_name()}.value+" - string")): ' + f'return ({MatchState.get_name()}.string); break;case JSON.stringify({MatchState.get_name()}.string): return (({MatchState.get_name()}.value+" - string")); break;default: ' + 'return ("default value"); break;};})()', ), ( ( @@ -118,11 +118,11 @@ def test_match_components(): (MatchState.string, f"{MatchState.value} - string"), MatchState.string, ), - f"(() => {{ switch (JSON.stringify({MatchState.get_name()}.value)) {{case JSON.stringify(1): return (`first`); break;case JSON.stringify(2): case JSON.stringify(3): return " - "(`second value`); break;case JSON.stringify([1, 2]): return (`third-value`); break;case JSON.stringify(`random`): " - 'return (`fourth_value`); break;case JSON.stringify({"foo": "bar"}): return (`fifth value`); ' - f"break;case JSON.stringify((({MatchState.get_name()}.num) + (1))): return (`sixth value`); break;case JSON.stringify(`${{{MatchState.get_name()}.value}} - string`): " - f"return ({MatchState.get_name()}.string); break;case JSON.stringify({MatchState.get_name()}.string): return (`${{{MatchState.get_name()}.value}} - string`); break;default: " + f'(() => {{ switch (JSON.stringify({MatchState.get_name()}.value)) {{case JSON.stringify(1): return ("first"); break;case JSON.stringify(2): case JSON.stringify(3): return ' + '("second value"); break;case JSON.stringify([1, 2]): return ("third-value"); break;case JSON.stringify("random"): ' + 'return ("fourth_value"); break;case JSON.stringify(({ ["foo"] : "bar" })): return ("fifth value"); ' + f'break;case JSON.stringify(({MatchState.get_name()}.num + 1)): return ("sixth value"); break;case JSON.stringify(({MatchState.get_name()}.value+" - string")): ' + f'return ({MatchState.get_name()}.string); break;case JSON.stringify({MatchState.get_name()}.string): return (({MatchState.get_name()}.value+" - string")); break;default: ' f"return ({MatchState.get_name()}.string); break;}};}})()", ), ], @@ -135,7 +135,7 @@ def test_match_vars(cases, expected): expected: The expected var full name. """ match_comp = Match.create(MatchState.value, *cases) - assert isinstance(match_comp, BaseVar) + assert isinstance(match_comp, Var) assert match_comp._var_full_name == expected @@ -247,8 +247,8 @@ def test_match_case_tuple_elements(match_case): (MatchState.num + 1, "black"), rx.text("default value"), ), - "Match cases should have the same return types. Case 3 with return value `red` of type " - " is not ", + 'Match cases should have the same return types. Case 3 with return value `"red"` of type ' + " is not ", ), ( ( @@ -260,8 +260,8 @@ def test_match_case_tuple_elements(match_case): ([1, 2], rx.text("third value")), rx.text("default value"), ), - "Match cases should have the same return types. Case 3 with return value ` {`first value`} ` " - "of type is not ", + 'Match cases should have the same return types. Case 3 with return value ` {"first value"} ` ' + "of type is not ", ), ], ) diff --git a/tests/components/datadisplay/test_code.py b/tests/components/datadisplay/test_code.py index 64452e90c..49fbae09f 100644 --- a/tests/components/datadisplay/test_code.py +++ b/tests/components/datadisplay/test_code.py @@ -4,7 +4,7 @@ from reflex.components.datadisplay.code import CodeBlock @pytest.mark.parametrize( - "theme, expected", [("light", "one-light"), ("dark", "one-dark")] + "theme, expected", [("light", '"one-light"'), ("dark", '"one-dark"')] ) def test_code_light_dark_theme(theme, expected): code_block = CodeBlock.create(theme=theme) diff --git a/tests/components/forms/test_uploads.py b/tests/components/forms/test_uploads.py index f8856a20f..3b2ee014f 100644 --- a/tests/components/forms/test_uploads.py +++ b/tests/components/forms/test_uploads.py @@ -83,11 +83,11 @@ def test_upload_root_component_render(upload_root_component): # upload assert upload["name"] == "ReactDropzone" assert upload["props"] == [ - "id={`default`}", + 'id={"default"}', "multiple={true}", "onDrop={e => setFilesById(filesById => {\n" " const updatedFilesById = Object.assign({}, filesById);\n" - " updatedFilesById[`default`] = e;\n" + ' updatedFilesById["default"] = e;\n' " return updatedFilesById;\n" " })\n" " }", @@ -99,23 +99,23 @@ def test_upload_root_component_render(upload_root_component): [box] = upload["children"] assert box["name"] == "RadixThemesBox" assert box["props"] == [ - "className={`rx-Upload`}", - 'css={{"border": "1px dotted black"}}', + 'className={"rx-Upload"}', + 'css={({ ["border"] : "1px dotted black" })}', "{...getRootProps()}", ] # input, button and text inside of box [input, button, text] = box["children"] assert input["name"] == "input" - assert input["props"] == ["type={`file`}", "{...getInputProps()}"] + assert input["props"] == ['type={"file"}', "{...getInputProps()}"] assert button["name"] == "RadixThemesButton" - assert button["children"][0]["contents"] == "{`select file`}" + assert button["children"][0]["contents"] == '{"select file"}' assert text["name"] == "RadixThemesText" assert ( text["children"][0]["contents"] - == "{`Drag and drop files here or click to select files`}" + == '{"Drag and drop files here or click to select files"}' ) @@ -130,11 +130,11 @@ def test_upload_component_render(upload_component): # upload assert upload["name"] == "ReactDropzone" assert upload["props"] == [ - "id={`default`}", + 'id={"default"}', "multiple={true}", "onDrop={e => setFilesById(filesById => {\n" " const updatedFilesById = Object.assign({}, filesById);\n" - " updatedFilesById[`default`] = e;\n" + ' updatedFilesById["default"] = e;\n' " return updatedFilesById;\n" " })\n" " }", @@ -146,23 +146,23 @@ def test_upload_component_render(upload_component): [box] = upload["children"] assert box["name"] == "RadixThemesBox" assert box["props"] == [ - "className={`rx-Upload`}", - 'css={{"border": "1px dotted black", "padding": "5em", "textAlign": "center"}}', + 'className={"rx-Upload"}', + 'css={({ ["border"] : "1px dotted black", ["padding"] : "5em", ["textAlign"] : "center" })}', "{...getRootProps()}", ] # input, button and text inside of box [input, button, text] = box["children"] assert input["name"] == "input" - assert input["props"] == ["type={`file`}", "{...getInputProps()}"] + assert input["props"] == ['type={"file"}', "{...getInputProps()}"] assert button["name"] == "RadixThemesButton" - assert button["children"][0]["contents"] == "{`select file`}" + assert button["children"][0]["contents"] == '{"select file"}' assert text["name"] == "RadixThemesText" assert ( text["children"][0]["contents"] - == "{`Drag and drop files here or click to select files`}" + == '{"Drag and drop files here or click to select files"}' ) @@ -175,13 +175,13 @@ def test_upload_component_with_props_render(upload_component_with_props): upload = upload_component_with_props.render() assert upload["props"] == [ - "id={`default`}", + 'id={"default"}', "maxFiles={2}", "multiple={true}", "noDrag={true}", "onDrop={e => setFilesById(filesById => {\n" " const updatedFilesById = Object.assign({}, filesById);\n" - " updatedFilesById[`default`] = e;\n" + ' updatedFilesById["default"] = e;\n' " return updatedFilesById;\n" " })\n" " }", @@ -193,11 +193,11 @@ def test_upload_component_id_with_special_chars(upload_component_id_special): upload = upload_component_id_special.render() assert upload["props"] == [ - r"id={`#spec!\`al-_98ID`}", + r'id={"#spec!`al-_98ID"}', "multiple={true}", "onDrop={e => setFilesById(filesById => {\n" " const updatedFilesById = Object.assign({}, filesById);\n" - " updatedFilesById[`#spec!\\`al-_98ID`] = e;\n" + ' updatedFilesById["#spec!`al-_98ID"] = e;\n' " return updatedFilesById;\n" " })\n" " }", diff --git a/tests/components/lucide/test_icon.py b/tests/components/lucide/test_icon.py index d61f3a9aa..b0a3475dd 100644 --- a/tests/components/lucide/test_icon.py +++ b/tests/components/lucide/test_icon.py @@ -1,6 +1,6 @@ import pytest -from reflex.components.lucide.icon import LUCIDE_ICON_LIST, RENAMED_ICONS_05, Icon +from reflex.components.lucide.icon import LUCIDE_ICON_LIST, Icon from reflex.utils import format @@ -10,16 +10,6 @@ def test_icon(tag): assert icon.alias == f"Lucide{format.to_title_case(tag)}Icon" -RENAMED_TAGS = [tag for tag in RENAMED_ICONS_05.items()] - - -@pytest.mark.parametrize("tag, new_tag", RENAMED_TAGS) -def test_icon_renamed_tags(tag, new_tag): - Icon.create(tag) - # TODO: need a PR so we can pass the following test. Currently it fails and uses the old tag as the import. - # assert icon.alias == f"Lucide{format.to_title_case(new_tag)}Icon" - - def test_icon_missing_tag(): with pytest.raises(AttributeError): _ = Icon.create() diff --git a/tests/components/media/test_image.py b/tests/components/media/test_image.py index a39895c67..ba8353260 100644 --- a/tests/components/media/test_image.py +++ b/tests/components/media/test_image.py @@ -6,6 +6,7 @@ from PIL.Image import Image as Img import reflex as rx from reflex.components.next.image import Image # type: ignore +from reflex.ivars.sequence import StringVar from reflex.utils.serializers import serialize, serialize_image @@ -36,9 +37,13 @@ def test_set_src_str(): """Test that setting the src works.""" image = rx.image(src="pic2.jpeg") # when using next/image, we explicitly create a _var_is_str Var - # assert str(image.src) == "{`pic2.jpeg`}" # type: ignore + assert str(image.src) in ( # type: ignore + '"pic2.jpeg"', + "'pic2.jpeg'", + "`pic2.jpeg`", + ) # For plain rx.el.img, an explicit var is not created, so the quoting happens later - assert str(image.src) == "pic2.jpeg" # type: ignore + # assert str(image.src) == "pic2.jpeg" # type: ignore def test_set_src_img(pil_image: Img): @@ -48,7 +53,7 @@ def test_set_src_img(pil_image: Img): pil_image: The image to serialize. """ image = Image.create(src=pil_image) - assert str(image.src._var_name) == serialize_image(pil_image) # type: ignore + assert str(image.src._var_name) == '"' + serialize_image(pil_image) + '"' # type: ignore def test_render(pil_image: Img): @@ -58,4 +63,4 @@ def test_render(pil_image: Img): pil_image: The image to serialize. """ image = Image.create(src=pil_image) - assert image.src._var_is_string # type: ignore + assert isinstance(image.src, StringVar) # type: ignore diff --git a/tests/components/test_component.py b/tests/components/test_component.py index 3d32a53d7..3c824ed01 100644 --- a/tests/components/test_component.py +++ b/tests/components/test_component.py @@ -18,9 +18,11 @@ from reflex.components.component import ( ) from reflex.constants import EventTriggers from reflex.event import EventChain, EventHandler, parse_args_spec +from reflex.ivars.base import LiteralVar from reflex.state import BaseState from reflex.style import Style from reflex.utils import imports +from reflex.utils.exceptions import EventFnArgMismatch, EventHandlerArgMismatch from reflex.utils.imports import ImportDict, ImportVar, ParsedImportDict, parse_imports from reflex.vars import BaseVar, Var, VarData @@ -78,6 +80,8 @@ def component2() -> Type[Component]: # A test list prop. arr: Var[List[str]] + on_prop_event: EventHandler[lambda e0: [e0]] + def get_event_triggers(self) -> Dict[str, Any]: """Test controlled triggers. @@ -230,8 +234,8 @@ def test_set_style_attrs(component1): component1: A test component. """ component = component1(color="white", text_align="center") - assert component.style["color"] == "white" - assert component.style["textAlign"] == "center" + assert str(component.style["color"]) == '"white"' + assert str(component.style["textAlign"]) == '"center"' def test_custom_attrs(component1): @@ -255,7 +259,10 @@ def test_create_component(component1): c = component1.create(*children, **attrs) assert isinstance(c, component1) assert c.children == children - assert c.style == {"color": "white", "textAlign": "center"} + assert ( + str(LiteralVar.create(c.style)) + == '({ ["color"] : "white", ["textAlign"] : "center" })' + ) @pytest.mark.parametrize( @@ -419,8 +426,8 @@ def test_add_style(component1, component2): } c1 = component1()._add_style_recursive(style) # type: ignore c2 = component2()._add_style_recursive(style) # type: ignore - assert c1.style["color"] == "white" - assert c2.style["color"] == "black" + assert str(c1.style["color"]) == '"white"' + assert str(c2.style["color"]) == '"black"' def test_add_style_create(component1, component2): @@ -436,8 +443,8 @@ def test_add_style_create(component1, component2): } c1 = component1()._add_style_recursive(style) # type: ignore c2 = component2()._add_style_recursive(style) # type: ignore - assert c1.style["color"] == "white" - assert c2.style["color"] == "black" + assert str(c1.style["color"]) == '"white"' + assert str(c2.style["color"]) == '"black"' def test_get_imports(component1, component2): @@ -492,7 +499,7 @@ def test_get_props(component1, component2): component2: A test component. """ assert component1.get_props() == {"text", "number", "text_or_number"} - assert component2.get_props() == {"arr"} + assert component2.get_props() == {"arr", "on_prop_event"} @pytest.mark.parametrize( @@ -570,7 +577,7 @@ def test_get_event_triggers(component1, component2): assert component1().get_event_triggers().keys() == default_triggers assert ( component2().get_event_triggers().keys() - == {"on_open", "on_close"} | default_triggers + == {"on_open", "on_close", "on_prop_event"} | default_triggers ) @@ -607,8 +614,8 @@ def test_create_filters_none_props(test_component): assert "prop4" not in component.get_props() # Assert that the style prop is present in the component's props - assert component.style["color"] == "white" - assert component.style["text-align"] == "center" + assert str(component.style["color"]) == '"white"' + assert str(component.style["text-align"]) == '"center"' @pytest.mark.parametrize("children", [((None,),), ("foo", ("bar", (None,)))]) @@ -635,7 +642,7 @@ def test_component_create_unallowed_types(children, test_component): "children": [ { "name": "RadixThemesText", - "props": ["as={`p`}"], + "props": ['as={"p"}'], "contents": "", "args": None, "special_props": set(), @@ -643,7 +650,7 @@ def test_component_create_unallowed_types(children, test_component): { "name": "", "props": [], - "contents": "{`first_text`}", + "contents": '{"first_text"}', "args": None, "special_props": set(), "children": [], @@ -670,7 +677,7 @@ def test_component_create_unallowed_types(children, test_component): "args": None, "autofocus": False, "children": [], - "contents": "{`first_text`}", + "contents": '{"first_text"}', "name": "", "props": [], "special_props": set(), @@ -678,7 +685,7 @@ def test_component_create_unallowed_types(children, test_component): ], "contents": "", "name": "RadixThemesText", - "props": ["as={`p`}"], + "props": ['as={"p"}'], "special_props": set(), }, { @@ -689,7 +696,7 @@ def test_component_create_unallowed_types(children, test_component): "args": None, "autofocus": False, "children": [], - "contents": "{`second_text`}", + "contents": '{"second_text"}', "name": "", "props": [], "special_props": set(), @@ -697,7 +704,7 @@ def test_component_create_unallowed_types(children, test_component): ], "contents": "", "name": "RadixThemesText", - "props": ["as={`p`}"], + "props": ['as={"p"}'], "special_props": set(), }, ], @@ -721,7 +728,7 @@ def test_component_create_unallowed_types(children, test_component): "args": None, "autofocus": False, "children": [], - "contents": "{`first_text`}", + "contents": '{"first_text"}', "name": "", "props": [], "special_props": set(), @@ -729,7 +736,7 @@ def test_component_create_unallowed_types(children, test_component): ], "contents": "", "name": "RadixThemesText", - "props": ["as={`p`}"], + "props": ['as={"p"}'], "special_props": set(), }, { @@ -748,7 +755,7 @@ def test_component_create_unallowed_types(children, test_component): "args": None, "autofocus": False, "children": [], - "contents": "{`second_text`}", + "contents": '{"second_text"}', "name": "", "props": [], "special_props": set(), @@ -756,7 +763,7 @@ def test_component_create_unallowed_types(children, test_component): ], "contents": "", "name": "RadixThemesText", - "props": ["as={`p`}"], + "props": ['as={"p"}'], "special_props": set(), } ], @@ -825,9 +832,9 @@ def test_component_event_trigger_arbitrary_args(): comp = C1.create(on_foo=C1State.mock_handler) assert comp.render()["props"][0] == ( - "onFoo={(__e,_alpha,_bravo,_charlie) => addEvents(" - f'[Event("{C1State.get_full_name()}.mock_handler", {{_e:__e.target.value,_bravo:_bravo["nested"],_charlie:((_charlie.custom) + (42))}})], ' - "[__e,_alpha,_bravo,_charlie], {})}" + "onFoo={((__e, _alpha, _bravo, _charlie) => ((addEvents(" + f'[(Event("{C1State.get_full_name()}.mock_handler", ({{ ["_e"] : __e["target"]["value"], ["_bravo"] : _bravo["nested"], ["_charlie"] : (_charlie["custom"] + 42) }})))], ' + "[__e, _alpha, _bravo, _charlie], ({ })))))}" ) @@ -884,18 +891,105 @@ def test_invalid_event_handler_args(component2, test_state): component2: A test component. test_state: A test state. """ - # Uncontrolled event handlers should not take args. - # This is okay. - component2.create(on_click=test_state.do_something) - # This is not okay. - with pytest.raises(ValueError): + # EventHandler args must match + with pytest.raises(EventHandlerArgMismatch): component2.create(on_click=test_state.do_something_arg) + with pytest.raises(EventHandlerArgMismatch): component2.create(on_open=test_state.do_something) + with pytest.raises(EventHandlerArgMismatch): + component2.create(on_prop_event=test_state.do_something) + + # Multiple EventHandler args: all must match + with pytest.raises(EventHandlerArgMismatch): + component2.create( + on_click=[test_state.do_something_arg, test_state.do_something] + ) + with pytest.raises(EventHandlerArgMismatch): component2.create( on_open=[test_state.do_something_arg, test_state.do_something] ) - # However lambdas are okay. + with pytest.raises(EventHandlerArgMismatch): + component2.create( + on_prop_event=[test_state.do_something_arg, test_state.do_something] + ) + + # lambda cannot return weird values. + with pytest.raises(ValueError): + component2.create(on_click=lambda: 1) + with pytest.raises(ValueError): + component2.create(on_click=lambda: [1]) + with pytest.raises(ValueError): + component2.create( + on_click=lambda: (test_state.do_something_arg(1), test_state.do_something) + ) + + # lambda signature must match event trigger. + with pytest.raises(EventFnArgMismatch): + component2.create(on_click=lambda _: test_state.do_something_arg(1)) + with pytest.raises(EventFnArgMismatch): + component2.create(on_open=lambda: test_state.do_something) + with pytest.raises(EventFnArgMismatch): + component2.create(on_prop_event=lambda: test_state.do_something) + + # lambda returning EventHandler must match spec + with pytest.raises(EventHandlerArgMismatch): + component2.create(on_click=lambda: test_state.do_something_arg) + with pytest.raises(EventHandlerArgMismatch): + component2.create(on_open=lambda _: test_state.do_something) + with pytest.raises(EventHandlerArgMismatch): + component2.create(on_prop_event=lambda _: test_state.do_something) + + # Mixed EventSpec and EventHandler must match spec. + with pytest.raises(EventHandlerArgMismatch): + component2.create( + on_click=lambda: [ + test_state.do_something_arg(1), + test_state.do_something_arg, + ] + ) + with pytest.raises(EventHandlerArgMismatch): + component2.create( + on_open=lambda _: [test_state.do_something_arg(1), test_state.do_something] + ) + with pytest.raises(EventHandlerArgMismatch): + component2.create( + on_prop_event=lambda _: [ + test_state.do_something_arg(1), + test_state.do_something, + ] + ) + + +def test_valid_event_handler_args(component2, test_state): + """Test that an valid event handler args do not raise exception. + + Args: + component2: A test component. + test_state: A test state. + """ + # Uncontrolled event handlers should not take args. + component2.create(on_click=test_state.do_something) + component2.create(on_click=test_state.do_something_arg(1)) + + # Controlled event handlers should take args. + component2.create(on_open=test_state.do_something_arg) + component2.create(on_prop_event=test_state.do_something_arg) + + # Using a partial event spec bypasses arg validation (ignoring the args). + component2.create(on_open=test_state.do_something()) + component2.create(on_prop_event=test_state.do_something()) + + # lambda returning EventHandler is okay if the spec matches. + component2.create(on_click=lambda: test_state.do_something) + component2.create(on_open=lambda _: test_state.do_something_arg) + component2.create(on_prop_event=lambda _: test_state.do_something_arg) + + # lambda can always return an EventSpec. component2.create(on_click=lambda: test_state.do_something_arg(1)) + component2.create(on_open=lambda _: test_state.do_something_arg(1)) + component2.create(on_prop_event=lambda _: test_state.do_something_arg(1)) + + # Return EventSpec and EventHandler (no arg). component2.create( on_click=lambda: [test_state.do_something_arg(1), test_state.do_something] ) @@ -903,9 +997,24 @@ def test_invalid_event_handler_args(component2, test_state): on_click=lambda: [test_state.do_something_arg(1), test_state.do_something()] ) - # Controlled event handlers should take args. - # This is okay. - component2.create(on_open=test_state.do_something_arg) + # Return 2 EventSpec. + component2.create( + on_open=lambda _: [test_state.do_something_arg(1), test_state.do_something()] + ) + component2.create( + on_prop_event=lambda _: [ + test_state.do_something_arg(1), + test_state.do_something(), + ] + ) + + # Return EventHandler (1 arg) and EventSpec. + component2.create( + on_open=lambda _: [test_state.do_something_arg, test_state.do_something()] + ) + component2.create( + on_prop_event=lambda _: [test_state.do_something_arg, test_state.do_something()] + ) def test_get_hooks_nested(component1, component2, component3): @@ -1003,10 +1112,10 @@ def test_component_with_only_valid_children(fixture, request): @pytest.mark.parametrize( "component,rendered", [ - (rx.text("hi"), "\n {`hi`}\n"), + (rx.text("hi"), '\n {"hi"}\n'), ( rx.box(rc.heading("test", size="md")), - "\n \n {`test`}\n\n", + '\n \n {"test"}\n\n', ), ], ) @@ -1061,7 +1170,7 @@ def test_stateful_banner(): assert isinstance(stateful_component, StatefulComponent) -TEST_VAR = Var.create_safe("test")._replace( +TEST_VAR = LiteralVar.create("test")._replace( merge_var_data=VarData( hooks={"useTest": None}, imports={"test": [ImportVar(tag="test")]}, @@ -1069,36 +1178,36 @@ TEST_VAR = Var.create_safe("test")._replace( interpolations=[], ) ) -FORMATTED_TEST_VAR = Var.create(f"foo{TEST_VAR}bar") -STYLE_VAR = TEST_VAR._replace(_var_name="style", _var_is_local=False) +FORMATTED_TEST_VAR = LiteralVar.create(f"foo{TEST_VAR}bar") +STYLE_VAR = TEST_VAR._replace(_var_name="style") EVENT_CHAIN_VAR = TEST_VAR._replace(_var_type=EventChain) ARG_VAR = Var.create("arg") -TEST_VAR_DICT_OF_DICT = Var.create_safe({"a": {"b": "test"}})._replace( +TEST_VAR_DICT_OF_DICT = LiteralVar.create({"a": {"b": "test"}})._replace( merge_var_data=TEST_VAR._var_data ) -FORMATTED_TEST_VAR_DICT_OF_DICT = Var.create_safe({"a": {"b": f"footestbar"}})._replace( +FORMATTED_TEST_VAR_DICT_OF_DICT = LiteralVar.create( + {"a": {"b": f"footestbar"}} +)._replace(merge_var_data=TEST_VAR._var_data) + +TEST_VAR_LIST_OF_LIST = LiteralVar.create([["test"]])._replace( + merge_var_data=TEST_VAR._var_data +) +FORMATTED_TEST_VAR_LIST_OF_LIST = LiteralVar.create([["footestbar"]])._replace( merge_var_data=TEST_VAR._var_data ) -TEST_VAR_LIST_OF_LIST = Var.create_safe([["test"]])._replace( - merge_var_data=TEST_VAR._var_data -) -FORMATTED_TEST_VAR_LIST_OF_LIST = Var.create_safe([["footestbar"]])._replace( +TEST_VAR_LIST_OF_LIST_OF_LIST = LiteralVar.create([[["test"]]])._replace( merge_var_data=TEST_VAR._var_data ) +FORMATTED_TEST_VAR_LIST_OF_LIST_OF_LIST = LiteralVar.create( + [[["footestbar"]]] +)._replace(merge_var_data=TEST_VAR._var_data) -TEST_VAR_LIST_OF_LIST_OF_LIST = Var.create_safe([[["test"]]])._replace( +TEST_VAR_LIST_OF_DICT = LiteralVar.create([{"a": "test"}])._replace( merge_var_data=TEST_VAR._var_data ) -FORMATTED_TEST_VAR_LIST_OF_LIST_OF_LIST = Var.create_safe([[["footestbar"]]])._replace( - merge_var_data=TEST_VAR._var_data -) - -TEST_VAR_LIST_OF_DICT = Var.create_safe([{"a": "test"}])._replace( - merge_var_data=TEST_VAR._var_data -) -FORMATTED_TEST_VAR_LIST_OF_DICT = Var.create_safe([{"a": "footestbar"}])._replace( +FORMATTED_TEST_VAR_LIST_OF_DICT = LiteralVar.create([{"a": "footestbar"}])._replace( merge_var_data=TEST_VAR._var_data ) @@ -1187,7 +1296,7 @@ class EventState(rx.State): id="direct-special_props", ), pytest.param( - rx.fragment(special_props={Var.create(f"foo{TEST_VAR}bar")}), + rx.fragment(special_props={LiteralVar.create(f"foo{TEST_VAR}bar")}), [FORMATTED_TEST_VAR], id="fstring-special_props", ), @@ -1296,6 +1405,8 @@ def test_get_vars(component, exp_vars): comp_vars, sorted(exp_vars, key=lambda v: v._var_name), ): + # print(str(comp_var), str(exp_var)) + # print(comp_var._get_all_var_data(), exp_var._get_all_var_data()) assert comp_var.equals(exp_var) @@ -1335,9 +1446,11 @@ def test_instantiate_all_components(): continue component = getattr( rx, - component_name - if not isinstance(component_name, tuple) - else component_name[1], + ( + component_name + if not isinstance(component_name, tuple) + else component_name[1] + ), ) if isinstance(component, type) and issubclass(component, Component): component.create() @@ -1595,70 +1708,14 @@ def test_rename_props(): c1 = C1.create(prop1="prop1_1", prop2="prop2_1") rendered_c1 = c1.render() - assert "renamed_prop1={`prop1_1`}" in rendered_c1["props"] - assert "renamed_prop2={`prop2_1`}" in rendered_c1["props"] + assert 'renamed_prop1={"prop1_1"}' in rendered_c1["props"] + assert 'renamed_prop2={"prop2_1"}' in rendered_c1["props"] c2 = C2.create(prop1="prop1_2", prop2="prop2_2", prop3="prop3_2") rendered_c2 = c2.render() - assert "renamed_prop1={`prop1_2`}" in rendered_c2["props"] - assert "subclass_prop2={`prop2_2`}" in rendered_c2["props"] - assert "renamed_prop3={`prop3_2`}" in rendered_c2["props"] - - -def test_deprecated_props(capsys): - """Assert that deprecated underscore suffix props are translated. - - Args: - capsys: Pytest fixture for capturing stdout and stderr. - """ - - class C1(Component): - tag = "C1" - - type: Var[str] - min: Var[str] - max: Var[str] - - # No warnings are emitted when using the new prop names. - c1_1 = C1.create(type="type1", min="min1", max="max1") - out_err = capsys.readouterr() - assert not out_err.err - assert not out_err.out - - c1_1_render = c1_1.render() - assert "type={`type1`}" in c1_1_render["props"] - assert "min={`min1`}" in c1_1_render["props"] - assert "max={`max1`}" in c1_1_render["props"] - - # Deprecation warning is emitted with underscore suffix, - # but the component still works. - c1_2 = C1.create(type_="type2", min_="min2", max_="max2") - out_err = capsys.readouterr() - assert out_err.out.count("DeprecationWarning:") == 3 - assert not out_err.err - - c1_2_render = c1_2.render() - assert "type={`type2`}" in c1_2_render["props"] - assert "min={`min2`}" in c1_2_render["props"] - assert "max={`max2`}" in c1_2_render["props"] - - class C2(Component): - tag = "C2" - - type_: Var[str] - min_: Var[str] - max_: Var[str] - - # No warnings are emitted if the actual prop has an underscore suffix - c2_1 = C2.create(type_="type1", min_="min1", max_="max1") - out_err = capsys.readouterr() - assert not out_err.err - assert not out_err.out - - c2_1_render = c2_1.render() - assert "type={`type1`}" in c2_1_render["props"] - assert "min={`min1`}" in c2_1_render["props"] - assert "max={`max1`}" in c2_1_render["props"] + assert 'renamed_prop1={"prop1_2"}' in rendered_c2["props"] + assert 'subclass_prop2={"prop2_2"}' in rendered_c2["props"] + assert 'renamed_prop3={"prop3_2"}' in rendered_c2["props"] def test_custom_component_get_imports(): @@ -2008,11 +2065,11 @@ def test_add_style_embedded_vars(test_state: BaseState): Args: test_state: A test state. """ - v0 = Var.create_safe("parent")._replace( + v0 = LiteralVar.create("parent")._replace( merge_var_data=VarData(hooks={"useParent": None}), # type: ignore ) v1 = rx.color("plum", 10) - v2 = Var.create_safe("text")._replace( + v2 = LiteralVar.create("text")._replace( merge_var_data=VarData(hooks={"useText": None}), # type: ignore ) @@ -2045,7 +2102,7 @@ def test_add_style_embedded_vars(test_state: BaseState): assert "useParent" in page._get_all_hooks_internal() assert ( str(page).count( - f'css={{{{"fakeParent": "parent", "color": "var(--plum-10)", "fake": "text", "margin": `${{{test_state.get_name()}.num}}%`}}}}' + f'css={{({{ ["fakeParent"] : "parent", ["color"] : "var(--plum-10)", ["fake"] : "text", ["margin"] : ({test_state.get_name()}.num+"%") }})}}' ) == 1 ) @@ -2066,10 +2123,10 @@ def test_add_style_foreach(): assert len(page.children[0].children) == 1 # Expect the style to be added to the child of the foreach - assert 'css={{"color": "red"}}' in str(page.children[0].children[0]) + assert 'css={({ ["color"] : "red" })}' in str(page.children[0].children[0]) # Expect only one instance of this CSS dict in the rendered page - assert str(page).count('css={{"color": "red"}}') == 1 + assert str(page).count('css={({ ["color"] : "red" })}') == 1 class TriggerState(rx.State): diff --git a/tests/components/test_component_state.py b/tests/components/test_component_state.py index 0dc0956e2..574997ba5 100644 --- a/tests/components/test_component_state.py +++ b/tests/components/test_component_state.py @@ -35,8 +35,8 @@ def test_component_state(): assert cs1.State.increment != cs2.State.increment assert len(cs1.children) == 1 - assert cs1.children[0].render() == Bare.create("{`a`}").render() + assert cs1.children[0].render() == Bare.create("a").render() assert cs1.id == "a" assert len(cs2.children) == 1 - assert cs2.children[0].render() == Bare.create("{`b`}").render() + assert cs2.children[0].render() == Bare.create("b").render() assert cs2.id == "b" diff --git a/tests/components/test_tag.py b/tests/components/test_tag.py index 2fb2f4563..d43f73842 100644 --- a/tests/components/test_tag.py +++ b/tests/components/test_tag.py @@ -3,6 +3,7 @@ from typing import Dict, List import pytest from reflex.components.tags import CondTag, Tag, tagless +from reflex.ivars.base import LiteralVar from reflex.vars import BaseVar, Var @@ -12,8 +13,8 @@ from reflex.vars import BaseVar, Var ({}, []), ({"key-hypen": 1}, ["key-hypen={1}"]), ({"key": 1}, ["key={1}"]), - ({"key": "value"}, ["key={`value`}"]), - ({"key": True, "key2": "value2"}, ["key={true}", "key2={`value2`}"]), + ({"key": "value"}, ['key={"value"}']), + ({"key": True, "key2": "value2"}, ["key={true}", 'key2={"value2"}']), ], ) def test_format_props(props: Dict[str, Var], test_props: List): @@ -53,8 +54,8 @@ def test_is_valid_prop(prop: Var, valid: bool): def test_add_props(): """Test that the props are added.""" tag = Tag().add_props(key="value", key2=42, invalid=None, invalid2={}) - assert tag.props["key"].equals(Var.create("value")) - assert tag.props["key2"].equals(Var.create(42)) + assert tag.props["key"].equals(LiteralVar.create("value")) + assert tag.props["key2"].equals(LiteralVar.create(42)) assert "invalid" not in tag.props assert "invalid2" not in tag.props @@ -102,7 +103,7 @@ def test_format_tag(tag: Tag, expected: Dict): assert tag_dict["name"] == expected["name"] assert tag_dict["contents"] == expected["contents"] for prop, prop_value in tag_dict["props"].items(): - assert prop_value.equals(Var.create_safe(expected["props"][prop])) + assert prop_value.equals(LiteralVar.create(expected["props"][prop])) def test_format_cond_tag(): diff --git a/tests/test_app.py b/tests/test_app.py index 17afd2bb7..f933149f1 100644 --- a/tests/test_app.py +++ b/tests/test_app.py @@ -42,6 +42,7 @@ from reflex.state import ( OnLoadInternalState, RouterData, State, + StateManagerDisk, StateManagerMemory, StateManagerRedis, StateUpdate, @@ -1252,7 +1253,7 @@ def test_app_wrap_compile_theme(compilable_app: tuple[App, Path]): "function AppWrap({children}) {" "return (" "" - "" + "" "" "{children}" "" @@ -1395,7 +1396,9 @@ def test_app_state_manager(): app.state_manager app._enable_state() assert app.state_manager is not None - assert isinstance(app.state_manager, (StateManagerMemory, StateManagerRedis)) + assert isinstance( + app.state_manager, (StateManagerMemory, StateManagerDisk, StateManagerRedis) + ) def test_generate_component(): @@ -1434,16 +1437,16 @@ def test_add_page_component_returning_tuple(): assert isinstance((fragment_wrapper := app.pages["index"].children[0]), Fragment) assert isinstance((first_text := fragment_wrapper.children[0]), Text) - assert str(first_text.children[0].contents) == "{`first`}" # type: ignore + assert str(first_text.children[0].contents) == '"first"' # type: ignore assert isinstance((second_text := fragment_wrapper.children[1]), Text) - assert str(second_text.children[0].contents) == "{`second`}" # type: ignore + assert str(second_text.children[0].contents) == '"second"' # type: ignore # Test page with trailing comma. assert isinstance( (page2_fragment_wrapper := app.pages["page2"].children[0]), Fragment ) assert isinstance((third_text := page2_fragment_wrapper.children[0]), Text) - assert str(third_text.children[0].contents) == "{`third`}" # type: ignore + assert str(third_text.children[0].contents) == '"third"' # type: ignore @pytest.mark.parametrize("export", (True, False)) diff --git a/tests/test_attribute_access_type.py b/tests/test_attribute_access_type.py index 0813a5e62..0d490ec1e 100644 --- a/tests/test_attribute_access_type.py +++ b/tests/test_attribute_access_type.py @@ -94,6 +94,15 @@ class SQLAClass(SQLABase): """ return self.name + @hybrid_property + def first_label(self) -> Optional[SQLALabel]: + """First label property. + + Returns: + First label + """ + return self.labels[0] if self.labels else None + class ModelClass(rx.Model): """Test reflex model.""" @@ -125,6 +134,15 @@ class ModelClass(rx.Model): """ return self.name + @property + def first_label(self) -> Optional[SQLALabel]: + """First label property. + + Returns: + First label + """ + return self.labels[0] if self.labels else None + class BaseClass(rx.Base): """Test rx.Base class.""" @@ -156,6 +174,15 @@ class BaseClass(rx.Base): """ return self.name + @property + def first_label(self) -> Optional[SQLALabel]: + """First label property. + + Returns: + First label + """ + return self.labels[0] if self.labels else None + class BareClass: """Bare python class.""" @@ -187,6 +214,15 @@ class BareClass: """ return self.name + @property + def first_label(self) -> Optional[SQLALabel]: + """First label property. + + Returns: + First label + """ + return self.labels[0] if self.labels else None + @attrs.define class AttrClass: @@ -219,6 +255,15 @@ class AttrClass: """ return self.name + @property + def first_label(self) -> Optional[SQLALabel]: + """First label property. + + Returns: + First label + """ + return self.labels[0] if self.labels else None + @pytest.fixture( params=[ @@ -254,6 +299,7 @@ def cls(request: pytest.FixtureRequest) -> type: pytest.param("dict_str_str", Dict[str, str], id="Dict[str, str]"), pytest.param("str_property", str, id="str_property"), pytest.param("str_or_int_property", Union[str, int], id="str_or_int_property"), + pytest.param("first_label", Optional[SQLALabel], id="first_label"), ], ) def test_get_attribute_access_type(cls: type, attr: str, expected: GenericType) -> None: diff --git a/tests/test_event.py b/tests/test_event.py index 284542a43..a484e0a3c 100644 --- a/tests/test_event.py +++ b/tests/test_event.py @@ -1,10 +1,10 @@ -import json from typing import List import pytest from reflex import event from reflex.event import Event, EventHandler, EventSpec, call_event_handler, fix_events +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.state import BaseState from reflex.utils import format from reflex.vars import Var @@ -70,7 +70,7 @@ def test_call_event_handler(): event_spec = handler("first", "second") # type: ignore assert ( format.format_event(event_spec) - == 'Event("test_fn_with_args", {arg1:`first`,arg2:`second`})' + == 'Event("test_fn_with_args", {arg1:"first",arg2:"second"})' ) first, second = 123, "456" @@ -78,14 +78,14 @@ def test_call_event_handler(): event_spec = handler(first, second) # type: ignore assert ( format.format_event(event_spec) - == 'Event("test_fn_with_args", {arg1:123,arg2:`456`})' + == 'Event("test_fn_with_args", {arg1:123,arg2:"456"})' ) assert event_spec.handler == handler assert event_spec.args[0][0].equals(Var.create_safe("arg1")) assert event_spec.args[0][1].equals(Var.create_safe(first)) assert event_spec.args[1][0].equals(Var.create_safe("arg2")) - assert event_spec.args[1][1].equals(Var.create_safe(second)) + assert event_spec.args[1][1].equals(LiteralVar.create(second)) handler = EventHandler(fn=test_fn_with_args) with pytest.raises(TypeError): @@ -160,15 +160,15 @@ def test_fix_events(arg1, arg2): [ ( ("/path", None, None), - 'Event("_redirect", {path:`/path`,external:false,replace:false})', + 'Event("_redirect", {path:"/path",external:false,replace:false})', ), ( ("/path", True, None), - 'Event("_redirect", {path:`/path`,external:true,replace:false})', + 'Event("_redirect", {path:"/path",external:true,replace:false})', ), ( ("/path", False, None), - 'Event("_redirect", {path:`/path`,external:false,replace:false})', + 'Event("_redirect", {path:"/path",external:false,replace:false})', ), ( (Var.create_safe("path"), None, None), @@ -176,11 +176,11 @@ def test_fix_events(arg1, arg2): ), ( ("/path", None, True), - 'Event("_redirect", {path:`/path`,external:false,replace:true})', + 'Event("_redirect", {path:"/path",external:false,replace:true})', ), ( ("/path", True, True), - 'Event("_redirect", {path:`/path`,external:true,replace:true})', + 'Event("_redirect", {path:"/path",external:true,replace:true})', ), ], ) @@ -213,10 +213,10 @@ def test_event_console_log(): spec = event.console_log("message") assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_console" - assert spec.args[0][0].equals(Var.create_safe("message")) - assert spec.args[0][1].equals(Var.create_safe("message")) - assert format.format_event(spec) == 'Event("_console", {message:`message`})' - spec = event.console_log(Var.create_safe("message")) + assert spec.args[0][0].equals(ImmutableVar(_var_name="message", _var_type=str)) + assert spec.args[0][1].equals(LiteralVar.create("message")) + assert format.format_event(spec) == 'Event("_console", {message:"message"})' + spec = event.console_log(ImmutableVar.create_safe("message")) assert format.format_event(spec) == 'Event("_console", {message:message})' @@ -225,10 +225,10 @@ def test_event_window_alert(): spec = event.window_alert("message") assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_alert" - assert spec.args[0][0].equals(Var.create_safe("message")) - assert spec.args[0][1].equals(Var.create_safe("message")) - assert format.format_event(spec) == 'Event("_alert", {message:`message`})' - spec = event.window_alert(Var.create_safe("message")) + assert spec.args[0][0].equals(ImmutableVar(_var_name="message", _var_type=str)) + assert spec.args[0][1].equals(LiteralVar.create("message")) + assert format.format_event(spec) == 'Event("_alert", {message:"message"})' + spec = event.window_alert(ImmutableVar.create_safe("message")) assert format.format_event(spec) == 'Event("_alert", {message:message})' @@ -238,10 +238,10 @@ def test_set_focus(): assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_set_focus" assert spec.args[0][0].equals(Var.create_safe("ref")) - assert spec.args[0][1].equals(Var.create_safe("ref_input1")) - assert format.format_event(spec) == 'Event("_set_focus", {ref:`ref_input1`})' + assert spec.args[0][1].equals(LiteralVar.create("ref_input1")) + assert format.format_event(spec) == 'Event("_set_focus", {ref:"ref_input1"})' spec = event.set_focus("input1") - assert format.format_event(spec) == 'Event("_set_focus", {ref:`ref_input1`})' + assert format.format_event(spec) == 'Event("_set_focus", {ref:"ref_input1"})' def test_set_value(): @@ -250,16 +250,16 @@ def test_set_value(): assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_set_value" assert spec.args[0][0].equals(Var.create_safe("ref")) - assert spec.args[0][1].equals(Var.create_safe("ref_input1")) + assert spec.args[0][1].equals(LiteralVar.create("ref_input1")) assert spec.args[1][0].equals(Var.create_safe("value")) - assert spec.args[1][1].equals(Var.create_safe("")) + assert spec.args[1][1].equals(LiteralVar.create("")) assert ( - format.format_event(spec) == 'Event("_set_value", {ref:`ref_input1`,value:``})' + format.format_event(spec) == 'Event("_set_value", {ref:"ref_input1",value:""})' ) - spec = event.set_value("input1", Var.create_safe("message")) + spec = event.set_value("input1", ImmutableVar.create_safe("message")) assert ( format.format_event(spec) - == 'Event("_set_value", {ref:`ref_input1`,value:message})' + == 'Event("_set_value", {ref:"ref_input1",value:message})' ) @@ -269,12 +269,12 @@ def test_remove_cookie(): assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_remove_cookie" assert spec.args[0][0].equals(Var.create_safe("key")) - assert spec.args[0][1].equals(Var.create_safe("testkey")) + assert spec.args[0][1].equals(LiteralVar.create("testkey")) assert spec.args[1][0].equals(Var.create_safe("options")) - assert spec.args[1][1].equals(Var.create_safe({"path": "/"})) + assert spec.args[1][1].equals(LiteralVar.create({"path": "/"})) assert ( format.format_event(spec) - == 'Event("_remove_cookie", {key:`testkey`,options:{"path": "/"}})' + == 'Event("_remove_cookie", {key:"testkey",options:({ ["path"] : "/" })})' ) @@ -290,12 +290,12 @@ def test_remove_cookie_with_options(): assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_remove_cookie" assert spec.args[0][0].equals(Var.create_safe("key")) - assert spec.args[0][1].equals(Var.create_safe("testkey")) + assert spec.args[0][1].equals(LiteralVar.create("testkey")) assert spec.args[1][0].equals(Var.create_safe("options")) - assert spec.args[1][1].equals(Var.create_safe(options)) + assert spec.args[1][1].equals(LiteralVar.create(options)) assert ( format.format_event(spec) - == f'Event("_remove_cookie", {{key:`testkey`,options:{json.dumps(options)}}})' + == f'Event("_remove_cookie", {{key:"testkey",options:{str(LiteralVar.create(options))}}})' ) @@ -314,9 +314,9 @@ def test_remove_local_storage(): assert isinstance(spec, EventSpec) assert spec.handler.fn.__qualname__ == "_remove_local_storage" assert spec.args[0][0].equals(Var.create_safe("key")) - assert spec.args[0][1].equals(Var.create_safe("testkey")) + assert spec.args[0][1].equals(LiteralVar.create("testkey")) assert ( - format.format_event(spec) == 'Event("_remove_local_storage", {key:`testkey`})' + format.format_event(spec) == 'Event("_remove_local_storage", {key:"testkey"})' ) diff --git a/tests/test_health_endpoint.py b/tests/test_health_endpoint.py new file mode 100644 index 000000000..fe350266f --- /dev/null +++ b/tests/test_health_endpoint.py @@ -0,0 +1,106 @@ +import json +from unittest.mock import MagicMock, Mock + +import pytest +import sqlalchemy +from redis.exceptions import RedisError + +from reflex.app import health +from reflex.model import get_db_status +from reflex.utils.prerequisites import get_redis_status + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "mock_redis_client, expected_status", + [ + # Case 1: Redis client is available and responds to ping + (Mock(ping=lambda: None), True), + # Case 2: Redis client raises RedisError + (Mock(ping=lambda: (_ for _ in ()).throw(RedisError)), False), + # Case 3: Redis client is not used + (None, None), + ], +) +async def test_get_redis_status(mock_redis_client, expected_status, mocker): + # Mock the `get_redis_sync` function to return the mock Redis client + mock_get_redis_sync = mocker.patch( + "reflex.utils.prerequisites.get_redis_sync", return_value=mock_redis_client + ) + + # Call the function + status = await get_redis_status() + + # Verify the result + assert status == expected_status + mock_get_redis_sync.assert_called_once() + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "mock_engine, execute_side_effect, expected_status", + [ + # Case 1: Database is accessible + (MagicMock(), None, True), + # Case 2: Database connection error (OperationalError) + ( + MagicMock(), + sqlalchemy.exc.OperationalError("error", "error", "error"), + False, + ), + ], +) +async def test_get_db_status(mock_engine, execute_side_effect, expected_status, mocker): + # Mock get_engine to return the mock_engine + mock_get_engine = mocker.patch("reflex.model.get_engine", return_value=mock_engine) + + # Mock the connection and its execute method + if mock_engine: + mock_connection = mock_engine.connect.return_value.__enter__.return_value + if execute_side_effect: + # Simulate execute method raising an exception + mock_connection.execute.side_effect = execute_side_effect + else: + # Simulate successful execute call + mock_connection.execute.return_value = None + + # Call the function + status = await get_db_status() + + # Verify the result + assert status == expected_status + mock_get_engine.assert_called_once() + + +@pytest.mark.asyncio +@pytest.mark.parametrize( + "db_status, redis_status, expected_status, expected_code", + [ + # Case 1: Both services are connected + (True, True, {"status": True, "db": True, "redis": True}, 200), + # Case 2: Database not connected, Redis connected + (False, True, {"status": False, "db": False, "redis": True}, 503), + # Case 3: Database connected, Redis not connected + (True, False, {"status": False, "db": True, "redis": False}, 503), + # Case 4: Both services not connected + (False, False, {"status": False, "db": False, "redis": False}, 503), + # Case 5: Database Connected, Redis not used + (True, None, {"status": True, "db": True, "redis": False}, 200), + ], +) +async def test_health(db_status, redis_status, expected_status, expected_code, mocker): + # Mock get_db_status and get_redis_status + mocker.patch("reflex.app.get_db_status", return_value=db_status) + mocker.patch( + "reflex.utils.prerequisites.get_redis_status", return_value=redis_status + ) + + # Call the async health function + response = await health() + + print(json.loads(response.body)) + print(expected_status) + + # Verify the response content and status code + assert response.status_code == expected_code + assert json.loads(response.body) == expected_status diff --git a/tests/test_state.py b/tests/test_state.py index 1a014739d..ba8fc592f 100644 --- a/tests/test_state.py +++ b/tests/test_state.py @@ -31,6 +31,7 @@ from reflex.state import ( RouterData, State, StateManager, + StateManagerDisk, StateManagerMemory, StateManagerRedis, StateProxy, @@ -40,7 +41,7 @@ from reflex.state import ( from reflex.testing import chdir from reflex.utils import format, prerequisites, types from reflex.utils.format import json_dumps -from reflex.vars import BaseVar, ComputedVar +from reflex.vars import BaseVar, ComputedVar, Var from tests.states.mutation import MutableSQLAModel, MutableTestState from .states import GenState @@ -266,8 +267,8 @@ def test_base_class_vars(test_state): if field in test_state.get_skip_vars(): continue prop = getattr(cls, field) - assert isinstance(prop, BaseVar) - assert prop._var_name == field + assert isinstance(prop, Var) + assert prop._var_name.split(".")[-1] == field assert cls.num1._var_type == int assert cls.num2._var_type == float @@ -395,30 +396,27 @@ def test_default_setters(test_state): def test_class_indexing_with_vars(): """Test that we can index into a state var with another var.""" prop = TestState.array[TestState.num1] - assert ( - str(prop) == f"{{{TestState.get_name()}.array.at({TestState.get_name()}.num1)}}" - ) + assert str(prop) == f"{TestState.get_name()}.array.at({TestState.get_name()}.num1)" prop = TestState.mapping["a"][TestState.num1] assert ( str(prop) - == f'{{{TestState.get_name()}.mapping["a"].at({TestState.get_name()}.num1)}}' + == f'{TestState.get_name()}.mapping["a"].at({TestState.get_name()}.num1)' ) prop = TestState.mapping[TestState.map_key] assert ( - str(prop) - == f"{{{TestState.get_name()}.mapping[{TestState.get_name()}.map_key]}}" + str(prop) == f"{TestState.get_name()}.mapping[{TestState.get_name()}.map_key]" ) def test_class_attributes(): """Test that we can get class attributes.""" prop = TestState.obj.prop1 - assert str(prop) == f"{{{TestState.get_name()}.obj.prop1}}" + assert str(prop) == f'{TestState.get_name()}.obj["prop1"]' prop = TestState.complex[1].prop1 - assert str(prop) == f"{{{TestState.get_name()}.complex[1].prop1}}" + assert str(prop) == f'{TestState.get_name()}.complex[1]["prop1"]' def test_get_parent_state(): @@ -1064,7 +1062,8 @@ def test_dirty_computed_var_from_backend_var( Args: interdependent_state: A state with varying Var dependencies. """ - assert InterdependentState._v3._backend is True + # Accessing ._v3 returns the immutable var it represents instead of the actual computed var + # assert InterdependentState._v3._backend is True interdependent_state._v2 = 2 assert interdependent_state.get_delta() == { interdependent_state.get_full_name(): {"v2x2": 4, "v3x2": 4}, @@ -1588,7 +1587,7 @@ async def test_state_with_invalid_yield(capsys, mock_app): assert "must only return/yield: None, Events or other EventHandlers" in captured.out -@pytest.fixture(scope="function", params=["in_process", "redis"]) +@pytest.fixture(scope="function", params=["in_process", "disk", "redis"]) def state_manager(request) -> Generator[StateManager, None, None]: """Instance of state manager parametrized for redis and in-process. @@ -1602,8 +1601,11 @@ def state_manager(request) -> Generator[StateManager, None, None]: if request.param == "redis": if not isinstance(state_manager, StateManagerRedis): pytest.skip("Test requires redis") - else: + elif request.param == "disk": # explicitly NOT using redis + state_manager = StateManagerDisk(state=TestState) + assert not state_manager._states_locks + else: state_manager = StateManagerMemory(state=TestState) assert not state_manager._states_locks @@ -1641,7 +1643,7 @@ async def test_state_manager_modify_state( async with state_manager.modify_state(substate_token) as state: if isinstance(state_manager, StateManagerRedis): assert await state_manager.redis.get(f"{token}_lock") - elif isinstance(state_manager, StateManagerMemory): + elif isinstance(state_manager, (StateManagerMemory, StateManagerDisk)): assert token in state_manager._states_locks assert state_manager._states_locks[token].locked() # Should be able to write proxy objects inside mutables @@ -1651,11 +1653,11 @@ async def test_state_manager_modify_state( # lock should be dropped after exiting the context if isinstance(state_manager, StateManagerRedis): assert (await state_manager.redis.get(f"{token}_lock")) is None - elif isinstance(state_manager, StateManagerMemory): + elif isinstance(state_manager, (StateManagerMemory, StateManagerDisk)): assert not state_manager._states_locks[token].locked() # separate instances should NOT share locks - sm2 = StateManagerMemory(state=TestState) + sm2 = state_manager.__class__(state=TestState) assert sm2._state_manager_lock is state_manager._state_manager_lock assert not sm2._states_locks if state_manager._states_locks: @@ -1693,7 +1695,7 @@ async def test_state_manager_contend( if isinstance(state_manager, StateManagerRedis): assert (await state_manager.redis.get(f"{token}_lock")) is None - elif isinstance(state_manager, StateManagerMemory): + elif isinstance(state_manager, (StateManagerMemory, StateManagerDisk)): assert token in state_manager._states_locks assert not state_manager._states_locks[token].locked() @@ -1833,7 +1835,7 @@ async def test_state_proxy(grandchild_state: GrandchildState, mock_app: rx.App): assert child_state is not None parent_state = child_state.parent_state assert parent_state is not None - if isinstance(mock_app.state_manager, StateManagerMemory): + if isinstance(mock_app.state_manager, (StateManagerMemory, StateManagerDisk)): mock_app.state_manager.states[parent_state.router.session.client_token] = ( parent_state ) @@ -1876,7 +1878,7 @@ async def test_state_proxy(grandchild_state: GrandchildState, mock_app: rx.App): # For in-process store, only one instance of the state exists assert sp.__wrapped__ is grandchild_state else: - # When redis is used, a new+updated instance is assigned to the proxy + # When redis or disk is used, a new+updated instance is assigned to the proxy assert sp.__wrapped__ is not grandchild_state sp.value2 = "42" assert not sp._self_mutable # proxy is not mutable after exiting context @@ -2604,15 +2606,23 @@ def test_state_union_optional(): c3r: Custom3 = Custom3(c2r=Custom2(c1r=Custom1(foo=""))) custom_union: Union[Custom1, Custom2, Custom3] = Custom1(foo="") - assert UnionState.c3.c2._var_name == "c3?.c2" # type: ignore - assert UnionState.c3.c2.c1._var_name == "c3?.c2?.c1" # type: ignore - assert UnionState.c3.c2.c1.foo._var_name == "c3?.c2?.c1?.foo" # type: ignore - assert UnionState.c3.c2.c1r.foo._var_name == "c3?.c2?.c1r.foo" # type: ignore - assert UnionState.c3.c2r.c1._var_name == "c3?.c2r.c1" # type: ignore - assert UnionState.c3.c2r.c1.foo._var_name == "c3?.c2r.c1?.foo" # type: ignore - assert UnionState.c3.c2r.c1r.foo._var_name == "c3?.c2r.c1r.foo" # type: ignore - assert UnionState.c3i.c2._var_name == "c3i.c2" # type: ignore - assert UnionState.c3r.c2._var_name == "c3r.c2" # type: ignore + assert str(UnionState.c3.c2) == f'{str(UnionState.c3)}?.["c2"]' # type: ignore + assert str(UnionState.c3.c2.c1) == f'{str(UnionState.c3)}?.["c2"]?.["c1"]' # type: ignore + assert ( + str(UnionState.c3.c2.c1.foo) == f'{str(UnionState.c3)}?.["c2"]?.["c1"]?.["foo"]' # type: ignore + ) + assert ( + str(UnionState.c3.c2.c1r.foo) == f'{str(UnionState.c3)}?.["c2"]?.["c1r"]["foo"]' # type: ignore + ) + assert str(UnionState.c3.c2r.c1) == f'{str(UnionState.c3)}?.["c2r"]["c1"]' # type: ignore + assert ( + str(UnionState.c3.c2r.c1.foo) == f'{str(UnionState.c3)}?.["c2r"]["c1"]?.["foo"]' # type: ignore + ) + assert ( + str(UnionState.c3.c2r.c1r.foo) == f'{str(UnionState.c3)}?.["c2r"]["c1r"]["foo"]' # type: ignore + ) + assert str(UnionState.c3i.c2) == f'{str(UnionState.c3i)}["c2"]' # type: ignore + assert str(UnionState.c3r.c2) == f'{str(UnionState.c3r)}["c2"]' # type: ignore assert UnionState.custom_union.foo is not None # type: ignore assert UnionState.custom_union.c1 is not None # type: ignore assert UnionState.custom_union.c1r is not None # type: ignore @@ -2831,7 +2841,7 @@ async def test_get_state(mock_app: rx.App, token: str): _substate_key(token, ChildState2) ) assert isinstance(test_state, TestState) - if isinstance(mock_app.state_manager, StateManagerMemory): + if isinstance(mock_app.state_manager, (StateManagerMemory, StateManagerDisk)): # All substates are available assert tuple(sorted(test_state.substates)) == ( ChildState.get_name(), @@ -2910,6 +2920,15 @@ async def test_get_state(mock_app: rx.App, token: str): ChildState2.get_name(), ChildState3.get_name(), ) + elif isinstance(mock_app.state_manager, StateManagerDisk): + # On disk, it's a new instance + assert new_test_state is not test_state + # All substates are available + assert tuple(sorted(new_test_state.substates)) == ( + ChildState.get_name(), + ChildState2.get_name(), + ChildState3.get_name(), + ) else: # With redis, we get a whole new instance assert new_test_state is not test_state diff --git a/tests/test_style.py b/tests/test_style.py index 825d72a9d..8fa443cdf 100644 --- a/tests/test_style.py +++ b/tests/test_style.py @@ -1,18 +1,19 @@ from __future__ import annotations -from typing import Any +from typing import Any, Dict import pytest import reflex as rx from reflex import style from reflex.components.component import evaluate_style_namespaces +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style -from reflex.vars import Var, VarData +from reflex.vars import ImmutableVarData, Var, VarData test_style = [ ({"a": 1}, {"a": 1}), - ({"a": Var.create("abc")}, {"a": "abc"}), + ({"a": LiteralVar.create("abc")}, {"a": "abc"}), ({"test_case": 1}, {"testCase": 1}), ({"test_case": {"a": 1}}, {"testCase": {"a": 1}}), ({":test_case": {"a": 1}}, {":testCase": {"a": 1}}), @@ -21,8 +22,8 @@ test_style = [ {"::-webkit-scrollbar": {"display": "none"}}, {"::-webkit-scrollbar": {"display": "none"}}, ), - ({"margin_y": "2rem"}, {"marginBottom": "2rem", "marginTop": "2rem"}), - ({"marginY": "2rem"}, {"marginBottom": "2rem", "marginTop": "2rem"}), + ({"margin_y": "2rem"}, {"marginTop": "2rem", "marginBottom": "2rem"}), + ({"marginY": "2rem"}, {"marginTop": "2rem", "marginBottom": "2rem"}), ( {"::-webkit-scrollbar": {"bgColor": "red"}}, {"::-webkit-scrollbar": {"backgroundColor": "red"}}, @@ -49,7 +50,7 @@ def test_convert(style_dict, expected): expected: The expected formatted style. """ converted_dict, _var_data = style.convert(style_dict) - assert converted_dict == expected + assert LiteralVar.create(converted_dict).equals(LiteralVar.create(expected)) @pytest.mark.parametrize( @@ -63,7 +64,9 @@ def test_create_style(style_dict, expected): style_dict: The style to check. expected: The expected formatted style. """ - assert style.Style(style_dict) == expected + assert LiteralVar.create(style.Style(style_dict)).equals( + LiteralVar.create(expected) + ) def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): @@ -87,39 +90,47 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): @pytest.mark.parametrize( ("kwargs", "style_dict", "expected_get_style"), [ - ({}, {}, {"css": None}), - ({"color": "hotpink"}, {}, {"css": Var.create(Style({"color": "hotpink"}))}), - ({}, {"color": "red"}, {"css": Var.create(Style({"color": "red"}))}), + ({}, {}, {}), + ( + {"color": "hotpink"}, + {}, + {"css": LiteralVar.create(Style({"color": "hotpink"}))}, + ), + ({}, {"color": "red"}, {"css": LiteralVar.create(Style({"color": "red"}))}), ( {"color": "hotpink"}, {"color": "red"}, - {"css": Var.create(Style({"color": "hotpink"}))}, + {"css": LiteralVar.create(Style({"color": "hotpink"}))}, ), ( {"_hover": {"color": "hotpink"}}, {}, - {"css": Var.create(Style({"&:hover": {"color": "hotpink"}}))}, + {"css": LiteralVar.create(Style({"&:hover": {"color": "hotpink"}}))}, ), ( {}, {"_hover": {"color": "red"}}, - {"css": Var.create(Style({"&:hover": {"color": "red"}}))}, + {"css": LiteralVar.create(Style({"&:hover": {"color": "red"}}))}, ), ( {}, {":hover": {"color": "red"}}, - {"css": Var.create(Style({"&:hover": {"color": "red"}}))}, + {"css": LiteralVar.create(Style({"&:hover": {"color": "red"}}))}, ), ( {}, {"::-webkit-scrollbar": {"display": "none"}}, - {"css": Var.create(Style({"&::-webkit-scrollbar": {"display": "none"}}))}, + { + "css": LiteralVar.create( + Style({"&::-webkit-scrollbar": {"display": "none"}}) + ) + }, ), ( {}, {"::-moz-progress-bar": {"background_color": "red"}}, { - "css": Var.create( + "css": LiteralVar.create( Style({"&::-moz-progress-bar": {"backgroundColor": "red"}}) ) }, @@ -128,7 +139,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): {"color": ["#111", "#222", "#333", "#444", "#555"]}, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "@media screen and (min-width: 0)": {"color": "#111"}, @@ -148,7 +159,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): }, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "@media screen and (min-width: 0)": {"color": "#111"}, @@ -169,7 +180,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): }, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "@media screen and (min-width: 0)": { @@ -209,7 +220,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): }, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -236,7 +247,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): {"_hover": {"color": ["#111", "#222", "#333", "#444", "#555"]}}, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -268,7 +279,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): }, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -307,7 +318,7 @@ def compare_dict_of_var(d1: dict[str, Any], d2: dict[str, Any]): }, {}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -361,20 +372,20 @@ class StyleState(rx.State): [ ( {"color": StyleState.color}, - {"css": Var.create(Style({"color": StyleState.color}))}, + {"css": LiteralVar.create(Style({"color": StyleState.color}))}, ), ( {"color": f"dark{StyleState.color}"}, { - "css": Var.create_safe(f'{{"color": `dark{StyleState.color}`}}').to( - Style - ) + "css": ImmutableVar.create_safe( + f'({{ ["color"] : ("dark"+{StyleState.color}) }})' + ).to(Dict[str, str]) }, ), ( {"color": StyleState.color, "_hover": {"color": StyleState.color2}}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "color": StyleState.color, @@ -387,7 +398,7 @@ class StyleState(rx.State): ( {"color": [StyleState.color, "gray", StyleState.color2, "yellow", "blue"]}, { - "css": Var.create( + "css": LiteralVar.create( Style( { "@media screen and (min-width: 0)": { @@ -415,7 +426,7 @@ class StyleState(rx.State): ] }, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -453,7 +464,7 @@ class StyleState(rx.State): } }, { - "css": Var.create( + "css": LiteralVar.create( Style( { "&:hover": { @@ -492,7 +503,10 @@ def test_style_via_component_with_state( """ comp = rx.el.div(**kwargs) - assert comp.style._var_data == expected_get_style["css"]._var_data + assert ( + ImmutableVarData.merge(comp.style._var_data) + == expected_get_style["css"]._get_all_var_data() + ) # Assert that style values are equal. compare_dict_of_var(comp._get_style(), expected_get_style) @@ -507,10 +521,10 @@ def test_evaluate_style_namespaces(): def test_style_update_with_var_data(): """Test that .update with a Style containing VarData works.""" - red_var = Var.create_safe("red")._replace( + red_var = LiteralVar.create("red")._replace( merge_var_data=VarData(hooks={"const red = true": None}), # type: ignore ) - blue_var = Var.create_safe("blue", _var_is_local=False)._replace( + blue_var = LiteralVar.create("blue")._replace( merge_var_data=VarData(hooks={"const blue = true": None}), # type: ignore ) @@ -521,7 +535,9 @@ def test_style_update_with_var_data(): ) s2 = Style() s2.update(s1, background_color=f"{blue_var}ish") - assert s2 == {"color": "red", "backgroundColor": "`${blue}ish`"} + assert str(LiteralVar.create(s2)) == str( + LiteralVar.create({"color": "red", "backgroundColor": "blueish"}) + ) assert s2._var_data is not None assert "const red = true" in s2._var_data.hooks assert "const blue = true" in s2._var_data.hooks diff --git a/tests/test_var.py b/tests/test_var.py index 5c67d9924..ba9cf24c8 100644 --- a/tests/test_var.py +++ b/tests/test_var.py @@ -8,19 +8,20 @@ from pandas import DataFrame from reflex.base import Base from reflex.constants.base import REFLEX_VAR_CLOSING_TAG, REFLEX_VAR_OPENING_TAG -from reflex.experimental.vars.base import ( +from reflex.ivars.base import ( ImmutableVar, LiteralVar, var_operation, + var_operation_return, ) -from reflex.experimental.vars.function import ArgsFunctionOperation, FunctionStringVar -from reflex.experimental.vars.number import ( +from reflex.ivars.function import ArgsFunctionOperation, FunctionStringVar +from reflex.ivars.number import ( LiteralBooleanVar, LiteralNumberVar, NumberVar, ) -from reflex.experimental.vars.object import LiteralObjectVar -from reflex.experimental.vars.sequence import ( +from reflex.ivars.object import LiteralObjectVar +from reflex.ivars.sequence import ( ArrayVar, ConcatVarOperation, LiteralArrayVar, @@ -892,10 +893,10 @@ def test_literal_var(): def test_function_var(): - addition_func = FunctionStringVar("((a, b) => a + b)") + addition_func = FunctionStringVar.create("((a, b) => a + b)") assert str(addition_func.call(1, 2)) == "(((a, b) => a + b)(1, 2))" - manual_addition_func = ArgsFunctionOperation( + manual_addition_func = ArgsFunctionOperation.create( ("a", "b"), { "args": [ImmutableVar.create_safe("a"), ImmutableVar.create_safe("b")], @@ -913,26 +914,26 @@ def test_function_var(): == "(((...args) => ((((a, b) => a + b)(1, ...args))))(2))" ) - create_hello_statement = ArgsFunctionOperation( + create_hello_statement = ArgsFunctionOperation.create( ("name",), f"Hello, {ImmutableVar.create_safe('name')}!" ) - first_name = LiteralStringVar("Steven") - last_name = LiteralStringVar("Universe") + first_name = LiteralStringVar.create("Steven") + last_name = LiteralStringVar.create("Universe") assert ( str(create_hello_statement.call(f"{first_name} {last_name}")) - == '(((name) => (("Hello, "+name+"!")))(("Steven"+" "+"Universe")))' + == '(((name) => (("Hello, "+name+"!")))("Steven Universe"))' ) def test_var_operation(): - @var_operation(output=NumberVar) - def add(a: Union[NumberVar, int], b: Union[NumberVar, int]) -> str: - return f"({a} + {b})" + @var_operation + def add(a: Union[NumberVar, int], b: Union[NumberVar, int]): + return var_operation_return(js_expression=f"({a} + {b})", var_type=int) assert str(add(1, 2)) == "(1 + 2)" assert str(add(a=4, b=-9)) == "(4 + -9)" - five = LiteralNumberVar(5) + five = LiteralNumberVar.create(5) seven = add(2, five) assert isinstance(seven, NumberVar) @@ -952,7 +953,7 @@ def test_string_operations(): def test_all_number_operations(): - starting_number = LiteralNumberVar(-5.4) + starting_number = LiteralNumberVar.create(-5.4) complicated_number = (((-(starting_number + 1)) * 2 / 3) // 2 % 3) ** 2 @@ -967,19 +968,19 @@ def test_all_number_operations(): assert ( str(even_more_complicated_number) - == "!(((Math.abs(Math.floor(((Math.floor(((-((-5.4 + 1)) * 2) / 3) / 2) % 3) ** 2))) != 0) || (true && (Math.round(((Math.floor(((-((-5.4 + 1)) * 2) / 3) / 2) % 3) ** 2)) != 0))))" + == "!(((Math.abs(Math.floor(((Math.floor(((-((-5.4 + 1)) * 2) / 3) / 2) % 3) ** 2))) || (2 && Math.round(((Math.floor(((-((-5.4 + 1)) * 2) / 3) / 2) % 3) ** 2)))) !== 0))" ) - assert str(LiteralNumberVar(5) > False) == "(5 > 0)" - assert str(LiteralBooleanVar(False) < 5) == "((false ? 1 : 0) < 5)" + assert str(LiteralNumberVar.create(5) > False) == "(5 > 0)" + assert str(LiteralBooleanVar.create(False) < 5) == "(Number(false) < 5)" assert ( - str(LiteralBooleanVar(False) < LiteralBooleanVar(True)) - == "((false ? 1 : 0) < (true ? 1 : 0))" + str(LiteralBooleanVar.create(False) < LiteralBooleanVar.create(True)) + == "(Number(false) < Number(true))" ) def test_index_operation(): - array_var = LiteralArrayVar([1, 2, 3, 4, 5]) + array_var = LiteralArrayVar.create([1, 2, 3, 4, 5]) assert str(array_var[0]) == "[1, 2, 3, 4, 5].at(0)" assert str(array_var[1:2]) == "[1, 2, 3, 4, 5].slice(1, 2)" assert ( @@ -988,9 +989,9 @@ def test_index_operation(): ) assert ( str(array_var[::-1]) - == "[1, 2, 3, 4, 5].slice(0, [1, 2, 3, 4, 5].length).reverse().slice(undefined, undefined).filter((_, i) => i % 1 === 0)" + == "[1, 2, 3, 4, 5].slice(0, [1, 2, 3, 4, 5].length).slice().reverse().slice(undefined, undefined).filter((_, i) => i % 1 === 0)" ) - assert str(array_var.reverse()) == "[1, 2, 3, 4, 5].reverse()" + assert str(array_var.reverse()) == "[1, 2, 3, 4, 5].slice().reverse()" assert str(array_var[0].to(NumberVar) + 9) == "([1, 2, 3, 4, 5].at(0) + 9)" @@ -999,7 +1000,7 @@ def test_array_operations(): assert str(array_var.length()) == "[1, 2, 3, 4, 5].length" assert str(array_var.contains(3)) == "[1, 2, 3, 4, 5].includes(3)" - assert str(array_var.reverse()) == "[1, 2, 3, 4, 5].reverse()" + assert str(array_var.reverse()) == "[1, 2, 3, 4, 5].slice().reverse()" assert ( str(ArrayVar.range(10)) == "Array.from({ length: (10 - 0) / 1 }, (_, i) => 0 + i * 1)" @@ -1019,7 +1020,7 @@ def test_array_operations(): def test_object_operations(): - object_var = LiteralObjectVar({"a": 1, "b": 2, "c": 3}) + object_var = LiteralObjectVar.create({"a": 1, "b": 2, "c": 3}) assert ( str(object_var.keys()) == 'Object.keys(({ ["a"] : 1, ["b"] : 2, ["c"] : 3 }))' @@ -1035,13 +1036,13 @@ def test_object_operations(): assert str(object_var.a) == '({ ["a"] : 1, ["b"] : 2, ["c"] : 3 })["a"]' assert str(object_var["a"]) == '({ ["a"] : 1, ["b"] : 2, ["c"] : 3 })["a"]' assert ( - str(object_var.merge(LiteralObjectVar({"c": 4, "d": 5}))) - == 'Object.assign(({ ["a"] : 1, ["b"] : 2, ["c"] : 3 }), ({ ["c"] : 4, ["d"] : 5 }))' + str(object_var.merge(LiteralObjectVar.create({"c": 4, "d": 5}))) + == '({...({ ["a"] : 1, ["b"] : 2, ["c"] : 3 }), ...({ ["c"] : 4, ["d"] : 5 })})' ) def test_type_chains(): - object_var = LiteralObjectVar({"a": 1, "b": 2, "c": 3}) + object_var = LiteralObjectVar.create({"a": 1, "b": 2, "c": 3}) assert (object_var._key_type(), object_var._value_type()) == (str, int) assert (object_var.keys()._var_type, object_var.values()._var_type) == ( List[str], @@ -1062,7 +1063,7 @@ def test_type_chains(): def test_nested_dict(): - arr = LiteralArrayVar([{"bar": ["foo", "bar"]}], List[Dict[str, List[str]]]) + arr = LiteralArrayVar.create([{"bar": ["foo", "bar"]}], List[Dict[str, List[str]]]) assert ( str(arr[0]["bar"][0]) == '[({ ["bar"] : ["foo", "bar"] })].at(0)["bar"].at(0)' @@ -1720,8 +1721,8 @@ def test_invalid_var_operations(operand1_var: Var, operand2_var, operators: List f"{ATestState.get_full_name()}.value", ), ( - Var.create(f"{ATestState.value} string", _var_is_string=True), - f"`${{{ATestState.get_full_name()}.value}} string`", + LiteralVar.create(f"{ATestState.value} string"), + f'({ATestState.get_full_name()}.value+" string")', ), (Var.create(ATestState.dict_val), f"{ATestState.get_full_name()}.dict_val"), ], diff --git a/tests/utils/test_format.py b/tests/utils/test_format.py index 95ebc047b..4623f0fb2 100644 --- a/tests/utils/test_format.py +++ b/tests/utils/test_format.py @@ -8,6 +8,7 @@ import pytest from reflex.components.tags.tag import Tag from reflex.event import EventChain, EventHandler, EventSpec, FrontendEvent +from reflex.ivars.base import ImmutableVar, LiteralVar from reflex.style import Style from reflex.utils import format from reflex.utils.serializers import serialize_figure @@ -422,19 +423,19 @@ def test_format_cond( ( "state__state.value", [ - [Var.create(1), Var.create("red", _var_is_string=True)], - [Var.create(2), Var.create(3), Var.create("blue", _var_is_string=True)], + [LiteralVar.create(1), LiteralVar.create("red")], + [LiteralVar.create(2), LiteralVar.create(3), LiteralVar.create("blue")], [TestState.mapping, TestState.num1], [ - Var.create(f"{TestState.map_key}-key", _var_is_string=True), - Var.create("return-key", _var_is_string=True), + LiteralVar.create(f"{TestState.map_key}-key"), + LiteralVar.create("return-key"), ], ], - Var.create("yellow", _var_is_string=True), - "(() => { switch (JSON.stringify(state__state.value)) {case JSON.stringify(1): return (`red`); break;case JSON.stringify(2): case JSON.stringify(3): " - f"return (`blue`); break;case JSON.stringify({TestState.get_full_name()}.mapping): return " - f"({TestState.get_full_name()}.num1); break;case JSON.stringify(`${{{TestState.get_full_name()}.map_key}}-key`): return (`return-key`);" - " break;default: return (`yellow`); break;};})()", + LiteralVar.create("yellow"), + '(() => { switch (JSON.stringify(state__state.value)) {case JSON.stringify(1): return ("red"); break;case JSON.stringify(2): case JSON.stringify(3): ' + f'return ("blue"); break;case JSON.stringify({TestState.get_full_name()}.mapping): return ' + f'({TestState.get_full_name()}.num1); break;case JSON.stringify(({TestState.get_full_name()}.map_key+"-key")): return ("return-key");' + ' break;default: return ("yellow"); break;};})()', ) ], ) @@ -541,7 +542,7 @@ def test_format_match( { "h1": f"{{({{node, ...props}}) => }}" }, - '{{"h1": ({node, ...props}) => }}', + '{{"h1": ({node, ...props}) => }}', ), ], ) @@ -558,7 +559,11 @@ def test_format_prop(prop: Var, formatted: str): @pytest.mark.parametrize( "single_props,key_value_props,output", [ - (["string"], {"key": 42}, ["key={42}", "string"]), + ( + [ImmutableVar.create_safe("...props")], + {"key": 42}, + ["key={42}", "{...props}"], + ), ], ) def test_format_props(single_props, key_value_props, output):