import React, { useState, useEffect, forwardRef } from 'react'; import { Tabs, TabsList, TabsTrigger } from '../ui/Tabs.tsx'; import { useDispatch, useSelector } from 'react-redux'; import { setConversation } from '~/store/convoSlice'; function BingStyles(props, ref) { const dispatch = useDispatch(); const [value, setValue] = useState('fast'); const { model } = useSelector((state) => state.submit); const { conversationId } = useSelector((state) => state.convo); const { messages } = useSelector((state) => state.messages); const isBing = model === 'bingai' || model === 'sydney'; useEffect(() => { if (model === 'bingai' && !conversationId || model === 'sydney') { dispatch(setConversation({ toneStyle: value })); } }, [conversationId, model, value, dispatch]); const show = isBing && ((!conversationId || messages?.length === 0) || props.show); const defaultClasses = 'p-2 rounded-md font-normal bg-white/[.60] dark:bg-gray-700 text-black'; const defaultSelected = defaultClasses + 'font-medium data-[state=active]:text-white'; const selectedClass = (val) => val + '-tab ' + defaultSelected; const changeHandler = value => { setValue(value); dispatch(setConversation({ toneStyle: value })); }; return ( {'Creative'} {'Fast'} {'Balanced'} {'Precise'} ); } export default forwardRef(BingStyles);