From 894a01a5a5cb2c75622e6fdcf71caedd029d5810 Mon Sep 17 00:00:00 2001 From: Declan Brady <36574477+drbrady8800@users.noreply.github.com> Date: Tue, 11 Feb 2025 15:21:27 -0500 Subject: [PATCH] Add toast.loading from the sonner package (#4792) --- reflex/components/sonner/toast.py | 14 ++++++++++++++ reflex/components/sonner/toast.pyi | 3 +++ 2 files changed, 17 insertions(+) diff --git a/reflex/components/sonner/toast.py b/reflex/components/sonner/toast.py index dbac8e733..e215f356f 100644 --- a/reflex/components/sonner/toast.py +++ b/reflex/components/sonner/toast.py @@ -327,6 +327,19 @@ class Toaster(Component): """ return Toaster.send_toast(message, level="success", **kwargs) + @staticmethod + def toast_loading(message: str | Var = "", **kwargs: Any): + """Display a loading toast message. + + Args: + message: The message to display. + **kwargs: Additional toast props. + + Returns: + The toast event. + """ + return Toaster.send_toast(message, level="loading", **kwargs) + @staticmethod def toast_dismiss(id: Var | str | None = None): """Dismiss a toast. @@ -378,6 +391,7 @@ class ToastNamespace(ComponentNamespace): warning = staticmethod(Toaster.toast_warning) error = staticmethod(Toaster.toast_error) success = staticmethod(Toaster.toast_success) + loading = staticmethod(Toaster.toast_loading) dismiss = staticmethod(Toaster.toast_dismiss) __call__ = staticmethod(Toaster.send_toast) diff --git a/reflex/components/sonner/toast.pyi b/reflex/components/sonner/toast.pyi index cb12834d5..7ff0b9196 100644 --- a/reflex/components/sonner/toast.pyi +++ b/reflex/components/sonner/toast.pyi @@ -70,6 +70,8 @@ class Toaster(Component): @staticmethod def toast_success(message: str | Var = "", **kwargs: Any): ... @staticmethod + def toast_loading(message: str | Var = "", **kwargs: Any): ... + @staticmethod def toast_dismiss(id: Var | str | None = None): ... @overload @classmethod @@ -172,6 +174,7 @@ class ToastNamespace(ComponentNamespace): warning = staticmethod(Toaster.toast_warning) error = staticmethod(Toaster.toast_error) success = staticmethod(Toaster.toast_success) + loading = staticmethod(Toaster.toast_loading) dismiss = staticmethod(Toaster.toast_dismiss) @staticmethod