
* fully migrate vars into new system * i hate rufffff (no i don't) * fix silly pright issues (except colormode and state) * remove all instances of Var.create * create immutable callable var and get rid of more base vars * implement hash for all functions * get reflex-web to compile * get it to compile reflex-web successfully * fix tests * fix pyi * use override from typing_extension * put plotly inside of a catch * dicts are unusable sadly * fix silly mistake * overload equals to special case immutable var * improve test_cond * solve more CI issues, down to 94 failures * down to 20 errors * down to 13 errors * pass all testcases * fix pyright issues * reorder things * use get origin more * use fixed_type logic * various optimizations * go back to passing test cases * use less boilerplate * remove unnecessary print message * remove weird comment * add test for html issue * add type ignore * fix another silly issue * override get all var data for var operations call * make integration tests pass * fix immutable call var * better logic for finding parent class * use even better logic for finding state wrt computedvar * only choose the ones that are defined in the same module * small dict to large dict * [REF-3591] Remove chakra-related files from immutable vars PR (#3821) * Add comments to html metadata component (#3731) * fix: add verification for path /404 (#3723) Co-authored-by: coolstorm <manas.gupta@fampay.in> * Use the new state name when setting `is_hydrated` to false (#3738) * Use `._is_mutable()` to account for parent state proxy (#3739) When a parent state proxy is set, also allow child StateProxy._self_mutable to override the parent's `_is_mutable()`. * bump to 0.5.9 (#3746) * add message when installing requirements.txt is needed for chosen template during init (#3750) * #3752 bugfix add domain for XAxis (#3764) * fix appharness app_source typing (#3777) * fix import clash between connectionToaster and hooks.useState (#3749) * use different registry when in china, fixes #3700 (#3702) * do not reload compilation if using local app in AppHarness (#3790) * do not reload if using local app * Update reflex/testing.py Co-authored-by: Masen Furer <m_github@0x26.net> --------- Co-authored-by: Masen Furer <m_github@0x26.net> * Bump memory on relevant actions (#3781) Co-authored-by: Alek Petuskey <alekpetuskey@Aleks-MacBook-Pro.local> * [REF-3334] Validate Toast Props (#3793) * [REF-3536][REF-3537][REF-3541] Move chakra components into its repo(reflex-chakra) (#3798) * fix get_uuid_string_var (#3795) * minor State cleanup (#3768) * Fix code wrap in markdown (#3755) --------- Co-authored-by: Alek Petuskey <alek@pynecone.io> Co-authored-by: Manas Gupta <53006261+Manas1820@users.noreply.github.com> Co-authored-by: coolstorm <manas.gupta@fampay.in> Co-authored-by: Thomas Brandého <thomas.brandeho@gmail.com> Co-authored-by: Shubhankar Dimri <dimrishubhi@gmail.com> Co-authored-by: benedikt-bartscher <31854409+benedikt-bartscher@users.noreply.github.com> Co-authored-by: Khaleel Al-Adhami <khaleel.aladhami@gmail.com> Co-authored-by: Alek Petuskey <alekpetuskey@Aleks-MacBook-Pro.local> Co-authored-by: Elijah Ahianyo <elijahahianyo@gmail.com> * pyproject.toml: bump to 0.6.0a1 * pyproject.toml: depend on reflex-chakra>=0.6.0a New Var system support in reflex-chakra 0.6.0a1 * poetry.lock: relock dependencies * integration: bump listening timeout to 1200 seconds * integration: bump listening timeout to 1800 seconds * Use cached_var_no_lock to avoid ImmutableVar deadlocks (#3835) * Use cached_var_no_lock to avoid ImmutableVar deadlocks ImmutableVar subclasses will always return the same value for a _var_name or _get_all_var_data so there is no need to use a per-class lock to protect a cached attribute on an instance, and doing so actually is observed to cause deadlocks when a particular _cached_var_name creates new LiteralVar instances and attempts to serialize them. * remove unused module global --------- Co-authored-by: Masen Furer <m_github@0x26.net> Co-authored-by: Alek Petuskey <alek@pynecone.io> Co-authored-by: Manas Gupta <53006261+Manas1820@users.noreply.github.com> Co-authored-by: coolstorm <manas.gupta@fampay.in> Co-authored-by: Thomas Brandého <thomas.brandeho@gmail.com> Co-authored-by: Shubhankar Dimri <dimrishubhi@gmail.com> Co-authored-by: benedikt-bartscher <31854409+benedikt-bartscher@users.noreply.github.com> Co-authored-by: Alek Petuskey <alekpetuskey@Aleks-MacBook-Pro.local> Co-authored-by: Elijah Ahianyo <elijahahianyo@gmail.com>
444 lines
18 KiB
Python
444 lines
18 KiB
Python
"""Stub file for reflex/components/core/banner.py"""
|
|
|
|
# ------------------- DO NOT EDIT ----------------------
|
|
# This file was generated by `reflex/utils/pyi_generator.py`!
|
|
# ------------------------------------------------------
|
|
from typing import Any, Callable, Dict, Literal, Optional, Union, overload
|
|
|
|
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 ImportVar
|
|
from reflex.vars import Var, VarData
|
|
|
|
connect_error_var_data: VarData
|
|
connect_errors: Var
|
|
connection_error: Var
|
|
connection_errors_count: Var
|
|
has_connection_errors: Var
|
|
has_too_many_connection_errors: Var
|
|
|
|
class WebsocketTargetURL(ImmutableVar):
|
|
@classmethod
|
|
def create(cls) -> ImmutableVar: ... # type: ignore
|
|
|
|
def default_connection_error() -> list[str | Var | Component]: ...
|
|
|
|
class ConnectionToaster(Toaster):
|
|
def add_hooks(self) -> list[str | Var]: ...
|
|
@overload
|
|
@classmethod
|
|
def create( # type: ignore
|
|
cls,
|
|
*children,
|
|
theme: Optional[Union[Var[str], str]] = None,
|
|
rich_colors: Optional[Union[Var[bool], bool]] = None,
|
|
expand: Optional[Union[Var[bool], bool]] = None,
|
|
visible_toasts: Optional[Union[Var[int], int]] = None,
|
|
position: Optional[
|
|
Union[
|
|
Var[
|
|
Literal[
|
|
"top-left",
|
|
"top-center",
|
|
"top-right",
|
|
"bottom-left",
|
|
"bottom-center",
|
|
"bottom-right",
|
|
]
|
|
],
|
|
Literal[
|
|
"top-left",
|
|
"top-center",
|
|
"top-right",
|
|
"bottom-left",
|
|
"bottom-center",
|
|
"bottom-right",
|
|
],
|
|
]
|
|
] = None,
|
|
close_button: Optional[Union[Var[bool], bool]] = None,
|
|
offset: Optional[Union[Var[str], str]] = None,
|
|
dir: Optional[Union[Var[str], str]] = None,
|
|
hotkey: Optional[Union[Var[str], str]] = None,
|
|
invert: Optional[Union[Var[bool], bool]] = None,
|
|
toast_options: Optional[Union[Var[ToastProps], ToastProps]] = None,
|
|
gap: Optional[Union[Var[int], int]] = None,
|
|
loading_icon: Optional[Union[Var[Icon], Icon]] = None,
|
|
pause_when_page_is_hidden: Optional[Union[Var[bool], bool]] = 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, Var]] = None,
|
|
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
on_context_menu: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_double_click: 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, Var]
|
|
] = None,
|
|
on_mouse_enter: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_leave: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_move: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_out: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_over: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_up: 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, Var]
|
|
] = None,
|
|
**props,
|
|
) -> "ConnectionToaster":
|
|
"""Create a connection toaster component.
|
|
|
|
Args:
|
|
*children: The children of the component.
|
|
theme: the theme of the toast
|
|
rich_colors: whether to show rich colors
|
|
expand: whether to expand the toast
|
|
visible_toasts: the number of toasts that are currently visible
|
|
position: the position of the toast
|
|
close_button: whether to show the close button
|
|
offset: offset of the toast
|
|
dir: directionality of the toast (default: ltr)
|
|
hotkey: Keyboard shortcut that will move focus to the toaster area.
|
|
invert: Dark toasts in light mode and vice versa.
|
|
toast_options: These will act as default options for all toasts. See toast() for all available options.
|
|
gap: Gap between toasts when expanded
|
|
loading_icon: Changes the default loading icon
|
|
pause_when_page_is_hidden: Pauses toast timers when the page is hidden, e.g., when the tab is backgrounded, the browser is minimized, or the OS is locked.
|
|
style: The style of the component.
|
|
key: A unique key for the component.
|
|
id: The id for the component.
|
|
class_name: The class name for the component.
|
|
autofocus: Whether the component should take the focus once the page is loaded
|
|
custom_attrs: custom attribute
|
|
**props: The properties of the component.
|
|
|
|
Returns:
|
|
The connection toaster component.
|
|
"""
|
|
...
|
|
|
|
class ConnectionBanner(Component):
|
|
@overload
|
|
@classmethod
|
|
def create( # type: ignore
|
|
cls,
|
|
*children,
|
|
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, Var]] = None,
|
|
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
on_context_menu: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_double_click: 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, Var]
|
|
] = None,
|
|
on_mouse_enter: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_leave: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_move: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_out: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_over: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_up: 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, Var]
|
|
] = None,
|
|
**props,
|
|
) -> "ConnectionBanner":
|
|
"""Create a connection banner component.
|
|
|
|
Args:
|
|
comp: The component to render when there's a server connection error.
|
|
|
|
Returns:
|
|
The connection banner component.
|
|
"""
|
|
...
|
|
|
|
class ConnectionModal(Component):
|
|
@overload
|
|
@classmethod
|
|
def create( # type: ignore
|
|
cls,
|
|
*children,
|
|
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, Var]] = None,
|
|
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
on_context_menu: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_double_click: 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, Var]
|
|
] = None,
|
|
on_mouse_enter: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_leave: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_move: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_out: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_over: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_up: 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, Var]
|
|
] = None,
|
|
**props,
|
|
) -> "ConnectionModal":
|
|
"""Create a connection banner component.
|
|
|
|
Args:
|
|
comp: The component to render when there's a server connection error.
|
|
|
|
Returns:
|
|
The connection banner component.
|
|
"""
|
|
...
|
|
|
|
class WifiOffPulse(Icon):
|
|
@overload
|
|
@classmethod
|
|
def create( # type: ignore
|
|
cls,
|
|
*children,
|
|
size: Optional[Union[Var[int], int]] = 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, Var]] = None,
|
|
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
on_context_menu: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_double_click: 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, Var]
|
|
] = None,
|
|
on_mouse_enter: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_leave: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_move: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_out: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_over: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_up: 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, Var]
|
|
] = None,
|
|
**props,
|
|
) -> "WifiOffPulse":
|
|
"""Create a wifi_off icon with an animated opacity pulse.
|
|
|
|
Args:
|
|
*children: The children of the component.
|
|
size: The size of the icon in pixels.
|
|
style: The style of the component.
|
|
key: A unique key for the component.
|
|
id: The id for the component.
|
|
class_name: The class name for the component.
|
|
autofocus: Whether the component should take the focus once the page is loaded
|
|
custom_attrs: custom attribute
|
|
**props: The properties of the component.
|
|
|
|
Returns:
|
|
The icon component with default props applied.
|
|
"""
|
|
...
|
|
|
|
def add_imports(self) -> dict[str, str | ImportVar | list[str | ImportVar]]: ...
|
|
|
|
class ConnectionPulser(Div):
|
|
@overload
|
|
@classmethod
|
|
def create( # type: ignore
|
|
cls,
|
|
*children,
|
|
access_key: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
auto_capitalize: Optional[
|
|
Union[Var[Union[bool, int, str]], str, int, bool]
|
|
] = None,
|
|
content_editable: Optional[
|
|
Union[Var[Union[bool, int, str]], str, int, bool]
|
|
] = None,
|
|
context_menu: Optional[
|
|
Union[Var[Union[bool, int, str]], str, int, bool]
|
|
] = None,
|
|
dir: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
draggable: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
enter_key_hint: Optional[
|
|
Union[Var[Union[bool, int, str]], str, int, bool]
|
|
] = None,
|
|
hidden: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
input_mode: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
item_prop: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
lang: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
role: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
slot: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
spell_check: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
tab_index: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = None,
|
|
title: Optional[Union[Var[Union[bool, int, str]], str, int, bool]] = 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, Var]] = None,
|
|
on_click: Optional[Union[EventHandler, EventSpec, list, Callable, Var]] = None,
|
|
on_context_menu: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_double_click: 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, Var]
|
|
] = None,
|
|
on_mouse_enter: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_leave: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_move: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_out: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_over: Optional[
|
|
Union[EventHandler, EventSpec, list, Callable, Var]
|
|
] = None,
|
|
on_mouse_up: 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, Var]
|
|
] = None,
|
|
**props,
|
|
) -> "ConnectionPulser":
|
|
"""Create a connection pulser component.
|
|
|
|
Args:
|
|
access_key: Provides a hint for generating a keyboard shortcut for the current element.
|
|
auto_capitalize: Controls whether and how text input is automatically capitalized as it is entered/edited by the user.
|
|
content_editable: Indicates whether the element's content is editable.
|
|
context_menu: Defines the ID of a <menu> element which will serve as the element's context menu.
|
|
dir: Defines the text direction. Allowed values are ltr (Left-To-Right) or rtl (Right-To-Left)
|
|
draggable: Defines whether the element can be dragged.
|
|
enter_key_hint: Hints what media types the media element is able to play.
|
|
hidden: Defines whether the element is hidden.
|
|
input_mode: Defines the type of the element.
|
|
item_prop: Defines the name of the element for metadata purposes.
|
|
lang: Defines the language used in the element.
|
|
role: Defines the role of the element.
|
|
slot: Assigns a slot in a shadow DOM shadow tree to an element.
|
|
spell_check: Defines whether the element may be checked for spelling errors.
|
|
tab_index: Defines the position of the current element in the tabbing order.
|
|
title: Defines a tooltip for the element.
|
|
style: The style of the component.
|
|
key: A unique key for the component.
|
|
id: The id for the component.
|
|
class_name: The class name for the component.
|
|
autofocus: Whether the component should take the focus once the page is loaded
|
|
custom_attrs: custom attribute
|
|
**props: The properties of the component.
|
|
|
|
Returns:
|
|
The connection pulser component.
|
|
"""
|
|
...
|
|
|
|
connection_banner = ConnectionBanner.create
|
|
connection_modal = ConnectionModal.create
|
|
connection_toaster = ConnectionToaster.create
|
|
connection_pulser = ConnectionPulser.create
|