_userUpdateValue(value) {
    if (has(this.props, 'valueLink')) {
      this.props.valueLink.requestChange(value);
      this.setState({
        isOpen: true,
        focusedOptionIndex: undefined,
      });
    } else if (has(this.props, 'value')) {
      this.setState({
        isOpen: true,
        focusedOptionIndex: undefined,
      });
    } else {
      this.setState({
        inputValue: value,
        isOpen: true,
        focusedOptionIndex: undefined,
      });
      this.filteredOptions = ComboBox.filterOptions(value, this.props);
    }

    const obj = { value, isOptionSelection: false, isMatchingOption: false };

    const matchedOption = this._findMatch(value);
    if (matchedOption) {
      obj.identifier = matchedOption.props.identifier;
      obj.isMatchingOption = true;
    }

    if (this.props.onUpdate) {
      this.props.onUpdate(obj);
    }
  }
The function is called when user inputs a value in the input box. This can be done by:
1. typing/ pasting value into input box
2. pressing arrowRight key when there is some hint in the input box

Function will do following:
1. Open the options
2. Change value of input depending on whether its has value, defaultValue or valueLink property
3. Call onUpdate props function