mirror of
https://github.com/docmost/docmost.git
synced 2026-05-08 07:13:06 +08:00
31 lines
793 B
TypeScript
31 lines
793 B
TypeScript
import { Stack, Text } from "@mantine/core";
|
|
import { type TablerIcon } from "@tabler/icons-react";
|
|
import { ReactNode } from "react";
|
|
import classes from "./empty-state.module.css";
|
|
|
|
type EmptyStateProps = {
|
|
icon: TablerIcon;
|
|
title: string;
|
|
description?: string;
|
|
action?: ReactNode;
|
|
};
|
|
|
|
export function EmptyState({ icon: Icon, title, description, action }: EmptyStateProps) {
|
|
return (
|
|
<div className={classes.root}>
|
|
<Stack align="center" gap="xs">
|
|
<Icon size={40} stroke={1.5} color="var(--mantine-color-dimmed)" />
|
|
<Text size="lg" fw={500}>
|
|
{title}
|
|
</Text>
|
|
{description && (
|
|
<Text size="sm" c="dimmed" maw={350}>
|
|
{description}
|
|
</Text>
|
|
)}
|
|
{action}
|
|
</Stack>
|
|
</div>
|
|
);
|
|
}
|