mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-09-01 11:33:44 +00:00
* feat: Refactor ChatForm and StopButton components for improved styling and localization * feat: Refactor AudioRecorder, ChatForm, AttachFile, and SendButton components for improved styling and layout * feat: Add RevokeAllKeys component and update styling for buttons and inputs * feat: Refactor ClearChats component and update ClearConvos functionality for improved clarity and user experience * feat: Remove ClearConvos component and update related imports and functionality in Avatar and DeleteCacheButton components * feat: Rename DeleteCacheButton to DeleteCache and update related imports; enhance confirmation message in localization * feat: Update ChatForm layout for RTL support and improve component structure * feat: Adjust ChatForm layout for improved RTL support and alignment * feat: Refactor Bookmark components to use new UI elements and improve styling * feat: Update FileSearch and ShareAgent components for improved button styling and layout * feat: Update ChatForm and TextareaHeader styles for improved UI consistency * feat: Refactor Nav components for improved styling and layout adjustments * feat: Update button sizes and padding for improved UI consistency across chat components * feat: Remove ClearChatsButton test file as part of code cleanup
30 lines
1.2 KiB
TypeScript
30 lines
1.2 KiB
TypeScript
import { useState } from 'react';
|
|
import { BookmarkPlusIcon } from 'lucide-react';
|
|
import { useConversationTagsQuery } from '~/data-provider';
|
|
import { Button } from '~/components/ui';
|
|
import { BookmarkContext } from '~/Providers/BookmarkContext';
|
|
import { BookmarkEditDialog } from '~/components/Bookmarks';
|
|
import BookmarkTable from './BookmarkTable';
|
|
import { useLocalize } from '~/hooks';
|
|
|
|
const BookmarkPanel = () => {
|
|
const localize = useLocalize();
|
|
const { data } = useConversationTagsQuery();
|
|
const [open, setOpen] = useState(false);
|
|
|
|
return (
|
|
<div className="h-auto max-w-full overflow-x-hidden">
|
|
<BookmarkContext.Provider value={{ bookmarks: data || [] }}>
|
|
<BookmarkTable />
|
|
<div className="flex justify-between gap-2">
|
|
<BookmarkEditDialog context="BookmarkPanel" open={open} setOpen={setOpen} />
|
|
<Button variant="outline" className="w-full gap-2 text-sm" onClick={() => setOpen(!open)}>
|
|
<BookmarkPlusIcon className="size-4" />
|
|
<div className="break-all">{localize('com_ui_bookmarks_new')}</div>
|
|
</Button>
|
|
</div>
|
|
</BookmarkContext.Provider>
|
|
</div>
|
|
);
|
|
};
|
|
export default BookmarkPanel;
|