src/smoothscroll.js
function shouldBailOut(firstArg) {
    if (
      firstArg === null ||
      typeof firstArg !== 'object' ||
      firstArg.behavior === undefined ||
      firstArg.behavior === 'auto' ||
      firstArg.behavior === 'instant'
    ) {
      // first argument is not an object/null
      // or behavior is auto, instant or undefined
      return true;
    }

    if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {
      // first argument is an object and behavior is smooth
      return false;
    }

    // throw error when behavior is not supported
    throw new TypeError(
      'behavior member of ScrollOptions ' +
        firstArg.behavior +
        ' is not a valid value for enumeration ScrollBehavior.'
    );
  }
function shouldBailOut(firstArg) {
    if (
      firstArg === null ||
      typeof firstArg !== 'object' ||
      firstArg.behavior === undefined ||
      firstArg.behavior === 'auto' ||
      firstArg.behavior === 'instant'
    ) {
      // first argument is not an object/null
      // or behavior is auto, instant or undefined
      return true;
    }

    if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {
      // first argument is an object and behavior is smooth
      return false;
    }

    // throw error when behavior is not supported
    throw new TypeError(
      'behavior member of ScrollOptions ' +
        firstArg.behavior +
        ' is not a valid value for enumeration ScrollBehavior.'
    );
  }
function shouldBailOut ( firstArg ) { if ( firstArg === null || typeof firstArg !== 'object' || firstArg . behavior === undefined || firstArg . behavior === 'auto' || firstArg . behavior === 'instant' ) { // first argument is not an object/null // or behavior is auto, instant or undefined return true ; } if ( typeof firstArg === 'object' && firstArg . behavior === 'smooth' ) { // first argument is an object and behavior is smooth return false ; } // throw error when behavior is not supported throw new TypeError ( 'behavior member of ScrollOptions ' + firstArg . behavior + ' is not a valid value for enumeration ScrollBehavior.' ) ; }
indicates if a smooth behavior should be applied
@method shouldBailOut
@param {Number|Object} firstArg
@returns {Boolean}
indicates if a smooth behavior should be applied