'use client' import { useState } from 'react' import { RolesPanel } from './panels/roles-panel' import { TiersPanel } from './panels/tiers-panel' import { AreasPanel } from './panels/areas-panel' import { InvitesPanel } from './panels/invites-panel' import { OnboardingPanel } from './panels/onboarding-panel' import type { RoleLabelRow, CustomRole, Tier, Invite, Step, Area } from './panels/types' type Section = 'roles' | 'tiers' | 'areas' | 'invites' | 'onboarding' const SECTIONS: { key: Section; label: string }[] = [ { key: 'roles', label: 'Roles' }, { key: 'tiers', label: 'Membership tiers' }, { key: 'areas', label: 'Areas' }, { key: 'invites', label: 'Invite codes' }, { key: 'onboarding', label: 'Onboarding' }, ] interface Props { isAdmin: boolean roleLabels: RoleLabelRow[] customRoles: CustomRole[] tiers: Tier[] invites: Invite[] onboardingSteps: Step[] areas: Area[] } export function CustomizeClient(props: Props) { const [section, setSection] = useState
('roles') return (

Customize

Make the space yours. Operational settings (identity, integrations, webhooks) live under Settings.

{section === 'roles' && } {section === 'tiers' && } {section === 'areas' && } {section === 'invites' && } {section === 'onboarding' && }
) }