feat: space avatar color with color picker UI

Add avatarColor field to spaces, matching the user avatar color system.
Spaces get a random color on creation and owners can change it in space
settings. The color controls the fallback gradient when no icon is uploaded,
replacing the old deterministic hash-based gradient. Includes full
federation support, explore page, mutual spaces, and color picker in both
create and settings modals.
This commit is contained in:
Jannis Braun
2026-03-11 18:34:33 +01:00
parent 373d685a55
commit 7572f165de
16 changed files with 148 additions and 27 deletions
+4
View File
@@ -43,6 +43,7 @@ export interface Space {
name: string;
icon: string | null;
banner: string | null;
avatarColor: AvatarColor | null;
ownerId: string;
inviteCode: string | null;
visibility: SpaceVisibility;
@@ -55,6 +56,7 @@ export interface ExploreSpace {
name: string;
icon: string | null;
banner: string | null;
avatarColor: AvatarColor | null;
description: string | null;
visibility: SpaceVisibility;
memberCount: number;
@@ -323,6 +325,7 @@ export interface CreateSpaceRequest {
name: string;
icon?: string;
banner?: string;
avatarColor?: string;
visibility?: SpaceVisibility;
description?: string;
}
@@ -343,6 +346,7 @@ export interface UpdateSpaceRequest {
name?: string;
icon?: string;
banner?: string;
avatarColor?: string;
visibility?: SpaceVisibility;
description?: string;
}