import React, { Component } from 'react';
import './index.less';
import Assets from '@src/components/Assets';

export default class AnswerSelect extends Component {
  constructor(props) {
    super(props);
    this.state = { selecting: false };
  }

  componentWillMount() {}

  componentWillUnmount() {}

  open() {
    this.setState({ selecting: true });
  }

  close() {
    this.setState({ selecting: false });
  }

  render() {
    const { selecting } = this.state;
    const { value, list = [] } = this.props;
    let index = 0;
    for (let i = 0; i < list.length; i += 1) {
      if (list[i].key === value) {
        index = i;
        break;
      }
    }
    const title = list.length > 0 ? list[index].title : '';
    return (
      <div className="answer-select">
        <div hidden={!selecting} className="mask" onClick={() => this.close()} />
        <div className="select-warp">
          <div className="text" onClick={() => this.open()}>
            {title}
            <Assets name="chooser_icon" />
          </div>
          <div className={`select-body ${selecting ? 'select' : ''}`}>
            {list.map(item => {
              return (
                <div className="select-option" onClick={() => this.close()}>
                  {item.title}
                </div>
              );
            })}
          </div>
        </div>
      </div>
    );
  }
}