Spaces:
Running
Running
File size: 3,727 Bytes
fcb34bb 9c72146 fcb34bb bc5091e 5a007ca fcb34bb 2369fc5 5a007ca fcb34bb 2369fc5 d1ed6b1 2369fc5 d1ed6b1 2369fc5 d1ed6b1 2369fc5 d1ed6b1 2369fc5 d1ed6b1 2369fc5 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 e431b2b d1ed6b1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
"""
theme.py
This module defines a custom Gradio theme.
- For more information on Gradio themes see: https://www.gradio.app/docs/gradio/themes
- For manual styling with css, see /src/assets/styles.css
"""
# Standard Library Imports
from collections.abc import Iterable
# Third-Party Library Imports
from gradio.themes.base import Base
from gradio.themes.utils import colors, fonts, sizes
class CustomTheme(Base):
def __init__(
self,
*,
primary_hue: colors.Color | str = colors.purple,
secondary_hue: colors.Color | str = colors.stone,
neutral_hue: colors.Color | str = colors.neutral,
spacing_size: sizes.Size | str = sizes.spacing_md,
radius_size: sizes.Size | str = sizes.radius_md,
text_size: sizes.Size | str = sizes.text_md,
font: fonts.Font | str | Iterable[fonts.Font | str] = (
fonts.GoogleFont("Source Sans Pro"),
"ui-sans-serif",
"system-ui",
"sans-serif",
),
font_mono: fonts.Font | str | Iterable[fonts.Font | str] = (
fonts.GoogleFont("IBM Plex Mono"),
"ui-monospace",
"Consolas",
"monospace",
),
):
super().__init__(
primary_hue=primary_hue,
secondary_hue=secondary_hue,
neutral_hue=neutral_hue,
spacing_size=spacing_size,
radius_size=radius_size,
text_size=text_size,
font=font,
font_mono=font_mono,
)
self.name = "custom_theme"
super().set(
# --- Colors ---
error_background_fill="#EF4444",
# error_background_fill_dark='',
error_border_color="#B91C1C",
# error_border_color_dark='',
error_icon_color="#B91C1C",
# error_icon_color_dark='',
input_background_fill="#F9FAFB",
# input_background_fill_dark='',
# --- Shadows ---
input_shadow_focus="0 0 0 *shadow_spread #7C3AED80, *shadow_inset",
# input_shadow_focus_dark='',
# --- Gradients ---
stat_background_fill="linear-gradient(to right, #7C3AED, #D8B4FE)",
# stat_background_fill_dark='',
# --- Button borders ---
button_border_width="0px",
input_border_width="1px",
# --- Primary Button ---
button_primary_background_fill="#7E22CE",
# button_primary_background_fill_dark='',
button_primary_background_fill_hover="#9333EA",
# button_primary_background_fill_hover_dark='',
button_primary_text_color="#FFFFFF",
# button_primary_text_color_dark='',
# --- Secondary Button ---
button_secondary_background_fill="#222222",
# button_secondary_background_fill_dark='#4B5563',
button_secondary_background_fill_hover="#3F3F3F",
# button_secondary_background_fill_hover_dark='#374151',
button_secondary_text_color="#FFFFFF",
# button_secondary_text_color_dark='#FFFFFF',
# --- Cancel Button ---
button_cancel_background_fill="#EF4444",
# button_cancel_background_fill_dark='#B91C1C',
button_cancel_background_fill_hover="#DC2626",
# button_cancel_background_fill_hover_dark='#991B1B',
button_cancel_text_color="#FFFFFF",
# button_cancel_text_color_dark='#FFFFFF',
button_cancel_text_color_hover="#FFFFFF",
# button_cancel_text_color_hover_dark='#FFFFFF',
# --- Other ---
border_color_accent_subdued="#A78BFA",
)
|