greensock-rails 1.18.5.0 → 1.19.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/greensock/rails/version.rb +1 -1
- data/vendor/assets/javascripts/greensock/TimelineLite.js +5 -5
- data/vendor/assets/javascripts/greensock/TimelineMax.js +8 -6
- data/vendor/assets/javascripts/greensock/TweenLite.js +53 -31
- data/vendor/assets/javascripts/greensock/TweenMax.js +173 -72
- data/vendor/assets/javascripts/greensock/easing/EasePack.js +3 -3
- data/vendor/assets/javascripts/greensock/plugins/AttrPlugin.js +10 -6
- data/vendor/assets/javascripts/greensock/plugins/BezierPlugin.js +28 -11
- data/vendor/assets/javascripts/greensock/plugins/CSSPlugin.js +71 -19
- data/vendor/assets/javascripts/greensock/plugins/CSSRulePlugin.js +18 -4
- data/vendor/assets/javascripts/greensock/plugins/ColorPropsPlugin.js +8 -5
- data/vendor/assets/javascripts/greensock/plugins/DirectionalRotationPlugin.js +9 -5
- data/vendor/assets/javascripts/greensock/plugins/EaselPlugin.js +14 -10
- data/vendor/assets/javascripts/greensock/plugins/EndArrayPlugin.js +10 -9
- data/vendor/assets/javascripts/greensock/plugins/ModifiersPlugin.js +158 -0
- data/vendor/assets/javascripts/greensock/plugins/RoundPropsPlugin.js +7 -7
- data/vendor/assets/javascripts/greensock/plugins/ScrollToPlugin.js +77 -17
- data/vendor/assets/javascripts/greensock/plugins/TEMPLATE_Plugin.js +4 -3
- data/vendor/assets/javascripts/greensock/plugins/TextPlugin.js +17 -8
- data/vendor/assets/javascripts/greensock/utils/Draggable.js +50 -29
- metadata +2 -2
- data/vendor/assets/javascripts/greensock/plugins/KineticPlugin.js +0 -335
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1741dd0daa9f23ad454ca243e4255b7321555d6f
|
4
|
+
data.tar.gz: 2c3d3b38aa5a2e835404d9bdc8fce3cebe167534
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fefb758c2876d46d4365d1ced3d288ec2de5ca080b4642047d6586fbde989f38fdca444a90722d1d61980e3ffc22607340b65e0ecd165a7b2d106a1a8017a582
|
7
|
+
data.tar.gz: e1d24e1259fa444f63b464e2ef38668e69a254a7f290803779099a308514551cc656b4e2170f7c5fc47161f8c22f17c7d648730cd5d406d2cd678b131912a81e
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
|
-
* VERSION: 1.18.
|
3
|
-
* DATE: 2016-
|
2
|
+
* VERSION: 1.18.6
|
3
|
+
* DATE: 2016-07-08
|
4
4
|
* UPDATES AND DOCS AT: http://greensock.com
|
5
5
|
*
|
6
6
|
* @license Copyright (c) 2008-2016, GreenSock. All rights reserved.
|
@@ -55,7 +55,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
55
55
|
p, val;
|
56
56
|
for (p in alt) {
|
57
57
|
val = alt[p];
|
58
|
-
vars[p] = (typeof(val) === "function") ? val
|
58
|
+
vars[p] = (typeof(val) === "function") ? val(i, targets[i]) : val[i % val.length];
|
59
59
|
}
|
60
60
|
delete vars.cycle;
|
61
61
|
},
|
@@ -69,7 +69,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
69
69
|
},
|
70
70
|
p = TimelineLite.prototype = new SimpleTimeline();
|
71
71
|
|
72
|
-
TimelineLite.version = "1.
|
72
|
+
TimelineLite.version = "1.19.0";
|
73
73
|
p.constructor = TimelineLite;
|
74
74
|
p.kill()._gc = p._forcingPlayhead = p._hasPause = false;
|
75
75
|
|
@@ -773,7 +773,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
773
773
|
return (_gsScope.GreenSockGlobals || _gsScope)[name];
|
774
774
|
};
|
775
775
|
if (typeof(define) === "function" && define.amd) { //AMD
|
776
|
-
define(["
|
776
|
+
define(["TweenLite"], getGlobal);
|
777
777
|
} else if (typeof(module) !== "undefined" && module.exports) { //node
|
778
778
|
require("./TweenLite.js"); //dependency
|
779
779
|
module.exports = getGlobal();
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
|
-
* VERSION: 1.18.
|
3
|
-
* DATE: 2016-
|
2
|
+
* VERSION: 1.18.6
|
3
|
+
* DATE: 2016-07-12
|
4
4
|
* UPDATES AND DOCS AT: http://greensock.com
|
5
5
|
*
|
6
6
|
* @license Copyright (c) 2008-2016, GreenSock. All rights reserved.
|
@@ -28,12 +28,13 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
28
28
|
TweenLiteInternals = TweenLite._internals,
|
29
29
|
_lazyTweens = TweenLiteInternals.lazyTweens,
|
30
30
|
_lazyRender = TweenLiteInternals.lazyRender,
|
31
|
+
_globals = _gsScope._gsDefine.globals,
|
31
32
|
_easeNone = new Ease(null, null, 1, 0),
|
32
33
|
p = TimelineMax.prototype = new TimelineLite();
|
33
34
|
|
34
35
|
p.constructor = TimelineMax;
|
35
36
|
p.kill()._gc = false;
|
36
|
-
TimelineMax.version = "1.
|
37
|
+
TimelineMax.version = "1.19.0";
|
37
38
|
|
38
39
|
p.invalidate = function() {
|
39
40
|
this._yoyo = (this.vars.yoyo === true);
|
@@ -72,13 +73,14 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
72
73
|
p.tweenTo = function(position, vars) {
|
73
74
|
vars = vars || {};
|
74
75
|
var copy = {ease:_easeNone, useFrames:this.usesFrames(), immediateRender:false},
|
76
|
+
Engine = (vars.repeat && _globals.TweenMax) || TweenLite,
|
75
77
|
duration, p, t;
|
76
78
|
for (p in vars) {
|
77
79
|
copy[p] = vars[p];
|
78
80
|
}
|
79
81
|
copy.time = this._parseTimeOrLabel(position);
|
80
82
|
duration = (Math.abs(Number(copy.time) - this._time) / this._timeScale) || 0.001;
|
81
|
-
t = new
|
83
|
+
t = new Engine(this, duration, copy);
|
82
84
|
copy.onStart = function() {
|
83
85
|
t.target.paused(true);
|
84
86
|
if (t.vars.time !== t.target.time() && duration === t.duration()) { //don't make the duration zero - if it's supposed to be zero, don't worry because it's already initting the tween and will complete immediately, effectively making the duration zero anyway. If we make duration zero, the tween won't run at all.
|
@@ -573,7 +575,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
573
575
|
},
|
574
576
|
p = TimelineLite.prototype = new SimpleTimeline();
|
575
577
|
|
576
|
-
TimelineLite.version = "1.
|
578
|
+
TimelineLite.version = "1.19.0";
|
577
579
|
p.constructor = TimelineLite;
|
578
580
|
p.kill()._gc = p._forcingPlayhead = p._hasPause = false;
|
579
581
|
|
@@ -1276,7 +1278,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
1276
1278
|
return (_gsScope.GreenSockGlobals || _gsScope)[name];
|
1277
1279
|
};
|
1278
1280
|
if (typeof(define) === "function" && define.amd) { //AMD
|
1279
|
-
define(["
|
1281
|
+
define(["TweenLite"], getGlobal);
|
1280
1282
|
} else if (typeof(module) !== "undefined" && module.exports) { //node
|
1281
1283
|
require("./TweenLite.js"); //dependency
|
1282
1284
|
module.exports = getGlobal();
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
|
-
* VERSION: 1.
|
3
|
-
* DATE: 2016-
|
2
|
+
* VERSION: 1.19.0
|
3
|
+
* DATE: 2016-07-16
|
4
4
|
* UPDATES AND DOCS AT: http://greensock.com
|
5
5
|
*
|
6
6
|
* @license Copyright (c) 2008-2016, GreenSock. All rights reserved.
|
@@ -103,7 +103,7 @@
|
|
103
103
|
|
104
104
|
//exports to multiple environments
|
105
105
|
if (global) {
|
106
|
-
_globals[n] = cl; //provides a way to avoid global namespace pollution. By default, the main classes like TweenLite, Power1, Strong, etc. are added to window unless a GreenSockGlobals is defined. So if you want to have things added to a custom object instead, just do something like window.GreenSockGlobals = {} before loading any GreenSock files. You can even set up an alias like window.GreenSockGlobals = windows.gs = {} so that you can access everything like gs.TweenLite. Also remember that ALL classes are added to the window.com.greensock object (in their respective packages, like com.greensock.easing.Power1, com.greensock.TweenLite, etc.)
|
106
|
+
_globals[n] = _exports[n] = cl; //provides a way to avoid global namespace pollution. By default, the main classes like TweenLite, Power1, Strong, etc. are added to window unless a GreenSockGlobals is defined. So if you want to have things added to a custom object instead, just do something like window.GreenSockGlobals = {} before loading any GreenSock files. You can even set up an alias like window.GreenSockGlobals = windows.gs = {} so that you can access everything like gs.TweenLite. Also remember that ALL classes are added to the window.com.greensock object (in their respective packages, like com.greensock.easing.Power1, com.greensock.TweenLite, etc.)
|
107
107
|
hasModule = (typeof(module) !== "undefined" && module.exports);
|
108
108
|
if (!hasModule && typeof(define) === "function" && define.amd){ //AMD
|
109
109
|
define((window.GreenSockAMDPath ? window.GreenSockAMDPath + "/" : "") + ns.split(".").pop(), [], function() { return cl; });
|
@@ -259,6 +259,9 @@
|
|
259
259
|
i, t, listener;
|
260
260
|
if (list) {
|
261
261
|
i = list.length;
|
262
|
+
if (i > 1) {
|
263
|
+
list = list.slice(0); //in case addEventListener() is called from within a listener/callback (otherwise the index could change, resulting in a skip)
|
264
|
+
}
|
262
265
|
t = this._eventTarget;
|
263
266
|
while (--i > -1) {
|
264
267
|
listener = list[i];
|
@@ -548,8 +551,17 @@
|
|
548
551
|
};
|
549
552
|
|
550
553
|
p._callback = function(type) {
|
551
|
-
var v = this.vars
|
552
|
-
|
554
|
+
var v = this.vars,
|
555
|
+
callback = v[type],
|
556
|
+
params = v[type + "Params"],
|
557
|
+
scope = v[type + "Scope"] || v.callbackScope || this,
|
558
|
+
l = params ? params.length : 0;
|
559
|
+
switch (l) { //speed optimization; call() is faster than apply() so use it when there are only a few parameters (which is by far most common). Previously we simply did var v = this.vars; v[type].apply(v[type + "Scope"] || v.callbackScope || this, v[type + "Params"] || _blankArray);
|
560
|
+
case 0: callback.call(scope); break;
|
561
|
+
case 1: callback.call(scope, params[0]); break;
|
562
|
+
case 2: callback.call(scope, params[0], params[1]); break;
|
563
|
+
default: callback.apply(scope, params);
|
564
|
+
}
|
553
565
|
};
|
554
566
|
|
555
567
|
//----Animation getters/setters --------------------------------------------------------
|
@@ -933,7 +945,7 @@
|
|
933
945
|
p._firstPT = p._targets = p._overwrittenProps = p._startAt = null;
|
934
946
|
p._notifyPluginsOfEnabled = p._lazy = false;
|
935
947
|
|
936
|
-
TweenLite.version = "1.
|
948
|
+
TweenLite.version = "1.19.0";
|
937
949
|
TweenLite.defaultEase = p._ease = new Ease(null, null, 1, 1);
|
938
950
|
TweenLite.defaultOverwrite = "auto";
|
939
951
|
TweenLite.ticker = _ticker;
|
@@ -961,8 +973,8 @@
|
|
961
973
|
val;
|
962
974
|
while (pt) {
|
963
975
|
val = !pt.blob ? pt.c * v + pt.s : v ? this.join("") : this.start;
|
964
|
-
if (pt.
|
965
|
-
val =
|
976
|
+
if (pt.m) {
|
977
|
+
val = pt.m(val, this._target || pt.t);
|
966
978
|
} else if (val < min) if (val > -min) { //prevents issues with converting very small numbers to strings in the browser
|
967
979
|
val = 0;
|
968
980
|
}
|
@@ -995,7 +1007,7 @@
|
|
995
1007
|
if (pt) {
|
996
1008
|
pt._next = null;
|
997
1009
|
pt.blob = 1;
|
998
|
-
a._firstPT = pt; //apply last in the linked list (which means inserting it first)
|
1010
|
+
a._firstPT = a._applyPT = pt; //apply last in the linked list (which means inserting it first)
|
999
1011
|
}
|
1000
1012
|
l = endNums.length;
|
1001
1013
|
for (i = 0; i < l; i++) {
|
@@ -1017,7 +1029,7 @@
|
|
1017
1029
|
}
|
1018
1030
|
num = parseFloat(startNums[i]);
|
1019
1031
|
a.push(num);
|
1020
|
-
a._firstPT = {_next: a._firstPT, t:a, p: a.length-1, s:num, c:((currentNum.charAt(1) === "=") ? parseInt(currentNum.charAt(0) + "1", 10) * parseFloat(currentNum.substr(2)) : (parseFloat(currentNum) - num)) || 0, f:0,
|
1032
|
+
a._firstPT = {_next: a._firstPT, t:a, p: a.length-1, s:num, c:((currentNum.charAt(1) === "=") ? parseInt(currentNum.charAt(0) + "1", 10) * parseFloat(currentNum.substr(2)) : (parseFloat(currentNum) - num)) || 0, f:0, m:(color && color < 4) ? Math.round : 0};
|
1021
1033
|
//note: we don't set _prev because we'll never need to remove individual PropTweens from this list.
|
1022
1034
|
}
|
1023
1035
|
charIndex += currentNum.length;
|
@@ -1030,11 +1042,14 @@
|
|
1030
1042
|
return a;
|
1031
1043
|
},
|
1032
1044
|
//note: "funcParam" is only necessary for function-based getters/setters that require an extra parameter like getAttribute("width") and setAttribute("width", value). In this example, funcParam would be "width". Used by AttrPlugin for example.
|
1033
|
-
_addPropTween = function(target, prop, start, end, overwriteProp,
|
1045
|
+
_addPropTween = function(target, prop, start, end, overwriteProp, mod, funcParam, stringFilter, index) {
|
1046
|
+
if (typeof(end) === "function") {
|
1047
|
+
end = end(index || 0, target);
|
1048
|
+
}
|
1034
1049
|
var s = (start === "get") ? target[prop] : start,
|
1035
1050
|
type = typeof(target[prop]),
|
1036
1051
|
isRelative = (typeof(end) === "string" && end.charAt(1) === "="),
|
1037
|
-
pt = {t:target, p:prop, s:s, f:(type === "function"), pg:0, n:overwriteProp || prop,
|
1052
|
+
pt = {t:target, p:prop, s:s, f:(type === "function"), pg:0, n:overwriteProp || prop, m:(!mod ? 0 : (typeof(mod) === "function") ? mod : Math.round), pr:0, c:isRelative ? parseInt(end.charAt(0) + "1", 10) * parseFloat(end.substr(2)) : (parseFloat(end) - s) || 0},
|
1038
1053
|
blob, getterName;
|
1039
1054
|
if (type !== "number") {
|
1040
1055
|
if (type === "function" && start === "get") {
|
@@ -1045,7 +1060,7 @@
|
|
1045
1060
|
//a blob (string that has multiple numbers in it)
|
1046
1061
|
pt.fp = funcParam;
|
1047
1062
|
blob = _blobDif(s, end, stringFilter || TweenLite.defaultStringFilter, pt);
|
1048
|
-
pt = {t:blob, p:"setRatio", s:0, c:1, f:2, pg:0, n:overwriteProp || prop, pr:0}; //"2" indicates it's a Blob property tween. Needed for RoundPropsPlugin for example.
|
1063
|
+
pt = {t:blob, p:"setRatio", s:0, c:1, f:2, pg:0, n:overwriteProp || prop, pr:0, m:0}; //"2" indicates it's a Blob property tween. Needed for RoundPropsPlugin for example.
|
1049
1064
|
} else if (!isRelative) {
|
1050
1065
|
pt.s = parseFloat(s);
|
1051
1066
|
pt.c = (parseFloat(end) - pt.s) || 0;
|
@@ -1234,7 +1249,7 @@
|
|
1234
1249
|
dur = this._duration,
|
1235
1250
|
immediate = !!v.immediateRender,
|
1236
1251
|
ease = v.ease,
|
1237
|
-
i, initPlugins, pt, p, startVars;
|
1252
|
+
i, initPlugins, pt, p, startVars, l;
|
1238
1253
|
if (v.startAt) {
|
1239
1254
|
if (this._startAt) {
|
1240
1255
|
this._startAt.render(-1, true); //if we've run a startAt previously (when the tween instantiated), we should revert it so that the values re-instantiate correctly particularly for relative tweens. Without this, a TweenLite.fromTo(obj, 1, {x:"+=100"}, {x:"-=100"}), for example, would actually jump to +=200 because the startAt would run twice, doubling the relative change.
|
@@ -1297,14 +1312,14 @@
|
|
1297
1312
|
this._firstPT = null;
|
1298
1313
|
|
1299
1314
|
if (this._targets) {
|
1300
|
-
|
1301
|
-
|
1302
|
-
if ( this._initProps( this._targets[i], (this._propLookup[i] = {}), this._siblings[i], (op ? op[i] : null)) ) {
|
1315
|
+
l = this._targets.length;
|
1316
|
+
for (i = 0; i < l; i++) {
|
1317
|
+
if ( this._initProps( this._targets[i], (this._propLookup[i] = {}), this._siblings[i], (op ? op[i] : null), i) ) {
|
1303
1318
|
initPlugins = true;
|
1304
1319
|
}
|
1305
1320
|
}
|
1306
1321
|
} else {
|
1307
|
-
initPlugins = this._initProps(this.target, this._propLookup, this._siblings, op);
|
1322
|
+
initPlugins = this._initProps(this.target, this._propLookup, this._siblings, op, 0);
|
1308
1323
|
}
|
1309
1324
|
|
1310
1325
|
if (initPlugins) {
|
@@ -1325,7 +1340,7 @@
|
|
1325
1340
|
this._initted = true;
|
1326
1341
|
};
|
1327
1342
|
|
1328
|
-
p._initProps = function(target, propLookup, siblings, overwrittenProps) {
|
1343
|
+
p._initProps = function(target, propLookup, siblings, overwrittenProps, index) {
|
1329
1344
|
var p, i, initPlugins, plugin, pt, v;
|
1330
1345
|
if (target == null) {
|
1331
1346
|
return false;
|
@@ -1345,7 +1360,7 @@
|
|
1345
1360
|
this.vars[p] = v = this._swapSelfInParams(v, this);
|
1346
1361
|
}
|
1347
1362
|
|
1348
|
-
} else if (_plugins[p] && (plugin = new _plugins[p]())._onInitTween(target, this.vars[p], this)) {
|
1363
|
+
} else if (_plugins[p] && (plugin = new _plugins[p]())._onInitTween(target, this.vars[p], this, index)) {
|
1349
1364
|
|
1350
1365
|
//t - target [object]
|
1351
1366
|
//p - property [string]
|
@@ -1355,7 +1370,8 @@
|
|
1355
1370
|
//n - name [string]
|
1356
1371
|
//pg - isPlugin [boolean]
|
1357
1372
|
//pr - priority [number]
|
1358
|
-
|
1373
|
+
//m - mod [function | 0]
|
1374
|
+
this._firstPT = pt = {_next:this._firstPT, t:plugin, p:"setRatio", s:0, c:1, f:1, n:p, pg:1, pr:plugin._priority, m:0};
|
1359
1375
|
i = plugin._overwriteProps.length;
|
1360
1376
|
while (--i > -1) {
|
1361
1377
|
propLookup[plugin._overwriteProps[i]] = this._firstPT;
|
@@ -1371,16 +1387,16 @@
|
|
1371
1387
|
}
|
1372
1388
|
|
1373
1389
|
} else {
|
1374
|
-
propLookup[p] = _addPropTween.call(this, target, p, "get", v, p, 0, null, this.vars.stringFilter);
|
1390
|
+
propLookup[p] = _addPropTween.call(this, target, p, "get", v, p, 0, null, this.vars.stringFilter, index);
|
1375
1391
|
}
|
1376
1392
|
}
|
1377
1393
|
|
1378
1394
|
if (overwrittenProps) if (this._kill(overwrittenProps, target)) { //another tween may have tried to overwrite properties of this tween before init() was called (like if two tweens start at the same time, the one created second will run first)
|
1379
|
-
return this._initProps(target, propLookup, siblings, overwrittenProps);
|
1395
|
+
return this._initProps(target, propLookup, siblings, overwrittenProps, index);
|
1380
1396
|
}
|
1381
1397
|
if (this._overwrite > 1) if (this._firstPT) if (siblings.length > 1) if (_applyOverwrite(target, this, propLookup, this._overwrite, siblings)) {
|
1382
1398
|
this._kill(propLookup, target);
|
1383
|
-
return this._initProps(target, propLookup, siblings, overwrittenProps);
|
1399
|
+
return this._initProps(target, propLookup, siblings, overwrittenProps, index);
|
1384
1400
|
}
|
1385
1401
|
if (this._firstPT) if ((this.vars.lazy !== false && this._duration) || (this.vars.lazy && !this._duration)) { //zero duration tweens don't lazy render by default; everything else does.
|
1386
1402
|
_lazyLookup[target._gsTweenID] = true;
|
@@ -1760,7 +1776,7 @@
|
|
1760
1776
|
}, true);
|
1761
1777
|
|
1762
1778
|
p = TweenPlugin.prototype;
|
1763
|
-
TweenPlugin.version = "1.
|
1779
|
+
TweenPlugin.version = "1.19.0";
|
1764
1780
|
TweenPlugin.API = 2;
|
1765
1781
|
p._firstPT = null;
|
1766
1782
|
p._addTween = _addPropTween;
|
@@ -1797,11 +1813,17 @@
|
|
1797
1813
|
return false;
|
1798
1814
|
};
|
1799
1815
|
|
1800
|
-
p._roundProps = function(lookup
|
1801
|
-
var pt = this._firstPT
|
1816
|
+
p._mod = p._roundProps = function(lookup) {
|
1817
|
+
var pt = this._firstPT,
|
1818
|
+
val;
|
1802
1819
|
while (pt) {
|
1803
|
-
|
1804
|
-
|
1820
|
+
val = lookup[this._propName] || (pt.n != null && lookup[ pt.n.split(this._propName + "_").join("") ]);
|
1821
|
+
if (val && typeof(val) === "function") { //some properties that are very plugin-specific add a prefix named after the _propName plus an underscore, so we need to ignore that extra stuff here.
|
1822
|
+
if (pt.f === 2) {
|
1823
|
+
pt.t._applyPT.m = val;
|
1824
|
+
} else {
|
1825
|
+
pt.m = val;
|
1826
|
+
}
|
1805
1827
|
}
|
1806
1828
|
pt = pt._next;
|
1807
1829
|
}
|
@@ -1857,7 +1879,7 @@
|
|
1857
1879
|
var propName = config.propName,
|
1858
1880
|
priority = config.priority || 0,
|
1859
1881
|
overwriteProps = config.overwriteProps,
|
1860
|
-
map = {init:"_onInitTween", set:"setRatio", kill:"_kill", round:"
|
1882
|
+
map = {init:"_onInitTween", set:"setRatio", kill:"_kill", round:"_mod", mod:"_mod", initAll:"_onInitAllProps"},
|
1861
1883
|
Plugin = _class("plugins." + propName.charAt(0).toUpperCase() + propName.substr(1) + "Plugin",
|
1862
1884
|
function() {
|
1863
1885
|
TweenPlugin.call(this, propName, priority);
|
@@ -1886,7 +1908,7 @@
|
|
1886
1908
|
}
|
1887
1909
|
for (p in _defLookup) {
|
1888
1910
|
if (!_defLookup[p].func) {
|
1889
|
-
window.console.log("GSAP encountered missing dependency:
|
1911
|
+
window.console.log("GSAP encountered missing dependency: " + p);
|
1890
1912
|
}
|
1891
1913
|
}
|
1892
1914
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
|
-
* VERSION: 1.
|
3
|
-
* DATE: 2016-
|
2
|
+
* VERSION: 1.19.0
|
3
|
+
* DATE: 2016-07-14
|
4
4
|
* UPDATES AND DOCS AT: http://greensock.com
|
5
5
|
*
|
6
6
|
* Includes all of the following: TweenLite, TweenMax, TimelineLite, TimelineMax, EasePack, CSSPlugin, RoundPropsPlugin, BezierPlugin, AttrPlugin, DirectionalRotationPlugin
|
@@ -30,7 +30,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
30
30
|
p, val;
|
31
31
|
for (p in alt) {
|
32
32
|
val = alt[p];
|
33
|
-
vars[p] = (typeof(val) === "function") ? val
|
33
|
+
vars[p] = (typeof(val) === "function") ? val(i, targets[i]) : val[i % val.length];
|
34
34
|
}
|
35
35
|
delete vars.cycle;
|
36
36
|
},
|
@@ -50,7 +50,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
50
50
|
p = TweenMax.prototype = TweenLite.to({}, 0.1, {}),
|
51
51
|
_blankArray = [];
|
52
52
|
|
53
|
-
TweenMax.version = "1.
|
53
|
+
TweenMax.version = "1.19.0";
|
54
54
|
p.constructor = TweenMax;
|
55
55
|
p.kill()._gc = false;
|
56
56
|
TweenMax.killTweensOf = TweenMax.killDelayedCallsTo = TweenLite.killTweensOf;
|
@@ -687,7 +687,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
687
687
|
},
|
688
688
|
p = TimelineLite.prototype = new SimpleTimeline();
|
689
689
|
|
690
|
-
TimelineLite.version = "1.
|
690
|
+
TimelineLite.version = "1.19.0";
|
691
691
|
p.constructor = TimelineLite;
|
692
692
|
p.kill()._gc = p._forcingPlayhead = p._hasPause = false;
|
693
693
|
|
@@ -1412,12 +1412,13 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
1412
1412
|
TweenLiteInternals = TweenLite._internals,
|
1413
1413
|
_lazyTweens = TweenLiteInternals.lazyTweens,
|
1414
1414
|
_lazyRender = TweenLiteInternals.lazyRender,
|
1415
|
+
_globals = _gsScope._gsDefine.globals,
|
1415
1416
|
_easeNone = new Ease(null, null, 1, 0),
|
1416
1417
|
p = TimelineMax.prototype = new TimelineLite();
|
1417
1418
|
|
1418
1419
|
p.constructor = TimelineMax;
|
1419
1420
|
p.kill()._gc = false;
|
1420
|
-
TimelineMax.version = "1.
|
1421
|
+
TimelineMax.version = "1.19.0";
|
1421
1422
|
|
1422
1423
|
p.invalidate = function() {
|
1423
1424
|
this._yoyo = (this.vars.yoyo === true);
|
@@ -1456,13 +1457,14 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
1456
1457
|
p.tweenTo = function(position, vars) {
|
1457
1458
|
vars = vars || {};
|
1458
1459
|
var copy = {ease:_easeNone, useFrames:this.usesFrames(), immediateRender:false},
|
1460
|
+
Engine = (vars.repeat && _globals.TweenMax) || TweenLite,
|
1459
1461
|
duration, p, t;
|
1460
1462
|
for (p in vars) {
|
1461
1463
|
copy[p] = vars[p];
|
1462
1464
|
}
|
1463
1465
|
copy.time = this._parseTimeOrLabel(position);
|
1464
1466
|
duration = (Math.abs(Number(copy.time) - this._time) / this._timeScale) || 0.001;
|
1465
|
-
t = new
|
1467
|
+
t = new Engine(this, duration, copy);
|
1466
1468
|
copy.onStart = function() {
|
1467
1469
|
t.target.paused(true);
|
1468
1470
|
if (t.vars.time !== t.target.time() && duration === t.duration()) { //don't make the duration zero - if it's supposed to be zero, don't worry because it's already initting the tween and will complete immediately, effectively making the duration zero anyway. If we make duration zero, the tween won't run at all.
|
@@ -2208,7 +2210,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2208
2210
|
BezierPlugin = _gsScope._gsDefine.plugin({
|
2209
2211
|
propName: "bezier",
|
2210
2212
|
priority: -1,
|
2211
|
-
version: "1.3.
|
2213
|
+
version: "1.3.7",
|
2212
2214
|
API: 2,
|
2213
2215
|
global:true,
|
2214
2216
|
|
@@ -2219,7 +2221,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2219
2221
|
vars = {values:vars};
|
2220
2222
|
}
|
2221
2223
|
this._func = {};
|
2222
|
-
this.
|
2224
|
+
this._mod = {};
|
2223
2225
|
this._props = [];
|
2224
2226
|
this._timeRes = (vars.timeResolution == null) ? 6 : parseInt(vars.timeResolution, 10);
|
2225
2227
|
var values = vars.values || [],
|
@@ -2272,6 +2274,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2272
2274
|
}
|
2273
2275
|
p = autoRotate[i][2];
|
2274
2276
|
this._initialRotations[i] = (this._func[p] ? this._func[p].call(this._target) : this._target[p]) || 0;
|
2277
|
+
this._overwriteProps.push(p);
|
2275
2278
|
}
|
2276
2279
|
}
|
2277
2280
|
this._startRatio = tween.vars.runBackwards ? 1 : 0; //we determine the starting ratio when the tween inits which is always 0 unless the tween has runBackwards:true (indicating it's a from() tween) in which case it's 1.
|
@@ -2342,8 +2345,8 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2342
2345
|
p = this._props[i];
|
2343
2346
|
b = this._beziers[p][curIndex];
|
2344
2347
|
val = (t * t * b.da + 3 * inv * (t * b.ca + inv * b.ba)) * t + b.a;
|
2345
|
-
if (this.
|
2346
|
-
val =
|
2348
|
+
if (this._mod[p]) {
|
2349
|
+
val = this._mod[p](val, target);
|
2347
2350
|
}
|
2348
2351
|
if (func[p]) {
|
2349
2352
|
target[p](val);
|
@@ -2379,6 +2382,10 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2379
2382
|
|
2380
2383
|
val = notStart ? Math.atan2(y2 - y1, x2 - x1) * conv + add : this._initialRotations[i];
|
2381
2384
|
|
2385
|
+
if (this._mod[p]) {
|
2386
|
+
val = this._mod[p](val, target); //for modProps
|
2387
|
+
}
|
2388
|
+
|
2382
2389
|
if (func[p]) {
|
2383
2390
|
target[p](val);
|
2384
2391
|
} else {
|
@@ -2446,18 +2453,21 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2446
2453
|
}
|
2447
2454
|
data.autoRotate = cssp._target._gsTransform;
|
2448
2455
|
data.proxy.rotation = data.autoRotate.rotation || 0;
|
2456
|
+
cssp._overwriteProps.push("rotation");
|
2449
2457
|
}
|
2450
2458
|
plugin._onInitTween(data.proxy, v, cssp._tween);
|
2451
2459
|
return pt;
|
2452
2460
|
}});
|
2453
2461
|
};
|
2454
2462
|
|
2455
|
-
p.
|
2463
|
+
p._mod = function(lookup) {
|
2456
2464
|
var op = this._overwriteProps,
|
2457
|
-
i = op.length
|
2465
|
+
i = op.length,
|
2466
|
+
val;
|
2458
2467
|
while (--i > -1) {
|
2459
|
-
|
2460
|
-
|
2468
|
+
val = lookup[op[i]];
|
2469
|
+
if (val && typeof(val) === "function") {
|
2470
|
+
this._mod[op[i]] = val;
|
2461
2471
|
}
|
2462
2472
|
}
|
2463
2473
|
};
|
@@ -2477,6 +2487,15 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2477
2487
|
}
|
2478
2488
|
}
|
2479
2489
|
}
|
2490
|
+
a = this._autoRotate;
|
2491
|
+
if (a) {
|
2492
|
+
i = a.length;
|
2493
|
+
while (--i > -1) {
|
2494
|
+
if (lookup[a[i][2]]) {
|
2495
|
+
a.splice(i, 1);
|
2496
|
+
}
|
2497
|
+
}
|
2498
|
+
}
|
2480
2499
|
return this._super._kill.call(this, lookup);
|
2481
2500
|
};
|
2482
2501
|
|
@@ -2517,7 +2536,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2517
2536
|
p = CSSPlugin.prototype = new TweenPlugin("css");
|
2518
2537
|
|
2519
2538
|
p.constructor = CSSPlugin;
|
2520
|
-
CSSPlugin.version = "1.
|
2539
|
+
CSSPlugin.version = "1.19.0";
|
2521
2540
|
CSSPlugin.API = 2;
|
2522
2541
|
CSSPlugin.defaultTransformPerspective = 0;
|
2523
2542
|
CSSPlugin.defaultSkewType = "compensated";
|
@@ -2585,6 +2604,8 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2585
2604
|
console.log(s);
|
2586
2605
|
}
|
2587
2606
|
},
|
2607
|
+
_target, //when initting a CSSPlugin, we set this variable so that we can access it from within many other functions without having to pass it around as params
|
2608
|
+
_index, //when initting a CSSPlugin, we set this variable so that we can access it from within many other functions without having to pass it around as params
|
2588
2609
|
|
2589
2610
|
_prefixCSS = "", //the non-camelCase vendor prefix like "-o-", "-moz-", "-ms-", or "-webkit-"
|
2590
2611
|
_prefix = "", //camelCase vendor prefix like "O", "ms", "Webkit", or "Moz".
|
@@ -2799,10 +2820,10 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2799
2820
|
|
2800
2821
|
// @private Parses position-related complex strings like "top left" or "50px 10px" or "70% 20%", etc. which are used for things like transformOrigin or backgroundPosition. Optionally decorates a supplied object (recObj) with the following properties: "ox" (offsetX), "oy" (offsetY), "oxp" (if true, "ox" is a percentage not a pixel value), and "oxy" (if true, "oy" is a percentage not a pixel value)
|
2801
2822
|
_parsePosition = function(v, recObj) {
|
2802
|
-
if (v === "contain" || v === "auto" || v === "auto auto") {
|
2823
|
+
if (v === "contain" || v === "auto" || v === "auto auto") { //note: Firefox uses "auto auto" as default whereas Chrome uses "auto".
|
2803
2824
|
return v + " ";
|
2804
2825
|
}
|
2805
|
-
if (v == null || v === "") {
|
2826
|
+
if (v == null || v === "") {
|
2806
2827
|
v = "0 0";
|
2807
2828
|
}
|
2808
2829
|
var a = v.split(" "),
|
@@ -2845,6 +2866,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2845
2866
|
* @return {number} Amount of change between the beginning and ending values (relative values that have a "+=" or "-=" are recognized)
|
2846
2867
|
*/
|
2847
2868
|
_parseChange = function(e, b) {
|
2869
|
+
if (typeof(e) === "function") {
|
2870
|
+
e = e(_index, _target);
|
2871
|
+
}
|
2848
2872
|
return (typeof(e) === "string" && e.charAt(1) === "=") ? parseInt(e.charAt(0) + "1", 10) * parseFloat(e.substr(2)) : (parseFloat(e) - parseFloat(b)) || 0;
|
2849
2873
|
},
|
2850
2874
|
|
@@ -2855,6 +2879,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2855
2879
|
* @return {number} Parsed value
|
2856
2880
|
*/
|
2857
2881
|
_parseVal = function(v, d) {
|
2882
|
+
if (typeof(v) === "function") {
|
2883
|
+
v = v(_index, _target);
|
2884
|
+
}
|
2858
2885
|
return (v == null) ? d : (typeof(v) === "string" && v.charAt(1) === "=") ? parseInt(v.charAt(0) + "1", 10) * parseFloat(v.substr(2)) + d : parseFloat(v) || 0;
|
2859
2886
|
},
|
2860
2887
|
|
@@ -2869,6 +2896,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
2869
2896
|
_parseAngle = function(v, d, p, directionalEnd) {
|
2870
2897
|
var min = 0.000001,
|
2871
2898
|
cap, split, dif, result, isRelative;
|
2899
|
+
if (typeof(v) === "function") {
|
2900
|
+
v = v(_index, _target);
|
2901
|
+
}
|
2872
2902
|
if (v == null) {
|
2873
2903
|
result = d;
|
2874
2904
|
} else if (typeof(v) === "number") {
|
@@ -3130,7 +3160,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
3130
3160
|
};
|
3131
3161
|
},
|
3132
3162
|
|
3133
|
-
// @private used when other plugins must tween values first, like BezierPlugin or ThrowPropsPlugin, etc. That plugin's setRatio() gets called first so that the values are updated, and then we loop through the MiniPropTweens
|
3163
|
+
// @private used when other plugins must tween values first, like BezierPlugin or ThrowPropsPlugin, etc. That plugin's setRatio() gets called first so that the values are updated, and then we loop through the MiniPropTweens which handle copying the values into their appropriate slots so that they can then be applied correctly in the main CSSPlugin setRatio() method. Remember, we typically create a proxy object that has a bunch of uniquely-named properties that we feed to the sub-plugin and it does its magic normally, and then we must interpret those values and apply them to the css because often numbers must get combined/concatenated, suffixes added, etc. to work with css, like boxShadow could have 4 values plus a color.
|
3134
3164
|
_setPluginRatio = _internals._setPluginRatio = function(v) {
|
3135
3165
|
this.plugin.setRatio(v);
|
3136
3166
|
var d = this.data,
|
@@ -3149,7 +3179,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
3149
3179
|
mpt = mpt._next;
|
3150
3180
|
}
|
3151
3181
|
if (d.autoRotate) {
|
3152
|
-
d.autoRotate.rotation = proxy.rotation;
|
3182
|
+
d.autoRotate.rotation = d.mod ? d.mod(proxy.rotation, this.t) : proxy.rotation; //special case for ModifyPlugin to hook into an auto-rotating bezier
|
3153
3183
|
}
|
3154
3184
|
//at the end, we must set the CSSPropTween's "e" (end) value dynamically here because that's what is used in the final setRatio() method. Same for "b" at the beginning.
|
3155
3185
|
if (v === 1 || v === 0) {
|
@@ -3326,6 +3356,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
3326
3356
|
_parseComplex = CSSPlugin.parseComplex = function(t, p, b, e, clrs, dflt, pt, pr, plugin, setRatio) {
|
3327
3357
|
//DEBUG: _log("parseComplex: "+p+", b: "+b+", e: "+e);
|
3328
3358
|
b = b || dflt || "";
|
3359
|
+
if (typeof(e) === "function") {
|
3360
|
+
e = e(_index, _target);
|
3361
|
+
}
|
3329
3362
|
pt = new CSSPropTween(t, p, 0, 0, pt, (setRatio ? 2 : 1), null, false, pr, b, e);
|
3330
3363
|
e += ""; //ensures it's a string
|
3331
3364
|
if (clrs && _colorExp.test(e + b)) { //if colors are found, normalize the formatting to rgba() or hsla().
|
@@ -3531,7 +3564,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
3531
3564
|
},
|
3532
3565
|
|
3533
3566
|
//creates a placeholder special prop for a plugin so that the property gets caught the first time a tween of it is attempted, and at that time it makes the plugin register itself, thus taking over for all future tweens of that property. This allows us to not mandate that things load in a particular order and it also allows us to log() an error that informs the user when they attempt to tween an external plugin-related property without loading its .js file.
|
3534
|
-
_registerPluginProp = function(p) {
|
3567
|
+
_registerPluginProp = _internals._registerPluginProp = function(p) {
|
3535
3568
|
if (!_specialProps[p]) {
|
3536
3569
|
var pluginName = p.charAt(0).toUpperCase() + p.substr(1) + "Plugin";
|
3537
3570
|
_registerComplexSpecialProp(p, {parser:function(t, e, p, cssp, pt, plugin, vars) {
|
@@ -4114,11 +4147,13 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4114
4147
|
a12 = Math.sin(angle - skew) * -sy;
|
4115
4148
|
a22 = Math.cos(angle - skew) * sy;
|
4116
4149
|
if (skew && t.skewType === "simple") { //by default, we compensate skewing on the other axis to make it look more natural, but you can set the skewType to "simple" to use the uncompensated skewing that CSS does
|
4117
|
-
t1 = Math.tan(skew);
|
4150
|
+
t1 = Math.tan(skew - t.skewY * _DEG2RAD);
|
4118
4151
|
t1 = Math.sqrt(1 + t1 * t1);
|
4119
4152
|
a12 *= t1;
|
4120
4153
|
a22 *= t1;
|
4121
4154
|
if (t.skewY) {
|
4155
|
+
t1 = Math.tan(t.skewY * _DEG2RAD);
|
4156
|
+
t1 = Math.sqrt(1 + t1 * t1);
|
4122
4157
|
a11 *= t1;
|
4123
4158
|
a21 *= t1;
|
4124
4159
|
}
|
@@ -4173,11 +4208,13 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4173
4208
|
cos = Math.cos(angle);
|
4174
4209
|
sin = Math.sin(angle);
|
4175
4210
|
if (t.skewType === "simple") { //by default, we compensate skewing on the other axis to make it look more natural, but you can set the skewType to "simple" to use the uncompensated skewing that CSS does
|
4176
|
-
t1 = Math.tan(t.skewX * _DEG2RAD);
|
4211
|
+
t1 = Math.tan((t.skewX - t.skewY) * _DEG2RAD);
|
4177
4212
|
t1 = Math.sqrt(1 + t1 * t1);
|
4178
4213
|
cos *= t1;
|
4179
4214
|
sin *= t1;
|
4180
4215
|
if (t.skewY) {
|
4216
|
+
t1 = Math.tan(t.skewY * _DEG2RAD);
|
4217
|
+
t1 = Math.sqrt(1 + t1 * t1);
|
4181
4218
|
a11 *= t1;
|
4182
4219
|
a21 *= t1;
|
4183
4220
|
}
|
@@ -4307,9 +4344,14 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4307
4344
|
p.x = p.y = p.z = p.skewX = p.skewY = p.rotation = p.rotationX = p.rotationY = p.zOrigin = p.xPercent = p.yPercent = p.xOffset = p.yOffset = 0;
|
4308
4345
|
p.scaleX = p.scaleY = p.scaleZ = 1;
|
4309
4346
|
|
4310
|
-
_registerComplexSpecialProp("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,svgOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent,smoothOrigin", {parser:function(t, e,
|
4347
|
+
_registerComplexSpecialProp("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,svgOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent,smoothOrigin", {parser:function(t, e, parsingProp, cssp, pt, plugin, vars) {
|
4311
4348
|
if (cssp._lastParsedTransform === vars) { return pt; } //only need to parse the transform once, and only if the browser supports it.
|
4312
4349
|
cssp._lastParsedTransform = vars;
|
4350
|
+
var swapFunc;
|
4351
|
+
if (typeof(vars[parsingProp]) === "function") { //whatever property triggers the initial parsing might be a function-based value in which case it already got called in parse(), thus we don't want to call it again in here. The most efficient way to avoid this is to temporarily swap the value directly into the vars object, and then after we do all our parsing in this function, we'll swap it back again.
|
4352
|
+
swapFunc = vars[parsingProp];
|
4353
|
+
vars[parsingProp] = e;
|
4354
|
+
}
|
4313
4355
|
var originalGSTransform = t._gsTransform,
|
4314
4356
|
style = t.style,
|
4315
4357
|
min = 0.000001,
|
@@ -4317,12 +4359,13 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4317
4359
|
v = vars,
|
4318
4360
|
endRotations = {},
|
4319
4361
|
transformOriginString = "transformOrigin",
|
4320
|
-
m1 = _getTransform(t, _cs, true,
|
4321
|
-
|
4362
|
+
m1 = _getTransform(t, _cs, true, v.parseTransform),
|
4363
|
+
orig = v.transform && ((typeof(v.transform) === "function") ? v.transform(_index, _target) : v.transform),
|
4364
|
+
m2, copy, has3D, hasChange, dr, x, y, matrix, p;
|
4322
4365
|
cssp._transform = m1;
|
4323
|
-
if (typeof(
|
4366
|
+
if (orig && typeof(orig) === "string" && _transformProp) { //for values like transform:"rotate(60deg) scale(0.5, 0.8)"
|
4324
4367
|
copy = _tempDiv.style; //don't use the original target because it might be SVG in which case some browsers don't report computed style correctly.
|
4325
|
-
copy[_transformProp] =
|
4368
|
+
copy[_transformProp] = orig;
|
4326
4369
|
copy.display = "block"; //if display is "none", the browser often refuses to report the transform properties correctly.
|
4327
4370
|
copy.position = "absolute";
|
4328
4371
|
_doc.body.appendChild(_tempDiv);
|
@@ -4466,6 +4509,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4466
4509
|
if (hasChange) {
|
4467
4510
|
cssp._transformType = (!(m1.svg && _useSVGTransformAttr) && (has3D || this._transformType === 3)) ? 3 : 2; //quicker than calling cssp._enableTransforms();
|
4468
4511
|
}
|
4512
|
+
if (swapFunc) {
|
4513
|
+
vars[parsingProp] = swapFunc;
|
4514
|
+
}
|
4469
4515
|
return pt;
|
4470
4516
|
}, prefix:true});
|
4471
4517
|
|
@@ -4557,7 +4603,10 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4557
4603
|
}
|
4558
4604
|
return this.parseComplex(t.style, bs, es, pt, plugin);
|
4559
4605
|
}, formatter:_parsePosition});
|
4560
|
-
_registerComplexSpecialProp("backgroundSize", {defaultValue:"0 0", formatter:
|
4606
|
+
_registerComplexSpecialProp("backgroundSize", {defaultValue:"0 0", formatter:function(v) {
|
4607
|
+
v += ""; //ensure it's a string
|
4608
|
+
return _parsePosition(v.indexOf(" ") === -1 ? v + " " + v : v); //if set to something like "100% 100%", Safari typically reports the computed style as just "100%" (no 2nd value), but we should ensure that there are two values, so copy the first one. Otherwise, it'd be interpreted as "100% 0" (wrong).
|
4609
|
+
}});
|
4561
4610
|
_registerComplexSpecialProp("perspective", {defaultValue:"0px", prefix:true});
|
4562
4611
|
_registerComplexSpecialProp("perspectiveOrigin", {defaultValue:"50% 50%", prefix:true});
|
4563
4612
|
_registerComplexSpecialProp("transformStyle", {prefix:true});
|
@@ -4790,13 +4839,14 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4790
4839
|
p._firstPT = p._lastParsedTransform = p._transform = null;
|
4791
4840
|
|
4792
4841
|
//gets called when the tween renders for the first time. This kicks everything off, recording start/end values, etc.
|
4793
|
-
p._onInitTween = function(target, vars, tween) {
|
4842
|
+
p._onInitTween = function(target, vars, tween, index) {
|
4794
4843
|
if (!target.nodeType) { //css is only for dom elements
|
4795
4844
|
return false;
|
4796
4845
|
}
|
4797
|
-
this._target = target;
|
4846
|
+
this._target = _target = target;
|
4798
4847
|
this._tween = tween;
|
4799
4848
|
this._vars = vars;
|
4849
|
+
_index = index;
|
4800
4850
|
_autoRound = vars.autoRound;
|
4801
4851
|
_hasPriority = false;
|
4802
4852
|
_suffixMap = vars.suffixMap || CSSPlugin.suffixMap;
|
@@ -4896,6 +4946,9 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
4896
4946
|
p, sp, bn, en, bs, es, bsfx, esfx, isStr, rel;
|
4897
4947
|
for (p in vars) {
|
4898
4948
|
es = vars[p]; //ending value string
|
4949
|
+
if (typeof(es) === "function") {
|
4950
|
+
es = es(_index, _target);
|
4951
|
+
}
|
4899
4952
|
sp = _specialProps[p]; //SpecialProp lookup.
|
4900
4953
|
if (sp) {
|
4901
4954
|
pt = sp.parse(target, es, p, this, pt, plugin, vars);
|
@@ -5128,6 +5181,16 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5128
5181
|
return pt;
|
5129
5182
|
};
|
5130
5183
|
|
5184
|
+
p._mod = function(lookup) {
|
5185
|
+
var pt = this._firstPT;
|
5186
|
+
while (pt) {
|
5187
|
+
if (typeof(lookup[pt.p]) === "function" && lookup[pt.p] === Math.round) { //only gets called by RoundPropsPlugin (ModifyPlugin manages all the rendering internally for CSSPlugin properties that need modification). Remember, we handle rounding a bit differently in this plugin for performance reasons, leveraging "r" as an indicator that the value should be rounded internally..
|
5188
|
+
pt.r = 1;
|
5189
|
+
}
|
5190
|
+
pt = pt._next;
|
5191
|
+
}
|
5192
|
+
};
|
5193
|
+
|
5131
5194
|
//we need to make sure that if alpha or autoAlpha is killed, opacity is too. And autoAlpha affects the "visibility" property.
|
5132
5195
|
p._kill = function(lookup) {
|
5133
5196
|
var copy = lookup,
|
@@ -5154,6 +5217,14 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5154
5217
|
}
|
5155
5218
|
this._classNamePT = null;
|
5156
5219
|
}
|
5220
|
+
pt = this._firstPT;
|
5221
|
+
while (pt) {
|
5222
|
+
if (pt.plugin && pt.plugin !== p && pt.plugin._kill) { //for plugins that are registered with CSSPlugin, we should notify them of the kill.
|
5223
|
+
pt.plugin._kill(lookup);
|
5224
|
+
p = pt.plugin;
|
5225
|
+
}
|
5226
|
+
pt = pt._next;
|
5227
|
+
}
|
5157
5228
|
return TweenPlugin.prototype._kill.call(this, copy);
|
5158
5229
|
};
|
5159
5230
|
|
@@ -5262,7 +5333,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5262
5333
|
|
5263
5334
|
var RoundPropsPlugin = _gsScope._gsDefine.plugin({
|
5264
5335
|
propName: "roundProps",
|
5265
|
-
version: "1.
|
5336
|
+
version: "1.6.0",
|
5266
5337
|
priority: -1,
|
5267
5338
|
API: 2,
|
5268
5339
|
|
@@ -5276,7 +5347,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5276
5347
|
_roundLinkedList = function(node) {
|
5277
5348
|
while (node) {
|
5278
5349
|
if (!node.f && !node.blob) {
|
5279
|
-
node.
|
5350
|
+
node.m = Math.round;
|
5280
5351
|
}
|
5281
5352
|
node = node._next;
|
5282
5353
|
}
|
@@ -5291,7 +5362,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5291
5362
|
rpt = tween._propLookup.roundProps,
|
5292
5363
|
prop, pt, next;
|
5293
5364
|
while (--i > -1) {
|
5294
|
-
lookup[rp[i]] =
|
5365
|
+
lookup[rp[i]] = Math.round;
|
5295
5366
|
}
|
5296
5367
|
i = rp.length;
|
5297
5368
|
while (--i > -1) {
|
@@ -5300,7 +5371,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5300
5371
|
while (pt) {
|
5301
5372
|
next = pt._next; //record here, because it may get removed
|
5302
5373
|
if (pt.pg) {
|
5303
|
-
pt.t.
|
5374
|
+
pt.t._mod(lookup);
|
5304
5375
|
} else if (pt.n === prop) {
|
5305
5376
|
if (pt.f === 2 && pt.t) { //a blob (text containing multiple numeric values)
|
5306
5377
|
_roundLinkedList(pt.t._firstPT);
|
@@ -5326,7 +5397,7 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5326
5397
|
};
|
5327
5398
|
|
5328
5399
|
p._add = function(target, p, s, c) {
|
5329
|
-
this._addTween(target, p, s, s + c, p,
|
5400
|
+
this._addTween(target, p, s, s + c, p, Math.round);
|
5330
5401
|
this._overwriteProps.push(p);
|
5331
5402
|
};
|
5332
5403
|
|
@@ -5352,16 +5423,20 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5352
5423
|
_gsScope._gsDefine.plugin({
|
5353
5424
|
propName: "attr",
|
5354
5425
|
API: 2,
|
5355
|
-
version: "0.
|
5426
|
+
version: "0.6.0",
|
5356
5427
|
|
5357
5428
|
//called when the tween renders for the first time. This is where initial values should be recorded and any setup routines should run.
|
5358
|
-
init: function(target, value, tween) {
|
5359
|
-
var p;
|
5429
|
+
init: function(target, value, tween, index) {
|
5430
|
+
var p, end;
|
5360
5431
|
if (typeof(target.setAttribute) !== "function") {
|
5361
5432
|
return false;
|
5362
5433
|
}
|
5363
5434
|
for (p in value) {
|
5364
|
-
|
5435
|
+
end = value[p];
|
5436
|
+
if (typeof(end) === "function") {
|
5437
|
+
end = end(index, target);
|
5438
|
+
}
|
5439
|
+
this._addTween(target, "setAttribute", target.getAttribute(p) + "", end + "", p, false, p);
|
5365
5440
|
this._overwriteProps.push(p);
|
5366
5441
|
}
|
5367
5442
|
return true;
|
@@ -5387,11 +5462,11 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5387
5462
|
*/
|
5388
5463
|
_gsScope._gsDefine.plugin({
|
5389
5464
|
propName: "directionalRotation",
|
5390
|
-
version: "0.
|
5465
|
+
version: "0.3.0",
|
5391
5466
|
API: 2,
|
5392
5467
|
|
5393
5468
|
//called when the tween renders for the first time. This is where initial values should be recorded and any setup routines should run.
|
5394
|
-
init: function(target, value, tween) {
|
5469
|
+
init: function(target, value, tween, index) {
|
5395
5470
|
if (typeof(value) !== "object") {
|
5396
5471
|
value = {rotation:value};
|
5397
5472
|
}
|
@@ -5401,7 +5476,11 @@ var _gsScope = (typeof(module) !== "undefined" && module.exports && typeof(globa
|
|
5401
5476
|
p, v, start, end, dif, split;
|
5402
5477
|
for (p in value) {
|
5403
5478
|
if (p !== "useRadians") {
|
5404
|
-
|
5479
|
+
end = value[p];
|
5480
|
+
if (typeof(end) === "function") {
|
5481
|
+
end = end(index, target);
|
5482
|
+
}
|
5483
|
+
split = (end + "").split("_");
|
5405
5484
|
v = split[0];
|
5406
5485
|
start = parseFloat( (typeof(target[p]) !== "function") ? target[p] : target[ ((p.indexOf("set") || typeof(target["get" + p.substr(3)]) !== "function") ? p : "get" + p.substr(3)) ]() );
|
5407
5486
|
end = this.finals[p] = (typeof(v) === "string" && v.charAt(1) === "=") ? start + parseInt(v.charAt(0) + "1", 10) * Number(v.substr(2)) : Number(v) || 0;
|
@@ -5906,7 +5985,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
5906
5985
|
|
5907
5986
|
//exports to multiple environments
|
5908
5987
|
if (global) {
|
5909
|
-
_globals[n] = cl; //provides a way to avoid global namespace pollution. By default, the main classes like TweenLite, Power1, Strong, etc. are added to window unless a GreenSockGlobals is defined. So if you want to have things added to a custom object instead, just do something like window.GreenSockGlobals = {} before loading any GreenSock files. You can even set up an alias like window.GreenSockGlobals = windows.gs = {} so that you can access everything like gs.TweenLite. Also remember that ALL classes are added to the window.com.greensock object (in their respective packages, like com.greensock.easing.Power1, com.greensock.TweenLite, etc.)
|
5988
|
+
_globals[n] = _exports[n] = cl; //provides a way to avoid global namespace pollution. By default, the main classes like TweenLite, Power1, Strong, etc. are added to window unless a GreenSockGlobals is defined. So if you want to have things added to a custom object instead, just do something like window.GreenSockGlobals = {} before loading any GreenSock files. You can even set up an alias like window.GreenSockGlobals = windows.gs = {} so that you can access everything like gs.TweenLite. Also remember that ALL classes are added to the window.com.greensock object (in their respective packages, like com.greensock.easing.Power1, com.greensock.TweenLite, etc.)
|
5910
5989
|
hasModule = (typeof(module) !== "undefined" && module.exports);
|
5911
5990
|
if (!hasModule && typeof(define) === "function" && define.amd){ //AMD
|
5912
5991
|
define((window.GreenSockAMDPath ? window.GreenSockAMDPath + "/" : "") + ns.split(".").pop(), [], function() { return cl; });
|
@@ -6062,6 +6141,9 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6062
6141
|
i, t, listener;
|
6063
6142
|
if (list) {
|
6064
6143
|
i = list.length;
|
6144
|
+
if (i > 1) {
|
6145
|
+
list = list.slice(0); //in case addEventListener() is called from within a listener/callback (otherwise the index could change, resulting in a skip)
|
6146
|
+
}
|
6065
6147
|
t = this._eventTarget;
|
6066
6148
|
while (--i > -1) {
|
6067
6149
|
listener = list[i];
|
@@ -6351,8 +6433,17 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6351
6433
|
};
|
6352
6434
|
|
6353
6435
|
p._callback = function(type) {
|
6354
|
-
var v = this.vars
|
6355
|
-
|
6436
|
+
var v = this.vars,
|
6437
|
+
callback = v[type],
|
6438
|
+
params = v[type + "Params"],
|
6439
|
+
scope = v[type + "Scope"] || v.callbackScope || this,
|
6440
|
+
l = params ? params.length : 0;
|
6441
|
+
switch (l) { //speed optimization; call() is faster than apply() so use it when there are only a few parameters (which is by far most common). Previously we simply did var v = this.vars; v[type].apply(v[type + "Scope"] || v.callbackScope || this, v[type + "Params"] || _blankArray);
|
6442
|
+
case 0: callback.call(scope); break;
|
6443
|
+
case 1: callback.call(scope, params[0]); break;
|
6444
|
+
case 2: callback.call(scope, params[0], params[1]); break;
|
6445
|
+
default: callback.apply(scope, params);
|
6446
|
+
}
|
6356
6447
|
};
|
6357
6448
|
|
6358
6449
|
//----Animation getters/setters --------------------------------------------------------
|
@@ -6736,7 +6827,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6736
6827
|
p._firstPT = p._targets = p._overwrittenProps = p._startAt = null;
|
6737
6828
|
p._notifyPluginsOfEnabled = p._lazy = false;
|
6738
6829
|
|
6739
|
-
TweenLite.version = "1.
|
6830
|
+
TweenLite.version = "1.19.0";
|
6740
6831
|
TweenLite.defaultEase = p._ease = new Ease(null, null, 1, 1);
|
6741
6832
|
TweenLite.defaultOverwrite = "auto";
|
6742
6833
|
TweenLite.ticker = _ticker;
|
@@ -6764,8 +6855,8 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6764
6855
|
val;
|
6765
6856
|
while (pt) {
|
6766
6857
|
val = !pt.blob ? pt.c * v + pt.s : v ? this.join("") : this.start;
|
6767
|
-
if (pt.
|
6768
|
-
val =
|
6858
|
+
if (pt.m) {
|
6859
|
+
val = pt.m(val, this._target || pt.t);
|
6769
6860
|
} else if (val < min) if (val > -min) { //prevents issues with converting very small numbers to strings in the browser
|
6770
6861
|
val = 0;
|
6771
6862
|
}
|
@@ -6798,7 +6889,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6798
6889
|
if (pt) {
|
6799
6890
|
pt._next = null;
|
6800
6891
|
pt.blob = 1;
|
6801
|
-
a._firstPT = pt; //apply last in the linked list (which means inserting it first)
|
6892
|
+
a._firstPT = a._applyPT = pt; //apply last in the linked list (which means inserting it first)
|
6802
6893
|
}
|
6803
6894
|
l = endNums.length;
|
6804
6895
|
for (i = 0; i < l; i++) {
|
@@ -6820,7 +6911,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6820
6911
|
}
|
6821
6912
|
num = parseFloat(startNums[i]);
|
6822
6913
|
a.push(num);
|
6823
|
-
a._firstPT = {_next: a._firstPT, t:a, p: a.length-1, s:num, c:((currentNum.charAt(1) === "=") ? parseInt(currentNum.charAt(0) + "1", 10) * parseFloat(currentNum.substr(2)) : (parseFloat(currentNum) - num)) || 0, f:0,
|
6914
|
+
a._firstPT = {_next: a._firstPT, t:a, p: a.length-1, s:num, c:((currentNum.charAt(1) === "=") ? parseInt(currentNum.charAt(0) + "1", 10) * parseFloat(currentNum.substr(2)) : (parseFloat(currentNum) - num)) || 0, f:0, m:(color && color < 4) ? Math.round : 0};
|
6824
6915
|
//note: we don't set _prev because we'll never need to remove individual PropTweens from this list.
|
6825
6916
|
}
|
6826
6917
|
charIndex += currentNum.length;
|
@@ -6833,11 +6924,14 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6833
6924
|
return a;
|
6834
6925
|
},
|
6835
6926
|
//note: "funcParam" is only necessary for function-based getters/setters that require an extra parameter like getAttribute("width") and setAttribute("width", value). In this example, funcParam would be "width". Used by AttrPlugin for example.
|
6836
|
-
_addPropTween = function(target, prop, start, end, overwriteProp,
|
6927
|
+
_addPropTween = function(target, prop, start, end, overwriteProp, mod, funcParam, stringFilter, index) {
|
6928
|
+
if (typeof(end) === "function") {
|
6929
|
+
end = end(index || 0, target);
|
6930
|
+
}
|
6837
6931
|
var s = (start === "get") ? target[prop] : start,
|
6838
6932
|
type = typeof(target[prop]),
|
6839
6933
|
isRelative = (typeof(end) === "string" && end.charAt(1) === "="),
|
6840
|
-
pt = {t:target, p:prop, s:s, f:(type === "function"), pg:0, n:overwriteProp || prop,
|
6934
|
+
pt = {t:target, p:prop, s:s, f:(type === "function"), pg:0, n:overwriteProp || prop, m:(!mod ? 0 : (typeof(mod) === "function") ? mod : Math.round), pr:0, c:isRelative ? parseInt(end.charAt(0) + "1", 10) * parseFloat(end.substr(2)) : (parseFloat(end) - s) || 0},
|
6841
6935
|
blob, getterName;
|
6842
6936
|
if (type !== "number") {
|
6843
6937
|
if (type === "function" && start === "get") {
|
@@ -6848,7 +6942,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
6848
6942
|
//a blob (string that has multiple numbers in it)
|
6849
6943
|
pt.fp = funcParam;
|
6850
6944
|
blob = _blobDif(s, end, stringFilter || TweenLite.defaultStringFilter, pt);
|
6851
|
-
pt = {t:blob, p:"setRatio", s:0, c:1, f:2, pg:0, n:overwriteProp || prop, pr:0}; //"2" indicates it's a Blob property tween. Needed for RoundPropsPlugin for example.
|
6945
|
+
pt = {t:blob, p:"setRatio", s:0, c:1, f:2, pg:0, n:overwriteProp || prop, pr:0, m:0}; //"2" indicates it's a Blob property tween. Needed for RoundPropsPlugin for example.
|
6852
6946
|
} else if (!isRelative) {
|
6853
6947
|
pt.s = parseFloat(s);
|
6854
6948
|
pt.c = (parseFloat(end) - pt.s) || 0;
|
@@ -7037,7 +7131,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7037
7131
|
dur = this._duration,
|
7038
7132
|
immediate = !!v.immediateRender,
|
7039
7133
|
ease = v.ease,
|
7040
|
-
i, initPlugins, pt, p, startVars;
|
7134
|
+
i, initPlugins, pt, p, startVars, l;
|
7041
7135
|
if (v.startAt) {
|
7042
7136
|
if (this._startAt) {
|
7043
7137
|
this._startAt.render(-1, true); //if we've run a startAt previously (when the tween instantiated), we should revert it so that the values re-instantiate correctly particularly for relative tweens. Without this, a TweenLite.fromTo(obj, 1, {x:"+=100"}, {x:"-=100"}), for example, would actually jump to +=200 because the startAt would run twice, doubling the relative change.
|
@@ -7100,14 +7194,14 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7100
7194
|
this._firstPT = null;
|
7101
7195
|
|
7102
7196
|
if (this._targets) {
|
7103
|
-
|
7104
|
-
|
7105
|
-
if ( this._initProps( this._targets[i], (this._propLookup[i] = {}), this._siblings[i], (op ? op[i] : null)) ) {
|
7197
|
+
l = this._targets.length;
|
7198
|
+
for (i = 0; i < l; i++) {
|
7199
|
+
if ( this._initProps( this._targets[i], (this._propLookup[i] = {}), this._siblings[i], (op ? op[i] : null), i) ) {
|
7106
7200
|
initPlugins = true;
|
7107
7201
|
}
|
7108
7202
|
}
|
7109
7203
|
} else {
|
7110
|
-
initPlugins = this._initProps(this.target, this._propLookup, this._siblings, op);
|
7204
|
+
initPlugins = this._initProps(this.target, this._propLookup, this._siblings, op, 0);
|
7111
7205
|
}
|
7112
7206
|
|
7113
7207
|
if (initPlugins) {
|
@@ -7128,7 +7222,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7128
7222
|
this._initted = true;
|
7129
7223
|
};
|
7130
7224
|
|
7131
|
-
p._initProps = function(target, propLookup, siblings, overwrittenProps) {
|
7225
|
+
p._initProps = function(target, propLookup, siblings, overwrittenProps, index) {
|
7132
7226
|
var p, i, initPlugins, plugin, pt, v;
|
7133
7227
|
if (target == null) {
|
7134
7228
|
return false;
|
@@ -7148,7 +7242,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7148
7242
|
this.vars[p] = v = this._swapSelfInParams(v, this);
|
7149
7243
|
}
|
7150
7244
|
|
7151
|
-
} else if (_plugins[p] && (plugin = new _plugins[p]())._onInitTween(target, this.vars[p], this)) {
|
7245
|
+
} else if (_plugins[p] && (plugin = new _plugins[p]())._onInitTween(target, this.vars[p], this, index)) {
|
7152
7246
|
|
7153
7247
|
//t - target [object]
|
7154
7248
|
//p - property [string]
|
@@ -7158,7 +7252,8 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7158
7252
|
//n - name [string]
|
7159
7253
|
//pg - isPlugin [boolean]
|
7160
7254
|
//pr - priority [number]
|
7161
|
-
|
7255
|
+
//m - mod [function | 0]
|
7256
|
+
this._firstPT = pt = {_next:this._firstPT, t:plugin, p:"setRatio", s:0, c:1, f:1, n:p, pg:1, pr:plugin._priority, m:0};
|
7162
7257
|
i = plugin._overwriteProps.length;
|
7163
7258
|
while (--i > -1) {
|
7164
7259
|
propLookup[plugin._overwriteProps[i]] = this._firstPT;
|
@@ -7174,16 +7269,16 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7174
7269
|
}
|
7175
7270
|
|
7176
7271
|
} else {
|
7177
|
-
propLookup[p] = _addPropTween.call(this, target, p, "get", v, p, 0, null, this.vars.stringFilter);
|
7272
|
+
propLookup[p] = _addPropTween.call(this, target, p, "get", v, p, 0, null, this.vars.stringFilter, index);
|
7178
7273
|
}
|
7179
7274
|
}
|
7180
7275
|
|
7181
7276
|
if (overwrittenProps) if (this._kill(overwrittenProps, target)) { //another tween may have tried to overwrite properties of this tween before init() was called (like if two tweens start at the same time, the one created second will run first)
|
7182
|
-
return this._initProps(target, propLookup, siblings, overwrittenProps);
|
7277
|
+
return this._initProps(target, propLookup, siblings, overwrittenProps, index);
|
7183
7278
|
}
|
7184
7279
|
if (this._overwrite > 1) if (this._firstPT) if (siblings.length > 1) if (_applyOverwrite(target, this, propLookup, this._overwrite, siblings)) {
|
7185
7280
|
this._kill(propLookup, target);
|
7186
|
-
return this._initProps(target, propLookup, siblings, overwrittenProps);
|
7281
|
+
return this._initProps(target, propLookup, siblings, overwrittenProps, index);
|
7187
7282
|
}
|
7188
7283
|
if (this._firstPT) if ((this.vars.lazy !== false && this._duration) || (this.vars.lazy && !this._duration)) { //zero duration tweens don't lazy render by default; everything else does.
|
7189
7284
|
_lazyLookup[target._gsTweenID] = true;
|
@@ -7563,7 +7658,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7563
7658
|
}, true);
|
7564
7659
|
|
7565
7660
|
p = TweenPlugin.prototype;
|
7566
|
-
TweenPlugin.version = "1.
|
7661
|
+
TweenPlugin.version = "1.19.0";
|
7567
7662
|
TweenPlugin.API = 2;
|
7568
7663
|
p._firstPT = null;
|
7569
7664
|
p._addTween = _addPropTween;
|
@@ -7600,11 +7695,17 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7600
7695
|
return false;
|
7601
7696
|
};
|
7602
7697
|
|
7603
|
-
p._roundProps = function(lookup
|
7604
|
-
var pt = this._firstPT
|
7698
|
+
p._mod = p._roundProps = function(lookup) {
|
7699
|
+
var pt = this._firstPT,
|
7700
|
+
val;
|
7605
7701
|
while (pt) {
|
7606
|
-
|
7607
|
-
|
7702
|
+
val = lookup[this._propName] || (pt.n != null && lookup[ pt.n.split(this._propName + "_").join("") ]);
|
7703
|
+
if (val && typeof(val) === "function") { //some properties that are very plugin-specific add a prefix named after the _propName plus an underscore, so we need to ignore that extra stuff here.
|
7704
|
+
if (pt.f === 2) {
|
7705
|
+
pt.t._applyPT.m = val;
|
7706
|
+
} else {
|
7707
|
+
pt.m = val;
|
7708
|
+
}
|
7608
7709
|
}
|
7609
7710
|
pt = pt._next;
|
7610
7711
|
}
|
@@ -7660,7 +7761,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7660
7761
|
var propName = config.propName,
|
7661
7762
|
priority = config.priority || 0,
|
7662
7763
|
overwriteProps = config.overwriteProps,
|
7663
|
-
map = {init:"_onInitTween", set:"setRatio", kill:"_kill", round:"
|
7764
|
+
map = {init:"_onInitTween", set:"setRatio", kill:"_kill", round:"_mod", mod:"_mod", initAll:"_onInitAllProps"},
|
7664
7765
|
Plugin = _class("plugins." + propName.charAt(0).toUpperCase() + propName.substr(1) + "Plugin",
|
7665
7766
|
function() {
|
7666
7767
|
TweenPlugin.call(this, propName, priority);
|
@@ -7689,7 +7790,7 @@ if (_gsScope._gsDefine) { _gsScope._gsQueue.pop()(); } //necessary in case Tween
|
|
7689
7790
|
}
|
7690
7791
|
for (p in _defLookup) {
|
7691
7792
|
if (!_defLookup[p].func) {
|
7692
|
-
window.console.log("GSAP encountered missing dependency:
|
7793
|
+
window.console.log("GSAP encountered missing dependency: " + p);
|
7693
7794
|
}
|
7694
7795
|
}
|
7695
7796
|
}
|