LivaDialog
DevExtreme Popup üzerine kurulu, hazır tiplerle (bilgi, başarı, uyarı, tehlike,
onay) gelen iletişim kutusu. type prop'una göre ikon ve varsayılan butonlar
otomatik oluşturulur; buttons ile tamamen özel buton dizisi de verilebilir.
import { LivaDialog } from "@dataliva/livalib";
Tipler
type prop'u info, success, warning ve danger değerlerinde tek bir
"OK" butonuyla hazır bir bildirim dialogu üretir. Dialog bir tetikleyici ile
açılır: state true olduğunda bileşen render edilir, onHiding state'i
sıfırlayarak kapatır.
Onay Dialogu
type="confirm" iki butonlu (Cancel / Confirm) bir onay penceresi oluşturur.
Kullanıcının seçimi onConfirm ve onCancel geri çağrılarıyla yakalanır; her
iki buton da dialogu otomatik kapatır.
Özel Butonlar
buttons dizisi verildiğinde varsayılan butonların yerine geçer. Her butonda
variant, stylingMode ve autoClose alanları bulunur; autoClose: true
olan buton tıklandığında önce onClick çalışır, ardından dialog kapanır.
| Prop | Tip | Varsayılan |
|---|---|---|
visible | boolean | — (zorunlu) |
onHiding | () => void | — (zorunlu) |
title | string | — |
description | string | ReactNode | — |
icon | string | ReactNode | tipe göre |
type | 'info' | 'success' | 'warning' | 'danger' | 'confirm' | 'custom' | 'custom' |
buttons | LivaDialogButton[] | [] |
onConfirm | () => void | — |
onCancel | () => void | — |
showCloseButton | boolean | true |
size | 'small' | 'medium' | 'large' | 'medium' |
variant | 'standard' | 'modal' | 'modal' |
hideOnOutsideClick | boolean | true |
children | ReactNode | — |
LivaDialogButton alanları:
| Alan | Tip | Varsayılan |
|---|---|---|
text | string | — (zorunlu) |
onClick | () => void | — (zorunlu) |
variant | 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | — |
stylingMode | 'text' | 'outlined' | 'contained' | — |
disabled | boolean | false |
autoClose | boolean | false |
Ayrıca DevExtreme IPopupOptions'tan gelen prop'lar (ör. shading,
animation) aynen aktarılır.