{"version":3,"sources":["webpack:///./src/js/modules/legacy/lodgingSearch.js","webpack:///./src/js/components/dropdown.js","webpack:///./node_modules/swiper/esm/components/navigation/navigation.js"],"names":["Swiper","use","Navigation","Module","this","dom","form","el","querySelector","inputs","querySelectorAll","pageInput","locationsDropdown","stylesDropdown","unitTypesDropdown","amenitiesDropdown","sortDropdown","resetBtn","resultImages","pagination","currentPage","parseInt","dataset","page","totalPages","Dropdown","sort","on","submit","some","input","value","style","display","forEach","carousel","initCarousel","buildPagination","addEventListener","handleReset","bind","parentNode","classList","add","e","target","remove","navigation","nextEl","prevEl","window","location","href","addPrevPage","addPages","addNextPage","paginationPrev","document","createElement","setAttribute","innerHTML","handlePaginate","paginationPrevContainer","appendChild","paginationNext","paginationNextContainer","Array","keys","pageNum","min","max","dotsEl","addPage","pageEl","pageElContainer","Component","options","search","searchTimeout","buildDropdown","handleClickOutside","handleOptionSelect","trigger","handleTriggerClick","handleTriggerKeydown","hideDropdownList","list","childNodes","item","selectItem","event","callback","Event","createEvent","initEvent","dispatchEvent","wrapper","contains","getPlaceholder","option","isDevice","getAttribute","showDropdownList","key","which","keyCode","activeItem","preventDefault","stopPropagation","nextElement","previousElementSibling","focusItem","focusLast","nextElementSibling","focusFirst","findItemToFocus","character","String","fromCharCode","trim","items","clearTimeout","find","textContent","innerText","toLowerCase","startsWith","setTimeout","element","removeAttribute","defocusItem","scrollHeight","clientHeight","scrollBottom","scrollTop","elementBottom","offsetTop","offsetHeight","firstItem","length","open","duration","close","placeholder","selectedOptionLabel","listId","uuidv4","insertBefore","label","id","map","text","join","nextSibling","parent","removeChild","destroy","setupDefaults","addListeners","_extends","Object","assign","i","arguments","source","prototype","hasOwnProperty","call","apply","toggleEl","$el","disabled","params","disabledClass","tagName","update","loop","_swiper$navigation","$nextEl","$prevEl","isBeginning","watchOverflow","enabled","isLocked","lockClass","isEnd","onPrevClick","slidePrev","onNextClick","slideNext","init","createElements","uniqueNavElements","addClass","_swiper$navigation2","off","removeClass","name","hideOnClick","hiddenClass","create","swiper","toEdge","fromEdge","_swiper$navigation3","click","_swiper$navigation4","targetEl","is","clickable","isHidden","hasClass","emit","toggleClass"],"mappings":"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","file":"33.8fb9f57c61449c8b3c27.js","sourcesContent":["import { Component } from '@verndale/core';\nimport Swiper, { Navigation } from 'swiper';\n\nSwiper.use([Navigation]);\n\nimport Dropdown from '../../components/dropdown';\n\nclass Module extends Component {\n setupDefaults() {\n this.dom = {\n form: this.el.querySelector('form'),\n inputs: this.el.querySelectorAll(\n '.lodging-search__filter--textbox input[type=text]'\n ),\n pageInput: this.el.querySelector('#pageNumber'),\n locationsDropdown: this.el.querySelector('#location'),\n stylesDropdown: this.el.querySelector('#style'),\n unitTypesDropdown: this.el.querySelector('#unitType'),\n amenitiesDropdown: this.el.querySelector('#amenities'),\n sortDropdown: this.el.querySelector('#sortBy'),\n resetBtn: this.el.querySelector('.lodging-search__filters-reset'),\n resultImages: this.el.querySelectorAll('.lodging-search__item-images'),\n pagination: this.el.querySelector('.pagination ul')\n };\n\n this.currentPage = parseInt(this.el.dataset.page);\n this.totalPages = parseInt(this.el.dataset.totalPages);\n\n this.dom.locationsDropdown && new Dropdown(this.dom.locationsDropdown);\n this.dom.stylesDropdown && new Dropdown(this.dom.stylesDropdown);\n this.dom.unitTypesDropdown && new Dropdown(this.dom.unitTypesDropdown);\n this.dom.amenitiesDropdown && new Dropdown(this.dom.amenitiesDropdown);\n\n if (this.dom.sortDropdown) {\n this.dom.sort = new Dropdown(this.dom.sortDropdown);\n this.dom.sort.on('option', () => {\n this.dom.form.submit();\n });\n }\n\n if (\n [...this.dom.inputs].some(input => input.value) ||\n this.dom.locationsDropdown?.value ||\n this.dom.stylesDropdown?.value ||\n this.dom.unitTypesDropdown?.value ||\n this.dom.amenitiesDropdown?.value\n ) {\n this.dom.resetBtn.style.display = 'block';\n }\n\n this.dom.resultImages.forEach(carousel => this.initCarousel(carousel));\n\n if (this.dom.pagination) {\n this.buildPagination();\n }\n }\n\n addListeners() {\n this.dom.resetBtn.addEventListener('click', this.handleReset.bind(this));\n\n this.dom.inputs.forEach(input => {\n if (input.value) {\n input.parentNode.classList.add('active');\n }\n\n input.addEventListener('focus', e => {\n e.target.parentNode.classList.add('active');\n });\n\n input.addEventListener('blur', e => {\n if (!e.target.value) {\n e.target.parentNode.classList.remove('active');\n }\n });\n });\n }\n\n initCarousel(el) {\n new Swiper(el, {\n navigation: {\n nextEl: el.querySelector('.swiper-button-next'),\n prevEl: el.querySelector('.swiper-button-prev')\n }\n });\n }\n\n handleReset() {\n window.location.href = window.location.href;\n }\n\n handlePaginate(page) {\n this.dom.pageInput.value = page;\n this.dom.form.submit();\n }\n\n buildPagination() {\n if (this.currentPage > 1) {\n this.addPrevPage();\n }\n this.addPages();\n if (this.currentPage < this.totalPages) {\n this.addNextPage();\n }\n }\n\n addPrevPage() {\n const paginationPrev = document.createElement('button');\n paginationPrev.classList.add('pagination__arrow__btn');\n paginationPrev.setAttribute('role', 'button');\n paginationPrev.setAttribute('aria-label', 'Go to Previous Page');\n paginationPrev.innerHTML = '<svg><title>previous</title><use xlink:href=\"#chevron-right\" /></svg>';\n paginationPrev.addEventListener('click', () =>\n this.handlePaginate(this.currentPage - 1)\n );\n\n const paginationPrevContainer = document.createElement('li');\n paginationPrevContainer.classList.add('pagination__arrow');\n paginationPrevContainer.classList.add('left');\n paginationPrevContainer.appendChild(paginationPrev);\n\n this.dom.pagination.appendChild(paginationPrevContainer);\n }\n\n addNextPage() {\n const paginationNext = document.createElement('button');\n paginationNext.classList.add('pagination__arrow__btn');\n paginationNext.setAttribute('role', 'button');\n paginationNext.setAttribute('aria-label', 'Go to Next Page');\n paginationNext.innerHTML = '<svg><title>next</title><use xlink:href=\"#chevron-right\" /></svg>';\n paginationNext.addEventListener('click', () =>\n this.handlePaginate(this.currentPage + 1)\n );\n\n const paginationNextContainer = document.createElement('li');\n paginationNextContainer.classList.add('pagination__arrow');\n paginationNextContainer.classList.add('right');\n paginationNextContainer.appendChild(paginationNext);\n\n this.dom.pagination.appendChild(paginationNextContainer);\n }\n\n addPages() {\n const keys = [...Array(this.totalPages).keys()];\n\n keys.forEach(page => {\n const pageNum = page + 1;\n const padding = 2;\n const maxValue = 5;\n const min =\n this.currentPage - padding < this.totalPages - 4\n ? this.currentPage - padding\n : this.totalPages - 4;\n const max =\n this.currentPage + padding > 5 ? this.currentPage + padding : maxValue;\n\n if (pageNum === this.currentPage - padding && pageNum > 1) {\n const dotsEl = document.createElement('li');\n dotsEl.innerHTML = '...';\n this.dom.pagination.appendChild(dotsEl);\n }\n\n if (pageNum === 1 || pageNum === this.totalPages) {\n this.addPage(pageNum);\n } else if (pageNum > min && pageNum < max) {\n this.addPage(pageNum);\n }\n\n if (pageNum === max && pageNum < this.totalPages) {\n const dotsEl = document.createElement('li');\n dotsEl.innerHTML = '...';\n this.dom.pagination.appendChild(dotsEl);\n }\n });\n }\n\n addPage(pageNum) {\n const pageEl = document.createElement('button');\n pageEl.innerHTML = pageNum;\n pageEl.classList.add('pagination__item-btn');\n pageEl.setAttribute('role', 'button');\n pageEl.setAttribute('aria-label', `Goto Page ${pageNum}`);\n pageEl.setAttribute('aria-current', this.currentPage === pageNum);\n pageEl.addEventListener('click', () => this.handlePaginate(pageNum));\n\n const pageElContainer = document.createElement('li');\n pageElContainer.classList.add('pagination__item');\n pageElContainer.appendChild(pageEl);\n\n this.dom.pagination.appendChild(pageElContainer);\n }\n}\n\nexport default Module;\n","import { Component } from '@verndale/core';\nimport { isDevice, open, close } from '../helpers';\nimport { v4 as uuidv4 } from 'uuid';\n\nclass Module extends Component {\n setupDefaults() {\n this.options = [...this.el];\n this.style = this.el.dataset.style;\n this.search = '';\n this.searchTimeout = null;\n\n this.buildDropdown();\n }\n\n addListeners() {\n document.addEventListener('click', this.handleClickOutside.bind(this));\n this.el.addEventListener('change', this.handleOptionSelect.bind(this));\n this.dom.trigger.addEventListener(\n 'click',\n this.handleTriggerClick.bind(this)\n );\n this.dom.trigger.addEventListener(\n 'keydown',\n this.handleTriggerKeydown.bind(this)\n );\n this.dom.trigger.parentNode.addEventListener(\n 'blur',\n this.hideDropdownList.bind(this)\n );\n this.dom.list.childNodes.forEach(item => {\n item.addEventListener('click', () => this.selectItem(item));\n });\n }\n\n on(event, callback) {\n this.el.addEventListener(event, callback);\n }\n\n setValue(value) {\n let event;\n\n if (typeof Event === 'function') {\n event = new Event('change');\n } else {\n event = document.createEvent('Event');\n event.initEvent('change', true, true);\n }\n\n this.el.value = value;\n this.el.dispatchEvent(event);\n }\n\n getValue() {\n return this.el.value;\n }\n\n handleClickOutside(e) {\n if (this.dom.wrapper !== e.target && !this.dom.wrapper.contains(e.target)) {\n this.hideDropdownList();\n }\n }\n\n handleOptionSelect() {\n let event;\n\n if (typeof Event === 'function') {\n event = new Event('option');\n } else {\n event = document.createEvent('Event');\n event.initEvent('option', true, true);\n }\n\n this.dom.trigger.innerHTML = this.getPlaceholder(this.el.value);\n\n this.options.forEach(option => {\n if (option.value === this.el.value) {\n option.setAttribute('aria-selected', true);\n } else {\n option.setAttribute('aria-selected', false);\n }\n });\n\n this.dom.list.childNodes.forEach(item => {\n if (item.dataset.value === this.el.value) {\n item.setAttribute('aria-selected', true);\n } else {\n item.setAttribute('aria-selected', false);\n }\n });\n\n this.el.dispatchEvent(event);\n }\n\n handleTriggerClick() {\n if (isDevice()) {\n return;\n }\n\n if (!this.dom.trigger.getAttribute('aria-expanded')) {\n this.showDropdownList();\n } else {\n this.hideDropdownList();\n }\n }\n\n handleTriggerKeydown(e) {\n if (isDevice()) return;\n\n const key = e.which || e.keyCode;\n\n switch (key) {\n case 13: // ENTER\n if (this.dom.trigger.getAttribute('aria-expanded')) {\n if (this.activeItem) {\n e.preventDefault();\n e.stopPropagation();\n this.selectItem(this.activeItem);\n }\n }\n break;\n case 38: // UP\n e.preventDefault();\n if (this.dom.trigger.getAttribute('aria-expanded') !== 'true') {\n this.showDropdownList();\n }\n\n if (this.activeItem) {\n const nextElement = this.activeItem.previousElementSibling;\n\n if (nextElement) {\n this.focusItem(nextElement);\n } else {\n this.focusLast();\n }\n } else {\n this.focusLast();\n }\n\n break;\n case 40: // DOWN\n e.preventDefault();\n if (this.dom.trigger.getAttribute('aria-expanded') !== 'true') {\n this.showDropdownList();\n }\n\n if (this.activeItem) {\n const nextElement = this.activeItem.nextElementSibling;\n\n if (nextElement) {\n this.focusItem(nextElement);\n } else {\n this.focusFirst();\n }\n } else {\n this.focusFirst();\n }\n\n break;\n case 36:\n e.preventDefault();\n this.focusFirst();\n break;\n case 35:\n e.preventDefault();\n this.focusLast();\n break;\n default:\n this.findItemToFocus(key);\n break;\n }\n }\n\n findItemToFocus(key) {\n const character = String.fromCharCode(key).trim();\n const items = this.dom.list.querySelectorAll('[role=\"option\"]');\n\n if (!character) return;\n\n if (!this.dom.trigger.getAttribute('aria-expanded')) {\n this.showDropdownList();\n }\n\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n\n this.search += character;\n\n [...items].find(option => {\n const label = option.textContent || option.innerText || '';\n\n if (label.trim().toLowerCase().startsWith(this.search.toLowerCase())) {\n this.focusItem(option);\n return true;\n }\n });\n\n this.searchTimeout = setTimeout(() => {\n this.search = '';\n }, 500);\n }\n\n selectItem(item) {\n this.el.value = item.dataset.value;\n this.handleOptionSelect();\n this.hideDropdownList();\n }\n\n defocusItem(element) {\n if (!element) return;\n element.removeAttribute('aria-selected');\n }\n\n focusItem(element) {\n this.defocusItem(this.activeItem);\n element.setAttribute('aria-selected', 'true');\n this.activeItem = element;\n\n if (this.dom.list.scrollHeight > this.dom.list.clientHeight) {\n const scrollBottom = this.dom.list.clientHeight + this.dom.list.scrollTop;\n const elementBottom = element.offsetTop + element.offsetHeight;\n if (elementBottom > scrollBottom) {\n this.dom.list.scrollTop = elementBottom - this.dom.list.clientHeight;\n } else if (element.offsetTop < this.dom.list.scrollTop) {\n this.dom.list.scrollTop = element.offsetTop;\n }\n }\n }\n\n focusFirst() {\n const firstItem = this.dom.list.querySelector('[role=\"option\"]');\n if (firstItem) {\n this.focusItem(firstItem);\n }\n }\n\n focusLast() {\n const items = this.dom.list.querySelectorAll('[role=\"option\"]');\n\n if (items.length) {\n this.focusItem(items[items.length - 1]);\n }\n }\n\n showDropdownList() {\n this.dom.trigger.setAttribute('aria-expanded', true);\n this.dom.wrapper.classList.add('open');\n open({ element: this.dom.list, duration: 0.6 });\n }\n\n hideDropdownList() {\n close({\n element: this.dom.list,\n duration: 0.6\n });\n this.dom.trigger.removeAttribute('aria-expanded');\n this.dom.wrapper.classList.remove('open');\n this.defocusItem(this.activeItem);\n this.activeItem = null;\n }\n\n getPlaceholder(value) {\n const placeholder = this.el.getAttribute('placeholder');\n const selectedOptionLabel = this.options.find(\n option => option.value === value\n ).innerHTML;\n\n if (placeholder) {\n return `${\n selectedOptionLabel\n ? `<span>${placeholder}:</span>`\n : `<span>${placeholder}</span>`\n } ${selectedOptionLabel}<svg><use xlink:href=\"#chevron-right\" /></svg>`;\n }\n\n return `${selectedOptionLabel}<svg><use xlink:href=\"#chevron-right\" /></svg>`;\n }\n\n buildDropdown() {\n const listId = uuidv4();\n this.dom.wrapper = document.createElement('div');\n this.el.setAttribute('aria-hidden', true);\n this.el.setAttribute('tabindex', '-1');\n this.el.parentNode.insertBefore(this.dom.wrapper, this.el);\n this.dom.wrapper.classList.add('dropdown');\n\n if (this.style) {\n this.dom.wrapper.classList.add(`dropdown--${this.style}`);\n }\n\n if (isDevice()) {\n this.dom.wrapper.classList.add('dropdown--native');\n }\n this.dom.wrapper.appendChild(this.el);\n\n this.dom.trigger = document.createElement('button');\n this.dom.trigger.classList.add('dropdown__trigger');\n this.dom.trigger.setAttribute('type', 'button');\n this.dom.trigger.setAttribute('role', 'combobox');\n this.dom.trigger.setAttribute('aria-haspopup', 'listbox');\n this.dom.trigger.setAttribute('aria-controls', `${listId}`);\n\n // Get label\n const label = document.querySelector(`label[for=\"${this.el.id}\"]`);\n\n if (label) {\n this.dom.trigger.setAttribute('aria-label', label.textContent);\n }\n\n this.dom.trigger.innerHTML = this.getPlaceholder(this.el.value);\n\n this.dom.wrapper.appendChild(this.dom.trigger);\n\n this.dom.list = document.createElement('ul');\n this.dom.list.id = listId;\n this.dom.list.classList.add('dropdown__list');\n this.dom.list.setAttribute('role', 'listbox');\n this.dom.list.setAttribute(\n 'aria-label',\n this.el.getAttribute('aria-label')\n );\n this.dom.list.innerHTML = this.options\n .map(\n option =>\n `<li class=\"dropdown__list__option\" role=\"option\" data-value=\"${\n option.value\n }\" aria-selected=\"${option.value === this.el.value}\">${option.text}\n <span clasS=\"dropdown__list__option-decorator\">\n <span></span>\n </span>\n </li>`\n )\n .join('');\n this.el.parentNode.insertBefore(this.dom.list, this.el.nextSibling);\n this.dom.wrapper.appendChild(this.dom.list);\n }\n\n destroy() {\n const parent = this.el.parentNode;\n parent.removeChild(this.el);\n parent.parentNode.insertBefore(this.el, parent);\n parent.parentNode.removeChild(parent);\n }\n\n update() {\n this.destroy();\n this.setupDefaults();\n this.addListeners();\n }\n}\n\nexport default Module;\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport $ from '../../utils/dom';\nimport { extend, bindModuleMethods, createElementIfNotDefined } from '../../utils/utils';\nvar Navigation = {\n toggleEl: function toggleEl($el, disabled) {\n $el[disabled ? 'addClass' : 'removeClass'](this.params.navigation.disabledClass);\n if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled;\n },\n update: function update() {\n // Update Navigation Buttons\n var swiper = this;\n var params = swiper.params.navigation;\n var toggleEl = swiper.navigation.toggleEl;\n if (swiper.params.loop) return;\n var _swiper$navigation = swiper.navigation,\n $nextEl = _swiper$navigation.$nextEl,\n $prevEl = _swiper$navigation.$prevEl;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n toggleEl($prevEl, true);\n } else {\n toggleEl($prevEl, false);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $prevEl[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n toggleEl($nextEl, true);\n } else {\n toggleEl($nextEl, false);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $nextEl[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n },\n onPrevClick: function onPrevClick(e) {\n var swiper = this;\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop) return;\n swiper.slidePrev();\n },\n onNextClick: function onNextClick(e) {\n var swiper = this;\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop) return;\n swiper.slideNext();\n },\n init: function init() {\n var swiper = this;\n var params = swiper.params.navigation;\n swiper.params.navigation = createElementIfNotDefined(swiper.$el, swiper.params.navigation, swiper.params.createElements, {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev'\n });\n if (!(params.nextEl || params.prevEl)) return;\n var $nextEl;\n var $prevEl;\n\n if (params.nextEl) {\n $nextEl = $(params.nextEl);\n\n if (swiper.params.uniqueNavElements && typeof params.nextEl === 'string' && $nextEl.length > 1 && swiper.$el.find(params.nextEl).length === 1) {\n $nextEl = swiper.$el.find(params.nextEl);\n }\n }\n\n if (params.prevEl) {\n $prevEl = $(params.prevEl);\n\n if (swiper.params.uniqueNavElements && typeof params.prevEl === 'string' && $prevEl.length > 1 && swiper.$el.find(params.prevEl).length === 1) {\n $prevEl = swiper.$el.find(params.prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', swiper.navigation.onNextClick);\n }\n\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', swiper.navigation.onPrevClick);\n }\n\n extend(swiper.navigation, {\n $nextEl: $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl: $prevEl,\n prevEl: $prevEl && $prevEl[0]\n });\n\n if (!swiper.enabled) {\n if ($nextEl) $nextEl.addClass(params.lockClass);\n if ($prevEl) $prevEl.addClass(params.lockClass);\n }\n },\n destroy: function destroy() {\n var swiper = this;\n var _swiper$navigation2 = swiper.navigation,\n $nextEl = _swiper$navigation2.$nextEl,\n $prevEl = _swiper$navigation2.$prevEl;\n\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', swiper.navigation.onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', swiper.navigation.onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n }\n};\nexport default {\n name: 'navigation',\n params: {\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock'\n }\n },\n create: function create() {\n var swiper = this;\n bindModuleMethods(swiper, {\n navigation: _extends({}, Navigation)\n });\n },\n on: {\n init: function init(swiper) {\n swiper.navigation.init();\n swiper.navigation.update();\n },\n toEdge: function toEdge(swiper) {\n swiper.navigation.update();\n },\n fromEdge: function fromEdge(swiper) {\n swiper.navigation.update();\n },\n destroy: function destroy(swiper) {\n swiper.navigation.destroy();\n },\n 'enable disable': function enableDisable(swiper) {\n var _swiper$navigation3 = swiper.navigation,\n $nextEl = _swiper$navigation3.$nextEl,\n $prevEl = _swiper$navigation3.$prevEl;\n\n if ($nextEl) {\n $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n\n if ($prevEl) {\n $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n },\n click: function click(swiper, e) {\n var _swiper$navigation4 = swiper.navigation,\n $nextEl = _swiper$navigation4.$nextEl,\n $prevEl = _swiper$navigation4.$prevEl;\n var targetEl = e.target;\n\n if (swiper.params.navigation.hideOnClick && !$(targetEl).is($prevEl) && !$(targetEl).is($nextEl)) {\n if (swiper.pagination && swiper.params.pagination && swiper.params.pagination.clickable && (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))) return;\n var isHidden;\n\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n\n if (isHidden === true) {\n swiper.emit('navigationShow');\n } else {\n swiper.emit('navigationHide');\n }\n\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n }\n }\n};"],"sourceRoot":""}