import { useCallback } from 'react' import PropTypes from 'prop-types' import { Trans, useTranslation } from 'react-i18next' import OLButton from '@/features/ui/components/ol/ol-button' import PreviewLogEntryHeader from './preview-log-entry-header' import Icon from '../../../shared/components/icon' import { useDetachCompileContext as useCompileContext } from '../../../shared/context/detach-compile-context' import { useStopOnFirstError } from '../../../shared/hooks/use-stop-on-first-error' import MaterialIcon from '@/shared/components/material-icon' import BootstrapVersionSwitcher from '@/features/ui/components/bootstrap-5/bootstrap-version-switcher' function PreviewLogsPaneMaxEntries({ totalEntries, entriesShown, hasErrors }) { const { t } = useTranslation() const { startCompile, stoppedOnFirstError, setAnimateCompileDropdownArrow } = useCompileContext() const { enableStopOnFirstError } = useStopOnFirstError({ eventSource: 'too-many-logs', }) const title = t('log_entry_maximum_entries_title', { total: totalEntries, displayed: entriesShown, }) const handleEnableStopOnFirstErrorClick = useCallback(() => { enableStopOnFirstError() startCompile({ stopOnFirstError: true }) setAnimateCompileDropdownArrow(true) }, [enableStopOnFirstError, startCompile, setAnimateCompileDropdownArrow]) return (
{hasErrors && !stoppedOnFirstError ? ( <>

} bs5={ } />   {t('tip')}: , // eslint-disable-next-line jsx-a11y/anchor-has-content , ]} />{' '}

{t('log_entry_maximum_entries_see_full_logs')}

) : (

} bs5={} />   {t('tip')}: {t('log_entry_maximum_entries_see_full_logs')}

)}
) } PreviewLogsPaneMaxEntries.propTypes = { totalEntries: PropTypes.number, entriesShown: PropTypes.number, hasErrors: PropTypes.bool, } export default PreviewLogsPaneMaxEntries