Polish settings page titles and admin tables (#22305)

## Summary

- Reuse the shared settings title presentation for read-only and
editable settings page titles.
- Polish settings AI/app icons, breadcrumb cropping, and admin detail
title icons.
- Align admin panel table/card typography and spacing with existing
settings tables.

## Before/After

<img width="1524" height="2214" alt="Settings pages before and after"
src="https://github.com/user-attachments/assets/91037b25-b442-4eb2-b244-1d8280ce2cd9"
/>

<img width="2200" height="3268" alt="Additional settings UI before and
after"
src="https://github.com/user-attachments/assets/f10d7283-7031-4958-8539-649c3067cd31"
/>

<!-- This is an auto-generated description by cubic. -->
<a
href="https://cubic.dev/pr/twentyhq/twenty/pull/22305?utm_source=github"
target="_blank" rel="noopener noreferrer"
data-no-image-dialog="true"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source
media="(prefers-color-scheme: light)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img
alt="Review in cubic"
src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a>
<!-- End of auto-generated description by cubic. -->
This commit is contained in:
Thomas des Francs
2026-06-29 17:39:30 +02:00
committed by GitHub
parent b199dde840
commit 2bb7fb2e9b
23 changed files with 347 additions and 258 deletions
@@ -1,18 +1,5 @@
import { TitleInput } from '@/ui/input/components/TitleInput';
import { styled } from '@linaria/react';
import { SettingsEditableTitle } from '@/settings/components/SettingsEditableTitle';
import { t } from '@lingui/core/macro';
import { themeCssVariables } from 'twenty-ui/theme-constants';
const StyledHeaderTitle = styled.div`
color: ${themeCssVariables.font.color.primary};
font-size: ${themeCssVariables.font.size.lg};
font-weight: ${themeCssVariables.font.weight.semiBold};
max-width: 420px;
width: fit-content;
& > input:disabled {
color: ${themeCssVariables.font.color.primary};
}
`;
type SettingsLogicFunctionLabelContainerProps = {
value: string;
@@ -26,15 +13,12 @@ export const SettingsLogicFunctionLabelContainer = ({
readonly = false,
}: SettingsLogicFunctionLabelContainerProps) => {
return (
<StyledHeaderTitle>
<TitleInput
instanceId="logic-function-name-input"
sizeVariant="md"
value={value}
onChange={onChange}
placeholder={t`Function name`}
disabled={readonly}
/>
</StyledHeaderTitle>
<SettingsEditableTitle
instanceId="logic-function-name-input"
value={value}
onChange={onChange}
placeholder={t`Function name`}
disabled={readonly}
/>
);
};