Skip to content

Dialog

A centred modal over the surface, opened by its trigger slot or by binding open.

Group: Overlays · Kind: native

open

Open in the playground

The same specimen painted by React, SwiftUI, Compose and gpui.

exponential-ui-dialog on Web
exponential-ui-dialog on iOS
exponential-ui-dialog on Android
exponential-ui-dialog on Desktop
Prop Type Required Bindable Description
title string – – The dialog heading.
description string – – A muted line under the heading.
open boolean – yes Whether it shows; bind it to a boolean path. Default false.
dismissible boolean – – Closes on the backdrop or Escape. Default true.
  • on.change: runs an action
  • trigger: one component by id
  • footer: one component by id

many

The basic catalog’s Modal renders as Dialog.

A native component: every renderer paints it directly.

Role: dialog

dialog (modal)

Keys Action
– Opening moves focus to the first focusable child (else the dialog)
– Tab cycles inside the dialog (focus trap)
Escape close when dismissible
– Closing returns focus to the trigger

Recipe parts: Dialog/overlay Dialog/content Dialog/title Dialog/description Dialog/footer Dialog/close

Keyed by: dismissible :hover :pressed :focus :disabled :checked :open :selected :invalid :dragover

Themes · Write a theme

AlertDialog · Drawer · DockCard · Popover · Tooltip · Menu · Toast