code: function getProps (mixin) {
    const props = {};
  
    [this.props, this.state].forEach((obj) => {
      if (obj) {
        for (let key in obj) {
          let value = obj[key];
  
          props[key] = typeof value === 'function' && value === mixin[key]
            ? value.bind(this)
            : value;
        }
      }
    });
  
    return props;
  }
docs: Gets the `props` and `state` to be passed to the component (as `props`).
  Mixin methods are bound to the higher-order component.
  
  @param {Object} mixin
  @return {Object}
  @api private