vendor/assets/javascripts/greensock/TweenMax.js in greensock-rails-1.18.3.0 vs vendor/assets/javascripts/greensock/TweenMax.js in greensock-rails-1.18.4.0

- old
+ new

@@ -1,8 +1,8 @@ /*! - * VERSION: 1.18.3 - * DATE: 2016-04-19 + * VERSION: 1.18.4 + * DATE: 2016-04-26 * UPDATES AND DOCS AT: http://greensock.com * * Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin * * @license Copyright (c) 2008-2016, GreenSock. All rights reserved. @@ -48,11 +48,11 @@ _isSelector = TweenLiteInternals.isSelector, _isArray = TweenLiteInternals.isArray, p = TweenMax.prototype = TweenLite.to({}, 0.1, {}), _blankArray = []; - TweenMax.version = "1.18.3"; + TweenMax.version = "1.18.4"; p.constructor = TweenMax; p.kill()._gc = false; TweenMax.killTweensOf = TweenMax.killDelayedCallsTo = TweenLite.killTweensOf; TweenMax.getTweensOf = TweenLite.getTweensOf; TweenMax.lagSmoothing = TweenLite.lagSmoothing; @@ -681,11 +681,11 @@ for (i = 0; i !== l; b.push(a[i++])); return b; }, p = TimelineLite.prototype = new SimpleTimeline(); - TimelineLite.version = "1.18.3"; + TimelineLite.version = "1.18.4"; p.constructor = TimelineLite; p.kill()._gc = p._forcingPlayhead = p._hasPause = false; /* might use later... //translates a local time inside an animation to the corresponding time on the root/global timeline, factoring in all nesting and timeScales. @@ -1407,11 +1407,11 @@ _easeNone = new Ease(null, null, 1, 0), p = TimelineMax.prototype = new TimelineLite(); p.constructor = TimelineMax; p.kill()._gc = false; - TimelineMax.version = "1.18.3"; + TimelineMax.version = "1.18.4"; p.invalidate = function() { this._yoyo = (this.vars.yoyo === true); this._repeat = this.vars.repeat || 0; this._repeatDelay = this.vars.repeatDelay || 0; @@ -2500,20 +2500,20 @@ _overwriteProps, //alias to the currently instantiating CSSPlugin's _overwriteProps array. We use this closure in order to avoid having to pass a reference around from method to method and aid in minification. _specialProps = {}, p = CSSPlugin.prototype = new TweenPlugin("css"); p.constructor = CSSPlugin; - CSSPlugin.version = "1.18.3"; + CSSPlugin.version = "1.18.4"; CSSPlugin.API = 2; CSSPlugin.defaultTransformPerspective = 0; CSSPlugin.defaultSkewType = "compensated"; CSSPlugin.defaultSmoothOrigin = true; p = "px"; //we'll reuse the "p" variable to keep file size down CSSPlugin.suffixMap = {top:p, right:p, bottom:p, left:p, width:p, height:p, fontSize:p, padding:p, margin:p, perspective:p, lineHeight:""}; - var _numExp = /(?:\-|\.|\b)[\d\.e]+\b/g, + var _numExp = /(?:\-|\.|\b)(\d|\.|e\-)+/g, _relNumExp = /(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g, _valuesExp = /(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi, //finds all the values that begin with numbers or += or -= and then a number. Includes suffixes. We use this to split complex values apart like "1px 5px 20px rgb(255,102,51)" _NaNExp = /(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g, //also allows scientific notation and doesn't kill the leading -/+ in -= and += _suffixExp = /(?:\d|\-|\+|=|#|\.)*/g, _opacityExp = /opacity *= *([^)]*)/i, @@ -2757,10 +2757,15 @@ * @param {!string} p Property name ("width" or "height") * @param {Object=} cs Computed style object (if one exists). Just a speed optimization. * @return {number} Dimension (in pixels) */ _getDimension = function(t, p, cs) { + if ((t.nodeName + "").toLowerCase() === "svg") { //Chrome no longer supports offsetWidth/offsetHeight on SVG elements. + return (cs || _getComputedStyle(t))[p] || 0; + } else if (t.getBBox && _isSVG(t)) { + return t.getBBox()[p] || 0; + } var v = parseFloat((p === "width") ? t.offsetWidth : t.offsetHeight), a = _dimensions[p], i = a.length; cs = cs || _getComputedStyle(t, null); while (--i > -1) { @@ -3430,11 +3435,11 @@ * @return {CSSPropTween} returns itself so that multiple methods can be chained together. */ p.appendXtra = function(pfx, s, c, sfx, r, pad) { var pt = this, l = pt.l; - pt["xs" + l] += (pad && l) ? " " + pfx : pfx || ""; + pt["xs" + l] += (pad && (l || pt["xs" + l])) ? " " + pfx : pfx || ""; if (!c) if (l !== 0 && !pt.plugin) { //typically we'll combine non-changing values right into the xs to optimize performance, but we don't combine them when there's a plugin that will be tweening the values because it may depend on the values being split apart, like for a bezier, if a value doesn't change between the first and second iteration but then it does on the 3rd, we'll run into trouble because there's no xn slot for that value! pt["xs" + l] += s + (sfx || ""); return pt; } pt.l++; @@ -3719,11 +3724,11 @@ try { return e.getBBox(); //Firefox throws errors if you try calling getBBox() on an SVG element that's not rendered (like in a <symbol> or <defs>). https://bugzilla.mozilla.org/show_bug.cgi?id=612118 } catch (e) {} }, _isSVG = function(e) { //reports if the element is an SVG on which getBBox() actually works - return !!(_SVGElement && e.getBBox && e.getCTM && _canGetBBox(e)); + return !!(_SVGElement && e.getBBox && e.getCTM && _canGetBBox(e) && (!e.parentNode || (e.parentNode.getBBox && e.parentNode.getCTM))); }, _identity2DMatrix = [1,0,0,1,0,0], _getMatrix = function(e, force2D) { var tm = e._gsTransform || new Transform(), rnd = 100000, @@ -4481,10 +4486,13 @@ } pt = _parseComplex(style, props[i], bs + " " + bs2, es + " " + es2, false, "0px", pt); } return pt; }, prefix:true, formatter:_getFormatter("0px 0px 0px 0px", false, true)}); + _registerComplexSpecialProp("borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius", {defaultValue:"0px", parser:function(t, e, p, cssp, pt, plugin) { + return _parseComplex(t.style, p, this.format(_getStyle(t, p, _cs, false, "0px 0px")), this.format(e), false, "0px", pt); + }, prefix:true, formatter:_getFormatter("0px 0px", false, true)}); _registerComplexSpecialProp("backgroundPosition", {defaultValue:"0 0", parser:function(t, e, p, cssp, pt, plugin) { var bp = "background-position", cs = (_cs || _getComputedStyle(t, null)), bs = this.format( ((cs) ? _ieVers ? cs.getPropertyValue(bp + "-x") + " " + cs.getPropertyValue(bp + "-y") : cs.getPropertyValue(bp) : t.currentStyle.backgroundPositionX + " " + t.currentStyle.backgroundPositionY) || "0 0"), //Internet Explorer doesn't report background-position correctly - we must query background-position-x and background-position-y and combine them (even in IE10). Before IE9, we must do the same with the currentStyle object and use camelCase es = this.format(e), @@ -6672,10 +6680,10 @@ p.ratio = 0; p._firstPT = p._targets = p._overwrittenProps = p._startAt = null; p._notifyPluginsOfEnabled = p._lazy = false; - TweenLite.version = "1.18.3"; + TweenLite.version = "1.18.4"; TweenLite.defaultEase = p._ease = new Ease(null, null, 1, 1); TweenLite.defaultOverwrite = "auto"; TweenLite.ticker = _ticker; TweenLite.autoSleep = 120; TweenLite.lagSmoothing = function(threshold, adjustedLag) { \ No newline at end of file