feat: govern tenant appearance overrides

This commit is contained in:
2026-08-20 10:50:55 +02:00
parent c5119ab868
commit c558621550
6 changed files with 103 additions and 9 deletions
+5 -1
View File
@@ -50,6 +50,9 @@ export type TenantSettingsItem = {
system_appearance_palette_locked: boolean;
effective_appearance_palette: UserUiPalette;
effective_appearance_source: "tenant" | "system" | "tenant_lock" | "system_lock";
appearance_custom_overrides_allowed: boolean | null;
system_appearance_custom_overrides_allowed: boolean;
effective_appearance_custom_overrides_allowed: boolean;
settings: Record<string, unknown>;
};
@@ -61,7 +64,7 @@ export type TenantSettingsDeltaSections = Partial<{
"available_languages" | "system_enabled_language_codes" | "enabled_language_codes"
>;
navigation: TenantSettingsItem["navigation"];
appearance: Pick<TenantSettingsItem, "appearance_palette" | "appearance_palette_locked" | "system_appearance_palette" | "system_appearance_palette_locked" | "effective_appearance_palette" | "effective_appearance_source">;
appearance: Pick<TenantSettingsItem, "appearance_palette" | "appearance_palette_locked" | "system_appearance_palette" | "system_appearance_palette_locked" | "effective_appearance_palette" | "effective_appearance_source" | "appearance_custom_overrides_allowed" | "system_appearance_custom_overrides_allowed" | "effective_appearance_custom_overrides_allowed">;
settings: TenantSettingsItem["settings"];
}>;
@@ -161,6 +164,7 @@ export function updateTenantSettings(
navigation?: NavigationPreferences | null;
appearance_palette?: UserUiPalette | null;
appearance_palette_locked?: boolean;
appearance_custom_overrides_allowed?: boolean | null;
}
): Promise<TenantSettingsItem> {
return apiFetch(settings, "/api/v1/admin/tenant/settings", {