function expand( duration ) {
    if ( _isExpanded() || _isExpanding() ) {
      return this;
    }

    duration = duration || _calculateExpandDuration( _contentHeight );

    _setStateTo( EXPANDING );
    this.dispatchEvent( 'expandBegin', { target: _that } );
    _setMaxHeight();
    _transitionHeight( _expandComplete, duration );
    return this;
  }
/**
   * @param {number} duration
   *   The duration of the sliding animation in milliseconds.
   * @returns {Expandable} An instance.
   */
@param {number} duration
The duration of the sliding animation in milliseconds.
@returns {Expandable} An instance.
@param { number } duration The duration of the sliding animation in milliseconds . @returns { Expandable } An instance .
function expand( duration ) {
    if ( _isExpanded() || _isExpanding() ) {
      return this;
    }
    duration = duration || _calculateExpandDuration( _contentHeight );
    _setStateTo( EXPANDING );
    this.dispatchEvent( 'expandBegin', { target: _that } );
    _setMaxHeight();
    _transitionHeight( _expandComplete, duration );
    return this;
  }
function expand ( duration ) { if ( _isExpanded ( ) || _isExpanding ( ) ) { return this ; } duration = duration || _calculateExpandDuration ( _contentHeight ) ; _setStateTo ( EXPANDING ) ; this . dispatchEvent ( 'expandBegin' , { target : _that } ) ; _setMaxHeight ( ) ; _transitionHeight ( _expandComplete , duration ) ; return this ; }
@param {number} duration
   The duration of the sliding animation in milliseconds.
@param { number } duration The duration of the sliding animation in milliseconds .