NormalizeIndicesControls.tsx 949 B

1234567891011121314151617181920212223242526272829303132333435
  1. import React from 'react';
  2. import { useTranslation } from 'next-i18next';
  3. type Props = {
  4. isRebuildingProcessing: boolean,
  5. onNormalizingRequested: () => void,
  6. isNormalized?: boolean,
  7. }
  8. const NormalizeIndicesControls = (props: Props): JSX.Element => {
  9. const { t } = useTranslation('admin');
  10. const { isNormalized, isRebuildingProcessing } = props;
  11. const isEnabled = (isNormalized != null) && !isNormalized && !isRebuildingProcessing;
  12. return (
  13. <>
  14. <button
  15. type="submit"
  16. className={`btn ${isEnabled ? 'btn-outline-info' : 'btn-outline-secondary'}`}
  17. onClick={() => { props.onNormalizingRequested() }}
  18. disabled={!isEnabled}
  19. >
  20. { t('full_text_search_management.normalize_button') }
  21. </button>
  22. <p className="form-text text-muted">
  23. { t('full_text_search_management.normalize_description') }<br />
  24. </p>
  25. </>
  26. );
  27. };
  28. export default NormalizeIndicesControls;