{"version":3,"file":"photoswipe-ui-default-D71U6haM.js","sources":["../../../node_modules/photoswipe/dist/photoswipe-ui-default.js"],"sourcesContent":["/*! PhotoSwipe Default UI - 4.1.3 - 2019-01-08\n* http://photoswipe.com\n* Copyright (c) 2019 Dmitry Semenov; */\n/**\n*\n* UI on top of main sliding area (caption, arrows, close button, etc.).\n* Built just using public methods/properties of PhotoSwipe.\n* \n*/\n(function (root, factory) { \n\tif (typeof define === 'function' && define.amd) {\n\t\tdefine(factory);\n\t} else if (typeof exports === 'object') {\n\t\tmodule.exports = factory();\n\t} else {\n\t\troot.PhotoSwipeUI_Default = factory();\n\t}\n})(this, function () {\n\n\t'use strict';\n\n\n\nvar PhotoSwipeUI_Default =\n function(pswp, framework) {\n\n\tvar ui = this;\n\tvar _overlayUIUpdated = false,\n\t\t_controlsVisible = true,\n\t\t_fullscrenAPI,\n\t\t_controls,\n\t\t_captionContainer,\n\t\t_fakeCaptionContainer,\n\t\t_indexIndicator,\n\t\t_shareButton,\n\t\t_shareModal,\n\t\t_shareModalHidden = true,\n\t\t_initalCloseOnScrollValue,\n\t\t_isIdle,\n\t\t_listen,\n\n\t\t_loadingIndicator,\n\t\t_loadingIndicatorHidden,\n\t\t_loadingIndicatorTimeout,\n\n\t\t_galleryHasOneSlide,\n\n\t\t_options,\n\t\t_defaultUIOptions = {\n\t\t\tbarsSize: {top:44, bottom:'auto'},\n\t\t\tcloseElClasses: ['item', 'caption', 'zoom-wrap', 'ui', 'top-bar'], \n\t\t\ttimeToIdle: 4000, \n\t\t\ttimeToIdleOutside: 1000,\n\t\t\tloadingIndicatorDelay: 1000, // 2s\n\t\t\t\n\t\t\taddCaptionHTMLFn: function(item, captionEl /*, isFake */) {\n\t\t\t\tif(!item.title) {\n\t\t\t\t\tcaptionEl.children[0].innerHTML = '';\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tcaptionEl.children[0].innerHTML = item.title;\n\t\t\t\treturn true;\n\t\t\t},\n\n\t\t\tcloseEl:true,\n\t\t\tcaptionEl: true,\n\t\t\tfullscreenEl: true,\n\t\t\tzoomEl: true,\n\t\t\tshareEl: true,\n\t\t\tcounterEl: true,\n\t\t\tarrowEl: true,\n\t\t\tpreloaderEl: true,\n\n\t\t\ttapToClose: false,\n\t\t\ttapToToggleControls: true,\n\n\t\t\tclickToCloseNonZoomable: true,\n\n\t\t\tshareButtons: [\n\t\t\t\t{id:'facebook', label:'Share on Facebook', url:'https://www.facebook.com/sharer/sharer.php?u={{url}}'},\n\t\t\t\t{id:'twitter', label:'Tweet', url:'https://twitter.com/intent/tweet?text={{text}}&url={{url}}'},\n\t\t\t\t{id:'pinterest', label:'Pin it', url:'http://www.pinterest.com/pin/create/button/'+\n\t\t\t\t\t\t\t\t\t\t\t\t\t'?url={{url}}&media={{image_url}}&description={{text}}'},\n\t\t\t\t{id:'download', label:'Download image', url:'{{raw_image_url}}', download:true}\n\t\t\t],\n\t\t\tgetImageURLForShare: function( /* shareButtonData */ ) {\n\t\t\t\treturn pswp.currItem.src || '';\n\t\t\t},\n\t\t\tgetPageURLForShare: function( /* shareButtonData */ ) {\n\t\t\t\treturn window.location.href;\n\t\t\t},\n\t\t\tgetTextForShare: function( /* shareButtonData */ ) {\n\t\t\t\treturn pswp.currItem.title || '';\n\t\t\t},\n\t\t\t\t\n\t\t\tindexIndicatorSep: ' / ',\n\t\t\tfitControlsWidth: 1200\n\n\t\t},\n\t\t_blockControlsTap,\n\t\t_blockControlsTapTimeout;\n\n\n\n\tvar _onControlsTap = function(e) {\n\t\t\tif(_blockControlsTap) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\n\t\t\te = e || window.event;\n\n\t\t\tif(_options.timeToIdle && _options.mouseUsed && !_isIdle) {\n\t\t\t\t// reset idle timer\n\t\t\t\t_onIdleMouseMove();\n\t\t\t}\n\n\n\t\t\tvar target = e.target || e.srcElement,\n\t\t\t\tuiElement,\n\t\t\t\tclickedClass = target.getAttribute('class') || '',\n\t\t\t\tfound;\n\n\t\t\tfor(var i = 0; i < _uiElements.length; i++) {\n\t\t\t\tuiElement = _uiElements[i];\n\t\t\t\tif(uiElement.onTap && clickedClass.indexOf('pswp__' + uiElement.name ) > -1 ) {\n\t\t\t\t\tuiElement.onTap();\n\t\t\t\t\tfound = true;\n\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif(found) {\n\t\t\t\tif(e.stopPropagation) {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t}\n\t\t\t\t_blockControlsTap = true;\n\n\t\t\t\t// Some versions of Android don't prevent ghost click event \n\t\t\t\t// when preventDefault() was called on touchstart and/or touchend.\n\t\t\t\t// \n\t\t\t\t// This happens on v4.3, 4.2, 4.1, \n\t\t\t\t// older versions strangely work correctly, \n\t\t\t\t// but just in case we add delay on all of them)\t\n\t\t\t\tvar tapDelay = framework.features.isOldAndroid ? 600 : 30;\n\t\t\t\t_blockControlsTapTimeout = setTimeout(function() {\n\t\t\t\t\t_blockControlsTap = false;\n\t\t\t\t}, tapDelay);\n\t\t\t}\n\n\t\t},\n\t\t_fitControlsInViewport = function() {\n\t\t\treturn !pswp.likelyTouchDevice || _options.mouseUsed || screen.width > _options.fitControlsWidth;\n\t\t},\n\t\t_togglePswpClass = function(el, cName, add) {\n\t\t\tframework[ (add ? 'add' : 'remove') + 'Class' ](el, 'pswp__' + cName);\n\t\t},\n\n\t\t// add class when there is just one item in the gallery\n\t\t// (by default it hides left/right arrows and 1ofX counter)\n\t\t_countNumItems = function() {\n\t\t\tvar hasOneSlide = (_options.getNumItemsFn() === 1);\n\n\t\t\tif(hasOneSlide !== _galleryHasOneSlide) {\n\t\t\t\t_togglePswpClass(_controls, 'ui--one-slide', hasOneSlide);\n\t\t\t\t_galleryHasOneSlide = hasOneSlide;\n\t\t\t}\n\t\t},\n\t\t_toggleShareModalClass = function() {\n\t\t\t_togglePswpClass(_shareModal, 'share-modal--hidden', _shareModalHidden);\n\t\t},\n\t\t_toggleShareModal = function() {\n\n\t\t\t_shareModalHidden = !_shareModalHidden;\n\t\t\t\n\t\t\t\n\t\t\tif(!_shareModalHidden) {\n\t\t\t\t_toggleShareModalClass();\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tif(!_shareModalHidden) {\n\t\t\t\t\t\tframework.addClass(_shareModal, 'pswp__share-modal--fade-in');\n\t\t\t\t\t}\n\t\t\t\t}, 30);\n\t\t\t} else {\n\t\t\t\tframework.removeClass(_shareModal, 'pswp__share-modal--fade-in');\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\tif(_shareModalHidden) {\n\t\t\t\t\t\t_toggleShareModalClass();\n\t\t\t\t\t}\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t\t\n\t\t\tif(!_shareModalHidden) {\n\t\t\t\t_updateShareURLs();\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\n\t\t_openWindowPopup = function(e) {\n\t\t\te = e || window.event;\n\t\t\tvar target = e.target || e.srcElement;\n\n\t\t\tpswp.shout('shareLinkClick', e, target);\n\n\t\t\tif(!target.href) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif( target.hasAttribute('download') ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\twindow.open(target.href, 'pswp_share', 'scrollbars=yes,resizable=yes,toolbar=no,'+\n\t\t\t\t\t\t\t\t\t\t'location=yes,width=550,height=420,top=100,left=' + \n\t\t\t\t\t\t\t\t\t\t(window.screen ? Math.round(screen.width / 2 - 275) : 100) );\n\n\t\t\tif(!_shareModalHidden) {\n\t\t\t\t_toggleShareModal();\n\t\t\t}\n\t\t\t\n\t\t\treturn false;\n\t\t},\n\t\t_updateShareURLs = function() {\n\t\t\tvar shareButtonOut = '',\n\t\t\t\tshareButtonData,\n\t\t\t\tshareURL,\n\t\t\t\timage_url,\n\t\t\t\tpage_url,\n\t\t\t\tshare_text;\n\n\t\t\tfor(var i = 0; i < _options.shareButtons.length; i++) {\n\t\t\t\tshareButtonData = _options.shareButtons[i];\n\n\t\t\t\timage_url = _options.getImageURLForShare(shareButtonData);\n\t\t\t\tpage_url = _options.getPageURLForShare(shareButtonData);\n\t\t\t\tshare_text = _options.getTextForShare(shareButtonData);\n\n\t\t\t\tshareURL = shareButtonData.url.replace('{{url}}', encodeURIComponent(page_url) )\n\t\t\t\t\t\t\t\t\t.replace('{{image_url}}', encodeURIComponent(image_url) )\n\t\t\t\t\t\t\t\t\t.replace('{{raw_image_url}}', image_url )\n\t\t\t\t\t\t\t\t\t.replace('{{text}}', encodeURIComponent(share_text) );\n\n\t\t\t\tshareButtonOut += '<a href=\"' + shareURL + '\" target=\"_blank\" '+\n\t\t\t\t\t\t\t\t\t'class=\"pswp__share--' + shareButtonData.id + '\"' +\n\t\t\t\t\t\t\t\t\t(shareButtonData.download ? 'download' : '') + '>' + \n\t\t\t\t\t\t\t\t\tshareButtonData.label + '</a>';\n\n\t\t\t\tif(_options.parseShareButtonOut) {\n\t\t\t\t\tshareButtonOut = _options.parseShareButtonOut(shareButtonData, shareButtonOut);\n\t\t\t\t}\n\t\t\t}\n\t\t\t_shareModal.children[0].innerHTML = shareButtonOut;\n\t\t\t_shareModal.children[0].onclick = _openWindowPopup;\n\n\t\t},\n\t\t_hasCloseClass = function(target) {\n\t\t\tfor(var i = 0; i < _options.closeElClasses.length; i++) {\n\t\t\t\tif( framework.hasClass(target, 'pswp__' + _options.closeElClasses[i]) ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t_idleInterval,\n\t\t_idleTimer,\n\t\t_idleIncrement = 0,\n\t\t_onIdleMouseMove = function() {\n\t\t\tclearTimeout(_idleTimer);\n\t\t\t_idleIncrement = 0;\n\t\t\tif(_isIdle) {\n\t\t\t\tui.setIdle(false);\n\t\t\t}\n\t\t},\n\t\t_onMouseLeaveWindow = function(e) {\n\t\t\te = e ? e : window.event;\n\t\t\tvar from = e.relatedTarget || e.toElement;\n\t\t\tif (!from || from.nodeName === 'HTML') {\n\t\t\t\tclearTimeout(_idleTimer);\n\t\t\t\t_idleTimer = setTimeout(function() {\n\t\t\t\t\tui.setIdle(true);\n\t\t\t\t}, _options.timeToIdleOutside);\n\t\t\t}\n\t\t},\n\t\t_setupFullscreenAPI = function() {\n\t\t\tif(_options.fullscreenEl && !framework.features.isOldAndroid) {\n\t\t\t\tif(!_fullscrenAPI) {\n\t\t\t\t\t_fullscrenAPI = ui.getFullscreenAPI();\n\t\t\t\t}\n\t\t\t\tif(_fullscrenAPI) {\n\t\t\t\t\tframework.bind(document, _fullscrenAPI.eventK, ui.updateFullscreen);\n\t\t\t\t\tui.updateFullscreen();\n\t\t\t\t\tframework.addClass(pswp.template, 'pswp--supports-fs');\n\t\t\t\t} else {\n\t\t\t\t\tframework.removeClass(pswp.template, 'pswp--supports-fs');\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t_setupLoadingIndicator = function() {\n\t\t\t// Setup loading indicator\n\t\t\tif(_options.preloaderEl) {\n\t\t\t\n\t\t\t\t_toggleLoadingIndicator(true);\n\n\t\t\t\t_listen('beforeChange', function() {\n\n\t\t\t\t\tclearTimeout(_loadingIndicatorTimeout);\n\n\t\t\t\t\t// display loading indicator with delay\n\t\t\t\t\t_loadingIndicatorTimeout = setTimeout(function() {\n\n\t\t\t\t\t\tif(pswp.currItem && pswp.currItem.loading) {\n\n\t\t\t\t\t\t\tif( !pswp.allowProgressiveImg() || (pswp.currItem.img && !pswp.currItem.img.naturalWidth) ) {\n\t\t\t\t\t\t\t\t// show preloader if progressive loading is not enabled, \n\t\t\t\t\t\t\t\t// or image width is not defined yet (because of slow connection)\n\t\t\t\t\t\t\t\t_toggleLoadingIndicator(false); \n\t\t\t\t\t\t\t\t// items-controller.js function allowProgressiveImg\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t_toggleLoadingIndicator(true); // hide preloader\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}, _options.loadingIndicatorDelay);\n\t\t\t\t\t\n\t\t\t\t});\n\t\t\t\t_listen('imageLoadComplete', function(index, item) {\n\t\t\t\t\tif(pswp.currItem === item) {\n\t\t\t\t\t\t_toggleLoadingIndicator(true);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t}\n\t\t},\n\t\t_toggleLoadingIndicator = function(hide) {\n\t\t\tif( _loadingIndicatorHidden !== hide ) {\n\t\t\t\t_togglePswpClass(_loadingIndicator, 'preloader--active', !hide);\n\t\t\t\t_loadingIndicatorHidden = hide;\n\t\t\t}\n\t\t},\n\t\t_applyNavBarGaps = function(item) {\n\t\t\tvar gap = item.vGap;\n\n\t\t\tif( _fitControlsInViewport() ) {\n\t\t\t\t\n\t\t\t\tvar bars = _options.barsSize; \n\t\t\t\tif(_options.captionEl && bars.bottom === 'auto') {\n\t\t\t\t\tif(!_fakeCaptionContainer) {\n\t\t\t\t\t\t_fakeCaptionContainer = framework.createEl('pswp__caption pswp__caption--fake');\n\t\t\t\t\t\t_fakeCaptionContainer.appendChild( framework.createEl('pswp__caption__center') );\n\t\t\t\t\t\t_controls.insertBefore(_fakeCaptionContainer, _captionContainer);\n\t\t\t\t\t\tframework.addClass(_controls, 'pswp__ui--fit');\n\t\t\t\t\t}\n\t\t\t\t\tif( _options.addCaptionHTMLFn(item, _fakeCaptionContainer, true) ) {\n\n\t\t\t\t\t\tvar captionSize = _fakeCaptionContainer.clientHeight;\n\t\t\t\t\t\tgap.bottom = parseInt(captionSize,10) || 44;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tgap.bottom = bars.top; // if no caption, set size of bottom gap to size of top\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tgap.bottom = bars.bottom === 'auto' ? 0 : bars.bottom;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t// height of top bar is static, no need to calculate it\n\t\t\t\tgap.top = bars.top;\n\t\t\t} else {\n\t\t\t\tgap.top = gap.bottom = 0;\n\t\t\t}\n\t\t},\n\t\t_setupIdle = function() {\n\t\t\t// Hide controls when mouse is used\n\t\t\tif(_options.timeToIdle) {\n\t\t\t\t_listen('mouseUsed', function() {\n\t\t\t\t\t\n\t\t\t\t\tframework.bind(document, 'mousemove', _onIdleMouseMove);\n\t\t\t\t\tframework.bind(document, 'mouseout', _onMouseLeaveWindow);\n\n\t\t\t\t\t_idleInterval = setInterval(function() {\n\t\t\t\t\t\t_idleIncrement++;\n\t\t\t\t\t\tif(_idleIncrement === 2) {\n\t\t\t\t\t\t\tui.setIdle(true);\n\t\t\t\t\t\t}\n\t\t\t\t\t}, _options.timeToIdle / 2);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t_setupHidingControlsDuringGestures = function() {\n\n\t\t\t// Hide controls on vertical drag\n\t\t\t_listen('onVerticalDrag', function(now) {\n\t\t\t\tif(_controlsVisible && now < 0.95) {\n\t\t\t\t\tui.hideControls();\n\t\t\t\t} else if(!_controlsVisible && now >= 0.95) {\n\t\t\t\t\tui.showControls();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Hide controls when pinching to close\n\t\t\tvar pinchControlsHidden;\n\t\t\t_listen('onPinchClose' , function(now) {\n\t\t\t\tif(_controlsVisible && now < 0.9) {\n\t\t\t\t\tui.hideControls();\n\t\t\t\t\tpinchControlsHidden = true;\n\t\t\t\t} else if(pinchControlsHidden && !_controlsVisible && now > 0.9) {\n\t\t\t\t\tui.showControls();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t_listen('zoomGestureEnded', function() {\n\t\t\t\tpinchControlsHidden = false;\n\t\t\t\tif(pinchControlsHidden && !_controlsVisible) {\n\t\t\t\t\tui.showControls();\n\t\t\t\t}\n\t\t\t});\n\n\t\t};\n\n\n\n\tvar _uiElements = [\n\t\t{ \n\t\t\tname: 'caption', \n\t\t\toption: 'captionEl',\n\t\t\tonInit: function(el) { \n\t\t\t\t_captionContainer = el; \n\t\t\t} \n\t\t},\n\t\t{ \n\t\t\tname: 'share-modal', \n\t\t\toption: 'shareEl',\n\t\t\tonInit: function(el) { \n\t\t\t\t_shareModal = el;\n\t\t\t},\n\t\t\tonTap: function() {\n\t\t\t\t_toggleShareModal();\n\t\t\t} \n\t\t},\n\t\t{ \n\t\t\tname: 'button--share', \n\t\t\toption: 'shareEl',\n\t\t\tonInit: function(el) { \n\t\t\t\t_shareButton = el;\n\t\t\t},\n\t\t\tonTap: function() {\n\t\t\t\t_toggleShareModal();\n\t\t\t} \n\t\t},\n\t\t{ \n\t\t\tname: 'button--zoom', \n\t\t\toption: 'zoomEl',\n\t\t\tonTap: pswp.toggleDesktopZoom\n\t\t},\n\t\t{ \n\t\t\tname: 'counter', \n\t\t\toption: 'counterEl',\n\t\t\tonInit: function(el) { \n\t\t\t\t_indexIndicator = el;\n\t\t\t} \n\t\t},\n\t\t{ \n\t\t\tname: 'button--close', \n\t\t\toption: 'closeEl',\n\t\t\tonTap: pswp.close\n\t\t},\n\t\t{ \n\t\t\tname: 'button--arrow--left', \n\t\t\toption: 'arrowEl',\n\t\t\tonTap: pswp.prev\n\t\t},\n\t\t{ \n\t\t\tname: 'button--arrow--right', \n\t\t\toption: 'arrowEl',\n\t\t\tonTap: pswp.next\n\t\t},\n\t\t{ \n\t\t\tname: 'button--fs', \n\t\t\toption: 'fullscreenEl',\n\t\t\tonTap: function() { \n\t\t\t\tif(_fullscrenAPI.isFullscreen()) {\n\t\t\t\t\t_fullscrenAPI.exit();\n\t\t\t\t} else {\n\t\t\t\t\t_fullscrenAPI.enter();\n\t\t\t\t}\n\t\t\t} \n\t\t},\n\t\t{ \n\t\t\tname: 'preloader', \n\t\t\toption: 'preloaderEl',\n\t\t\tonInit: function(el) { \n\t\t\t\t_loadingIndicator = el;\n\t\t\t} \n\t\t}\n\n\t];\n\n\tvar _setupUIElements = function() {\n\t\tvar item,\n\t\t\tclassAttr,\n\t\t\tuiElement;\n\n\t\tvar loopThroughChildElements = function(sChildren) {\n\t\t\tif(!sChildren) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar l = sChildren.length;\n\t\t\tfor(var i = 0; i < l; i++) {\n\t\t\t\titem = sChildren[i];\n\t\t\t\tclassAttr = item.className;\n\n\t\t\t\tfor(var a = 0; a < _uiElements.length; a++) {\n\t\t\t\t\tuiElement = _uiElements[a];\n\n\t\t\t\t\tif(classAttr.indexOf('pswp__' + uiElement.name) > -1 ) {\n\n\t\t\t\t\t\tif( _options[uiElement.option] ) { // if element is not disabled from options\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tframework.removeClass(item, 'pswp__element--disabled');\n\t\t\t\t\t\t\tif(uiElement.onInit) {\n\t\t\t\t\t\t\t\tuiElement.onInit(item);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t//item.style.display = 'block';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tframework.addClass(item, 'pswp__element--disabled');\n\t\t\t\t\t\t\t//item.style.display = 'none';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tloopThroughChildElements(_controls.children);\n\n\t\tvar topBar = framework.getChildByClass(_controls, 'pswp__top-bar');\n\t\tif(topBar) {\n\t\t\tloopThroughChildElements( topBar.children );\n\t\t}\n\t};\n\n\n\t\n\n\tui.init = function() {\n\n\t\t// extend options\n\t\tframework.extend(pswp.options, _defaultUIOptions, true);\n\n\t\t// create local link for fast access\n\t\t_options = pswp.options;\n\n\t\t// find pswp__ui element\n\t\t_controls = framework.getChildByClass(pswp.scrollWrap, 'pswp__ui');\n\n\t\t// create local link\n\t\t_listen = pswp.listen;\n\n\n\t\t_setupHidingControlsDuringGestures();\n\n\t\t// update controls when slides change\n\t\t_listen('beforeChange', ui.update);\n\n\t\t// toggle zoom on double-tap\n\t\t_listen('doubleTap', function(point) {\n\t\t\tvar initialZoomLevel = pswp.currItem.initialZoomLevel;\n\t\t\tif(pswp.getZoomLevel() !== initialZoomLevel) {\n\t\t\t\tpswp.zoomTo(initialZoomLevel, point, 333);\n\t\t\t} else {\n\t\t\t\tpswp.zoomTo(_options.getDoubleTapZoom(false, pswp.currItem), point, 333);\n\t\t\t}\n\t\t});\n\n\t\t// Allow text selection in caption\n\t\t_listen('preventDragEvent', function(e, isDown, preventObj) {\n\t\t\tvar t = e.target || e.srcElement;\n\t\t\tif(\n\t\t\t\tt && \n\t\t\t\tt.getAttribute('class') && e.type.indexOf('mouse') > -1 && \n\t\t\t\t( t.getAttribute('class').indexOf('__caption') > 0 || (/(SMALL|STRONG|EM)/i).test(t.tagName) ) \n\t\t\t) {\n\t\t\t\tpreventObj.prevent = false;\n\t\t\t}\n\t\t});\n\n\t\t// bind events for UI\n\t\t_listen('bindEvents', function() {\n\t\t\tframework.bind(_controls, 'pswpTap click', _onControlsTap);\n\t\t\tframework.bind(pswp.scrollWrap, 'pswpTap', ui.onGlobalTap);\n\n\t\t\tif(!pswp.likelyTouchDevice) {\n\t\t\t\tframework.bind(pswp.scrollWrap, 'mouseover', ui.onMouseOver);\n\t\t\t}\n\t\t});\n\n\t\t// unbind events for UI\n\t\t_listen('unbindEvents', function() {\n\t\t\tif(!_shareModalHidden) {\n\t\t\t\t_toggleShareModal();\n\t\t\t}\n\n\t\t\tif(_idleInterval) {\n\t\t\t\tclearInterval(_idleInterval);\n\t\t\t}\n\t\t\tframework.unbind(document, 'mouseout', _onMouseLeaveWindow);\n\t\t\tframework.unbind(document, 'mousemove', _onIdleMouseMove);\n\t\t\tframework.unbind(_controls, 'pswpTap click', _onControlsTap);\n\t\t\tframework.unbind(pswp.scrollWrap, 'pswpTap', ui.onGlobalTap);\n\t\t\tframework.unbind(pswp.scrollWrap, 'mouseover', ui.onMouseOver);\n\n\t\t\tif(_fullscrenAPI) {\n\t\t\t\tframework.unbind(document, _fullscrenAPI.eventK, ui.updateFullscreen);\n\t\t\t\tif(_fullscrenAPI.isFullscreen()) {\n\t\t\t\t\t_options.hideAnimationDuration = 0;\n\t\t\t\t\t_fullscrenAPI.exit();\n\t\t\t\t}\n\t\t\t\t_fullscrenAPI = null;\n\t\t\t}\n\t\t});\n\n\n\t\t// clean up things when gallery is destroyed\n\t\t_listen('destroy', function() {\n\t\t\tif(_options.captionEl) {\n\t\t\t\tif(_fakeCaptionContainer) {\n\t\t\t\t\t_controls.removeChild(_fakeCaptionContainer);\n\t\t\t\t}\n\t\t\t\tframework.removeClass(_captionContainer, 'pswp__caption--empty');\n\t\t\t}\n\n\t\t\tif(_shareModal) {\n\t\t\t\t_shareModal.children[0].onclick = null;\n\t\t\t}\n\t\t\tframework.removeClass(_controls, 'pswp__ui--over-close');\n\t\t\tframework.addClass( _controls, 'pswp__ui--hidden');\n\t\t\tui.setIdle(false);\n\t\t});\n\t\t\n\n\t\tif(!_options.showAnimationDuration) {\n\t\t\tframework.removeClass( _controls, 'pswp__ui--hidden');\n\t\t}\n\t\t_listen('initialZoomIn', function() {\n\t\t\tif(_options.showAnimationDuration) {\n\t\t\t\tframework.removeClass( _controls, 'pswp__ui--hidden');\n\t\t\t}\n\t\t});\n\t\t_listen('initialZoomOut', function() {\n\t\t\tframework.addClass( _controls, 'pswp__ui--hidden');\n\t\t});\n\n\t\t_listen('parseVerticalMargin', _applyNavBarGaps);\n\t\t\n\t\t_setupUIElements();\n\n\t\tif(_options.shareEl && _shareButton && _shareModal) {\n\t\t\t_shareModalHidden = true;\n\t\t}\n\n\t\t_countNumItems();\n\n\t\t_setupIdle();\n\n\t\t_setupFullscreenAPI();\n\n\t\t_setupLoadingIndicator();\n\t};\n\n\tui.setIdle = function(isIdle) {\n\t\t_isIdle = isIdle;\n\t\t_togglePswpClass(_controls, 'ui--idle', isIdle);\n\t};\n\n\tui.update = function() {\n\t\t// Don't update UI if it's hidden\n\t\tif(_controlsVisible && pswp.currItem) {\n\t\t\t\n\t\t\tui.updateIndexIndicator();\n\n\t\t\tif(_options.captionEl) {\n\t\t\t\t_options.addCaptionHTMLFn(pswp.currItem, _captionContainer);\n\n\t\t\t\t_togglePswpClass(_captionContainer, 'caption--empty', !pswp.currItem.title);\n\t\t\t}\n\n\t\t\t_overlayUIUpdated = true;\n\n\t\t} else {\n\t\t\t_overlayUIUpdated = false;\n\t\t}\n\n\t\tif(!_shareModalHidden) {\n\t\t\t_toggleShareModal();\n\t\t}\n\n\t\t_countNumItems();\n\t};\n\n\tui.updateFullscreen = function(e) {\n\n\t\tif(e) {\n\t\t\t// some browsers change window scroll position during the fullscreen\n\t\t\t// so PhotoSwipe updates it just in case\n\t\t\tsetTimeout(function() {\n\t\t\t\tpswp.setScrollOffset( 0, framework.getScrollY() );\n\t\t\t}, 50);\n\t\t}\n\t\t\n\t\t// toogle pswp--fs class on root element\n\t\tframework[ (_fullscrenAPI.isFullscreen() ? 'add' : 'remove') + 'Class' ](pswp.template, 'pswp--fs');\n\t};\n\n\tui.updateIndexIndicator = function() {\n\t\tif(_options.counterEl) {\n\t\t\t_indexIndicator.innerHTML = (pswp.getCurrentIndex()+1) + \n\t\t\t\t\t\t\t\t\t\t_options.indexIndicatorSep + \n\t\t\t\t\t\t\t\t\t\t_options.getNumItemsFn();\n\t\t}\n\t};\n\t\n\tui.onGlobalTap = function(e) {\n\t\te = e || window.event;\n\t\tvar target = e.target || e.srcElement;\n\n\t\tif(_blockControlsTap) {\n\t\t\treturn;\n\t\t}\n\n\t\tif(e.detail && e.detail.pointerType === 'mouse') {\n\n\t\t\t// close gallery if clicked outside of the image\n\t\t\tif(_hasCloseClass(target)) {\n\t\t\t\tpswp.close();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif(framework.hasClass(target, 'pswp__img')) {\n\t\t\t\tif(pswp.getZoomLevel() === 1 && pswp.getZoomLevel() <= pswp.currItem.fitRatio) {\n\t\t\t\t\tif(_options.clickToCloseNonZoomable) {\n\t\t\t\t\t\tpswp.close();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tpswp.toggleDesktopZoom(e.detail.releasePoint);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t} else {\n\n\t\t\t// tap anywhere (except buttons) to toggle visibility of controls\n\t\t\tif(_options.tapToToggleControls) {\n\t\t\t\tif(_controlsVisible) {\n\t\t\t\t\tui.hideControls();\n\t\t\t\t} else {\n\t\t\t\t\tui.showControls();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// tap to close gallery\n\t\t\tif(_options.tapToClose && (framework.hasClass(target, 'pswp__img') || _hasCloseClass(target)) ) {\n\t\t\t\tpswp.close();\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t}\n\t};\n\tui.onMouseOver = function(e) {\n\t\te = e || window.event;\n\t\tvar target = e.target || e.srcElement;\n\n\t\t// add class when mouse is over an element that should close the gallery\n\t\t_togglePswpClass(_controls, 'ui--over-close', _hasCloseClass(target));\n\t};\n\n\tui.hideControls = function() {\n\t\tframework.addClass(_controls,'pswp__ui--hidden');\n\t\t_controlsVisible = false;\n\t};\n\n\tui.showControls = function() {\n\t\t_controlsVisible = true;\n\t\tif(!_overlayUIUpdated) {\n\t\t\tui.update();\n\t\t}\n\t\tframework.removeClass(_controls,'pswp__ui--hidden');\n\t};\n\n\tui.supportsFullscreen = function() {\n\t\tvar d = document;\n\t\treturn !!(d.exitFullscreen || d.mozCancelFullScreen || d.webkitExitFullscreen || d.msExitFullscreen);\n\t};\n\n\tui.getFullscreenAPI = function() {\n\t\tvar dE = document.documentElement,\n\t\t\tapi,\n\t\t\ttF = 'fullscreenchange';\n\n\t\tif (dE.requestFullscreen) {\n\t\t\tapi = {\n\t\t\t\tenterK: 'requestFullscreen',\n\t\t\t\texitK: 'exitFullscreen',\n\t\t\t\telementK: 'fullscreenElement',\n\t\t\t\teventK: tF\n\t\t\t};\n\n\t\t} else if(dE.mozRequestFullScreen ) {\n\t\t\tapi = {\n\t\t\t\tenterK: 'mozRequestFullScreen',\n\t\t\t\texitK: 'mozCancelFullScreen',\n\t\t\t\telementK: 'mozFullScreenElement',\n\t\t\t\teventK: 'moz' + tF\n\t\t\t};\n\n\t\t\t\n\n\t\t} else if(dE.webkitRequestFullscreen) {\n\t\t\tapi = {\n\t\t\t\tenterK: 'webkitRequestFullscreen',\n\t\t\t\texitK: 'webkitExitFullscreen',\n\t\t\t\telementK: 'webkitFullscreenElement',\n\t\t\t\teventK: 'webkit' + tF\n\t\t\t};\n\n\t\t} else if(dE.msRequestFullscreen) {\n\t\t\tapi = {\n\t\t\t\tenterK: 'msRequestFullscreen',\n\t\t\t\texitK: 'msExitFullscreen',\n\t\t\t\telementK: 'msFullscreenElement',\n\t\t\t\teventK: 'MSFullscreenChange'\n\t\t\t};\n\t\t}\n\n\t\tif(api) {\n\t\t\tapi.enter = function() { \n\t\t\t\t// disable close-on-scroll in fullscreen\n\t\t\t\t_initalCloseOnScrollValue = _options.closeOnScroll; \n\t\t\t\t_options.closeOnScroll = false; \n\n\t\t\t\tif(this.enterK === 'webkitRequestFullscreen') {\n\t\t\t\t\tpswp.template[this.enterK]( Element.ALLOW_KEYBOARD_INPUT );\n\t\t\t\t} else {\n\t\t\t\t\treturn pswp.template[this.enterK](); \n\t\t\t\t}\n\t\t\t};\n\t\t\tapi.exit = function() { \n\t\t\t\t_options.closeOnScroll = _initalCloseOnScrollValue;\n\n\t\t\t\treturn document[this.exitK](); \n\n\t\t\t};\n\t\t\tapi.isFullscreen = function() { return document[this.elementK]; };\n\t\t}\n\n\t\treturn api;\n\t};\n\n\n\n};\nreturn PhotoSwipeUI_Default;\n\n\n});\n"],"names":["root","factory","module","this","PhotoSwipeUI_Default","pswp","framework","ui","_overlayUIUpdated","_controlsVisible","_fullscrenAPI","_controls","_captionContainer","_fakeCaptionContainer","_indexIndicator","_shareButton","_shareModal","_shareModalHidden","_initalCloseOnScrollValue","_isIdle","_listen","_loadingIndicator","_loadingIndicatorHidden","_loadingIndicatorTimeout","_galleryHasOneSlide","_options","_defaultUIOptions","item","captionEl","_blockControlsTap","_onControlsTap","_onIdleMouseMove","target","uiElement","clickedClass","found","i","_uiElements","tapDelay","_fitControlsInViewport","_togglePswpClass","el","cName","add","_countNumItems","hasOneSlide","_toggleShareModalClass","_toggleShareModal","_updateShareURLs","_openWindowPopup","shareButtonOut","shareButtonData","shareURL","image_url","page_url","share_text","_hasCloseClass","_idleInterval","_idleTimer","_idleIncrement","_onMouseLeaveWindow","from","_setupFullscreenAPI","_setupLoadingIndicator","_toggleLoadingIndicator","index","hide","_applyNavBarGaps","gap","bars","captionSize","_setupIdle","_setupHidingControlsDuringGestures","now","pinchControlsHidden","_setupUIElements","classAttr","loopThroughChildElements","sChildren","l","a","topBar","point","initialZoomLevel","isDown","preventObj","t","isIdle","d","dE","api","tF"],"mappings":"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","x_google_ignoreList":[0]}