Disclosure

Maintainer:
Raubzeug
GitHub
size
disabled
arrowPosition
summary
children
import {Disclosure} from '@gravity-ui/uikit';

Disclosure — компонент раскрытия, который показывает и скрывает вложенный контент.

Управление состоянием раскрытия

Вы можете управлять состоянием раскрытия компонента, используя свойства expanded и onUpdate.

Пример управления состоянием:

Content

Размер

Используйте свойство size для управления размером Disclosure. Размер по умолчанию — m.

Content
Content
Content

Позиция стрелки

start: Стрелка расположена в начале заголовка (используется по умолчанию).

end: Стрелка расположена в конце заголовка.

Content
Content

Пользовательский контент

Используйте компонент Disclosure.Summary для создания пользовательского заголовка и компонент Disclosure.Details для заполнения пользовательского контента.

Custom details
More custom details
Custom Details

Отключенное состояние

Disclosure может быть отключен с помощью свойства disabled.

Content

Свойства

Disclosure

ИмяОписаниеТипЗначение по умолчанию
sizeРазмер компонента"m" "l" "xl""m"
classNameИмя CSS-класса корневого элементаstring
disabledОтключенное состояниеbooleanfalse
defaultExpandedСостояние раскрытия по умолчаниюbooleanfalse
expandedКонтролируемое состояние раскрытияboolean
arrowPositionПоложение контрола"start" "end""start"
summaryКраткое описание контентаReact.ReactNode
keepMountedСохранение контента в DOM при скрытииbooleantrue
onUpdateОбратный вызов, срабатывающий при изменении состояния раскрытия(expanded: boolean) => void
onSummaryKeyDownОбратный вызов, срабатывающий при фокусе заголовка(e: React.KeyboardEvent<HTMLButtonElement>) => void
childrenКонтентReact.ReactNode
qaИдентификатор для тестированияstring

Disclosure.Summary

ИмяОписаниеТипЗначение по умолчанию
childrenФункция рендеринга(props, defaultSummary) => React.ReactElement
qaИдентификатор для тестированияstringdisclosure-summary

Disclosure.Details

ИмяОписаниеТипЗначение по умолчанию
childrenКонтентReact.ReactNode
qaИдентификатор для тестированияstringdisclosure-details

CSS API

ИмяОписание
--g-disclosure-text-colorЦвет текста краткого описания контента
--g-disclosure-text-color-disabledЦвет текста краткого описания контента в заблокированном состоянии