From 061901762649b7eda795849cd499e41fcb1c70c3 Mon Sep 17 00:00:00 2001 From: Tom Gotsman <64492814+tgberkeley@users.noreply.github.com> Date: Thu, 4 Apr 2024 11:26:25 -0700 Subject: [PATCH] adding a reflex logo component (#2994) --- reflex/__init__.py | 1 + reflex/__init__.pyi | 1 + reflex/components/datadisplay/__init__.py | 1 + reflex/components/datadisplay/logo.py | 49 +++++++++++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 reflex/components/datadisplay/logo.py diff --git a/reflex/__init__.py b/reflex/__init__.py index 611d2765a..544874ad6 100644 --- a/reflex/__init__.py +++ b/reflex/__init__.py @@ -109,6 +109,7 @@ _ALL_COMPONENTS = [ "unordered_list", "ordered_list", "moment", + "logo", ] _MAPPING = { diff --git a/reflex/__init__.pyi b/reflex/__init__.pyi index 4af037bd1..962b59b9f 100644 --- a/reflex/__init__.pyi +++ b/reflex/__init__.pyi @@ -96,6 +96,7 @@ from reflex.components import list_item as list_item from reflex.components import unordered_list as unordered_list from reflex.components import ordered_list as ordered_list from reflex.components import moment as moment +from reflex.components import logo as logo from reflex.components.component import Component as Component from reflex.components.component import NoSSRComponent as NoSSRComponent from reflex.components.component import memo as memo diff --git a/reflex/components/datadisplay/__init__.py b/reflex/components/datadisplay/__init__.py index ba40d9f59..2d90b1843 100644 --- a/reflex/components/datadisplay/__init__.py +++ b/reflex/components/datadisplay/__init__.py @@ -4,6 +4,7 @@ from .code import CodeBlock from .code import LiteralCodeBlockTheme as LiteralCodeBlockTheme from .code import LiteralCodeLanguage as LiteralCodeLanguage from .dataeditor import DataEditor, DataEditorTheme +from .logo import logo code_block = CodeBlock.create data_editor = DataEditor.create diff --git a/reflex/components/datadisplay/logo.py b/reflex/components/datadisplay/logo.py new file mode 100644 index 000000000..1a56cfd88 --- /dev/null +++ b/reflex/components/datadisplay/logo.py @@ -0,0 +1,49 @@ +"""A Reflex logo component.""" +import reflex as rx + + +def logo(**props): + """A Reflex logo. + + Args: + **props: The props to pass to the component. + + Returns: + The logo component. + """ + light_mode_logo = """ + + + + + + +""" + + dark_mode_logo = """ + + + + + + +""" + + return rx.center( + rx.link( + rx.hstack( + "Built with ", + rx.color_mode_cond( + rx.html(light_mode_logo), + rx.html(dark_mode_logo), + ), + text_align="center", + align="center", + padding="1em", + ), + href="https://reflex.dev", + size="3", + ), + width=props.pop("width", "100%"), + **props, + )