Spaces:
Build error
Build error
'use client' | |
import type { FC } from 'react' | |
import { useTranslation } from 'react-i18next' | |
import StatusPanel from './status' | |
import MetaData from './meta' | |
import CodeEditor from '@/app/components/workflow/nodes/_base/components/editor/code-editor' | |
import { CodeLanguage } from '@/app/components/workflow/nodes/code/types' | |
type ResultPanelProps = { | |
inputs?: string | |
process_data?: string | |
outputs?: string | |
status: string | |
error?: string | |
elapsed_time?: number | |
total_tokens?: number | |
created_at?: number | |
created_by?: string | |
finished_at?: number | |
steps?: number | |
showSteps?: boolean | |
} | |
const ResultPanel: FC<ResultPanelProps> = ({ | |
inputs, | |
process_data, | |
outputs, | |
status, | |
error, | |
elapsed_time, | |
total_tokens, | |
created_at, | |
created_by, | |
steps, | |
showSteps, | |
}) => { | |
const { t } = useTranslation() | |
return ( | |
<div className='bg-components-panel-bg py-2'> | |
<div className='px-4 py-2'> | |
<StatusPanel | |
status={status} | |
time={elapsed_time} | |
tokens={total_tokens} | |
error={error} | |
/> | |
</div> | |
<div className='px-4 py-2 flex flex-col gap-2'> | |
<CodeEditor | |
readOnly | |
title={<div>{t('workflow.common.input').toLocaleUpperCase()}</div>} | |
language={CodeLanguage.json} | |
value={inputs} | |
isJSONStringifyBeauty | |
/> | |
{process_data && ( | |
<CodeEditor | |
readOnly | |
title={<div>{t('workflow.common.processData').toLocaleUpperCase()}</div>} | |
language={CodeLanguage.json} | |
value={process_data} | |
isJSONStringifyBeauty | |
/> | |
)} | |
{(outputs || status === 'running') && ( | |
<CodeEditor | |
readOnly | |
title={<div>{t('workflow.common.output').toLocaleUpperCase()}</div>} | |
language={CodeLanguage.json} | |
value={outputs} | |
isJSONStringifyBeauty | |
/> | |
)} | |
</div> | |
<div className='px-4 py-2'> | |
<div className='h-[0.5px] divider-subtle' /> | |
</div> | |
<div className='px-4 py-2'> | |
<MetaData | |
status={status} | |
executor={created_by} | |
startTime={created_at} | |
time={elapsed_time} | |
tokens={total_tokens} | |
steps={steps} | |
showSteps={showSteps} | |
/> | |
</div> | |
</div> | |
) | |
} | |
export default ResultPanel | |