| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 | 
							- import type { FC } from 'react'
 - import React from 'react'
 - import { useTranslation } from 'react-i18next'
 - import type { NodeProps } from 'reactflow'
 - import InfoPanel from '../_base/components/info-panel'
 - import { NodeSourceHandle } from '../_base/components/node-handle'
 - import type { QuestionClassifierNodeType } from './types'
 - import {
 -   useTextGenerationCurrentProviderAndModelAndModelList,
 - } from '@/app/components/header/account-setting/model-provider-page/hooks'
 - import ModelSelector from '@/app/components/header/account-setting/model-provider-page/model-selector'
 - 
 - const i18nPrefix = 'workflow.nodes.questionClassifiers'
 - 
 - const Node: FC<NodeProps<QuestionClassifierNodeType>> = (props) => {
 -   const { t } = useTranslation()
 - 
 -   const { data } = props
 -   const { provider, name: modelId } = data.model
 -   // const tempTopics = data.topics
 -   const topics = data.classes
 -   const {
 -     textGenerationModelList,
 -   } = useTextGenerationCurrentProviderAndModelAndModelList()
 -   const hasSetModel = provider && modelId
 - 
 -   if (!hasSetModel && !topics.length)
 -     return null
 - 
 -   return (
 -     <div className='mb-1 px-3 py-1'>
 -       {hasSetModel && (
 -         <ModelSelector
 -           defaultModel={{ provider, model: modelId }}
 -           modelList={textGenerationModelList}
 -           readonly
 -         />
 -       )}
 -       {
 -         !!topics.length && (
 -           <div className='mt-2 space-y-0.5'>
 -             {topics.map((topic, index) => (
 -               <div
 -                 key={index}
 -                 className='relative'
 -               >
 -                 <InfoPanel
 -                   title={`${t(`${i18nPrefix}.class`)} ${index + 1}`}
 -                   content={topic.name}
 -                 />
 -                 <NodeSourceHandle
 -                   {...props}
 -                   handleId={topic.id}
 -                   handleClassName='!top-1/2 !-translate-y-1/2 !-right-[21px]'
 -                 />
 -               </div>
 -             ))}
 -           </div>
 -         )
 -       }
 -     </div>
 -   )
 - }
 - 
 - export default React.memo(Node)
 
 
  |