🔧 fix: Google Custom Headers, Bookmarks Menu, Sources Dialog Close (#7722)

* 🔧 chore: fix ESLint warnings in AdminSettings

* fix: DropdownPopup for BookmarkMenu being affected by recent Header change

* fix: Replace button with OGDialogClose for proper dialog closing

* chore: linting in google client initialization

* chore: linting in getLLMConfig function

* chore: update @librechat/agents to version 2.4.38 to support Google GenAI Custom Headers
This commit is contained in:
Danny Avila 2025-06-04 00:13:28 -04:00 committed by GitHub
parent cbddd394a5
commit 6bb78247b3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 630 additions and 70 deletions

View file

@ -157,8 +157,9 @@ const BookmarkMenu: FC = () => {
return (
<BookmarkContext.Provider value={{ bookmarks: data || [] }}>
<DropdownPopup
focusLoop={true}
portal={true}
menuId={menuId}
focusLoop={true}
isOpen={isMenuOpen}
unmountOnHide={true}
setIsOpen={setIsMenuOpen}

View file

@ -81,7 +81,7 @@ const AdminSettings = () => {
const defaultValues = useMemo(() => {
if (roles?.[selectedRole]?.permissions) {
return roles[selectedRole].permissions[PermissionTypes.PROMPTS];
return roles[selectedRole]?.permissions[PermissionTypes.PROMPTS];
}
return roleDefaults[selectedRole].permissions[PermissionTypes.PROMPTS];
}, [roles, selectedRole]);
@ -99,11 +99,7 @@ const AdminSettings = () => {
});
useEffect(() => {
if (roles?.[selectedRole]?.permissions?.[PermissionTypes.PROMPTS]) {
reset(roles[selectedRole].permissions[PermissionTypes.PROMPTS]);
} else {
reset(roleDefaults[selectedRole].permissions[PermissionTypes.PROMPTS]);
}
reset(roles?.[selectedRole]?.permissions?.[PermissionTypes.PROMPTS]);
}, [roles, selectedRole, reset]);
if (user?.role !== SystemRoles.ADMIN) {

View file

@ -1,7 +1,7 @@
import React, { useMemo } from 'react';
import * as Ariakit from '@ariakit/react';
import { VisuallyHidden } from '@ariakit/react';
import { Globe, Newspaper, Image, ChevronDown } from 'lucide-react';
import { X, Globe, Newspaper, Image, ChevronDown } from 'lucide-react';
import type { ValidSource, ImageResult } from 'librechat-data-provider';
import { FaviconImage, getCleanDomain } from '~/components/Web/SourceHovercard';
import { useSearchContext } from '~/Providers';
@ -9,6 +9,7 @@ import { AnimatedTabs } from '~/components/ui';
import { useLocalize } from '~/hooks';
import {
OGDialog,
OGDialogClose,
OGDialogTitle,
OGDialogContent,
OGDialogTrigger,
@ -213,25 +214,12 @@ function SourcesGroup({ sources, limit = 3 }: { sources: ValidSource[]; limit?:
<OGDialogTitle className="text-base font-medium">
{localize('com_sources_title')}
</OGDialogTitle>
<button
<OGDialogClose
className="rounded-full p-1 text-text-secondary hover:bg-surface-tertiary hover:text-text-primary"
aria-label={localize('com_ui_close')}
>
<svg
xmlns="http://www.w3.org/2000/svg"
width="20"
height="20"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
strokeWidth="2"
strokeLinecap="round"
strokeLinejoin="round"
>
<line x1="18" y1="6" x2="6" y2="18"></line>
<line x1="6" y1="6" x2="18" y2="18"></line>
</svg>
</button>
<X className="h-4 w-4" />
</OGDialogClose>
</div>
<div className="flex-1 overflow-y-auto px-3 py-2">
<div className="flex flex-col gap-2">