/* eslint-disable react-hooks/rules-of-hooks */ 'use client' import { useAtomValue } from 'jotai' // import { useCreateConversation } from '@/hooks/useCreateConversation' import { useActiveModel } from '@/hooks/useActiveModel' import useGetInputState from '@/hooks/useGetInputState' import BasicPromptAccessories from '../BasicPromptAccessories' import BasicPromptInput from '../BasicPromptInput' import { currentConvoStateAtom, getActiveConvoIdAtom, } from '@/helpers/atoms/Conversation.atom' import { userConversationsAtom } from '@/helpers/atoms/Conversation.atom' // import { showingModalNoActiveModel } from '@/helpers/atoms/Modal.atom' // import { // activeAssistantModelAtom, // stateModel, // } from '@/helpers/atoms/Model.atom' const InputToolbar: React.FC = () => { // const activeModel = useAtomValue(activeAssistantModelAtom) const currentConvoState = useAtomValue(currentConvoStateAtom) const { inputState, currentConvo } = useGetInputState() // const { requestCreateConvo } = useCreateConversation() const { startModel } = useActiveModel() // const { loading } = useAtomValue(stateModel) const conversations = useAtomValue(userConversationsAtom) const activeConvoId = useAtomValue(getActiveConvoIdAtom) // const setShowModalNoActiveModel = useSetAtom(showingModalNoActiveModel) // const onNewConversationClick = () => { // if (activeModel) { // requestCreateConvo(activeModel) // } else { // setShowModalNoActiveModel(true) // } // } const onStartModelClick = () => { const modelId = currentConvo?.modelId if (!modelId) return startModel(modelId) } if (!activeConvoId) { return null } if ( (activeConvoId && inputState === 'model-mismatch') || inputState === 'loading' ) { // const message = inputState === 'loading' ? 'Loading..' : 'Model mismatch!' return (
{/*

{message}

*/}
) } if (inputState === 'model-not-found') { return (

Model {currentConvo?.modelId} not found! Please re-download the model first.

) } if (conversations.length > 0) return (
{currentConvoState?.error && (
{currentConvoState?.error?.toString()}
)} {/*
} />
*/} {/* My text input */}
) } export default InputToolbar