File size: 1,427 Bytes
f0743f4 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | import React, { useState } from 'react';
import { BookmarkPlusIcon } from 'lucide-react';
import { OGDialogTrigger } from '@librechat/client';
import type { FC } from 'react';
import { BookmarkEditDialog, BookmarkItems, BookmarkItem } from '~/components/Bookmarks';
import { useLocalize } from '~/hooks';
export const BookmarkMenuItems: FC<{
tags: string[];
setTags: React.Dispatch<React.SetStateAction<string[]>>;
handleSubmit: (tag?: string) => void;
conversationId?: string;
}> = ({ tags, setTags, handleSubmit, conversationId }) => {
const localize = useLocalize();
const [open, setOpen] = useState(false);
const handleToggleOpen = () => setOpen(!open);
return (
<BookmarkItems
tags={tags}
handleSubmit={handleSubmit}
header={
<BookmarkEditDialog
context="BookmarkMenu - BookmarkEditDialog"
conversationId={conversationId}
tags={tags}
setTags={setTags}
open={open}
setOpen={setOpen}
>
<OGDialogTrigger asChild>
<BookmarkItem
tag={localize('com_ui_bookmarks_new')}
data-testid="bookmark-item-new"
handleSubmit={handleToggleOpen}
selected={false}
icon={<BookmarkPlusIcon className="size-4" aria-label="Add Bookmark" />}
/>
</OGDialogTrigger>
</BookmarkEditDialog>
}
/>
);
};
|