Spaces:
Build error
Build error
Set the preset colors
Browse files
app.py
CHANGED
|
@@ -12,12 +12,22 @@ class ThemeColor(NamedTuple):
|
|
| 12 |
textColor: str
|
| 13 |
|
| 14 |
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 21 |
|
| 22 |
|
| 23 |
if 'primaryColor' not in st.session_state:
|
|
@@ -30,6 +40,17 @@ if 'textColor' not in st.session_state:
|
|
| 30 |
st.session_state['textColor'] = st._config.get_option(f'theme.textColor') or default_color.textColor
|
| 31 |
|
| 32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
primary_color = st.color_picker('Primary color', key="primaryColor")
|
| 34 |
text_color = st.color_picker('Text color', key="textColor")
|
| 35 |
background_color = st.color_picker('Background color', key="backgroundColor")
|
|
|
|
| 12 |
textColor: str
|
| 13 |
|
| 14 |
|
| 15 |
+
preset_colors: list[tuple[str, ThemeColor]] = [
|
| 16 |
+
("Default light", ThemeColor(
|
| 17 |
+
primaryColor="#ff4b4b",
|
| 18 |
+
backgroundColor="#ffffff",
|
| 19 |
+
secondaryBackgroundColor="#f0f2f6",
|
| 20 |
+
textColor="#31333F",
|
| 21 |
+
)),
|
| 22 |
+
("Default dark", ThemeColor(
|
| 23 |
+
primaryColor="#ff4b4b",
|
| 24 |
+
backgroundColor="#0e1117",
|
| 25 |
+
secondaryBackgroundColor="#262730",
|
| 26 |
+
textColor="#fafafa",
|
| 27 |
+
))
|
| 28 |
+
]
|
| 29 |
+
|
| 30 |
+
default_color = preset_colors[0][1]
|
| 31 |
|
| 32 |
|
| 33 |
if 'primaryColor' not in st.session_state:
|
|
|
|
| 40 |
st.session_state['textColor'] = st._config.get_option(f'theme.textColor') or default_color.textColor
|
| 41 |
|
| 42 |
|
| 43 |
+
def on_preset_color_selected():
|
| 44 |
+
_, color = preset_colors[st.session_state.preset_color]
|
| 45 |
+
st.session_state['primaryColor'] = color.primaryColor
|
| 46 |
+
st.session_state['backgroundColor'] = color.backgroundColor
|
| 47 |
+
st.session_state['secondaryBackgroundColor'] = color.secondaryBackgroundColor
|
| 48 |
+
st.session_state['textColor'] = color.textColor
|
| 49 |
+
|
| 50 |
+
|
| 51 |
+
st.selectbox("Preset colors", key="preset_color", options=range(len(preset_colors)), format_func=lambda idx: preset_colors[idx][0], on_change=on_preset_color_selected)
|
| 52 |
+
|
| 53 |
+
|
| 54 |
primary_color = st.color_picker('Primary color', key="primaryColor")
|
| 55 |
text_color = st.color_picker('Text color', key="textColor")
|
| 56 |
background_color = st.color_picker('Background color', key="backgroundColor")
|