您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

index.tsx 1.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. 'use client'
  2. import type { FC } from 'react'
  3. import React from 'react'
  4. import { useTranslation } from 'react-i18next'
  5. import GroupName from '../base/group-name'
  6. import Moderation from './moderation'
  7. import Annotation from './annotation/config-param'
  8. import type { EmbeddingModelConfig } from '@/app/components/app/annotation/type'
  9. export type ToolboxProps = {
  10. showModerationSettings: boolean
  11. showAnnotation: boolean
  12. onEmbeddingChange: (embeddingModel: EmbeddingModelConfig) => void
  13. onScoreChange: (score: number, embeddingModel?: EmbeddingModelConfig) => void
  14. }
  15. const Toolbox: FC<ToolboxProps> = ({
  16. showModerationSettings,
  17. showAnnotation,
  18. onEmbeddingChange,
  19. onScoreChange,
  20. }) => {
  21. const { t } = useTranslation()
  22. return (
  23. <div className='mt-7'>
  24. <GroupName name={t('appDebug.feature.toolbox.title')} />
  25. {
  26. showModerationSettings && (
  27. <Moderation />
  28. )
  29. }
  30. {
  31. (showAnnotation || true) && (
  32. <Annotation
  33. onEmbeddingChange={onEmbeddingChange}
  34. onScoreChange={onScoreChange}
  35. />
  36. )
  37. }
  38. </div>
  39. )
  40. }
  41. export default React.memo(Toolbox)