From 075dc45ca10883f68383ada17e08de2455a87a17 Mon Sep 17 00:00:00 2001 From: Nuxgrid Date: Thu, 30 Jul 2026 10:10:23 +0200 Subject: [PATCH] chore: add button in settings for restore color --- .../src/screens/admin/SettingsScreen.tsx | 48 ++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/frontend-admin/src/screens/admin/SettingsScreen.tsx b/frontend-admin/src/screens/admin/SettingsScreen.tsx index af86d77f..b319cf32 100644 --- a/frontend-admin/src/screens/admin/SettingsScreen.tsx +++ b/frontend-admin/src/screens/admin/SettingsScreen.tsx @@ -1156,9 +1156,25 @@ function CentralRewardSection({ ); } +// Palette violette d'origine de l'application (thème par défaut historique) +const ORIGINAL_THEME_COLORS = { + admin_color_primary: "#7c3aed", + admin_color_secondary: "#22d3ee", + admin_color_success: "#4ade80", + admin_color_danger: "#ef4444", + admin_color_warning: "#f59e0b", + client_color_primary: "#7c3aed", + client_color_secondary: "#22d3ee", + client_color_success: "#4ade80", + client_color_danger: "#ef4444", + client_color_warning: "#f59e0b", + client_title_gradient_from: "#a78bfa", + client_title_gradient_to: "#22d3ee", +} as const; + export default function SettingsScreen() { const { colors, refreshColors } = useTheme(); - const { alert, showError, showSuccess, hideAlert } = useAlert(); + const { alert, showError, showSuccess, showConfirm, hideAlert } = useAlert(); const navigation = useNavigation(); const { width: screenWidth } = useWindowDimensions(); const inputMd = screenWidth < 380 ? 64 : 80; @@ -2271,6 +2287,36 @@ export default function SettingsScreen() { Personnalisez les couleurs de l'espace admin et de l'app client / site web. + showConfirm( + "Restaurer le thème d'origine", + "Toutes les couleurs personnalisées seront remplacées par le violet de base des premières versions de l'application. Continuer ?", + () => { + setSettings((p) => ({ ...p, ...ORIGINAL_THEME_COLORS })); + }, + "Restaurer", + "Annuler", + )} + style={{ + flexDirection: "row", + alignItems: "center", + gap: spacing.xs, + marginHorizontal: spacing.l, + marginTop: spacing.m, + paddingVertical: spacing.s, + paddingHorizontal: spacing.m, + borderRadius: borderRadius.sm, + borderWidth: 1, + borderColor: "#7c3aed", + alignSelf: "flex-start", + }} + > + + + Restaurer les couleurs de base + + + {(["admin", "client"] as const).map((scope) => (