| 123456789101112131415161718192021222324252627282930313233343536373839 | 'use client'import type { FC } from 'react'import React, { useCallback } from 'react'import { useTranslation } from 'react-i18next'import StatusWithAction from './status-with-action'import { useAutoDisabledDocuments, useDocumentEnable, useInvalidDisabledDocument } from '@/service/knowledge/use-document'import Toast from '@/app/components/base/toast'type Props = {  datasetId: string}const AutoDisabledDocument: FC<Props> = ({  datasetId,}) => {  const { t } = useTranslation()  const { data, isLoading } = useAutoDisabledDocuments(datasetId)  const invalidDisabledDocument = useInvalidDisabledDocument()  const documentIds = data?.document_ids  const hasDisabledDocument = documentIds && documentIds.length > 0  const { mutateAsync: enableDocument } = useDocumentEnable()  const handleEnableDocuments = useCallback(async () => {    await enableDocument({ datasetId, documentIds })    invalidDisabledDocument()    Toast.notify({ type: 'success', message: t('common.actionMsg.modifiedSuccessfully') })  }, [])  if (!hasDisabledDocument || isLoading)    return null  return (    <StatusWithAction      type='info'      description={t('dataset.documentsDisabled', { num: documentIds?.length })}      actionText={t('dataset.enable')}      onAction={handleEnableDocuments}    />  )}export default React.memo(AutoDisabledDocument)
 |