import { useGetEndpointsQuery } from 'librechat-data-provider/react-query'; import { EModelEndpoint, isAssistantsEndpoint } from 'librechat-data-provider'; import type { ReactNode } from 'react'; import { useChatContext, useAssistantsMapContext } from '~/Providers'; import { TooltipProvider, Tooltip } from '~/components/ui'; import ConvoIcon from '~/components/Endpoints/ConvoIcon'; import { getIconEndpoint, cn } from '~/utils'; import Prompts from './Prompts'; export default function Landing({ Header }: { Header?: ReactNode }) { const { conversation } = useChatContext(); const assistantMap = useAssistantsMapContext(); const { data: endpointsConfig } = useGetEndpointsQuery(); let { endpoint = '' } = conversation ?? {}; const { assistant_id = null } = conversation ?? {}; if ( endpoint === EModelEndpoint.chatGPTBrowser || endpoint === EModelEndpoint.azureOpenAI || endpoint === EModelEndpoint.gptPlugins ) { endpoint = EModelEndpoint.openAI; } const iconURL = conversation?.iconURL; endpoint = getIconEndpoint({ endpointsConfig, iconURL, endpoint }); const isAssistant = isAssistantsEndpoint(endpoint); const assistant = isAssistant && assistantMap?.[endpoint]?.[assistant_id ?? '']; const assistantName = (assistant && assistant?.name) || ''; const avatar = (assistant && (assistant?.metadata?.avatar as string)) || ''; const containerClassName = 'shadow-stroke relative flex h-full items-center justify-center rounded-full bg-white text-black'; return (
{Header && Header}
); }