ConfirmDialog
Подтверждение действия в модальном окне.
Готовый Dialog с заголовком, описанием и кнопками подтверждения и отмены. Нужен уникальный id и PBCProvider (или DialogProvider) выше по дереву. trigger принимает пропсы кнопки-триггера, как у Button; без него откройте окно через open и onOpenChange. onConfirm вызывается при подтверждении, после чего окно закрывается.
Живой пример
Настройки примера
Использование
import { ConfirmDialog } from '@prosazhin/pbcomponents';
<ConfirmDialog
id='delete-project'
title='Delete the project?'
description='All files will be removed permanently.'
color='danger'
confirmText='Delete'
cancelText='Cancel'
onConfirm={() => deleteProject()}
trigger={{ color: 'danger', theme: 'border', children: 'Delete project' }}
/>;API компонента
| Prop | Тип / варианты | Назначение | По умолчанию |
|---|---|---|---|
id | string | Уникальный идентификатор диалога. | — |
title | ReactNode | Вопрос или заголовок подтверждения. | — |
description | ReactNode | Пояснение под заголовком. | — |
color | 'primary' | 'danger'primary · danger | Цвет кнопки подтверждения. | primary |
confirmText | string | Текст кнопки подтверждения. | Confirm |
cancelText | string | Текст кнопки отмены. | Cancel |
onConfirm | () => void | Вызывается при подтверждении; после него окно закрывается. | — |
onCancel | () => void | Вызывается при отмене. | — |
open | boolean | Управляемое состояние открытия. | — |
defaultOpen | boolean | Начальное состояние без внешнего управления. | false |
onOpenChange | (open: boolean) => void | Вызывается при открытии и закрытии. | — |
trigger | DialogTriggerProps | Пропсы кнопки-триггера (как у Button); без него окно открывают через open. | — |
className | string | Класс корневого элемента. | — |
Нативные HTML-атрибуты поддерживаются там, где компонент рендерит соответствующий элемент. Параметры className управляют только оформлением.