diff --git a/reflex/components/layout/cond.py b/reflex/components/layout/cond.py index bdf97036b..e9e3d22f8 100644 --- a/reflex/components/layout/cond.py +++ b/reflex/components/layout/cond.py @@ -24,7 +24,10 @@ class Cond(Component): @classmethod def create( - cls, cond: Var, comp1: Component, comp2: Optional[Component] + cls, + cond: Var, + comp1: Component, + comp2: Optional[Component] = None, ) -> Component: """Create a conditional component. diff --git a/reflex/components/overlay/banner.py b/reflex/components/overlay/banner.py index bac231e87..fd874f94b 100644 --- a/reflex/components/overlay/banner.py +++ b/reflex/components/overlay/banner.py @@ -4,7 +4,7 @@ from __future__ import annotations from typing import Optional from reflex.components.component import Component -from reflex.components.layout import Box, Cond, Fragment +from reflex.components.layout import Box, Cond from reflex.components.overlay.modal import Modal from reflex.components.typography import Text from reflex.vars import Var @@ -37,7 +37,7 @@ def default_connection_error() -> list[str | Var]: ] -class ConnectionBanner(Cond): +class ConnectionBanner(Component): """A connection banner component.""" @classmethod @@ -60,10 +60,10 @@ class ConnectionBanner(Cond): textAlign="center", ) - return super().create(has_connection_error, comp, Fragment.create()) # type: ignore + return Cond.create(has_connection_error, comp) -class ConnectionModal(Modal): +class ConnectionModal(Component): """A connection status modal window.""" @classmethod @@ -78,8 +78,11 @@ class ConnectionModal(Modal): """ if not comp: comp = Text.create(*default_connection_error()) - return super().create( - header="Connection Error", - body=comp, - is_open=has_connection_error, + return Cond.create( + has_connection_error, + Modal.create( + header="Connection Error", + body=comp, + is_open=has_connection_error, + ), ) diff --git a/reflex/components/overlay/banner.pyi b/reflex/components/overlay/banner.pyi index e53620d72..b6459b508 100644 --- a/reflex/components/overlay/banner.pyi +++ b/reflex/components/overlay/banner.pyi @@ -16,12 +16,12 @@ has_connection_error.type_ def default_connection_error() -> list[str | Var]: ... -class ConnectionBanner(Cond): +class ConnectionBanner(Component): @overload @classmethod def create(cls, *children, **props) -> "ConnectionBanner": ... # type: ignore -class ConnectionModal(Modal): +class ConnectionModal(Component): @overload @classmethod def create(cls, *children, **props) -> "ConnectionModal": ... # type: ignore