{"version":3,"file":"lightgallery.b4add081492131277257.js","mappings":"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","sources":["webpack://website/./node_modules/lg-video.js/dist/lg-video.js","webpack://website/./node_modules/lightgallery.js/lib/js/lg-utils.js","webpack://website/./node_modules/lightgallery.js/lib/js/lightgallery.js"],"sourcesContent":["/**!\n * lg-video.js | 1.3.0 | November 7th 2020\n * http://sachinchoolur.github.io/lg-video.js\n * Copyright (c) 2016 Sachin N; \n * @license GPLv3 \n */(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.LgVideo = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i 1 && (_this.core.s.enableSwipe && _this.core.isTouch || _this.core.s.enableDrag && !_this.core.isTouch)) {\n utils.on(_this.core.el, 'onSlideClick.lgtm', function () {\n var $el = _this.core.___slide[_this.core.index];\n loadOnClick($el);\n });\n } else {\n\n // For IE 9 and bellow\n for (var i = 0; i < _this.core.___slide.length; i++) {\n\n /*jshint loopfunc: true */\n (function (index) {\n utils.on(_this.core.___slide[index], 'click.lg', function () {\n loadOnClick(_this.core.___slide[index]);\n });\n })(i);\n }\n }\n\n utils.on(_this.core.el, 'onBeforeSlide.lgtm', function (event) {\n\n var $videoSlide = _this.core.___slide[event.detail.prevIndex];\n var youtubePlayer = $videoSlide.querySelector('.lg-youtube');\n var vimeoPlayer = $videoSlide.querySelector('.lg-vimeo');\n var dailymotionPlayer = $videoSlide.querySelector('.lg-dailymotion');\n var vkPlayer = $videoSlide.querySelector('.lg-vk');\n var html5Player = $videoSlide.querySelector('.lg-html5');\n if (youtubePlayer) {\n youtubePlayer.contentWindow.postMessage('{\"event\":\"command\",\"func\":\"pauseVideo\",\"args\":\"\"}', '*');\n } else if (vimeoPlayer) {\n try {\n new Vimeo.Player(vimeoPlayer).pause().catch(function (error) {\n console.error('Unable to pause the video:', error.name);\n });\n } catch (e) {\n console.warn('lightGallery:- Make sure you have included https://github.com/vimeo/player.js');\n }\n } else if (dailymotionPlayer) {\n dailymotionPlayer.contentWindow.postMessage('pause', '*');\n } else if (html5Player) {\n if (_this.core.s.videojs) {\n try {\n videojs(html5Player).pause();\n } catch (e) {\n console.error('lightGallery:- Make sure you have included videojs');\n }\n } else {\n html5Player.pause();\n }\n }if (vkPlayer) {\n\n vkPlayer.setAttribute('src', vkPlayer.getAttribute('src').replace('&autoplay', '&noplay'));\n }\n\n var _src;\n if (_this.core.s.dynamic) {\n _src = _this.core.s.dynamicEl[event.detail.index].src;\n } else {\n _src = _this.core.items[event.detail.index].getAttribute('href') || _this.core.items[event.detail.index].getAttribute('data-src');\n }\n\n var _isVideo = _this.core.isVideo(_src, event.detail.index) || {};\n if (_isVideo.youtube || _isVideo.vimeo || _isVideo.dailymotion || _isVideo.vk) {\n utils.addClass(_this.core.outer, 'lg-hide-download');\n }\n\n //$videoSlide.addClass('lg-complete');\n });\n\n utils.on(_this.core.el, 'onAfterSlide.lgtm', function (event) {\n utils.removeClass(_this.core.___slide[event.detail.prevIndex], 'lg-video-playing');\n });\n };\n\n Video.prototype.loadVideo = function (src, addClass, noposter, index, html) {\n var video = '';\n var autoplay = 1;\n var a = '';\n var isVideo = this.core.isVideo(src, index) || {};\n\n // Enable autoplay for first video if poster doesn't exist\n if (noposter) {\n if (this.videoLoaded) {\n autoplay = 0;\n } else {\n autoplay = this.core.s.autoplayFirstVideo ? 1 : 0;\n }\n }\n\n var videoTitle;\n\n if (this.core.s.dynamic) {\n videoTitle = this.core.s.dynamicEl[index].title;\n } else {\n videoTitle = this.core.items[index].getAttribute('title');\n if (!videoTitle) {\n var firstImage = this.core.items[index].querySelector('img');\n if (firstImage) {\n videoTitle = firstImage.getAttribute('alt');\n }\n }\n }\n\n videoTitle = videoTitle ? 'title=\"' + videoTitle + '\"' : '';\n\n if (isVideo.youtube) {\n\n a = '?wmode=opaque&autoplay=' + autoplay + '&enablejsapi=1';\n if (this.core.s.youtubePlayerParams) {\n a = a + '&' + utils.param(this.core.s.youtubePlayerParams);\n }\n\n video = '';\n } else if (isVideo.vimeo) {\n\n a = '?autoplay=' + autoplay;\n if (this.core.s.vimeoPlayerParams) {\n a = a + '&' + utils.param(this.core.s.vimeoPlayerParams);\n }\n\n video = '';\n } else if (isVideo.dailymotion) {\n\n a = '?wmode=opaque&autoplay=' + autoplay + '&api=postMessage';\n if (this.core.s.dailymotionPlayerParams) {\n a = a + '&' + utils.param(this.core.s.dailymotionPlayerParams);\n }\n\n video = '';\n } else if (isVideo.html5) {\n var fL = html.substring(0, 1);\n if (fL === '.' || fL === '#') {\n html = document.querySelector(html).innerHTML;\n }\n\n video = html;\n } else if (isVideo.vk) {\n\n a = '&autoplay=' + autoplay;\n if (this.core.s.vkPlayerParams) {\n a = a + '&' + utils.param(this.core.s.vkPlayerParams);\n }\n\n video = '';\n }\n\n return video;\n };\n\n Video.prototype.destroy = function () {\n this.videoLoaded = false;\n };\n\n window.lgModules.video = Video;\n});\n\n},{}]},{},[1])(1)\n});\n","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['exports'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(exports);\n } else {\n var mod = {\n exports: {}\n };\n factory(mod.exports);\n global.lgUtils = mod.exports;\n }\n})(this, function (exports) {\n 'use strict';\n\n Object.defineProperty(exports, \"__esModule\", {\n value: true\n });\n\n var utils = {\n getAttribute: function getAttribute(el, label) {\n return el[label];\n },\n\n setAttribute: function setAttribute(el, label, value) {\n el[label] = value;\n },\n wrap: function wrap(el, className) {\n if (!el) {\n return;\n }\n\n var wrapper = document.createElement('div');\n wrapper.className = className;\n el.parentNode.insertBefore(wrapper, el);\n el.parentNode.removeChild(el);\n wrapper.appendChild(el);\n },\n\n addClass: function addClass(el, className) {\n if (!el) {\n return;\n }\n\n if (el.classList) {\n el.classList.add(className);\n } else {\n el.className += ' ' + className;\n }\n },\n\n removeClass: function removeClass(el, className) {\n if (!el) {\n return;\n }\n\n if (el.classList) {\n el.classList.remove(className);\n } else {\n el.className = el.className.replace(new RegExp('(^|\\\\b)' + className.split(' ').join('|') + '(\\\\b|$)', 'gi'), ' ');\n }\n },\n\n hasClass: function hasClass(el, className) {\n if (el.classList) {\n return el.classList.contains(className);\n } else {\n return new RegExp('(^| )' + className + '( |$)', 'gi').test(el.className);\n }\n },\n\n // ex Transform\n // ex TransitionTimingFunction\n setVendor: function setVendor(el, property, value) {\n if (!el) {\n return;\n }\n\n el.style[property.charAt(0).toLowerCase() + property.slice(1)] = value;\n el.style['webkit' + property] = value;\n el.style['moz' + property] = value;\n el.style['ms' + property] = value;\n el.style['o' + property] = value;\n },\n\n trigger: function trigger(el, event) {\n var detail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n if (!el) {\n return;\n }\n\n var customEvent = new CustomEvent(event, {\n detail: detail\n });\n el.dispatchEvent(customEvent);\n },\n\n Listener: {\n uid: 0\n },\n on: function on(el, events, fn) {\n var _this = this;\n\n if (!el) {\n return;\n }\n\n events.split(' ').forEach(function (event) {\n var _id = _this.getAttribute(el, 'lg-event-uid') || '';\n utils.Listener.uid++;\n _id += '&' + utils.Listener.uid;\n _this.setAttribute(el, 'lg-event-uid', _id);\n utils.Listener[event + utils.Listener.uid] = fn;\n el.addEventListener(event.split('.')[0], fn, false);\n });\n },\n\n off: function off(el, event) {\n if (!el) {\n return;\n }\n\n var _id = this.getAttribute(el, 'lg-event-uid');\n if (_id) {\n _id = _id.split('&');\n for (var i = 0; i < _id.length; i++) {\n if (_id[i]) {\n var _event = event + _id[i];\n if (_event.substring(0, 1) === '.') {\n for (var key in utils.Listener) {\n if (utils.Listener.hasOwnProperty(key)) {\n if (key.split('.').indexOf(_event.split('.')[1]) > -1) {\n el.removeEventListener(key.split('.')[0], utils.Listener[key]);\n this.setAttribute(el, 'lg-event-uid', this.getAttribute(el, 'lg-event-uid').replace('&' + _id[i], ''));\n delete utils.Listener[key];\n }\n }\n }\n } else {\n el.removeEventListener(_event.split('.')[0], utils.Listener[_event]);\n this.setAttribute(el, 'lg-event-uid', this.getAttribute(el, 'lg-event-uid').replace('&' + _id[i], ''));\n delete utils.Listener[_event];\n }\n }\n }\n }\n },\n\n param: function param(obj) {\n return Object.keys(obj).map(function (k) {\n return encodeURIComponent(k) + '=' + encodeURIComponent(obj[k]);\n }).join('&');\n }\n };\n\n exports.default = utils;\n});","(function (global, factory) {\n if (typeof define === \"function\" && define.amd) {\n define(['./lg-utils'], factory);\n } else if (typeof exports !== \"undefined\") {\n factory(require('./lg-utils'));\n } else {\n var mod = {\n exports: {}\n };\n factory(global.lgUtils);\n global.lightgallery = mod.exports;\n }\n})(this, function (_lgUtils) {\n 'use strict';\n\n var _lgUtils2 = _interopRequireDefault(_lgUtils);\n\n function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n }\n\n var _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n /** Polyfill the CustomEvent() constructor functionality in Internet Explorer 9 and higher */\n (function () {\n\n if (typeof window.CustomEvent === 'function') {\n return false;\n }\n\n function CustomEvent(event, params) {\n params = params || {\n bubbles: false,\n cancelable: false,\n detail: undefined\n };\n var evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n return evt;\n }\n\n CustomEvent.prototype = window.Event.prototype;\n\n window.CustomEvent = CustomEvent;\n })();\n\n window.utils = _lgUtils2.default;\n window.lgData = {\n uid: 0\n };\n\n window.lgModules = {};\n var defaults = {\n\n mode: 'lg-slide',\n\n // Ex : 'ease'\n cssEasing: 'ease',\n\n //'for jquery animation'\n easing: 'linear',\n speed: 600,\n height: '100%',\n width: '100%',\n addClass: '',\n startClass: 'lg-start-zoom',\n backdropDuration: 150,\n\n // Set 0, if u don't want to hide the controls \n hideBarsDelay: 6000,\n\n useLeft: false,\n\n // aria-labelledby attribute fot gallery\n ariaLabelledby: '',\n\n //aria-describedby attribute for gallery\n ariaDescribedby: '',\n\n closable: true,\n loop: true,\n escKey: true,\n keyPress: true,\n controls: true,\n slideEndAnimatoin: true,\n hideControlOnEnd: false,\n mousewheel: false,\n\n getCaptionFromTitleOrAlt: true,\n\n // .lg-item || '.lg-sub-html'\n appendSubHtmlTo: '.lg-sub-html',\n\n subHtmlSelectorRelative: false,\n\n /**\n * @desc number of preload slides\n * will exicute only after the current slide is fully loaded.\n *\n * @ex you clicked on 4th image and if preload = 1 then 3rd slide and 5th\n * slide will be loaded in the background after the 4th slide is fully loaded..\n * if preload is 2 then 2nd 3rd 5th 6th slides will be preloaded.. ... ...\n *\n */\n preload: 1,\n showAfterLoad: true,\n selector: '',\n selectWithin: '',\n nextHtml: '',\n prevHtml: '',\n\n // 0, 1\n index: false,\n\n iframeMaxWidth: '100%',\n\n download: true,\n counter: true,\n appendCounterTo: '.lg-toolbar',\n\n swipeThreshold: 50,\n enableSwipe: true,\n enableDrag: true,\n\n dynamic: false,\n dynamicEl: [],\n galleryId: 1,\n supportLegacyBrowser: true\n };\n\n function Plugin(element, options) {\n\n // Current lightGallery element\n this.el = element;\n\n // lightGallery settings\n this.s = _extends({}, defaults, options);\n\n // When using dynamic mode, ensure dynamicEl is an array\n if (this.s.dynamic && this.s.dynamicEl !== 'undefined' && this.s.dynamicEl.constructor === Array && !this.s.dynamicEl.length) {\n throw 'When using dynamic mode, you must also define dynamicEl as an Array.';\n }\n\n // lightGallery modules\n this.modules = {};\n\n // false when lightgallery complete first slide;\n this.lGalleryOn = false;\n\n this.lgBusy = false;\n\n // Timeout function for hiding controls;\n this.hideBartimeout = false;\n\n // To determine browser supports for touch events;\n this.isTouch = 'ontouchstart' in document.documentElement;\n\n // Disable hideControlOnEnd if sildeEndAnimation is true\n if (this.s.slideEndAnimatoin) {\n this.s.hideControlOnEnd = false;\n }\n\n this.items = [];\n\n // Gallery items\n if (this.s.dynamic) {\n this.items = this.s.dynamicEl;\n } else {\n if (this.s.selector === 'this') {\n this.items.push(this.el);\n } else if (this.s.selector !== '') {\n if (this.s.selectWithin) {\n this.items = document.querySelector(this.s.selectWithin).querySelectorAll(this.s.selector);\n } else {\n this.items = this.el.querySelectorAll(this.s.selector);\n }\n } else {\n this.items = this.el.children;\n }\n }\n\n // .lg-item\n\n this.___slide = '';\n\n // .lg-outer\n this.outer = '';\n\n this.init();\n\n return this;\n }\n\n Plugin.prototype.init = function () {\n\n var _this = this;\n\n // s.preload should not be more than $item.length\n if (_this.s.preload > _this.items.length) {\n _this.s.preload = _this.items.length;\n }\n\n // if dynamic option is enabled execute immediately\n var _hash = window.location.hash;\n if (_hash.indexOf('lg=' + this.s.galleryId) > 0) {\n\n _this.index = parseInt(_hash.split('&slide=')[1], 10);\n\n _lgUtils2.default.addClass(document.body, 'lg-from-hash');\n if (!_lgUtils2.default.hasClass(document.body, 'lg-on')) {\n _lgUtils2.default.addClass(document.body, 'lg-on');\n setTimeout(function () {\n _this.build(_this.index);\n });\n }\n }\n\n if (_this.s.dynamic) {\n\n _lgUtils2.default.trigger(this.el, 'onBeforeOpen');\n\n _this.index = _this.s.index || 0;\n\n // prevent accidental double execution\n if (!_lgUtils2.default.hasClass(document.body, 'lg-on')) {\n _lgUtils2.default.addClass(document.body, 'lg-on');\n setTimeout(function () {\n _this.build(_this.index);\n });\n }\n } else {\n\n for (var i = 0; i < _this.items.length; i++) {\n\n /*jshint loopfunc: true */\n (function (index) {\n\n // Using different namespace for click because click event should not unbind if selector is same object('this')\n _lgUtils2.default.on(_this.items[index], 'click.lgcustom', function (e) {\n\n e.preventDefault();\n\n _lgUtils2.default.trigger(_this.el, 'onBeforeOpen');\n\n _this.index = _this.s.index || index;\n\n if (!_lgUtils2.default.hasClass(document.body, 'lg-on')) {\n _this.build(_this.index);\n _lgUtils2.default.addClass(document.body, 'lg-on');\n }\n });\n })(i);\n }\n }\n };\n\n Plugin.prototype.build = function (index) {\n\n var _this = this;\n\n _this.structure();\n\n for (var key in window.lgModules) {\n _this.modules[key] = new window.lgModules[key](_this.el);\n }\n\n // initiate slide function\n _this.slide(index, false, false);\n\n if (_this.s.keyPress) {\n _this.keyPress();\n }\n\n if (_this.items.length > 1) {\n\n _this.arrow();\n\n setTimeout(function () {\n _this.enableDrag();\n _this.enableSwipe();\n }, 50);\n\n if (_this.s.mousewheel) {\n _this.mousewheel();\n }\n }\n\n _this.counter();\n\n _this.closeGallery();\n\n _lgUtils2.default.trigger(_this.el, 'onAfterOpen');\n\n // Hide controllers if mouse doesn't move for some period\n if (_this.s.hideBarsDelay > 0) {\n\n // Hide controls if user doesn't use mouse or touch after opening gallery\n var initialHideBarTimeout = setTimeout(function () {\n _lgUtils2.default.addClass(_this.outer, 'lg-hide-items');\n }, _this.s.hideBarsDelay);\n _lgUtils2.default.on(_this.outer, 'mousemove.lg click.lg touchstart.lg', function () {\n\n // Cancel initalHideBarTimout if user uses mouse or touch events\n // Before it fires\n clearTimeout(initialHideBarTimeout);\n\n _lgUtils2.default.removeClass(_this.outer, 'lg-hide-items');\n\n clearTimeout(_this.hideBartimeout);\n\n // Timeout will be cleared on each slide movement also\n _this.hideBartimeout = setTimeout(function () {\n _lgUtils2.default.addClass(_this.outer, 'lg-hide-items');\n }, _this.s.hideBarsDelay);\n });\n }\n };\n\n Plugin.prototype.structure = function () {\n var list = '';\n var controls = '';\n var i = 0;\n var subHtmlCont = '';\n var template;\n var _this = this;\n\n document.body.insertAdjacentHTML('beforeend', '
');\n _lgUtils2.default.setVendor(document.querySelector('.lg-backdrop'), 'TransitionDuration', this.s.backdropDuration + 'ms');\n\n // Create gallery items\n for (i = 0; i < this.items.length; i++) {\n list += '
';\n }\n\n // Create controlls\n if (this.s.controls && this.items.length > 1) {\n controls = '
' + '' + '' + '
';\n }\n\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\n subHtmlCont = '
';\n }\n\n var ariaLabelledby = this.s.ariaLabelledby ? 'aria-labelledby=\"' + this.s.ariaLabelledby + '\"' : '';\n var ariaDescribedby = this.s.ariaDescribedby ? 'aria-describedby=\"' + this.s.ariaDescribedby + '\"' : '';\n\n template = '
' + '
' + '
' + list + '
' + '
' + '' + '
' + controls + subHtmlCont + '
' + '
';\n\n document.body.insertAdjacentHTML('beforeend', template);\n this.outer = document.querySelector('.lg-outer');\n this.outer.focus();\n this.___slide = this.outer.querySelectorAll('.lg-item');\n\n if (this.s.useLeft) {\n _lgUtils2.default.addClass(this.outer, 'lg-use-left');\n\n // Set mode lg-slide if use left is true;\n this.s.mode = 'lg-slide';\n } else {\n _lgUtils2.default.addClass(this.outer, 'lg-use-css3');\n }\n\n // For fixed height gallery\n _this.setTop();\n _lgUtils2.default.on(window, 'resize.lg orientationchange.lg', function () {\n setTimeout(function () {\n _this.setTop();\n }, 100);\n });\n\n // add class lg-current to remove initial transition\n _lgUtils2.default.addClass(this.___slide[this.index], 'lg-current');\n\n // add Class for css support and transition mode\n if (this.doCss()) {\n _lgUtils2.default.addClass(this.outer, 'lg-css3');\n } else {\n _lgUtils2.default.addClass(this.outer, 'lg-css');\n\n // Set speed 0 because no animation will happen if browser doesn't support css3\n this.s.speed = 0;\n }\n\n _lgUtils2.default.addClass(this.outer, this.s.mode);\n\n if (this.s.enableDrag && this.items.length > 1) {\n _lgUtils2.default.addClass(this.outer, 'lg-grab');\n }\n\n if (this.s.showAfterLoad) {\n _lgUtils2.default.addClass(this.outer, 'lg-show-after-load');\n }\n\n if (this.doCss()) {\n var inner = this.outer.querySelector('.lg-inner');\n _lgUtils2.default.setVendor(inner, 'TransitionTimingFunction', this.s.cssEasing);\n _lgUtils2.default.setVendor(inner, 'TransitionDuration', this.s.speed + 'ms');\n }\n\n setTimeout(function () {\n _lgUtils2.default.addClass(document.querySelector('.lg-backdrop'), 'in');\n });\n\n setTimeout(function () {\n _lgUtils2.default.addClass(_this.outer, 'lg-visible');\n }, this.s.backdropDuration);\n\n if (this.s.download) {\n this.outer.querySelector('.lg-toolbar').insertAdjacentHTML('beforeend', '');\n }\n\n // Store the current scroll top value to scroll back after closing the gallery..\n this.prevScrollTop = document.documentElement.scrollTop || document.body.scrollTop;\n };\n\n // For fixed height gallery\n Plugin.prototype.setTop = function () {\n if (this.s.height !== '100%') {\n var wH = window.innerHeight;\n var top = (wH - parseInt(this.s.height, 10)) / 2;\n var lGallery = this.outer.querySelector('.lg');\n if (wH >= parseInt(this.s.height, 10)) {\n lGallery.style.top = top + 'px';\n } else {\n lGallery.style.top = '0px';\n }\n }\n };\n\n // Find css3 support\n Plugin.prototype.doCss = function () {\n // check for css animation support\n var support = function support() {\n var transition = ['transition', 'MozTransition', 'WebkitTransition', 'OTransition', 'msTransition', 'KhtmlTransition'];\n var root = document.documentElement;\n var i = 0;\n for (i = 0; i < transition.length; i++) {\n if (transition[i] in root.style) {\n return true;\n }\n }\n };\n\n if (support()) {\n return true;\n }\n\n return false;\n };\n\n /**\n * @desc Check the given src is video\n * @param {String} src\n * @return {Object} video type\n * Ex:{ youtube : [\"//www.youtube.com/watch?v=c0asJgSyxcY\", \"c0asJgSyxcY\"] }\n */\n Plugin.prototype.isVideo = function (src, index) {\n\n var html;\n if (this.s.dynamic) {\n html = this.s.dynamicEl[index].html;\n } else {\n html = this.items[index].getAttribute('data-html');\n }\n\n if (!src && html) {\n return {\n html5: true\n };\n }\n\n var youtube = src.match(/\\/\\/(?:www\\.)?youtu(?:\\.be|be\\.com|be-nocookie\\.com)\\/(?:watch\\?v=|embed\\/)?([a-z0-9\\-\\_\\%]+)/i);\n var vimeo = src.match(/\\/\\/(?:www\\.)?vimeo.com\\/([0-9a-z\\-_]+)/i);\n var dailymotion = src.match(/\\/\\/(?:www\\.)?dai.ly\\/([0-9a-z\\-_]+)/i);\n var vk = src.match(/\\/\\/(?:www\\.)?(?:vk\\.com|vkontakte\\.ru)\\/(?:video_ext\\.php\\?)(.*)/i);\n\n if (youtube) {\n return {\n youtube: youtube\n };\n } else if (vimeo) {\n return {\n vimeo: vimeo\n };\n } else if (dailymotion) {\n return {\n dailymotion: dailymotion\n };\n } else if (vk) {\n return {\n vk: vk\n };\n }\n };\n\n /**\n * @desc Create image counter\n * Ex: 1/10\n */\n Plugin.prototype.counter = function () {\n if (this.s.counter) {\n this.outer.querySelector(this.s.appendCounterTo).insertAdjacentHTML('beforeend', '
' + (parseInt(this.index, 10) + 1) + ' / ' + this.items.length + '
');\n }\n };\n\n /**\n * @desc add sub-html into the slide\n * @param {Number} index - index of the slide\n */\n Plugin.prototype.addHtml = function (index) {\n var subHtml = null;\n var currentEle;\n if (this.s.dynamic) {\n subHtml = this.s.dynamicEl[index].subHtml;\n } else {\n currentEle = this.items[index];\n subHtml = currentEle.getAttribute('data-sub-html');\n if (this.s.getCaptionFromTitleOrAlt && !subHtml) {\n subHtml = currentEle.getAttribute('title');\n if (subHtml && currentEle.querySelector('img')) {\n subHtml = currentEle.querySelector('img').getAttribute('alt');\n }\n }\n }\n\n if (typeof subHtml !== 'undefined' && subHtml !== null) {\n\n // get first letter of subhtml\n // if first letter starts with . or # get the html form the jQuery object\n var fL = subHtml.substring(0, 1);\n if (fL === '.' || fL === '#') {\n if (this.s.subHtmlSelectorRelative && !this.s.dynamic) {\n subHtml = currentEle.querySelector(subHtml).innerHTML;\n } else {\n subHtml = document.querySelector(subHtml).innerHTML;\n }\n }\n } else {\n subHtml = '';\n }\n\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\n this.outer.querySelector(this.s.appendSubHtmlTo).innerHTML = subHtml;\n } else {\n this.___slide[index].insertAdjacentHTML('beforeend', subHtml);\n }\n\n // Add lg-empty-html class if title doesn't exist\n if (typeof subHtml !== 'undefined' && subHtml !== null) {\n if (subHtml === '') {\n _lgUtils2.default.addClass(this.outer.querySelector(this.s.appendSubHtmlTo), 'lg-empty-html');\n } else {\n _lgUtils2.default.removeClass(this.outer.querySelector(this.s.appendSubHtmlTo), 'lg-empty-html');\n }\n }\n\n _lgUtils2.default.trigger(this.el, 'onAfterAppendSubHtml', {\n index: index\n });\n };\n\n /**\n * @desc Preload slides\n * @param {Number} index - index of the slide\n */\n Plugin.prototype.preload = function (index) {\n var i = 1;\n var j = 1;\n for (i = 1; i <= this.s.preload; i++) {\n if (i >= this.items.length - index) {\n break;\n }\n\n this.loadContent(index + i, false, 0);\n }\n\n for (j = 1; j <= this.s.preload; j++) {\n if (index - j < 0) {\n break;\n }\n\n this.loadContent(index - j, false, 0);\n }\n };\n\n /**\n * @desc Load slide content into slide.\n * @param {Number} index - index of the slide.\n * @param {Boolean} rec - if true call loadcontent() function again.\n * @param {Boolean} delay - delay for adding complete class. it is 0 except first time.\n */\n Plugin.prototype.loadContent = function (index, rec, delay) {\n\n var _this = this;\n var _hasPoster = false;\n var _img;\n var _src;\n var _poster;\n var _srcset;\n var _sizes;\n var _html;\n var _alt;\n var getResponsiveSrc = function getResponsiveSrc(srcItms) {\n var rsWidth = [];\n var rsSrc = [];\n for (var i = 0; i < srcItms.length; i++) {\n var __src = srcItms[i].split(' ');\n\n // Manage empty space\n if (__src[0] === '') {\n __src.splice(0, 1);\n }\n\n rsSrc.push(__src[0]);\n rsWidth.push(__src[1]);\n }\n\n var wWidth = window.innerWidth;\n for (var j = 0; j < rsWidth.length; j++) {\n if (parseInt(rsWidth[j], 10) > wWidth) {\n _src = rsSrc[j];\n break;\n }\n }\n };\n\n if (_this.s.dynamic) {\n\n if (_this.s.dynamicEl[index].poster) {\n _hasPoster = true;\n _poster = _this.s.dynamicEl[index].poster;\n }\n\n _html = _this.s.dynamicEl[index].html;\n _src = _this.s.dynamicEl[index].src;\n _alt = _this.s.dynamicEl[index].alt;\n\n if (_this.s.dynamicEl[index].responsive) {\n var srcDyItms = _this.s.dynamicEl[index].responsive.split(',');\n getResponsiveSrc(srcDyItms);\n }\n\n _srcset = _this.s.dynamicEl[index].srcset;\n _sizes = _this.s.dynamicEl[index].sizes;\n } else {\n\n if (_this.items[index].getAttribute('data-poster')) {\n _hasPoster = true;\n _poster = _this.items[index].getAttribute('data-poster');\n }\n\n _html = _this.items[index].getAttribute('data-html');\n _src = _this.items[index].getAttribute('href') || _this.items[index].getAttribute('data-src');\n _alt = _this.items[index].getAttribute('title');\n\n if (_this.items[index].querySelector('img')) {\n _alt = _alt || _this.items[index].querySelector('img').getAttribute('alt');\n }\n\n if (_this.items[index].getAttribute('data-responsive')) {\n var srcItms = _this.items[index].getAttribute('data-responsive').split(',');\n getResponsiveSrc(srcItms);\n }\n\n _srcset = _this.items[index].getAttribute('data-srcset');\n _sizes = _this.items[index].getAttribute('data-sizes');\n }\n\n //if (_src || _srcset || _sizes || _poster) {\n\n var iframe = false;\n if (_this.s.dynamic) {\n if (_this.s.dynamicEl[index].iframe) {\n iframe = true;\n }\n } else {\n if (_this.items[index].getAttribute('data-iframe') === 'true') {\n iframe = true;\n }\n }\n\n var _isVideo = _this.isVideo(_src, index);\n if (!_lgUtils2.default.hasClass(_this.___slide[index], 'lg-loaded')) {\n if (iframe) {\n _this.___slide[index].insertAdjacentHTML('afterbegin', '
');\n } else if (_hasPoster) {\n var videoClass = '';\n if (_isVideo && _isVideo.youtube) {\n videoClass = 'lg-has-youtube';\n } else if (_isVideo && _isVideo.vimeo) {\n videoClass = 'lg-has-vimeo';\n } else {\n videoClass = 'lg-has-html5';\n }\n\n _this.___slide[index].insertAdjacentHTML('beforeend', '
');\n } else if (_isVideo) {\n _this.___slide[index].insertAdjacentHTML('beforeend', '
');\n _lgUtils2.default.trigger(_this.el, 'hasVideo', {\n index: index,\n src: _src,\n html: _html\n });\n } else {\n _alt = _alt ? 'alt=\"' + _alt + '\"' : '';\n _this.___slide[index].insertAdjacentHTML('beforeend', '
');\n }\n\n _lgUtils2.default.trigger(_this.el, 'onAferAppendSlide', {\n index: index\n });\n\n _img = _this.___slide[index].querySelector('.lg-object');\n if (_sizes) {\n _img.setAttribute('sizes', _sizes);\n }\n\n if (_srcset) {\n _img.setAttribute('srcset', _srcset);\n\n if (this.s.supportLegacyBrowser) {\n try {\n picturefill({\n elements: [_img[0]]\n });\n } catch (e) {\n console.warn('If you want srcset to be supported for older browsers, ' + 'please include picturefil javascript library in your document.');\n }\n }\n }\n\n if (this.s.appendSubHtmlTo !== '.lg-sub-html') {\n _this.addHtml(index);\n }\n\n _lgUtils2.default.addClass(_this.___slide[index], 'lg-loaded');\n }\n\n _lgUtils2.default.on(_this.___slide[index].querySelector('.lg-object'), 'load.lg error.lg', function () {\n\n // For first time add some delay for displaying the start animation.\n var _speed = 0;\n\n // Do not change the delay value because it is required for zoom plugin.\n // If gallery opened from direct url (hash) speed value should be 0\n if (delay && !_lgUtils2.default.hasClass(document.body, 'lg-from-hash')) {\n _speed = delay;\n }\n\n setTimeout(function () {\n _lgUtils2.default.addClass(_this.___slide[index], 'lg-complete');\n\n _lgUtils2.default.trigger(_this.el, 'onSlideItemLoad', {\n index: index,\n delay: delay || 0\n });\n }, _speed);\n });\n\n // @todo check load state for html5 videos\n if (_isVideo && _isVideo.html5 && !_hasPoster) {\n _lgUtils2.default.addClass(_this.___slide[index], 'lg-complete');\n }\n\n if (rec === true) {\n if (!_lgUtils2.default.hasClass(_this.___slide[index], 'lg-complete')) {\n _lgUtils2.default.on(_this.___slide[index].querySelector('.lg-object'), 'load.lg error.lg', function () {\n _this.preload(index);\n });\n } else {\n _this.preload(index);\n }\n }\n\n //}\n };\n\n /**\n * @desc slide function for lightgallery\n ** Slide() gets call on start\n ** ** Set lg.on true once slide() function gets called.\n ** Call loadContent() on slide() function inside setTimeout\n ** ** On first slide we do not want any animation like slide of fade\n ** ** So on first slide( if lg.on if false that is first slide) loadContent() should start loading immediately\n ** ** Else loadContent() should wait for the transition to complete.\n ** ** So set timeout s.speed + 50\n <=> ** loadContent() will load slide content in to the particular slide\n ** ** It has recursion (rec) parameter. if rec === true loadContent() will call preload() function.\n ** ** preload will execute only when the previous slide is fully loaded (images iframe)\n ** ** avoid simultaneous image load\n <=> ** Preload() will check for s.preload value and call loadContent() again accoring to preload value\n ** loadContent() <====> Preload();\n \n * @param {Number} index - index of the slide\n * @param {Boolean} fromTouch - true if slide function called via touch event or mouse drag\n * @param {Boolean} fromThumb - true if slide function called via thumbnail click\n */\n Plugin.prototype.slide = function (index, fromTouch, fromThumb) {\n\n var _prevIndex = 0;\n for (var i = 0; i < this.___slide.length; i++) {\n if (_lgUtils2.default.hasClass(this.___slide[i], 'lg-current')) {\n _prevIndex = i;\n break;\n }\n }\n\n var _this = this;\n\n // Prevent if multiple call\n // Required for hsh plugin\n if (_this.lGalleryOn && _prevIndex === index) {\n return;\n }\n\n var _length = this.___slide.length;\n var _time = _this.lGalleryOn ? this.s.speed : 0;\n var _next = false;\n var _prev = false;\n\n if (!_this.lgBusy) {\n\n if (this.s.download) {\n var _src;\n if (_this.s.dynamic) {\n _src = _this.s.dynamicEl[index].downloadUrl !== false && (_this.s.dynamicEl[index].downloadUrl || _this.s.dynamicEl[index].src);\n } else {\n _src = _this.items[index].getAttribute('data-download-url') !== 'false' && (_this.items[index].getAttribute('data-download-url') || _this.items[index].getAttribute('href') || _this.items[index].getAttribute('data-src'));\n }\n\n if (_src) {\n document.getElementById('lg-download').setAttribute('href', _src);\n _lgUtils2.default.removeClass(_this.outer, 'lg-hide-download');\n } else {\n _lgUtils2.default.addClass(_this.outer, 'lg-hide-download');\n }\n }\n\n _lgUtils2.default.trigger(_this.el, 'onBeforeSlide', {\n prevIndex: _prevIndex,\n index: index,\n fromTouch: fromTouch,\n fromThumb: fromThumb\n });\n\n _this.lgBusy = true;\n\n clearTimeout(_this.hideBartimeout);\n\n // Add title if this.s.appendSubHtmlTo === lg-sub-html\n if (this.s.appendSubHtmlTo === '.lg-sub-html') {\n\n // wait for slide animation to complete\n setTimeout(function () {\n _this.addHtml(index);\n }, _time);\n }\n\n this.arrowDisable(index);\n\n if (!fromTouch) {\n\n // remove all transitions\n _lgUtils2.default.addClass(_this.outer, 'lg-no-trans');\n\n for (var j = 0; j < this.___slide.length; j++) {\n _lgUtils2.default.removeClass(this.___slide[j], 'lg-prev-slide');\n _lgUtils2.default.removeClass(this.___slide[j], 'lg-next-slide');\n }\n\n if (index < _prevIndex) {\n _prev = true;\n if (index === 0 && _prevIndex === _length - 1 && !fromThumb) {\n _prev = false;\n _next = true;\n }\n } else if (index > _prevIndex) {\n _next = true;\n if (index === _length - 1 && _prevIndex === 0 && !fromThumb) {\n _prev = true;\n _next = false;\n }\n }\n\n if (_prev) {\n\n //prevslide\n _lgUtils2.default.addClass(this.___slide[index], 'lg-prev-slide');\n _lgUtils2.default.addClass(this.___slide[_prevIndex], 'lg-next-slide');\n } else if (_next) {\n\n // next slide\n _lgUtils2.default.addClass(this.___slide[index], 'lg-next-slide');\n _lgUtils2.default.addClass(this.___slide[_prevIndex], 'lg-prev-slide');\n }\n\n // give 50 ms for browser to add/remove class\n setTimeout(function () {\n _lgUtils2.default.removeClass(_this.outer.querySelector('.lg-current'), 'lg-current');\n\n //_this.$slide.eq(_prevIndex).removeClass('lg-current');\n _lgUtils2.default.addClass(_this.___slide[index], 'lg-current');\n\n // reset all transitions\n _lgUtils2.default.removeClass(_this.outer, 'lg-no-trans');\n }, 50);\n } else {\n\n var touchPrev = index - 1;\n var touchNext = index + 1;\n\n if (index === 0 && _prevIndex === _length - 1) {\n\n // next slide\n touchNext = 0;\n touchPrev = _length - 1;\n } else if (index === _length - 1 && _prevIndex === 0) {\n\n // prev slide\n touchNext = 0;\n touchPrev = _length - 1;\n }\n\n _lgUtils2.default.removeClass(_this.outer.querySelector('.lg-prev-slide'), 'lg-prev-slide');\n _lgUtils2.default.removeClass(_this.outer.querySelector('.lg-current'), 'lg-current');\n _lgUtils2.default.removeClass(_this.outer.querySelector('.lg-next-slide'), 'lg-next-slide');\n _lgUtils2.default.addClass(_this.___slide[touchPrev], 'lg-prev-slide');\n _lgUtils2.default.addClass(_this.___slide[touchNext], 'lg-next-slide');\n _lgUtils2.default.addClass(_this.___slide[index], 'lg-current');\n }\n\n if (_this.lGalleryOn) {\n setTimeout(function () {\n _this.loadContent(index, true, 0);\n }, this.s.speed + 50);\n\n setTimeout(function () {\n _this.lgBusy = false;\n _lgUtils2.default.trigger(_this.el, 'onAfterSlide', {\n prevIndex: _prevIndex,\n index: index,\n fromTouch: fromTouch,\n fromThumb: fromThumb\n });\n }, this.s.speed);\n } else {\n _this.loadContent(index, true, _this.s.backdropDuration);\n\n _this.lgBusy = false;\n _lgUtils2.default.trigger(_this.el, 'onAfterSlide', {\n prevIndex: _prevIndex,\n index: index,\n fromTouch: fromTouch,\n fromThumb: fromThumb\n });\n }\n\n _this.lGalleryOn = true;\n\n if (this.s.counter) {\n if (document.getElementById('lg-counter-current')) {\n document.getElementById('lg-counter-current').innerHTML = index + 1;\n }\n }\n }\n };\n\n /**\n * @desc Go to next slide\n * @param {Boolean} fromTouch - true if slide function called via touch event\n */\n Plugin.prototype.goToNextSlide = function (fromTouch) {\n var _this = this;\n if (!_this.lgBusy) {\n if (_this.index + 1 < _this.___slide.length) {\n _this.index++;\n _lgUtils2.default.trigger(_this.el, 'onBeforeNextSlide', {\n index: _this.index\n });\n _this.slide(_this.index, fromTouch, false);\n } else {\n if (_this.s.loop) {\n _this.index = 0;\n _lgUtils2.default.trigger(_this.el, 'onBeforeNextSlide', {\n index: _this.index\n });\n _this.slide(_this.index, fromTouch, false);\n } else if (_this.s.slideEndAnimatoin) {\n _lgUtils2.default.addClass(_this.outer, 'lg-right-end');\n setTimeout(function () {\n _lgUtils2.default.removeClass(_this.outer, 'lg-right-end');\n }, 400);\n }\n }\n }\n };\n\n /**\n * @desc Go to previous slide\n * @param {Boolean} fromTouch - true if slide function called via touch event\n */\n Plugin.prototype.goToPrevSlide = function (fromTouch) {\n var _this = this;\n if (!_this.lgBusy) {\n if (_this.index > 0) {\n _this.index--;\n _lgUtils2.default.trigger(_this.el, 'onBeforePrevSlide', {\n index: _this.index,\n fromTouch: fromTouch\n });\n _this.slide(_this.index, fromTouch, false);\n } else {\n if (_this.s.loop) {\n _this.index = _this.items.length - 1;\n _lgUtils2.default.trigger(_this.el, 'onBeforePrevSlide', {\n index: _this.index,\n fromTouch: fromTouch\n });\n _this.slide(_this.index, fromTouch, false);\n } else if (_this.s.slideEndAnimatoin) {\n _lgUtils2.default.addClass(_this.outer, 'lg-left-end');\n setTimeout(function () {\n _lgUtils2.default.removeClass(_this.outer, 'lg-left-end');\n }, 400);\n }\n }\n }\n };\n\n Plugin.prototype.keyPress = function () {\n var _this = this;\n if (this.items.length > 1) {\n _lgUtils2.default.on(window, 'keyup.lg', function (e) {\n if (_this.items.length > 1) {\n if (e.keyCode === 37) {\n e.preventDefault();\n _this.goToPrevSlide();\n }\n\n if (e.keyCode === 39) {\n e.preventDefault();\n _this.goToNextSlide();\n }\n }\n });\n }\n\n _lgUtils2.default.on(window, 'keydown.lg', function (e) {\n if (_this.s.escKey === true && e.keyCode === 27) {\n e.preventDefault();\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-thumb-open')) {\n _this.destroy();\n } else {\n _lgUtils2.default.removeClass(_this.outer, 'lg-thumb-open');\n }\n }\n });\n };\n\n Plugin.prototype.arrow = function () {\n var _this = this;\n _lgUtils2.default.on(this.outer.querySelector('.lg-prev'), 'click.lg', function () {\n _this.goToPrevSlide();\n });\n\n _lgUtils2.default.on(this.outer.querySelector('.lg-next'), 'click.lg', function () {\n _this.goToNextSlide();\n });\n };\n\n Plugin.prototype.arrowDisable = function (index) {\n\n // Disable arrows if s.hideControlOnEnd is true\n if (!this.s.loop && this.s.hideControlOnEnd) {\n var next = this.outer.querySelector('.lg-next');\n var prev = this.outer.querySelector('.lg-prev');\n if (index + 1 < this.___slide.length) {\n next.removeAttribute('disabled');\n _lgUtils2.default.removeClass(next, 'disabled');\n } else {\n next.setAttribute('disabled', 'disabled');\n _lgUtils2.default.addClass(next, 'disabled');\n }\n\n if (index > 0) {\n prev.removeAttribute('disabled');\n _lgUtils2.default.removeClass(prev, 'disabled');\n } else {\n prev.setAttribute('disabled', 'disabled');\n _lgUtils2.default.addClass(prev, 'disabled');\n }\n }\n };\n\n Plugin.prototype.setTranslate = function (el, xValue, yValue) {\n // jQuery supports Automatic CSS prefixing since jQuery 1.8.0\n if (this.s.useLeft) {\n el.style.left = xValue;\n } else {\n _lgUtils2.default.setVendor(el, 'Transform', 'translate3d(' + xValue + 'px, ' + yValue + 'px, 0px)');\n }\n };\n\n Plugin.prototype.touchMove = function (startCoords, endCoords) {\n\n var distance = endCoords - startCoords;\n\n if (Math.abs(distance) > 15) {\n // reset opacity and transition duration\n _lgUtils2.default.addClass(this.outer, 'lg-dragging');\n\n // move current slide\n this.setTranslate(this.___slide[this.index], distance, 0);\n\n // move next and prev slide with current slide\n this.setTranslate(document.querySelector('.lg-prev-slide'), -this.___slide[this.index].clientWidth + distance, 0);\n this.setTranslate(document.querySelector('.lg-next-slide'), this.___slide[this.index].clientWidth + distance, 0);\n }\n };\n\n Plugin.prototype.touchEnd = function (distance) {\n var _this = this;\n\n // keep slide animation for any mode while dragg/swipe\n if (_this.s.mode !== 'lg-slide') {\n _lgUtils2.default.addClass(_this.outer, 'lg-slide');\n }\n\n for (var i = 0; i < this.___slide.length; i++) {\n if (!_lgUtils2.default.hasClass(this.___slide[i], 'lg-current') && !_lgUtils2.default.hasClass(this.___slide[i], 'lg-prev-slide') && !_lgUtils2.default.hasClass(this.___slide[i], 'lg-next-slide')) {\n this.___slide[i].style.opacity = '0';\n }\n }\n\n // set transition duration\n setTimeout(function () {\n _lgUtils2.default.removeClass(_this.outer, 'lg-dragging');\n if (distance < 0 && Math.abs(distance) > _this.s.swipeThreshold) {\n _this.goToNextSlide(true);\n } else if (distance > 0 && Math.abs(distance) > _this.s.swipeThreshold) {\n _this.goToPrevSlide(true);\n } else if (Math.abs(distance) < 5) {\n\n // Trigger click if distance is less than 5 pix\n _lgUtils2.default.trigger(_this.el, 'onSlideClick');\n }\n\n for (var i = 0; i < _this.___slide.length; i++) {\n _this.___slide[i].removeAttribute('style');\n }\n });\n\n // remove slide class once drag/swipe is completed if mode is not slide\n setTimeout(function () {\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-dragging') && _this.s.mode !== 'lg-slide') {\n _lgUtils2.default.removeClass(_this.outer, 'lg-slide');\n }\n }, _this.s.speed + 100);\n };\n\n Plugin.prototype.enableSwipe = function () {\n var _this = this;\n var startCoords = 0;\n var endCoords = 0;\n var isMoved = false;\n\n if (_this.s.enableSwipe && _this.isTouch && _this.doCss()) {\n\n for (var i = 0; i < _this.___slide.length; i++) {\n /*jshint loopfunc: true */\n _lgUtils2.default.on(_this.___slide[i], 'touchstart.lg', function (e) {\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-zoomed') && !_this.lgBusy) {\n e.preventDefault();\n _this.manageSwipeClass();\n startCoords = e.targetTouches[0].pageX;\n }\n });\n }\n\n for (var j = 0; j < _this.___slide.length; j++) {\n /*jshint loopfunc: true */\n _lgUtils2.default.on(_this.___slide[j], 'touchmove.lg', function (e) {\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-zoomed')) {\n e.preventDefault();\n endCoords = e.targetTouches[0].pageX;\n _this.touchMove(startCoords, endCoords);\n isMoved = true;\n }\n });\n }\n\n for (var k = 0; k < _this.___slide.length; k++) {\n /*jshint loopfunc: true */\n _lgUtils2.default.on(_this.___slide[k], 'touchend.lg', function () {\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-zoomed')) {\n if (isMoved) {\n isMoved = false;\n _this.touchEnd(endCoords - startCoords);\n } else {\n _lgUtils2.default.trigger(_this.el, 'onSlideClick');\n }\n }\n });\n }\n }\n };\n\n Plugin.prototype.enableDrag = function () {\n var _this = this;\n var startCoords = 0;\n var endCoords = 0;\n var isDraging = false;\n var isMoved = false;\n if (_this.s.enableDrag && !_this.isTouch && _this.doCss()) {\n for (var i = 0; i < _this.___slide.length; i++) {\n /*jshint loopfunc: true */\n _lgUtils2.default.on(_this.___slide[i], 'mousedown.lg', function (e) {\n // execute only on .lg-object\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-zoomed')) {\n if (_lgUtils2.default.hasClass(e.target, 'lg-object') || _lgUtils2.default.hasClass(e.target, 'lg-video-play')) {\n e.preventDefault();\n\n if (!_this.lgBusy) {\n _this.manageSwipeClass();\n startCoords = e.pageX;\n isDraging = true;\n\n // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723\n _this.outer.scrollLeft += 1;\n _this.outer.scrollLeft -= 1;\n\n // *\n\n _lgUtils2.default.removeClass(_this.outer, 'lg-grab');\n _lgUtils2.default.addClass(_this.outer, 'lg-grabbing');\n\n _lgUtils2.default.trigger(_this.el, 'onDragstart');\n }\n }\n }\n });\n }\n\n _lgUtils2.default.on(window, 'mousemove.lg', function (e) {\n if (isDraging) {\n isMoved = true;\n endCoords = e.pageX;\n _this.touchMove(startCoords, endCoords);\n _lgUtils2.default.trigger(_this.el, 'onDragmove');\n }\n });\n\n _lgUtils2.default.on(window, 'mouseup.lg', function (e) {\n if (isMoved) {\n isMoved = false;\n _this.touchEnd(endCoords - startCoords);\n _lgUtils2.default.trigger(_this.el, 'onDragend');\n } else if (_lgUtils2.default.hasClass(e.target, 'lg-object') || _lgUtils2.default.hasClass(e.target, 'lg-video-play')) {\n _lgUtils2.default.trigger(_this.el, 'onSlideClick');\n }\n\n // Prevent execution on click\n if (isDraging) {\n isDraging = false;\n _lgUtils2.default.removeClass(_this.outer, 'lg-grabbing');\n _lgUtils2.default.addClass(_this.outer, 'lg-grab');\n }\n });\n }\n };\n\n Plugin.prototype.manageSwipeClass = function () {\n var touchNext = this.index + 1;\n var touchPrev = this.index - 1;\n var length = this.___slide.length;\n if (this.s.loop) {\n if (this.index === 0) {\n touchPrev = length - 1;\n } else if (this.index === length - 1) {\n touchNext = 0;\n }\n }\n\n for (var i = 0; i < this.___slide.length; i++) {\n _lgUtils2.default.removeClass(this.___slide[i], 'lg-next-slide');\n _lgUtils2.default.removeClass(this.___slide[i], 'lg-prev-slide');\n }\n\n if (touchPrev > -1) {\n _lgUtils2.default.addClass(this.___slide[touchPrev], 'lg-prev-slide');\n }\n\n _lgUtils2.default.addClass(this.___slide[touchNext], 'lg-next-slide');\n };\n\n Plugin.prototype.mousewheel = function () {\n var _this = this;\n _lgUtils2.default.on(_this.outer, 'mousewheel.lg', function (e) {\n\n if (!e.deltaY) {\n return;\n }\n\n if (e.deltaY > 0) {\n _this.goToPrevSlide();\n } else {\n _this.goToNextSlide();\n }\n\n e.preventDefault();\n });\n };\n\n Plugin.prototype.closeGallery = function () {\n\n var _this = this;\n var mousedown = false;\n _lgUtils2.default.on(this.outer.querySelector('.lg-close'), 'click.lg', function () {\n _this.destroy();\n });\n\n if (_this.s.closable) {\n\n // If you drag the slide and release outside gallery gets close on chrome\n // for preventing this check mousedown and mouseup happened on .lg-item or lg-outer\n _lgUtils2.default.on(_this.outer, 'mousedown.lg', function (e) {\n\n if (_lgUtils2.default.hasClass(e.target, 'lg-outer') || _lgUtils2.default.hasClass(e.target, 'lg-item') || _lgUtils2.default.hasClass(e.target, 'lg-img-wrap')) {\n mousedown = true;\n } else {\n mousedown = false;\n }\n });\n\n _lgUtils2.default.on(_this.outer, 'mouseup.lg', function (e) {\n\n if (_lgUtils2.default.hasClass(e.target, 'lg-outer') || _lgUtils2.default.hasClass(e.target, 'lg-item') || _lgUtils2.default.hasClass(e.target, 'lg-img-wrap') && mousedown) {\n if (!_lgUtils2.default.hasClass(_this.outer, 'lg-dragging')) {\n _this.destroy();\n }\n }\n });\n }\n };\n\n Plugin.prototype.destroy = function (d) {\n\n var _this = this;\n\n if (!d) {\n _lgUtils2.default.trigger(_this.el, 'onBeforeClose');\n }\n\n document.body.scrollTop = _this.prevScrollTop;\n document.documentElement.scrollTop = _this.prevScrollTop;\n\n /**\n * if d is false or undefined destroy will only close the gallery\n * plugins instance remains with the element\n *\n * if d is true destroy will completely remove the plugin\n */\n\n if (d) {\n if (!_this.s.dynamic) {\n // only when not using dynamic mode is $items a jquery collection\n\n for (var i = 0; i < this.items.length; i++) {\n _lgUtils2.default.off(this.items[i], '.lg');\n _lgUtils2.default.off(this.items[i], '.lgcustom');\n }\n }\n\n var lguid = _this.el.getAttribute('lg-uid');\n delete window.lgData[lguid];\n _this.el.removeAttribute('lg-uid');\n }\n\n // Unbind all events added by lightGallery\n _lgUtils2.default.off(this.el, '.lgtm');\n\n // Distroy all lightGallery modules\n for (var key in window.lgModules) {\n if (_this.modules[key]) {\n _this.modules[key].destroy(d);\n }\n }\n\n this.lGalleryOn = false;\n\n clearTimeout(_this.hideBartimeout);\n this.hideBartimeout = false;\n _lgUtils2.default.off(window, '.lg');\n _lgUtils2.default.removeClass(document.body, 'lg-on');\n _lgUtils2.default.removeClass(document.body, 'lg-from-hash');\n\n if (_this.outer) {\n _lgUtils2.default.removeClass(_this.outer, 'lg-visible');\n }\n\n _lgUtils2.default.removeClass(document.querySelector('.lg-backdrop'), 'in');\n setTimeout(function () {\n try {\n if (_this.outer) {\n _this.outer.parentNode.removeChild(_this.outer);\n }\n\n if (document.querySelector('.lg-backdrop')) {\n document.querySelector('.lg-backdrop').parentNode.removeChild(document.querySelector('.lg-backdrop'));\n }\n\n if (!d) {\n _lgUtils2.default.trigger(_this.el, 'onCloseAfter');\n }\n _this.el.focus();\n } catch (err) {}\n }, _this.s.backdropDuration + 50);\n };\n\n window.lightGallery = function (el, options) {\n if (!el) {\n return;\n }\n\n try {\n if (!el.getAttribute('lg-uid')) {\n var uid = 'lg' + window.lgData.uid++;\n window.lgData[uid] = new Plugin(el, options);\n el.setAttribute('lg-uid', uid);\n } else {\n window.lgData[el.getAttribute('lg-uid')].init();\n }\n } catch (err) {\n console.error('lightGallery has not initiated properly', err);\n }\n };\n});"],"names":["module","exports","r","e","n","t","o","i","f","u","a","Error","code","p","call","length","require","global","factory","lgVideo","this","_extends","Object","assign","target","arguments","source","key","prototype","hasOwnProperty","videoDefaults","videoMaxWidth","autoplayFirstVideo","youtubePlayerParams","vimeoPlayerParams","dailymotionPlayerParams","vkPlayerParams","videojs","videojsOptions","Video","element","el","core","window","lgData","getAttribute","s","videoLoaded","init","_this","utils","on","event","___slide","detail","index","querySelector","insertAdjacentHTML","loadVideo","src","html","play","console","error","style","maxWidth","loadOnClick","$el","hasClass","display","youtubePlayer","vimeoPlayer","dailymotionPlayer","html5Player","contentWindow","postMessage","Vimeo","Player","catch","name","warn","addClass","_loadVideo","_src","_html","dynamic","dynamicEl","items","$tempImg","appendChild","removeClass","doCss","enableSwipe","isTouch","enableDrag","$videoSlide","prevIndex","vkPlayer","pause","setAttribute","replace","_isVideo","isVideo","youtube","vimeo","dailymotion","vk","outer","noposter","videoTitle","video","autoplay","title","firstImage","param","html5","fL","substring","document","innerHTML","destroy","lgModules","defineProperty","value","label","wrap","className","wrapper","createElement","parentNode","insertBefore","removeChild","classList","add","remove","RegExp","split","join","contains","test","setVendor","property","charAt","toLowerCase","slice","trigger","customEvent","CustomEvent","undefined","dispatchEvent","Listener","uid","events","fn","forEach","_id","addEventListener","off","_event","indexOf","removeEventListener","obj","keys","map","k","encodeURIComponent","default","_lgUtils","_lgUtils2","__esModule","params","bubbles","cancelable","evt","createEvent","initCustomEvent","Event","defaults","mode","cssEasing","easing","speed","height","width","startClass","backdropDuration","hideBarsDelay","useLeft","ariaLabelledby","ariaDescribedby","closable","loop","escKey","keyPress","controls","slideEndAnimatoin","hideControlOnEnd","mousewheel","getCaptionFromTitleOrAlt","appendSubHtmlTo","subHtmlSelectorRelative","preload","showAfterLoad","selector","selectWithin","nextHtml","prevHtml","iframeMaxWidth","download","counter","appendCounterTo","swipeThreshold","galleryId","supportLegacyBrowser","Plugin","options","constructor","Array","modules","lGalleryOn","lgBusy","hideBartimeout","documentElement","push","querySelectorAll","children","_hash","location","hash","parseInt","body","setTimeout","build","preventDefault","structure","slide","arrow","closeGallery","initialHideBarTimeout","clearTimeout","template","list","subHtmlCont","focus","setTop","inner","prevScrollTop","scrollTop","wH","innerHeight","top","lGallery","transition","root","support","match","addHtml","currentEle","subHtml","j","loadContent","rec","delay","_img","_poster","_srcset","_sizes","_alt","_hasPoster","getResponsiveSrc","srcItms","rsWidth","rsSrc","__src","splice","wWidth","innerWidth","poster","alt","responsive","srcset","sizes","iframe","videoClass","picturefill","elements","_speed","fromTouch","fromThumb","_prevIndex","_length","_time","_next","_prev","downloadUrl","getElementById","arrowDisable","touchPrev","touchNext","goToNextSlide","goToPrevSlide","keyCode","next","prev","removeAttribute","setTranslate","xValue","yValue","left","touchMove","startCoords","endCoords","distance","Math","abs","clientWidth","touchEnd","opacity","isMoved","manageSwipeClass","targetTouches","pageX","isDraging","scrollLeft","deltaY","mousedown","d","lguid","err","lightGallery"],"sourceRoot":""}