Dialog Component (ui/dialog.tsx)

atlas · src/ui/dialog.tsx · typescript · Apache-2.0
ui, fw:react

House modal dialog built on Base UI's dialog primitive, shaped to match shadcn's API for easy future migration. Reuse for centered modal popups with header/footer/title.

// Source: https://github.com/pacifio/atlas | License: Apache-2.0 | Copyright You must retain, in the Source form of any Derivative Works
// Provided via justclaw.it.com; keep this notice with the code.
import * as React from "react";
import { Dialog as DialogPrimitive } from "@base-ui/react/dialog";
import { X } from "lucide-react";

import { cn } from "@/lib/utils";
import { IconButton } from "@/ui/icon-button";

/**
 * The house dialog (decision 16), built on `@base-ui/react/dialog`.
 *
 * Shaped like shadcn's base-style `dialog` — same exports (including the
 * `DialogOverlay` name for what Base UI calls the Backdrop), same `data-slot`,
 * `showCloseButton` on the content — so a later `shadcn add` drops in with the
 * classes swapped rather than the structure rewritten.
 *
 * A centred

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key