{"version":3,"sources":["vegas.min.js"],"names":["$","defaults","slide","delay","loop","preload","preloadImage","preloadVideo","timer","overlay","autoplay","shuffle","cover","color","align","valign","firstTransition","firstTransitionDuration","transition","transitionDuration","transitionRegister","animation","animationDuration","animationRegister","slidesToKeep","init","play","pause","walk","slides","videoCache","Vegas","elmt","options","this","settings","extend","vegas","total","length","noshow","paused","ended","$elmt","$timer","$overlay","$slide","timeout","first","transitions","animations","Array","concat","support","objectFit","document","body","style","video","isVideoCompatible","_init","prototype","$wrapper","isBody","tagName","self","_preload","css","clone","children","appendTo","innerHTML","prepend","addClass","append","setTimeout","trigger","_goto","img","i","preloadImages","src","Image","preloadVideos","_video","_random","array","Math","floor","random","_slideShow","next","_options","_timer","state","clearTimeout","removeClass","find","srcs","source","cacheKey","toString","createElement","forEach","appendChild","_fadeOutSound","duration","volume","_fadeInSound","key","undefined","nb","go","$slides","each","get","fadeIn","eq","remove","$inner","$video","videoSettings","muted","mute","after","className","readyState","currentTime","complete","onload","_end","temp","rand","toggle","playing","current","advanced","data","jump","previous","fn","params","apply","value","oldSlides","slice","destroy","_vegas","returns","args","arguments","error","instance","Error","call","test","navigator","userAgent","window","jQuery","Zepto"],"mappings":"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","file":"vegas.min.js","sourcesContent":["/*!-----------------------------------------------------------------------------\n * Vegas - Fullscreen Backgrounds and Slideshows.\n * v2.4.0 - built 2017-01-04\n * Licensed under the MIT License.\n * http://vegas.jaysalvat.com/\n * ----------------------------------------------------------------------------\n * Copyright (C) 2010-2017 Jay Salvat\n * http://jaysalvat.com/\n * --------------------------------------------------------------------------*/\n\n(function ($) {\n 'use strict';\n\n var defaults = {\n slide: 0,\n delay: 5000,\n loop: true,\n preload: false,\n preloadImage: false,\n preloadVideo: false,\n timer: true,\n overlay: false,\n autoplay: true,\n shuffle: false,\n cover: true,\n color: null,\n align: 'center',\n valign: 'center',\n firstTransition: null,\n firstTransitionDuration: null,\n transition: 'fade',\n transitionDuration: 1000,\n transitionRegister: [],\n animation: null,\n animationDuration: 'auto',\n animationRegister: [],\n slidesToKeep: 1,\n init: function () {},\n play: function () {},\n pause: function () {},\n walk: function () {},\n slides: [\n // {\n // src: null,\n // color: null,\n // delay: null,\n // align: null,\n // valign: null,\n // transition: null,\n // transitionDuration: null,\n // animation: null,\n // animationDuration: null,\n // cover: true,\n // video: {\n // src: [],\n // mute: true,\n // loop: true\n // }\n // ...\n ]\n };\n\n var videoCache = {};\n\n var Vegas = function (elmt, options) {\n this.elmt = elmt;\n this.settings = $.extend({}, defaults, $.vegas.defaults, options);\n this.slide = this.settings.slide;\n this.total = this.settings.slides.length;\n this.noshow = this.total < 2;\n this.paused = !this.settings.autoplay || this.noshow;\n this.ended = false;\n this.$elmt = $(elmt);\n this.$timer = null;\n this.$overlay = null;\n this.$slide = null;\n this.timeout = null;\n this.first = true;\n\n this.transitions = [\n 'fade', 'fade2',\n 'blur', 'blur2',\n 'flash', 'flash2',\n 'negative', 'negative2',\n 'burn', 'burn2',\n 'slideLeft', 'slideLeft2',\n 'slideRight', 'slideRight2',\n 'slideUp', 'slideUp2',\n 'slideDown', 'slideDown2',\n 'zoomIn', 'zoomIn2',\n 'zoomOut', 'zoomOut2',\n 'swirlLeft', 'swirlLeft2',\n 'swirlRight', 'swirlRight2'\n ];\n\n this.animations = [\n 'kenburns',\n 'kenburnsLeft', 'kenburnsRight',\n 'kenburnsUp', 'kenburnsUpLeft', 'kenburnsUpRight',\n 'kenburnsDown', 'kenburnsDownLeft', 'kenburnsDownRight'\n ];\n\n if (this.settings.transitionRegister instanceof Array === false) {\n this.settings.transitionRegister = [ this.settings.transitionRegister ];\n }\n\n if (this.settings.animationRegister instanceof Array === false) {\n this.settings.animationRegister = [ this.settings.animationRegister ];\n }\n\n this.transitions = this.transitions.concat(this.settings.transitionRegister);\n this.animations = this.animations.concat(this.settings.animationRegister);\n\n this.support = {\n objectFit: 'objectFit' in document.body.style,\n transition: 'transition' in document.body.style || 'WebkitTransition' in document.body.style,\n video: $.vegas.isVideoCompatible()\n };\n\n if (this.settings.shuffle === true) {\n this.shuffle();\n }\n\n this._init();\n };\n\n Vegas.prototype = {\n _init: function () {\n var $wrapper,\n $overlay,\n $timer,\n isBody = this.elmt.tagName === 'BODY',\n timer = this.settings.timer,\n overlay = this.settings.overlay,\n self = this;\n\n // Preloading\n this._preload();\n\n // Wrapper with content\n if (!isBody) {\n this.$elmt.css('height', this.$elmt.css('height'));\n\n $wrapper = $('
')\n .css('overflow', this.$elmt.css('overflow'))\n .css('padding', this.$elmt.css('padding'));\n\n // Some browsers don't compute padding shorthand\n if (!this.$elmt.css('padding')) {\n $wrapper\n .css('padding-top', this.$elmt.css('padding-top'))\n .css('padding-bottom', this.$elmt.css('padding-bottom'))\n .css('padding-left', this.$elmt.css('padding-left'))\n .css('padding-right', this.$elmt.css('padding-right'));\n }\n\n this.$elmt.clone(true).children().appendTo($wrapper);\n this.elmt.innerHTML = '';\n }\n\n // Timer\n if (timer && this.support.transition) {\n $timer = $('
');\n this.$timer = $timer;\n this.$elmt.prepend($timer);\n }\n\n // Overlay\n if (overlay) {\n $overlay = $('
');\n\n if (typeof overlay === 'string') {\n $overlay.css('background-image', 'url(' + overlay + ')');\n }\n\n this.$overlay = $overlay;\n this.$elmt.prepend($overlay);\n }\n\n // Container\n this.$elmt.addClass('vegas-container');\n\n if (!isBody) {\n this.$elmt.append($wrapper);\n }\n\n setTimeout(function () {\n self.trigger('init');\n self._goto(self.slide);\n\n if (self.settings.autoplay) {\n self.trigger('play');\n }\n }, 1);\n },\n\n _preload: function () {\n var img, i;\n\n for (i = 0; i < this.settings.slides.length; i++) {\n if (this.settings.preload || this.settings.preloadImages) {\n if (this.settings.slides[i].src) {\n img = new Image();\n img.src = this.settings.slides[i].src;\n }\n }\n\n if (this.settings.preload || this.settings.preloadVideos) {\n if (this.support.video && this.settings.slides[i].video) {\n if (this.settings.slides[i].video instanceof Array) {\n this._video(this.settings.slides[i].video);\n } else {\n this._video(this.settings.slides[i].video.src);\n }\n }\n }\n }\n },\n\n _random: function (array) {\n return array[Math.floor(Math.random() * array.length)];\n },\n\n _slideShow: function () {\n var self = this;\n\n if (this.total > 1 && !this.ended && !this.paused && !this.noshow) {\n this.timeout = setTimeout(function () {\n self.next();\n }, this._options('delay'));\n }\n },\n\n _timer: function (state) {\n var self = this;\n\n clearTimeout(this.timeout);\n\n if (!this.$timer) {\n return;\n }\n\n this.$timer\n .removeClass('vegas-timer-running')\n .find('div')\n .css('transition-duration', '0ms');\n\n if (this.ended || this.paused || this.noshow) {\n return;\n }\n\n if (state) {\n setTimeout(function () {\n self.$timer\n .addClass('vegas-timer-running')\n .find('div')\n .css('transition-duration', self._options('delay') - 100 + 'ms');\n }, 100);\n }\n },\n\n _video: function (srcs) {\n var video,\n source,\n cacheKey = srcs.toString();\n\n if (videoCache[cacheKey]) {\n return videoCache[cacheKey];\n }\n\n if (srcs instanceof Array === false) {\n srcs = [ srcs ];\n }\n\n video = document.createElement('video');\n video.preload = true;\n\n srcs.forEach(function (src) {\n source = document.createElement('source');\n source.src = src;\n video.appendChild(source);\n });\n\n videoCache[cacheKey] = video;\n\n return video;\n },\n\n _fadeOutSound: function (video, duration) {\n var self = this,\n delay = duration / 10,\n volume = video.volume - 0.09;\n\n if (volume > 0) {\n video.volume = volume;\n\n setTimeout(function () {\n self._fadeOutSound(video, duration);\n }, delay);\n } else {\n video.pause();\n }\n },\n\n _fadeInSound: function (video, duration) {\n var self = this,\n delay = duration / 10,\n volume = video.volume + 0.09;\n\n if (volume < 1) {\n video.volume = volume;\n\n setTimeout(function () {\n self._fadeInSound(video, duration);\n }, delay);\n }\n },\n\n _options: function (key, i) {\n if (i === undefined) {\n i = this.slide;\n }\n\n if (this.settings.slides[i][key] !== undefined) {\n return this.settings.slides[i][key];\n }\n\n return this.settings[key];\n },\n\n _goto: function (nb) {\n if (typeof this.settings.slides[nb] === 'undefined') {\n nb = 0;\n }\n\n this.slide = nb;\n\n var $slide,\n $inner,\n $video,\n $slides = this.$elmt.children('.vegas-slide'),\n src = this.settings.slides[nb].src,\n videoSettings = this.settings.slides[nb].video,\n delay = this._options('delay'),\n align = this._options('align'),\n valign = this._options('valign'),\n cover = this._options('cover'),\n color = this._options('color') || this.$elmt.css('background-color'),\n self = this,\n total = $slides.length,\n video,\n img;\n\n var transition = this._options('transition'),\n transitionDuration = this._options('transitionDuration'),\n animation = this._options('animation'),\n animationDuration = this._options('animationDuration');\n\n if (this.settings.firstTransition && this.first) {\n transition = this.settings.firstTransition || transition;\n }\n\n if (this.settings.firstTransitionDuration && this.first) {\n transitionDuration = this.settings.firstTransitionDuration || transitionDuration;\n }\n\n if (this.first) {\n this.first = false;\n }\n\n if (cover !== 'repeat') {\n if (cover === true) {\n cover = 'cover';\n } else if (cover === false) {\n cover = 'contain';\n }\n }\n\n if (transition === 'random' || transition instanceof Array) {\n if (transition instanceof Array) {\n transition = this._random(transition);\n } else {\n transition = this._random(this.transitions);\n }\n }\n\n if (animation === 'random' || animation instanceof Array) {\n if (animation instanceof Array) {\n animation = this._random(animation);\n } else {\n animation = this._random(this.animations);\n }\n }\n\n if (transitionDuration === 'auto' || transitionDuration > delay) {\n transitionDuration = delay;\n }\n\n if (animationDuration === 'auto') {\n animationDuration = delay;\n }\n\n $slide = $('
');\n\n if (this.support.transition && transition) {\n $slide.addClass('vegas-transition-' + transition);\n }\n\n // Video\n\n if (this.support.video && videoSettings) {\n if (videoSettings instanceof Array) {\n video = this._video(videoSettings);\n } else {\n video = this._video(videoSettings.src);\n }\n\n video.loop = videoSettings.loop !== undefined ? videoSettings.loop : true;\n video.muted = videoSettings.mute !== undefined ? videoSettings.mute : true;\n\n if (video.muted === false) {\n video.volume = 0;\n this._fadeInSound(video, transitionDuration);\n } else {\n video.pause();\n }\n\n $video = $(video)\n .addClass('vegas-video')\n .css('background-color', color);\n\n if (this.support.objectFit) {\n $video\n .css('object-position', align + ' ' + valign)\n .css('object-fit', cover)\n .css('width', '100%')\n .css('height', '100%');\n } else if (cover === 'contain') {\n $video\n .css('width', '100%')\n .css('height', '100%');\n }\n\n $slide.append($video);\n\n // Image\n\n } else {\n img = new Image();\n\n $inner = $('
')\n .css('background-image', 'url(\"' + src + '\")')\n .css('background-color', color)\n .css('background-position', align + ' ' + valign);\n\n if (cover === 'repeat') {\n $inner.css('background-repeat', 'repeat');\n } else {\n $inner.css('background-size', cover);\n }\n\n if (this.support.transition && animation) {\n $inner\n .addClass('vegas-animation-' + animation)\n .css('animation-duration', animationDuration + 'ms');\n }\n\n $slide.append($inner);\n }\n\n if (!this.support.transition) {\n $slide.css('display', 'none');\n }\n\n if (total) {\n $slides.eq(total - 1).after($slide);\n } else {\n this.$elmt.prepend($slide);\n }\n\n $slides\n .css('transition', 'all 0ms')\n .each(function () {\n this.className = 'vegas-slide';\n\n if (this.tagName === 'VIDEO') {\n this.className += ' vegas-video'; \n }\n\n if (transition) {\n this.className += ' vegas-transition-' + transition;\n this.className += ' vegas-transition-' + transition + '-in';\n }\n }\n );\n\n self._timer(false);\n\n function go () {\n self._timer(true);\n\n setTimeout(function () {\n if (transition) {\n if (self.support.transition) {\n $slides\n .css('transition', 'all ' + transitionDuration + 'ms')\n .addClass('vegas-transition-' + transition + '-out');\n\n $slides.each(function () {\n var video = $slides.find('video').get(0);\n\n if (video) {\n video.volume = 1;\n self._fadeOutSound(video, transitionDuration);\n }\n });\n\n $slide\n .css('transition', 'all ' + transitionDuration + 'ms')\n .addClass('vegas-transition-' + transition + '-in');\n } else {\n $slide.fadeIn(transitionDuration);\n }\n }\n\n for (var i = 0; i < $slides.length - self.settings.slidesToKeep; i++) {\n $slides.eq(i).remove();\n }\n\n self.trigger('walk');\n self._slideShow();\n }, 100);\n }\n if (video) {\n if (video.readyState === 4) {\n video.currentTime = 0;\n }\n\n video.play();\n go();\n } else {\n img.src = src;\n\n if (img.complete) {\n go();\n } else {\n img.onload = go;\n }\n }\n },\n\n _end: function () {\n this.ended = true;\n this._timer(false);\n this.trigger('end');\n },\n\n shuffle: function () {\n var temp,\n rand;\n\n for (var i = this.total - 1; i > 0; i--) {\n rand = Math.floor(Math.random() * (i + 1));\n temp = this.settings.slides[i];\n\n this.settings.slides[i] = this.settings.slides[rand];\n this.settings.slides[rand] = temp;\n }\n },\n\n play: function () {\n if (this.paused) {\n this.paused = false;\n this.next();\n this.trigger('play');\n }\n },\n\n pause: function () {\n this._timer(false);\n this.paused = true;\n this.trigger('pause');\n },\n\n toggle: function () {\n if (this.paused) {\n this.play();\n } else {\n this.pause();\n }\n },\n\n playing: function () {\n return !this.paused && !this.noshow;\n },\n\n current: function (advanced) {\n if (advanced) {\n return {\n slide: this.slide,\n data: this.settings.slides[this.slide]\n };\n }\n return this.slide;\n },\n\n jump: function (nb) {\n if (nb < 0 || nb > this.total - 1 || nb === this.slide) {\n return;\n }\n\n this.slide = nb;\n this._goto(this.slide);\n },\n\n next: function () {\n this.slide++;\n\n if (this.slide >= this.total) {\n if (!this.settings.loop) {\n return this._end();\n }\n\n this.slide = 0;\n }\n\n this._goto(this.slide);\n },\n\n previous: function () {\n this.slide--;\n\n if (this.slide < 0) {\n if (!this.settings.loop) {\n this.slide++;\n return;\n } else {\n this.slide = this.total - 1;\n }\n }\n\n this._goto(this.slide);\n },\n\n trigger: function (fn) {\n var params = [];\n\n if (fn === 'init') {\n params = [ this.settings ];\n } else {\n params = [\n this.slide,\n this.settings.slides[this.slide]\n ];\n }\n\n this.$elmt.trigger('vegas' + fn, params);\n\n if (typeof this.settings[fn] === 'function') {\n this.settings[fn].apply(this.$elmt, params);\n }\n },\n\n options: function (key, value) {\n var oldSlides = this.settings.slides.slice();\n\n if (typeof key === 'object') {\n this.settings = $.extend({}, defaults, $.vegas.defaults, key);\n } else if (typeof key === 'string') {\n if (value === undefined) {\n return this.settings[key];\n }\n this.settings[key] = value;\n } else {\n return this.settings;\n }\n\n // In case slides have changed\n if (this.settings.slides !== oldSlides) {\n this.total = this.settings.slides.length;\n this.noshow = this.total < 2;\n this._preload();\n }\n },\n\n destroy: function () {\n clearTimeout(this.timeout);\n\n this.$elmt.removeClass('vegas-container');\n this.$elmt.find('> .vegas-slide').remove();\n this.$elmt.find('> .vegas-wrapper').clone(true).children().appendTo(this.$elmt);\n this.$elmt.find('> .vegas-wrapper').remove();\n\n if (this.settings.timer) {\n this.$timer.remove();\n }\n\n if (this.settings.overlay) {\n this.$overlay.remove();\n }\n\n this.elmt._vegas = null;\n }\n };\n\n $.fn.vegas = function(options) {\n var args = arguments,\n error = false,\n returns;\n\n if (options === undefined || typeof options === 'object') {\n return this.each(function () {\n if (!this._vegas) {\n this._vegas = new Vegas(this, options);\n }\n });\n } else if (typeof options === 'string') {\n this.each(function () {\n var instance = this._vegas;\n\n if (!instance) {\n throw new Error('No Vegas applied to this element.');\n }\n\n if (typeof instance[options] === 'function' && options[0] !== '_') {\n returns = instance[options].apply(instance, [].slice.call(args, 1));\n } else {\n error = true;\n }\n });\n\n if (error) {\n throw new Error('No method \"' + options + '\" in Vegas.');\n }\n\n return returns !== undefined ? returns : this;\n }\n };\n\n $.vegas = {};\n $.vegas.defaults = defaults;\n\n $.vegas.isVideoCompatible = function () {\n return !/(Android|webOS|Phone|iPad|iPod|BlackBerry|Windows Phone)/i.test(navigator.userAgent);\n };\n\n})(window.jQuery || window.Zepto);\n"]}