TabBar

Панель переключателей табов. Задаёт:

  • sizel (верхнеуровневый) или m (внутри контента).
  • orientationhorizontal (по умолчанию) или vertical.
  • markerPosition — позиция активного маркера (before / after).
  • slotActionButton — слот справа от табов для дополнительных действий.

Когда использовать

  • Внутри Tabs как единственный контейнер списка кнопок-табов.
  • Если нужно разместить дополнительные действия справа от табов (через слот slotActionButton).

Анатомия

Orientation

horizontal — бар в строку, vertical — колонкой.

Size

m — дефолт, l — для крупных лейаутов.

Marker position

Положение активного маркера относительно содержимого таба: before — перед, after — после.

Установка

pnpm add @cloud-ru/ds-tabs
import { Tabs } from '@cloud-ru/ds-tabs'

<Tabs.Bar />

Примеры использования

Size L — верхнеуровневый

Size L — верхнеуровневый
tsx
import { SIZE, Tabs } from '@cloud-ru/ds-tabs';

export function SizeL() {
  return (
    <Tabs defaultValue='a'>
      <Tabs.TabBar size={SIZE.L}>
        <Tabs.Tab value='a' label='Первая' />
        <Tabs.Tab value='b' label='Вторая' />
      </Tabs.TabBar>
    </Tabs>
  );
}

Vertical orientation

Vertical orientation
tsx
import { ORIENTATION, Tabs } from '@cloud-ru/ds-tabs';

export function Vertical() {
  return (
    <Tabs defaultValue='a'>
      <Tabs.TabBar orientation={ORIENTATION.Vertical}>
        <Tabs.Tab value='a' label='Профиль' />
        <Tabs.Tab value='b' label='Безопасность' />
      </Tabs.TabBar>
    </Tabs>
  );
}

Props

Types

PropsTabBarProps
PropTypeDefaultRequiredDescription
childrenReactElement<TabProps, string | JSXElementConstructor<any>>[]yesКонтент (элементы Tabs.Tab)
classNamestringnoCSS-класс
data-test-idstringno
disableDividerbooleanfalsenoСкрыть разделитель под/рядом с панелью табов
markerPosition"after" | "before"afternoПозиция маркера относительно таб-бара. Значения ориентационно-нейтральны, в Figma та же ось названа сторонами: `before` = Figma `top` (horizontal) / `left` (vertical), `after` = Figma `bottom` (horizontal) / `right` (vertical).
orientation"horizontal" | "vertical"horizontalnoОриентация
size"l" | "m"lnoРазмер панели табов: L — верхнеуровневый, M — на уровне контента
slotActionButtonReactNodenoСлот действия: контент после списка табов — справа при горизонтальной ориентации, снизу при вертикальной. Разделитель под ним не продолжается.

Unions

Types

TabBarProps

Unions

Storybook

Figma