Files
twenty/packages/twenty-ui/src/display/index.ts
Paul Rastoin 89e11b4626 [BUGFIX] Account owner should not be clickable & [Refactor] Chip.tsx links (#10359)
# Introduction

closes #10196 
Initially fixing the `Account Owner` record field value should not be
clickable and redirects on current page bug.
This has been fixed computing whereas the current filed is a workspace
member dynamically rendering a stale Chip components instead of an
interactive one

## Refactor
Refactored the `AvatarChip` `to` props logic to be scoped to lower level
scope `Chip`.
Now we have `LinkChip` `Chip`, `LinkAvatarChip` and `AvatarChip` all
exported from twenty-ui.

The caller has to determine which one to call from the design system

## New rule regarding chip links
As discussed with @charlesBochet and @FelixMalfait 
A chip link will now ***always*** have `to` defined. ( and optionally an
`onClick` ).
`ChipLinks` cannot be used as buttons anymore

## Factorization
Deleted the `RecordIndexRecordChip.tsx` file ( aka
`RecordIdentifierChip` component ) that was duplicating some logic,
refactored the `RecordChip` in order to handle what was covered by
`RecordIdentifierChip`

## Conclusion
As always any suggestions are more than welcomed ! Took few opinionated
decision/refactor regarding nested long ternaries rendering `ReactNode`
elements

## Misc


https://github.com/user-attachments/assets/8ef11fb2-7ba6-4e96-bd59-b0be5a425156

---------

Co-authored-by: Mohammed Razak <mohammedrazak2001@gmail.com>
Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2025-02-25 14:36:17 +00:00

68 lines
3.4 KiB
TypeScript

export * from './avatar-chip/components/AvatarChip';
export * from './avatar-chip/components/AvatarChipLeftComponent';
export * from './avatar-chip/components/LinkAvatarChip';
export * from './avatar-chip/types/AvatarChipsCommonProps.type';
export * from './avatar-chip/types/AvatarChipsVariant.type';
export * from './avatar/components/Avatar';
export * from './avatar/components/AvatarGroup';
export * from './avatar/components/states/isInvalidAvatarUrlState';
export * from './avatar/constants/AvatarPropertiesBySize';
export * from './avatar/types/AvatarSize';
export * from './avatar/types/AvatarType';
export * from './banner/components/Banner';
export * from './checkmark/components/AnimatedCheckmark';
export * from './checkmark/components/Checkmark';
export * from './chip/components/Chip';
export * from './chip/components/LinkChip';
export * from './color/components/ColorSample';
export * from './icon/components/IconAddressBook';
export * from './icon/components/IconGmail';
export * from './icon/components/IconGoogle';
export * from './icon/components/IconGoogleCalendar';
export * from './icon/components/IconLock';
export * from './icon/components/IconMicrosoft';
export * from './icon/components/IconMicrosoftCalendar';
export * from './icon/components/IconMicrosoftOutlook';
export * from './icon/components/IconRelationManyToOne';
export * from './icon/components/IconTwentyStar';
export * from './icon/components/IconTwentyStarFilled';
export * from './icon/components/IllustrationIconArray';
export * from './icon/components/IllustrationIconCalendarEvent';
export * from './icon/components/IllustrationIconCalendarTime';
export * from './icon/components/IllustrationIconCurrency';
export * from './icon/components/IllustrationIconJson';
export * from './icon/components/IllustrationIconLink';
export * from './icon/components/IllustrationIconMail';
export * from './icon/components/IllustrationIconManyToMany';
export * from './icon/components/IllustrationIconMap';
export * from './icon/components/IllustrationIconNumbers';
export * from './icon/components/IllustrationIconOneToMany';
export * from './icon/components/IllustrationIconOneToOne';
export * from './icon/components/IllustrationIconPhone';
export * from './icon/components/IllustrationIconSetting';
export * from './icon/components/IllustrationIconStar';
export * from './icon/components/IllustrationIconTag';
export * from './icon/components/IllustrationIconTags';
export * from './icon/components/IllustrationIconText';
export * from './icon/components/IllustrationIconToggle';
export * from './icon/components/IllustrationIconUid';
export * from './icon/components/IllustrationIconUser';
export * from './icon/components/IllustrationIconWrapper';
export * from './icon/components/TablerIcons';
export * from './icon/hooks/useIcons';
export * from './icon/providers/IconsProvider';
export * from './icon/states/iconsState';
export * from './icon/types/IconComponent';
export * from './info/components/Info';
export * from './status/components/Status';
export * from './tag/components/Tag';
export * from './text/components/HorizontalSeparator';
export * from './text/components/SeparatorLineText';
export * from './tooltip/AppTooltip';
export * from './tooltip/OverflowingTextWithTooltip';
export * from './typography/components/H1Title';
export * from './typography/components/H2Title';
export * from './typography/components/H3Title';
export * from './typography/components/Label';
export * from './typography/components/StyledText';