mirror of
https://github.com/docmost/docmost.git
synced 2026-05-18 15:34:05 +08:00
fadeeaa59d
- Add aria-label to icon-only ActionIcon triggers across tree, comments, share, group, breadcrumbs, templates, AI chat, API keys, and spaces - Give custom clickable divs/spans (color swatches, status swatches, load-more, PDF error, comment selection) role="button", tabIndex, and keyboard handlers - Add listbox/combobox semantics (role, aria-selected, aria-activedescendant) to slash menu, emoji menu, mention list, and link editor results - Add aria-haspopup/aria-expanded to bubble-menu triggers (node, text align, color) and status badge - Add aria-label to Modal.Root/Dialog instances that lack a title prop (page history, template preview, trash preview, drawio, comment, find-and-replace, page verification) - Add en-US translations for new aria-label strings
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { Modal, Text, ScrollArea } from "@mantine/core";
|
|
import { useTranslation } from "react-i18next";
|
|
import ReadonlyPageEditor from "@/features/editor/readonly-page-editor.tsx";
|
|
|
|
interface Props {
|
|
opened: boolean;
|
|
onClose: () => void;
|
|
pageTitle: string;
|
|
pageContent: any;
|
|
}
|
|
|
|
export default function TrashPageContentModal({
|
|
opened,
|
|
onClose,
|
|
pageTitle,
|
|
pageContent,
|
|
}: Props) {
|
|
const { t } = useTranslation();
|
|
const title = pageTitle || t("Untitled");
|
|
|
|
return (
|
|
<Modal.Root size={1200} opened={opened} onClose={onClose} aria-label={t("Preview")}>
|
|
<Modal.Overlay />
|
|
<Modal.Content style={{ overflow: "hidden" }}>
|
|
<Modal.Header>
|
|
<Modal.Title>
|
|
<Text size="md" fw={500}>
|
|
{t("Preview")}
|
|
</Text>
|
|
</Modal.Title>
|
|
<Modal.CloseButton />
|
|
</Modal.Header>
|
|
<Modal.Body p={0}>
|
|
<ScrollArea h="650" w="100%" scrollbarSize={5}>
|
|
<ReadonlyPageEditor title={title} content={pageContent} />
|
|
</ScrollArea>
|
|
</Modal.Body>
|
|
</Modal.Content>
|
|
</Modal.Root>
|
|
);
|
|
}
|