{"version":3,"sources":["bower_components/js-cookie/src/js.cookie.js","js/eden-rock.js"],"names":["factory","registeredInModuleLoader","define","amd","exports","module","OldCookies","window","Cookies","api","noConflict","extend","i","result","arguments","length","attributes","key","decode","s","replace","decodeURIComponent","init","converter","set","value","document","path","defaults","expires","Date","toUTCString","JSON","stringify","test","e","write","encodeURIComponent","String","escape","stringifiedAttributes","attributeName","split","cookie","get","json","jar","cookies","parts","slice","join","charAt","name","read","parse","getJSON","remove","withConverter","inlineSVGs","inputValue","selectorString","$","each","$img","this","imgID","attr","imgClass","imgURL","indexOf","data","$svg","find","removeAttr","replaceWith","initCookieMessage","on","removeClass","addClass","initHeader","stickHeader","stuck","pageYOffset","stickAtOffset","$header","stuckClass","headerMenuOpenClass","$navToggle","toggleClass","newSize","initFooter","setTimeout","trigger","animate","scrollTop","offset","top","initNavigation","stopScrolling","preventDefault","recordScrollable","scrollHeight","clientHeight","allowUp","allowDown","lastY","originalEvent","pageY","stopScrollPropagation","up","down","stopPropagation","off","initSubNavigation","Foundation","MediaQuery","is","item","closest","hasClass","initSliders","buildSliders","slick","slickOptions","slider","tabWatcher","onChange","prev","outerHeight","count","total","dots","append","parents","btn","div","parent","showLess","text","initialized","destroySliders","config","pdfMode","prevArrow","nextArrow","printWatcher","isPrint","initDatePickers","easepickButtons","nextMonthButton","prevMonthButton","resetButton","fn","easepick","options","isPending","date","rangeInfo","str","format","settings","pending","some","range","first","last","isUnavailable","unavailable","existing","Object","assign","element","css","lang","culture","zIndex","plugins","locale","nextMonth","previousMonth","AmpPlugin","darkMode","KbdPlugin","unitIndex","dayIndex","html","availabilityCalendar","openButtonText","LockPlugin","minDate","filter","minDays","inseparable","RangePlugin","tooltipNumber","num","one","unit","other","unitPlural","setup","picker","detail","view","target","textContent","substring","classList","add","ep","create","initMaps","leaflet","markers","isMarkerValid","mapSettings","inside","padding","mapBounds","bounds","map","L","maxZoom","zoom","zoomSnap","zoomDelta","center","scrollWheelZoom","maxBoundsViscosity","maxBounds","attributionControl","zoomControl","gestureHandling","gestureHandlingOptions","duration","fitBounds","setMinZoom","getBoundsZoom","defaultZoom","setZoom","setView","control","position","addTo","imageOverlay","markerIcons","default","icon","iconUrl","iconSize","iconAnchor","defaultSelected","branded","airport","beach","gasStation","hike","hospital","pharmacy","restaurant","shopping","viewPoint","watersports","markerCluster","markerClusterGroup","showCoverageOnHover","maxClusterRadius","iconCreateFunction","cluster","divIcon","_childCount","className","point","poiCluster","forEach","marker","lat","lon","type","id","addLayer","popup","autoPanPaddingTopLeft","autoPanPaddingBottomRight","setContent","bindPopup","setIcon","popupHeight","_container","offsetHeight","mapHeight","style","minHeight","popupPixels","project","getLatLng","popupSouthWest","unproject","x","offsetLeft","y","popupNorthEast","offsetTop","popupBounds","LatLngBounds","extendedBounds","setMaxBounds","_adjustPan","invalidateSize","eachLayer","layer","setOpacity","valid","_resize","_validateMarkers","MarkerCluster","getAllChildMarkers","closePopup","Marker","$key","$map","$markers","concat","toArray","selectedKey","val","initPropertyListing","removeEmpty","obj","fromEntries","entries","v","Array","isArray","writeQueryString","datePicker","startDate","getStartDate","endDate","getEndDate","minPrice","maxPrice","categories","Multiselect","getValues","facilities","locations","rooms","fromDate","toDate","searchParams","URLSearchParams","keys","valueItem","searchParamsStr","toString","newUrl","location","origin","pathname","href","history","pushState","readQueryString","search","getAll","prop","setValues","setStartDate","clear","setEndDate","filterProperties","writeQs","selectedMaxPrice","disabled","parseInt","selectedMinPrice","filterName","selectedName","filterMinPrice","filterMaxPrice","filterCategories","selectedCategories","filterFacilities","selectedFacilities","filterLocations","selectedLocations","filterRooms","selectedRooms","filterArrivalDate","selectedArrivalDate","filterDepartureDate","selectedDepartureDate","favourites","localStorage","getItem","villas","villa","price","disabledDates","every","term","toLowerCase","includes","from","dd","start","end","selectedView","villaVisibility","numVisibleVillas","not","$propertyListingMap","c","startsWith","wrapper","offCanvas","height","setUTCHours","addEventListener","event","state","initContactForm","form","arrivalDate","departureDate","toISOString","initFavourites","addOrRemove","exists","splice","push","setItem","updateState","lovedVillasButtonText","lovedVillasButton","favouriteButtons","initHero","videoMobile","videoDesktop","innerWidth","initIntro","initGallery","el","slidesToShow","slidesToScroll","arrows","infinite","autoplayVideos","outerWidth","$slides","slide","currentSlide","video","load","pause","videos","modal","scroll","innerHeight","initRatesTables","debounce","clearTimeout","timer","$tabs","width","draggable","mobileFirst","nextSlide","click","activeTab","index","initVideos","next","iframe","play","initYourStay","arrivalDay","arrivalMonth","departureDay","departureMonth","grid","calendars","inline","monthYearFormatter","Intl","DateTimeFormat","year","month","getDate","hash","scrollTo","foundation","ready","params","configObj","configJson","getElementById","siteConfig","innerText","callbacks","mq","matchMedia","onchange","callback","matches","onload","tab","observer","MutationObserver","mutationList","mutation","contains","observe","attributeFilter","multiselect","checked","querySelectorAll","values","clearSelection","selector","CSS","emitChangeEvent","CustomEvent","bubbles","cancelable","dispatchEvent","selectAll","unchecked","multiselects","selectAllButton","querySelector","clearSelectionButton","ev","open","fieldset","bounding","getBoundingClientRect","bottom","relatedTarget","isOutside"],"mappings":"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","file":"eden-rock.js","sourcesContent":["/*!\n * JavaScript Cookie v2.2.1\n * https://github.com/js-cookie/js-cookie\n *\n * Copyright 2006, 2015 Klaus Hartl & Fagner Brack\n * Released under the MIT license\n */\n;(function (factory) {\n\tvar registeredInModuleLoader;\n\tif (typeof define === 'function' && define.amd) {\n\t\tdefine(factory);\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (typeof exports === 'object') {\n\t\tmodule.exports = factory();\n\t\tregisteredInModuleLoader = true;\n\t}\n\tif (!registeredInModuleLoader) {\n\t\tvar OldCookies = window.Cookies;\n\t\tvar api = window.Cookies = factory();\n\t\tapi.noConflict = function () {\n\t\t\twindow.Cookies = OldCookies;\n\t\t\treturn api;\n\t\t};\n\t}\n}(function () {\n\tfunction extend () {\n\t\tvar i = 0;\n\t\tvar result = {};\n\t\tfor (; i < arguments.length; i++) {\n\t\t\tvar attributes = arguments[ i ];\n\t\t\tfor (var key in attributes) {\n\t\t\t\tresult[key] = attributes[key];\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tfunction decode (s) {\n\t\treturn s.replace(/(%[0-9A-Z]{2})+/g, decodeURIComponent);\n\t}\n\n\tfunction init (converter) {\n\t\tfunction api() {}\n\n\t\tfunction set (key, value, attributes) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tattributes = extend({\n\t\t\t\tpath: '/'\n\t\t\t}, api.defaults, attributes);\n\n\t\t\tif (typeof attributes.expires === 'number') {\n\t\t\t\tattributes.expires = new Date(new Date() * 1 + attributes.expires * 864e+5);\n\t\t\t}\n\n\t\t\t// We're using \"expires\" because \"max-age\" is not supported by IE\n\t\t\tattributes.expires = attributes.expires ? attributes.expires.toUTCString() : '';\n\n\t\t\ttry {\n\t\t\t\tvar result = JSON.stringify(value);\n\t\t\t\tif (/^[\\{\\[]/.test(result)) {\n\t\t\t\t\tvalue = result;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\n\t\t\tvalue = converter.write ?\n\t\t\t\tconverter.write(value, key) :\n\t\t\t\tencodeURIComponent(String(value))\n\t\t\t\t\t.replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent);\n\n\t\t\tkey = encodeURIComponent(String(key))\n\t\t\t\t.replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)\n\t\t\t\t.replace(/[\\(\\)]/g, escape);\n\n\t\t\tvar stringifiedAttributes = '';\n\t\t\tfor (var attributeName in attributes) {\n\t\t\t\tif (!attributes[attributeName]) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tstringifiedAttributes += '; ' + attributeName;\n\t\t\t\tif (attributes[attributeName] === true) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Considers RFC 6265 section 5.2:\n\t\t\t\t// ...\n\t\t\t\t// 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n\t\t\t\t// character:\n\t\t\t\t// Consume the characters of the unparsed-attributes up to,\n\t\t\t\t// not including, the first %x3B (\";\") character.\n\t\t\t\t// ...\n\t\t\t\tstringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n\t\t\t}\n\n\t\t\treturn (document.cookie = key + '=' + value + stringifiedAttributes);\n\t\t}\n\n\t\tfunction get (key, json) {\n\t\t\tif (typeof document === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar jar = {};\n\t\t\t// To prevent the for loop in the first place assign an empty array\n\t\t\t// in case there are no cookies at all.\n\t\t\tvar cookies = document.cookie ? document.cookie.split('; ') : [];\n\t\t\tvar i = 0;\n\n\t\t\tfor (; i < cookies.length; i++) {\n\t\t\t\tvar parts = cookies[i].split('=');\n\t\t\t\tvar cookie = parts.slice(1).join('=');\n\n\t\t\t\tif (!json && cookie.charAt(0) === '\"') {\n\t\t\t\t\tcookie = cookie.slice(1, -1);\n\t\t\t\t}\n\n\t\t\t\ttry {\n\t\t\t\t\tvar name = decode(parts[0]);\n\t\t\t\t\tcookie = (converter.read || converter)(cookie, name) ||\n\t\t\t\t\t\tdecode(cookie);\n\n\t\t\t\t\tif (json) {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tcookie = JSON.parse(cookie);\n\t\t\t\t\t\t} catch (e) {}\n\t\t\t\t\t}\n\n\t\t\t\t\tjar[name] = cookie;\n\n\t\t\t\t\tif (key === name) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {}\n\t\t\t}\n\n\t\t\treturn key ? jar[key] : jar;\n\t\t}\n\n\t\tapi.set = set;\n\t\tapi.get = function (key) {\n\t\t\treturn get(key, false /* read as raw */);\n\t\t};\n\t\tapi.getJSON = function (key) {\n\t\t\treturn get(key, true /* read as json */);\n\t\t};\n\t\tapi.remove = function (key, attributes) {\n\t\t\tset(key, '', extend(attributes, {\n\t\t\t\texpires: -1\n\t\t\t}));\n\t\t};\n\n\t\tapi.defaults = {};\n\n\t\tapi.withConverter = init;\n\n\t\treturn api;\n\t}\n\n\treturn init(function () {});\n}));\n","// prevent scroll\nif (location.hash) {\n window.scrollTo(0, 0);\n setTimeout(function () {\n window.scrollTo(0, 0);\n }, 1);\n}\n\n$(document).foundation();\n\n$(document).ready(function () {\n inlineSVGs(['.header__icons img']);\n initCookieMessage();\n initHeader();\n initFooter();\n initNavigation();\n initSubNavigation();\n initSliders();\n initDatePickers();\n initMaps();\n Multiselect.init();\n initPropertyListing();\n initContactForm();\n initFavourites();\n initHero();\n initIntro();\n initGallery();\n initRatesTables();\n initVideos();\n initYourStay();\n});\n\nvar config = (function () {\n var params = new URLSearchParams(window.location.search);\n\n // default config\n var configObj = {\n culture: 'en-GB',\n availabilityCalendar: {\n unit: 'night',\n unitPlural: 'nights',\n openButtonText: 'Open calendar'\n },\n pdfMode: params.get('pdf') === 'true'\n }\n\n var configJson = document.getElementById('site-config');\n\n if (configJson) {\n var siteConfig = JSON.parse(configJson.innerText);\n Object.assign(configObj, siteConfig);\n\n // specify language cultures if not set\n if (configObj.culture === 'fr') {\n configObj.culture === 'fr-FR'\n }\n if (configObj.culture === 'en') {\n configObj.culture === 'en-GB'\n }\n }\n\n return configObj;\n})();\n\nvar printWatcher = (function () {\n var callbacks = [];\n // check for print media query\n var mq = window.matchMedia('print');\n // execute callbacks on media query change\n // chrome and edge fire this a lot, future callbacks using these methods may need debouncing\n mq.onchange = function () {\n callbacks.forEach(function (callback) {\n callback(mq.matches);\n });\n };\n // execute callbacks on page load\n window.onload = function () {\n callbacks.forEach(function (callback) {\n callback(mq.matches);\n });\n };\n // push registered callbacks into collection\n return {\n onChange: function (callback) {\n callbacks.push(callback);\n }\n };\n})();\n\nvar tabWatcher = (function () {\n return {\n onChange: function (el, callback) {\n // check if element is in a tab.\n var tab = el.closest('.tabs-panel');\n if (tab) {\n // Foundation's tab API is tied to the tab bar, not the tab content, this is a workaround.\n var observer = new MutationObserver(function (mutationList) {\n mutationList.forEach(function (mutation) {\n if (mutation.attributeName === 'class' && mutation.target.classList.contains('is-active')) {\n callback();\n }\n });\n });\n // watch for the tab content class change\n observer.observe(tab, { attributes: true, attributeFilter: ['class'] });\n }\n }\n };\n})();\n\n// https://stackoverflow.com/questions/24933430/img-src-svg-changing-the-fill-color\nfunction inlineSVGs(inputValue) {\n var selectorString = '';\n if (typeof inputValue === 'object') {\n selectorString = inputValue.join(',');\n } else {\n selectorString = inputValue;\n }\n\n $(selectorString).each(function () {\n var $img = $(this);\n var imgID = $img.attr('id');\n var imgClass = $img.attr('class');\n var imgURL = $img.attr('src');\n\n if (imgURL.indexOf('.svg') > -1) {\n $.get(\n imgURL,\n function (data) {\n // Get the SVG tag, ignore the rest\n var $svg = $(data).find('svg');\n\n // Add replaced image's ID to the new SVG\n if (typeof imgID !== 'undefined') {\n $svg = $svg.attr('id', imgID);\n }\n // Add replaced image's classes to the new SVG\n if (typeof imgClass !== 'undefined') {\n $svg = $svg.attr('class', imgClass + ' replaced-svg');\n }\n\n // Remove any invalid XML tags as per http://validator.w3.org\n $svg = $svg.removeAttr('xmlns:a');\n\n // Check if the viewport is set, if the viewport is not set the SVG wont't scale.\n if (!$svg.attr('viewBox') && $svg.attr('height') && $svg.attr('width')) {\n $svg.attr('viewBox', '0 0 ' + $svg.attr('height') + ' ' + $svg.attr('width'));\n }\n\n // Replace image with new SVG\n $img.replaceWith($svg);\n },\n 'xml'\n );\n }\n });\n}\n\nfunction initCookieMessage() {\n // check if cookie message has already been accepted\n if (Cookies.get('cookie-message') === 'accepted') {\n return;\n }\n\n // initialise the cookie message\n $('.cookie')\n .on('click', function () {\n // set cookie to confirm message was accepted\n Cookies.set('cookie-message', 'accepted', { expires: 30 });\n\n // hide message\n $(this).removeClass('cookie--active');\n })\n .addClass('cookie--active');\n}\n\nfunction initHeader() {\n var stickAtOffset = 25;\n var stuck = false;\n var stuckClass = 'header--stuck';\n var headerMenuOpenClass = 'header--menu-open';\n\n var $header = $('header.header');\n var $navToggle = $('#navigation-toggle');\n\n function stickHeader() {\n if (stuck === false && window.pageYOffset > stickAtOffset) {\n stuck = true;\n $header.addClass(stuckClass);\n } else if (stuck === true && window.pageYOffset < stickAtOffset) {\n stuck = false;\n $header.removeClass(stuckClass);\n }\n }\n\n stickHeader();\n\n $(window).on('scroll', function () {\n stickHeader();\n });\n\n $navToggle.on('toggled.zf.responsiveToggle', function () {\n $header.toggleClass(headerMenuOpenClass);\n\n });\n\n $(window).on('changed.zf.mediaquery', function (e, newSize) {\n if (newSize === 'large') {\n $header.removeClass(headerMenuOpenClass);\n }\n });\n}\n\nfunction initFooter() {\n // fix the sticky book now button when the footer \"about\" menu is opened\n $('.footer__links button[data-toggle=\"footer-links\"]').on('click', function () {\n setTimeout(function () {\n $(window).trigger('resize');\n // Scroll to the bottom to reveal the full menu\n $('html, body').animate({ scrollTop: $('#footer-links').offset().top + 120 * 1 }, 500);\n }, 100);\n });\n}\n\nfunction initNavigation() {\n // stop body from scrolling when burger menu or property filters are open (copied from Foundation off-canvas)\n var stopScrolling = function (e) {\n e.preventDefault();\n };\n\n var recordScrollable = function (e) {\n if (this.scrollHeight !== this.clientHeight) {\n if (this.scrollTop === 0) {\n this.scrollTop = 1;\n }\n if (this.scrollTop === this.scrollHeight - this.clientHeight) {\n this.scrollTop = this.scrollHeight - this.clientHeight - 1;\n }\n }\n this.allowUp = this.scrollTop > 0;\n this.allowDown = this.scrollTop < this.scrollHeight - this.clientHeight;\n this.lastY = e.originalEvent.pageY;\n };\n\n var stopScrollPropagation = function (e) {\n var up = e.pageY < this.lastY;\n var down = !up;\n this.lastY = e.pageY;\n\n if ((up && this.allowUp) || (down && this.allowDown)) {\n e.stopPropagation();\n } else {\n e.preventDefault();\n }\n };\n\n $('body')\n .on('on.zf.toggler', function () {\n $(this).on('touchmove', stopScrolling);\n $('#navigation')\n .on('touchstart', recordScrollable)\n .on('touchmove', stopScrollPropagation);\n })\n .on('off.zf.toggler', function () {\n $(this).off('touchmove', stopScrolling);\n $('#navigation')\n .off('touchstart', recordScrollable)\n .off('touchmove', stopScrollPropagation);\n });\n}\n\nfunction initSubNavigation() {\n // toggle sub navigation dropdown on mobile\n if (Foundation.MediaQuery.is('small') || Foundation.MediaQuery.is('medium')) {\n $('.sub-navigation__list .sub-navigation__item').on('click', function (e) {\n var item = $(this);\n\n item.closest('.sub-navigation__list').toggleClass('sub-navigation__list--active');\n\n if (item.hasClass('is-active')) {\n e.preventDefault();\n return false;\n }\n });\n }\n}\n\nfunction initSliders() {\n // turn off entirely for PDF generation, to avoid empty pages at the end\n if (config.pdfMode) {\n return;\n }\n\n var slickOptions = {\n prevArrow: '',\n nextArrow: ''\n };\n\n var initialized = false;\n\n function buildSliders() {\n $('[data-slick]').slick(slickOptions).each(function () {\n var slider = $(this);\n\n // recalculate slider position if shown in a tab\n tabWatcher.onChange(this, function () {\n slider.slick('setPosition');\n });\n });\n\n $('.slider__scroll').on('click', function () {\n // scroll down to main content\n $('html, body').animate(\n {\n scrollTop: $(this)\n .prev('.slider')\n .outerHeight()\n },\n 500\n );\n });\n\n // Manual pagination for this module\n $('.grid-feature-text-image-paged').each(function () {\n var slider = $(this).find('.grid-feature-text-image-paged__slider');\n var count = 0;\n var total = slider.find('.grid-feature-text-image-paged__slide').length;\n\n if (total > 1) {\n slider.find('.grid-feature-text-image-paged__slide').each(function () {\n if (slider.data('dots')) {\n var dots = '