From 576001f89f86cfd3a158f8b2594581ce1af78970 Mon Sep 17 00:00:00 2001 From: Mats Bosson Date: Sun, 29 Mar 2026 08:22:31 +0700 Subject: [PATCH] Fix AlertDialog ARIA --- .../src/components/alert-dialog/alert-dialog-content.tsx | 4 ++-- .../src/components/alert-dialog/alert-dialog-root.tsx | 3 +++ .../src/components/alert-dialog/alert-dialog-trigger.tsx | 9 ++++++++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/core/src/components/alert-dialog/alert-dialog-content.tsx b/packages/core/src/components/alert-dialog/alert-dialog-content.tsx index a63aafa..bb33f70 100644 --- a/packages/core/src/components/alert-dialog/alert-dialog-content.tsx +++ b/packages/core/src/components/alert-dialog/alert-dialog-content.tsx @@ -43,8 +43,8 @@ export function AlertDialogContent(props: AlertDialogContentProps): JSX.Element id={ctx.contentId()} role="alertdialog" aria-modal="true" - aria-labelledby={ctx.titleId() ?? undefined} - aria-describedby={ctx.descriptionId() ?? undefined} + aria-labelledby={ctx.titleId() || undefined} + aria-describedby={ctx.descriptionId() || undefined} data-state={ctx.isOpen() ? "open" : "closed"} {...rest} > diff --git a/packages/core/src/components/alert-dialog/alert-dialog-root.tsx b/packages/core/src/components/alert-dialog/alert-dialog-root.tsx index 4d6c5fa..bc8615c 100644 --- a/packages/core/src/components/alert-dialog/alert-dialog-root.tsx +++ b/packages/core/src/components/alert-dialog/alert-dialog-root.tsx @@ -13,8 +13,11 @@ import { /** Props for the AlertDialog root. */ export interface AlertDialogRootProps { + /** Controls open state externally. */ open?: boolean; + /** Initial open state when uncontrolled. */ defaultOpen?: boolean; + /** Called when open state changes. */ onOpenChange?: (open: boolean) => void; children: JSX.Element; } diff --git a/packages/core/src/components/alert-dialog/alert-dialog-trigger.tsx b/packages/core/src/components/alert-dialog/alert-dialog-trigger.tsx index 58add57..29f7b33 100644 --- a/packages/core/src/components/alert-dialog/alert-dialog-trigger.tsx +++ b/packages/core/src/components/alert-dialog/alert-dialog-trigger.tsx @@ -18,7 +18,14 @@ export function AlertDialogTrigger(props: AlertDialogTriggerProps): JSX.Element }; return ( - );