Focus the submit button when confirmation modal is opened. Also, changed cancellation link to button. This makes the meaning clearer.
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import React from 'react';
 | 
						|
import PropTypes from 'prop-types';
 | 
						|
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
 | 
						|
import Button from '../../../components/button';
 | 
						|
 | 
						|
class ConfirmationModal extends React.PureComponent {
 | 
						|
 | 
						|
  static propTypes = {
 | 
						|
    message: PropTypes.node.isRequired,
 | 
						|
    confirm: PropTypes.string.isRequired,
 | 
						|
    onClose: PropTypes.func.isRequired,
 | 
						|
    onConfirm: PropTypes.func.isRequired,
 | 
						|
    intl: PropTypes.object.isRequired,
 | 
						|
  };
 | 
						|
 | 
						|
  componentDidMount() {
 | 
						|
    this.button.focus();
 | 
						|
  }
 | 
						|
 | 
						|
  handleClick = () => {
 | 
						|
    this.props.onClose();
 | 
						|
    this.props.onConfirm();
 | 
						|
  }
 | 
						|
 | 
						|
  handleCancel = () => {
 | 
						|
    this.props.onClose();
 | 
						|
  }
 | 
						|
 | 
						|
  setRef = (c) => {
 | 
						|
    this.button = c;
 | 
						|
  }
 | 
						|
 | 
						|
  render () {
 | 
						|
    const { message, confirm } = this.props;
 | 
						|
 | 
						|
    return (
 | 
						|
      <div className='modal-root__modal confirmation-modal'>
 | 
						|
        <div className='confirmation-modal__container'>
 | 
						|
          {message}
 | 
						|
        </div>
 | 
						|
 | 
						|
        <div className='confirmation-modal__action-bar'>
 | 
						|
          <Button onClick={this.handleCancel} className='confirmation-modal__cancel-button'>
 | 
						|
            <FormattedMessage id='confirmation_modal.cancel' defaultMessage='Cancel' />
 | 
						|
          </Button>
 | 
						|
          <Button text={confirm} onClick={this.handleClick} ref={this.setRef} />
 | 
						|
        </div>
 | 
						|
      </div>
 | 
						|
    );
 | 
						|
  }
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
export default injectIntl(ConfirmationModal);
 |