[REFACTOR] Twenty UI multi barrel (#11301)

# Introduction
closes https://github.com/twentyhq/core-team-issues/issues/591
Same than for `twenty-shared` made in
https://github.com/twentyhq/twenty/pull/11083.

## TODO
- [x] Manual migrate twenty-website twenty-ui imports

## What's next:
- Generate barrel and migration script factorization within own package
+ tests
- Refactoring using preconstruct ? TimeBox
- Lint circular dependencies
- Lint import from barrel and forbid them

### Preconstruct
We need custom rollup plugins addition, but preconstruct does not expose
its rollup configuration. It might be possible to handle this using the
babel overrides. But was a big tunnel.
We could give it a try afterwards ! ( allowing cjs interop and stuff
like that )
Stuck to vite lib app

Closed related PRs:
- https://github.com/twentyhq/twenty/pull/11294
- https://github.com/twentyhq/twenty/pull/11203
This commit is contained in:
Paul Rastoin
2025-04-03 11:47:55 +02:00
committed by GitHub
parent 8c9fcfe5a4
commit 4a4e65fe4a
1009 changed files with 5757 additions and 2828 deletions

View File

@ -1,11 +1,11 @@
import { css, useTheme } from '@emotion/react';
import styled from '@emotion/styled';
import { Pill } from '@ui/components/Pill/Pill';
import { useIsMobile } from '@ui/utilities';
import { getOsShortcutSeparator } from '@ui/utilities/device/getOsShortcutSeparator';
import { MotionProps, motion } from 'framer-motion';
import { Link } from 'react-router-dom';
import { Pill } from '@ui/components/Pill/Pill';
import {
ButtonAccent,
ButtonProps,

View File

@ -1,4 +1,4 @@
import IconListViewGripRaw from '@ui/input/components/list-view-grip.svg?react';
import IconListViewGripRaw from '@assets/misc/list-view-grip.svg?react';
import { IconComponentProps } from '@ui/display/icon/types/IconComponent';
type IconListViewGripProps = Pick<IconComponentProps, 'size' | 'stroke'>;

View File

@ -1,5 +0,0 @@
<svg width="8" height="32" xmlns="http://www.w3.org/2000/svg" fill="none">
<path stroke="null" id="svg_1" fill="#D6D6D6" d="m0,7.5l4.5,0c0.82843,0 1.5,0.67157 1.5,1.5c0,0.82843 -0.67157,1.5 -1.5,1.5l-4.5,0l0,-3z"/>
<path id="svg_2" fill="#D6D6D6" d="m0,14.5l4.5,0c0.82843,0 1.5,0.6716 1.5,1.5c0,0.8284 -0.67157,1.5 -1.5,1.5l-4.5,0l0,-3z"/>
<path id="svg_3" fill="#D6D6D6" d="m0,21.5l4.5,0c0.82843,0 1.5,0.6716 1.5,1.5c0,0.8284 -0.67157,1.5 -1.5,1.5l-4.5,0l0,-3z"/>
</svg>

Before

Width:  |  Height:  |  Size: 478 B

View File

@ -1,30 +1,93 @@
export * from './button/components/AnimatedButton';
export * from './button/components/AnimatedLightIconButton';
export * from './button/components/Button/Button';
export * from './button/components/Button/constant';
export * from './button/components/ButtonGroup';
export * from './button/components/ColorPickerButton';
export * from './button/components/FloatingButton';
export * from './button/components/FloatingButtonGroup';
export * from './button/components/FloatingIconButton';
export * from './button/components/FloatingIconButtonGroup';
export * from './button/components/IconButton';
export * from './button/components/IconButtonGroup';
export * from './button/components/LightButton';
export * from './button/components/LightIconButton';
export * from './button/components/LightIconButtonGroup';
export * from './button/components/MainButton';
export * from './button/components/RoundedIconButton';
export * from './code-editor/components/CodeEditor';
export * from './code-editor/components/CodeEditorHeader';
export * from './code-editor/theme/utils/codeEditorTheme';
export * from './color-scheme/components/ColorSchemeCard';
export * from './color-scheme/components/ColorSchemePicker';
export * from './components/CardPicker';
export * from './components/Checkbox';
export * from './components/IconListViewGrip';
export * from './components/Radio';
export * from './components/RadioGroup';
export * from './components/Toggle';
export * from './types/ColorScheme';
export * from './types/SelectOption';
/*
* _____ _
*|_ _|_ _____ _ __ | |_ _ _
* | | \ \ /\ / / _ \ '_ \| __| | | | Auto-generated file
* | | \ V V / __/ | | | |_| |_| | Any edits to this will be overridden
* |_| \_/\_/ \___|_| |_|\__|\__, |
* |___/
*/
export type { AnimatedButtonProps } from './button/components/AnimatedButton';
export { AnimatedButton } from './button/components/AnimatedButton';
export type { AnimatedLightIconButtonProps } from './button/components/AnimatedLightIconButton';
export { AnimatedLightIconButton } from './button/components/AnimatedLightIconButton';
export type {
ButtonSize,
ButtonPosition,
ButtonVariant,
ButtonAccent,
ButtonProps,
} from './button/components/Button/Button';
export { Button } from './button/components/Button/Button';
export { baseTransitionTiming } from './button/components/Button/constant';
export type { ButtonGroupProps } from './button/components/ButtonGroup';
export { ButtonGroup } from './button/components/ButtonGroup';
export { ColorPickerButton } from './button/components/ColorPickerButton';
export type {
FloatingButtonSize,
FloatingButtonPosition,
FloatingButtonProps,
} from './button/components/FloatingButton';
export { FloatingButton } from './button/components/FloatingButton';
export type { FloatingButtonGroupProps } from './button/components/FloatingButtonGroup';
export { FloatingButtonGroup } from './button/components/FloatingButtonGroup';
export type {
FloatingIconButtonSize,
FloatingIconButtonPosition,
FloatingIconButtonProps,
} from './button/components/FloatingIconButton';
export { FloatingIconButton } from './button/components/FloatingIconButton';
export type { FloatingIconButtonGroupProps } from './button/components/FloatingIconButtonGroup';
export { FloatingIconButtonGroup } from './button/components/FloatingIconButtonGroup';
export type {
IconButtonSize,
IconButtonPosition,
IconButtonVariant,
IconButtonAccent,
IconButtonProps,
} from './button/components/IconButton';
export { IconButton } from './button/components/IconButton';
export type { IconButtonGroupProps } from './button/components/IconButtonGroup';
export { IconButtonGroup } from './button/components/IconButtonGroup';
export type {
LightButtonAccent,
LightButtonProps,
} from './button/components/LightButton';
export { LightButton } from './button/components/LightButton';
export type {
LightIconButtonAccent,
LightIconButtonSize,
LightIconButtonProps,
} from './button/components/LightIconButton';
export { LightIconButton } from './button/components/LightIconButton';
export type { LightIconButtonGroupProps } from './button/components/LightIconButtonGroup';
export { LightIconButtonGroup } from './button/components/LightIconButtonGroup';
export type { MainButtonVariant } from './button/components/MainButton';
export { MainButton } from './button/components/MainButton';
export { RoundedIconButton } from './button/components/RoundedIconButton';
export { CodeEditor } from './code-editor/components/CodeEditor';
export type { CoreEditorHeaderProps } from './code-editor/components/CodeEditorHeader';
export { CoreEditorHeader } from './code-editor/components/CodeEditorHeader';
export { codeEditorTheme } from './code-editor/theme/utils/codeEditorTheme';
export type {
ColorSchemeSegmentProps,
ColorSchemeCardProps,
} from './color-scheme/components/ColorSchemeCard';
export { ColorSchemeCard } from './color-scheme/components/ColorSchemeCard';
export type { ColorSchemePickerProps } from './color-scheme/components/ColorSchemePicker';
export { ColorSchemePicker } from './color-scheme/components/ColorSchemePicker';
export { CardPicker } from './components/CardPicker';
export {
CheckboxVariant,
CheckboxShape,
CheckboxSize,
Checkbox,
} from './components/Checkbox';
export { IconListViewGrip } from './components/IconListViewGrip';
export type { RadioProps } from './components/Radio';
export { RadioSize, LabelPosition, Radio } from './components/Radio';
export { RadioGroup } from './components/RadioGroup';
export type { ToggleSize, ToggleProps } from './components/Toggle';
export { Toggle } from './components/Toggle';
export type { ColorScheme } from './types/ColorScheme';
export type { SelectOption } from './types/SelectOption';