(function(g){ "use strict"; function applyVars(target, vars){ vars = vars || {}; var props = vars.css || vars; if (target && typeof target.css === "function" && target.jquery) { var css = {}; for (var k in props) { if (k !== "autoAlpha" && k !== "ease" && k !== "delay" && k !== "scrollTrigger") css[k] = props[k]; } if (vars.autoAlpha !== undefined) { css.opacity = vars.autoAlpha; css.visibility = vars.autoAlpha == 0 ? "hidden" : "visible"; } target.css(css); return; } var list; if (typeof target === "string") list = document.querySelectorAll(target); else if (target && target.nodeType) list = [target]; else if (target && target.length !== undefined) list = target; else return; Array.prototype.forEach.call(list, function(el){ if (!el || !el.style) return; for (var k in props) { if (k !== "autoAlpha" && k !== "ease" && k !== "delay" && k !== "scrollTrigger") { try { el.style[k] = props[k]; } catch(e){} } } if (vars.autoAlpha !== undefined) { el.style.opacity = vars.autoAlpha; el.style.visibility = vars.autoAlpha == 0 ? "hidden" : "visible"; } }); } var tickerCbs = []; var tickerRunning = false; function tickerLoop(){ for (var i = 0; i < tickerCbs.length; i++) { try { tickerCbs[i](); } catch(e){} } if (tickerRunning) requestAnimationFrame(tickerLoop); } var ticker = { add: function(fn){ tickerCbs.push(fn); if (!tickerRunning) { tickerRunning = true; requestAnimationFrame(tickerLoop); } }, remove: function(fn){ var i = tickerCbs.indexOf(fn); if (i > -1) tickerCbs.splice(i, 1); } }; function makeTimeline(){ var tl = { set: function(t, v){ applyVars(t, v); return tl; }, to: function(t, d, v){ applyVars(t, v); return tl; }, from: function(t, d, v){ return tl; }, fromTo: function(t, f, to){ applyVars(t, to); return tl; } }; return tl; } var gsapObj = { registerPlugin: function(){}, ticker: ticker, timeline: function(){ return makeTimeline(); }, utils: { toArray: function(sel){ return sel ? Array.prototype.slice.call(document.querySelectorAll(sel)) : []; } }, set: function(t, v){ applyVars(t, v); }, to: function(t, v){ applyVars(t, v); }, from: function(){}, fromTo: function(t, f, to){ applyVars(t, to); }, quickSetter: function(target, prop, unit){ var el = typeof target === "string" ? document.querySelector(target) : target; return function(value){ if (!el) return; if (prop === "x") el.style.transform = "translateX(" + value + (unit || "") + ")"; else if (prop === "y") el.style.transform = "translateY(" + value + (unit || "") + ")"; else el.style[prop] = value + (unit || ""); }; } }; g.gsap = gsapObj; g.Power0 = g.Power1 = g.Power2 = g.Power3 = g.Power4 = { out: "power.out", in: "power.in", inOut: "power.inOut" }; var TweenMaxObj = { to: function(target, duration, vars){ vars = vars || {}; if (vars.repeat === -1 && typeof vars.onRepeat === "function") { var ms = Math.max(16, (duration || 0) * 1000); setInterval(vars.onRepeat, ms); vars.onRepeat(); } else if (typeof vars.onComplete === "function") { setTimeout(vars.onComplete, Math.max(0, (duration || 0) * 1000)); } return {}; }, set: function(target, vars){ applyVars(target, vars); return {}; } }; g.TweenMax = g.TweenLite = TweenMaxObj; })(window);