ConfirmDialog

Подтверждение действия в модальном окне.

Готовый Dialog с заголовком, описанием и кнопками подтверждения и отмены. Нужен уникальный id и PBCProvider (или DialogProvider) выше по дереву. trigger принимает пропсы кнопки-триггера, как у Button; без него откройте окно через open и onOpenChange. onConfirm вызывается при подтверждении, после чего окно закрывается.

Живой пример

Delete the file?

This action cannot be undone.

Настройки примера

Использование

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Тип / вариантыНазначениеПо умолчанию
idstringУникальный идентификатор диалога.—
titleReactNodeВопрос или заголовок подтверждения.—
descriptionReactNodeПояснение под заголовком.—
color'primary' | 'danger'primary · dangerЦвет кнопки подтверждения.primary
confirmTextstringТекст кнопки подтверждения.Confirm
cancelTextstringТекст кнопки отмены.Cancel
onConfirm() => voidВызывается при подтверждении; после него окно закрывается.—
onCancel() => voidВызывается при отмене.—
openbooleanУправляемое состояние открытия.—
defaultOpenbooleanНачальное состояние без внешнего управления.false
onOpenChange(open: boolean) => voidВызывается при открытии и закрытии.—
triggerDialogTriggerPropsПропсы кнопки-триггера (как у Button); без него окно открывают через open.—
classNamestringКласс корневого элемента.—

Нативные HTML-атрибуты поддерживаются там, где компонент рендерит соответствующий элемент. Параметры className управляют только оформлением.