import React from 'react';
import {BaseComponent} from 'frill-core';
import LoginForm from '../UI/LoginForm.jsx';

/**
 * Login Mediator component
 * @extends {FrillCore.BaseComponent}
 * @example <caption>Usage in React component</caption>
 * <LoginMediator {...this.props} />
 */
class LoginMediator extends BaseComponent {
  /**
   * Constructor
   * @param {any} props
   */
  constructor(props) {
    super(props);

    this._bind([
      'onLoginClick',
    ]);
  }

  /**
   * Click handler
   */
  onLoginClick(username, password) {
    this.getFrill().action('requestAuth').login(username, password);
  }

  /**
   * render
   * @return {React DOM}
   * @see https://facebook.github.io/react/docs/component-specs.html#render
   */
  render() {
    return (
      <LoginForm onLoginClick={this.onLoginClick}/>
    );
  }
}

/**
 * Export LoginMediator
 */
export default LoginMediator;
