---
title: Кнопки
icon: hand-pointer
---
Список кнопок и групп кнопок, использованных в приложении.
## Кнопка
```jsx
import { Button } from "@/ui/input/button/components/Button";
export const MyComponent = () => {
return (
| Свойства | Тип | Описание |
| ------------ | --------------------- | ------------------------------------------------------------------------------------------------------------ |
| className | строка | Дополнительное имя класса для дополнительной стилизации |
| Иконка | `React.ComponentType` | Необязательный компонент иконки, отображаемый на кнопке |
| заголовок | строка | Текстовое содержимое кнопки |
| полнаяШирина | логическое | Определяет, должна ли кнопка занимать всю ширину контейнера |
| вариант | строка | Визуальный стиль кнопки. Включает опции `primary`, `secondary` и `tertiary` |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` |
| позиция | строка | Положение кнопки по отношению к соседним элементам. Опции включают: `standalone`, `left`, `right` и `middle` |
| акцент | строка | Акцентный цвет кнопки. Включает опции: `default`, `blue`, и `danger` |
| скоро | булево | Указывает, отмечена ли кнопка как «скоро» (например, для предстоящих функций) |
| отключено | булево | Определяет, отключена кнопка или нет |
| фокус | булево | Определяет, имеет ли кнопка фокус |
| onClick | функция | Функция обратного вызова, которая срабатывает при нажатии пользователем на кнопку |
## Группа кнопок
```jsx
import { Button } from "@/ui/input/button/components/Button";
import { ButtonGroup } from "@/ui/input/button/components/ButtonGroup";
export const MyComponent = () => {
return (
);
};
```
| Свойства | Тип | Описание |
| --------- | --------- | -------------------------------------------------------------------------------------------------- |
| вариант | строка | Визуальный вариант оформления кнопок в группе. Включает опции `primary`, `secondary`, и `tertiary` |
| размер | строка | Размер кнопок в группе. Имеет два варианта: `medium` и `small` |
| акцент | строка | Акцентный цвет кнопок в группе. Включает опции `default`, `blue` и `danger` |
| className | строка | Дополнительное имя класса для дополнительной стилизации |
| children | ReactNode | Массив элементов React, представляющих отдельные кнопки в группе |
## Плавающая кнопка
```jsx
import { FloatingButton } from "@/ui/input/button/components/FloatingButton";
import { IconSearch } from "@tabler/icons-react";
export const MyComponent = () => {
return (
);
};
```
| Свойства | Тип | Описание |
| ------------------ | --------------------- | ----------------------------------------------------------------------------------------------------------- |
| className | строка | Необязательное имя для дополнительной стилизации |
| Иконка | `React.ComponentType` | Необязательный компонент иконки, отображаемый на кнопке |
| заголовок | строка | Текстовое содержимое кнопки |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` |
| позиция | строка | Положение кнопки по отношению к соседним элементам. Опции включают: `standalone`, `left`, `middle`, `right` |
| применить тень | булево | Определяет, применять ли тень к кнопке |
| применить размытие | булево | Определяет, применять ли размытие к кнопке |
| отключено | булево | Определяет, отключена ли кнопка |
| фокус | булево | Указывает, имеет ли кнопка фокус |
## Группа плавающих кнопок
```jsx
import { FloatingButton } from "@/ui/input/button/components/FloatingButton";
import { FloatingButtonGroup } from "@/ui/input/button/components/FloatingButtonGroup";
import { IconClipboardText, IconCheckbox } from "@tabler/icons-react";
export const MyComponent = () => {
return (
);
};
```
| Свойства | Тип | Описание | По умолчанию |
| -------- | --------- | ---------------------------------------------------------------- | ------------ |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` | маленький |
| children | ReactNode | Массив элементов React, представляющих отдельные кнопки в группе | |
## Плавающая кнопка с иконкой
```jsx
import { FloatingIconButton } from "@/ui/input/button/components/FloatingIconButton";
import { IconSearch } from "@tabler/icons-react";
export const MyComponent = () => {
return (
console.log("click")}
isActive={true}
/>
);
};
```
| Свойства | Тип | Описание |
| ------------------ | --------------------- | ------------------------------------------------------------------------------------------------------------ |
| className | строка | Необязательное имя для дополнительной стилизации |
| Иконка | `React.ComponentType` | Необязательный компонент иконки, отображаемый на кнопке |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` |
| позиция | строка | Положение кнопки по отношению к соседним элементам. Опции включают: `standalone`, `left`, `right` и `middle` |
| применить тень | булево | Определяет, применять ли тень к кнопке |
| применить размытие | булево | Определяет, применять ли размытие к кнопке |
| отключено | булево | Определяет, отключена ли кнопка |
| фокус | булево | Указывает, имеет ли кнопка фокус |
| onClick | функция | Функция обратного вызова, которая срабатывает при нажатии пользователем на кнопку |
| активен | булево | Определяет, находится ли кнопка в активном состоянии |
## Группа плавающих кнопок с иконками
```jsx
import { FloatingIconButtonGroup } from "@/ui/input/button/components/FloatingIconButtonGroup";
import { IconClipboardText, IconCheckbox } from "@tabler/icons-react";
export const MyComponent = () => {
const iconButtons = [
{
Icon: IconClipboardText,
onClick: () => console.log("Button 1 clicked"),
isActive: true,
},
{
Icon: IconCheckbox,
onClick: () => console.log("Button 2 clicked"),
isActive: true,
},
];
return (
);
};
```
| Свойства | Тип | Описание |
| ----------------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| className | строка | Необязательное имя для дополнительной стилизации |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` |
| кнопки с иконками | массив | Массив объектов, каждый из которых представляет собой кнопку с иконкой в группе. Каждый объект должен включать компонент иконки, который вы хотите отобразить на кнопке, функцию, которую вы хотите вызвать при нажатии на кнопку, и информацию о том, должна ли кнопка быть активной или нет. |
## Легкая кнопка
```jsx
import { LightButton } from "@/ui/input/button/components/LightButton";
export const MyComponent = () => {
return console.log('click')}
/>;
};
```
| Свойства | Тип | Описание |
| --------- | ----------------- | --------------------------------------------------------------------------------- |
| className | строка | Необязательное имя для дополнительной стилизации |
| иконка | `React.ReactNode` | Иконка, которую вы хотите отобразить на кнопке |
| заголовок | строка | Текстовое содержимое кнопки |
| акцент | строка | Акцентный цвет кнопки. Опции включают: `secondary` и `tertiary` |
| активный | булево | Определяет, находится ли кнопка в активном состоянии |
| отключено | булево | Определяет, отключена ли кнопка |
| фокус | булево | Указывает, имеет ли кнопка фокус |
| onClick | функция | Функция обратного вызова, которая срабатывает при нажатии пользователем на кнопку |
## Легкая кнопка с иконкой
```jsx
import { LightIconButton } from "@/ui/input/button/components/LightIconButton";
import { IconSearch } from "@tabler/icons-react";
export const MyComponent = () => {
return (
console.log("click")}
/>
);
};
```
| Свойства | Тип | Описание |
| ------------------- | --------------------- | --------------------------------------------------------------------------------- |
| className | строка | Необязательное имя для дополнительной стилизации |
| идентификатор теста | строка | Идентификатор теста для кнопки |
| Иконка | `React.ComponentType` | Необязательный компонент иконки, отображаемый на кнопке |
| заголовок | строка | Текстовое содержимое кнопки |
| размер | строка | Размер кнопки. Есть два варианта: `small` и `medium` |
| акцент | строка | Акцентный цвет кнопки. Опции включают: `secondary` и `tertiary` |
| активный | булево | Определяет, находится ли кнопка в активном состоянии |
| отключено | булево | Определяет, отключена ли кнопка |
| фокус | булево | Указывает, имеет ли кнопка фокус |
| onClick | функция | Функция обратного вызова, которая срабатывает при нажатии пользователем на кнопку |
## Главная кнопка
```jsx
import { MainButton } from "@/ui/input/button/components/MainButton";
import { IconCheckbox } from "@tabler/icons-react";
export const MyComponent = () => {
return (
);
};
```
| Свойства | Тип | Описание |
| -------------------- | -------------------------------- | ----------------------------------------------------------------------------- |
| заголовок | строка | Текстовое содержимое кнопки |
| полнаяШирина | булево | Определяет, должна ли кнопка занимать всю ширину контейнера |
| вариант | строка | Визуальный стиль кнопки. Опции включают `primary` и `secondary` |
| скоро | булево | Указывает, отмечена ли кнопка как «скоро» (например, для предстоящих функций) |
| Иконка | `React.ComponentType` | Необязательный компонент иконки, отображаемый на кнопке |
| React `button` props | `React.ComponentProps<'button'>` | Все стандартные свойства кнопки HTML поддерживаются |
## Круглая кнопка с иконкой
```jsx
import { RoundedIconButton } from "@/ui/input/button/components/RoundedIconButton";
import { IconSearch } from "@tabler/icons-react";
export const MyComponent = () => {
return (
);
};
```
| Свойства | Тип | Описание |
| -------------------- | ----------------------------------------------- | -------- |
| Иконка | `React.ComponentType` | |
| React `button` props | `React.ButtonHTMLAttributes` | |