36 lines
773 B
TypeScript
36 lines
773 B
TypeScript
import { Stack, Text } from '@mantine/core';
|
|
import { textClasses } from 'styles';
|
|
import type { Bookmark } from 'types';
|
|
import BookmarkItem from './BookmarkItem';
|
|
|
|
function BookmarkGroups({
|
|
bookmarks,
|
|
category,
|
|
}: {
|
|
bookmarks: Bookmark[];
|
|
category: string;
|
|
}) {
|
|
return (
|
|
<Stack
|
|
style={{
|
|
marginBottom: 0,
|
|
display: 'block',
|
|
lineHeight: '1.5rem',
|
|
overflow: 'hidden',
|
|
whiteSpace: 'nowrap',
|
|
}}
|
|
>
|
|
<Text className={textClasses.bookmarkCategory} classNames={textClasses}>
|
|
{category}
|
|
</Text>
|
|
{bookmarks
|
|
?.toSorted((a: Bookmark, b: Bookmark) => (a.index > b.index ? 1 : -1))
|
|
.map((bookmark: Bookmark) => (
|
|
<BookmarkItem key={bookmark.name} bookmark={bookmark} />
|
|
))}
|
|
</Stack>
|
|
);
|
|
}
|
|
|
|
export default BookmarkGroups;
|