docs: function toggleElClass(element, classToToggle, predicate) {
  
    // This CANNOT use `classList` internally because IE does not support the
    // second parameter to the `classList.toggle()` method! Which is fine because
    // `classList` will be used by the add/remove functions.
    var has = hasElClass(element, classToToggle);
  
    if (typeof predicate === 'function') {
      predicate = predicate(element, classToToggle);
    }
  
    if (typeof predicate !== 'boolean') {
      predicate = !has;
    }
  
    // If the necessary class operation matches the current state of the
    // element, no action is required.
    if (predicate === has) {
      return;
    }
  
    if (predicate) {
      addElClass(element, classToToggle);
    } else {
      removeElClass(element, classToToggle);
    }
  
    return element;
  }