| | |
| | | const [list, setList] = useState<AgentIteration[]>([]) |
| | | |
| | | const tools = useMemo(() => { |
| | | const res = uniq(flatten(runDetail?.iterations.map((iteration) => { |
| | | const res = uniq(flatten(runDetail?.iterations.map((iteration: any) => { |
| | | return iteration.tool_calls.map((tool: any) => tool.tool_name).filter(Boolean) |
| | | })).filter(Boolean)) |
| | | return res |
| | |
| | | }, [appDetail, conversationID, messageID]) |
| | | |
| | | return ( |
| | | <div className='relative flex grow flex-col'> |
| | | <div className='grow relative flex flex-col'> |
| | | {/* tab */} |
| | | <div className='flex shrink-0 items-center border-b-[0.5px] border-divider-regular px-4'> |
| | | <div className='shrink-0 flex items-center px-4 border-b-[0.5px] border-[rgba(0,0,0,0.05)]'> |
| | | <div |
| | | className={cn( |
| | | 'mr-6 cursor-pointer border-b-2 border-transparent py-3 text-[13px] font-semibold leading-[18px] text-text-tertiary', |
| | | currentTab === 'DETAIL' && '!border-[rgb(21,94,239)] text-text-secondary', |
| | | 'mr-6 py-3 border-b-2 border-transparent text-[13px] font-semibold leading-[18px] text-gray-400 cursor-pointer', |
| | | currentTab === 'DETAIL' && '!border-[rgb(21,94,239)] text-gray-700', |
| | | )} |
| | | onClick={() => switchTab('DETAIL')} |
| | | >{t('runLog.detail')}</div> |
| | | <div |
| | | className={cn( |
| | | 'mr-6 cursor-pointer border-b-2 border-transparent py-3 text-[13px] font-semibold leading-[18px] text-text-tertiary', |
| | | currentTab === 'TRACING' && '!border-[rgb(21,94,239)] text-text-secondary', |
| | | 'mr-6 py-3 border-b-2 border-transparent text-[13px] font-semibold leading-[18px] text-gray-400 cursor-pointer', |
| | | currentTab === 'TRACING' && '!border-[rgb(21,94,239)] text-gray-700', |
| | | )} |
| | | onClick={() => switchTab('TRACING')} |
| | | >{t('runLog.tracing')}</div> |
| | | </div> |
| | | {/* panel detail */} |
| | | <div className={cn('h-0 grow overflow-y-auto rounded-b-2xl bg-components-panel-bg', currentTab !== 'DETAIL' && '!bg-background-section')}> |
| | | <div className={cn('grow bg-white h-0 overflow-y-auto rounded-b-2xl', currentTab !== 'DETAIL' && '!bg-gray-50')}> |
| | | {loading && ( |
| | | <div className='flex h-full items-center justify-center bg-components-panel-bg'> |
| | | <div className='flex h-full items-center justify-center bg-white'> |
| | | <Loading /> |
| | | </div> |
| | | )} |