code: function _animateFunc(func, element, duration, opts) {
    opts = Object.assign({}, opts);
    var tween;
    return new Promise(function(resolve, reject, onCancel) {
      opts.onComplete = resolve;
      tween = func(element, duration, opts);
      onCancel &&
        onCancel(function() {
          tween.kill();
        });
    });
  }
docs: Animate specific functions inside the TweenModules, like TweenLite.to
  
  @param {Function} func - TweenModule.to
  @param {DOMElement} element - DOM Element
  @param {number} duration - Duration
  @param {Object} opts - Paramaters
  @returns