Files
labelmain-demo/app/management/project/detail/components/NoteRulesTable.tsx
2026-02-24 17:49:09 +08:00

62 lines
1.5 KiB
TypeScript

"use client"
import { ProjectDetail } from "@/components/label/api/project/typing"
import { List, Paper, Stack, Text } from "@mantine/core"
export default function NoteRulesTable(props: {
info: ProjectDetail.DataProps | undefined
}) {
const rules = props.info?.comment_rule
const textRules = rules?.text_rules ?? []
const checkBoxRules = rules?.check_box_rules ?? []
return (
<Paper
withBorder
p="sm"
radius="md"
style={{
borderColor:
"light-dark(var(--mantine-color-gray-4), var(--mantine-color-dark-4))",
}}>
<Stack gap="xs">
<Text fw={700}></Text>
<Stack gap={4}>
<Text size="sm" fw={600}>
</Text>
{textRules.length ? (
<List size="sm" spacing={4}>
{textRules.map((r, idx) => (
<List.Item key={idx}>{r}</List.Item>
))}
</List>
) : (
<Text size="sm" c="dimmed">
-
</Text>
)}
</Stack>
<Stack gap={4}>
<Text size="sm" fw={600}>
</Text>
{checkBoxRules.length ? (
<List size="sm" spacing={4}>
{checkBoxRules.map((r, idx) => (
<List.Item key={idx}>{String(r)}</List.Item>
))}
</List>
) : (
<Text size="sm" c="dimmed">
-
</Text>
)}
</Stack>
</Stack>
</Paper>
)
}