NEURALNG
OVERLAYBETA

Dialog

A native top-layer dialog primitive with controlled Signals, deterministic close reasons, focus restoration, localized controls and complete visual ownership.

Native dialogFocus safeSSR safe

GET STARTED

Import

Import the canonical standalone primitive and only the semantic sections used by the view.

app.ts TypeScript
import {
  NeuralDialog,
  NeuralDialogHeader,
  NeuralDialogBody,
  NeuralDialogFooter,
  NeuralDialogInitialFocus,
} from '@neural-ng/core/dialog';

@Component({ imports: [NeuralDialog, NeuralDialogHeader] })

Native modal composition

The browser top layer supplies modal containment. Initial focus moves to the input and returns to the opener after every close.

No dialog closed yet.
ACCOUNT

Edit profile

Choose the public display name shown in your workspace.

Controlled state and policy

Bind open when application state owns visibility. This review cannot be dismissed by Escape or the backdrop.

Release review

An explicit action is required. Background interaction remains inert.

Non-modal surface

Set modal="false" to use native show(). The page remains interactive and no modal backdrop is created.

Agent task details

This surface does not make the surrounding document inert.

Viewport-safe fluid width

fluid fills the safe viewport width while the native surface retains its maximum height and internal scrolling.

Responsive workspace

The dialog remains two rem units inside every viewport edge.

Full-screen workspace

full creates a borderless 100vw × 100dvh surface for focused editors, onboarding and immersive workflows. Content scroll remains owned by the native dialog.

FOCUSED MODE

Agent workspace

The full viewport is yours

Use this mode for immersive workflows, not ordinary confirmations or short forms.

Lifecycle and close intent

opened reports entry into the top layer. Every close includes its source and optional native return value.

Closed

Close this surface through any enabled dismissal path.

Unstyled and typed class slots

Headless mode removes Dialog visual classes while preserving the native top layer, structural hooks, focus and close behavior.

Consumer-owned canvas

No NeuralNg visual class controls this cyan surface.

Intentional boundaries

Dialog is a composable primitive. Confirmation workflows belong to NeuralConfirmDialog and NeuralConfirmationService.

Dragging, resizing and maximization are not implied by modal semantics and are excluded from the Beta contract.

Nested popups should use their own top-layer or appendTo="body" contract rather than escaping with arbitrary z-index values.