{"version":3,"file":"lacanau-lodge-child.min.js","sources":["lacanau-lodge-child.min.js"],"sourcesContent":["(function (factory) {\n    typeof define === 'function' && define.amd ? define(factory) :\n    factory();\n}((function () { 'use strict';\n\n    var Cookies = function Cookies() {\n        this.allowed = this.getCookie('cookies_allowed');\n\n        this.$cookiesPanel = document.querySelector('#cookies-panel');\n        if (this.$cookiesPanel) {\n            this.$cookiesPanelInner = this.$cookiesPanel.querySelector('.cookies-panel-inner');\n            this.$declineBtn = this.$cookiesPanel.querySelector('.cookies-panel-btn--decline');\n            this.$allowBtn = this.$cookiesPanel.querySelector('.cookies-panel-btn--allow');\n            this.$minimiseBtn = this.$cookiesPanel.querySelector('.cookies-panel-min-btn');\n            this.$maximiseBtn = this.$cookiesPanel.querySelector('.cookies-panel-max-btn');\n        }\n\n        this.$deleteCookiesBtns = document.querySelectorAll('.js-delete-cookies');\n\n        this.initEvents();\n\n        if (this.allowed === 'yes') {\n            this.allowCookies();\n        }\n    };\n\n    Cookies.prototype.initEvents = function initEvents () {\n        var that = this;\n\n        if (this.$cookiesPanel) {\n            if (this.$allowBtn) {\n                this.$allowBtn.addEventListener('click', function (e) {\n                    e.preventDefault();\n\n                    that.hideCookiesPanel();\n                    that.setCookie('cookies_allowed', 'yes');\n                    window.dispatchEvent(new Event('cookies_allowed'));\n                });\n            }\n\n            if (this.$declineBtn) {\n                this.$declineBtn.addEventListener('click', function (e) {\n                    e.preventDefault();\n\n                    that.hideCookiesPanel();\n                    that.setCookie('cookies_allowed', 'no');\n                    window.dispatchEvent(new Event('cookies_declined'));\n                });\n            }\n\n            if (this.$minimiseBtn) {\n                this.$minimiseBtn.addEventListener('click', function (e) {\n                    e.preventDefault();\n                    that.minifyCookiesPanel();\n                });\n            }\n\n            if (this.$maximiseBtn) {\n                this.$maximiseBtn.addEventListener('click', function (e) {\n                    e.preventDefault();\n                    that.maximizeCookiesPanel();\n                });\n            }\n\n            window.addEventListener('cookies_allowed', function () {\n                that.allowCookies();\n            });\n        }\n\n        if (this.$deleteCookiesBtns) {\n            this.$deleteCookiesBtns.forEach(function ($deleteCookiesBtn) {\n                $deleteCookiesBtn.addEventListener('click', function (e) {\n                    e.preventDefault();\n\n                    that.deleteCookie('cookies_allowed');\n                    window.location = window.location;\n                });\n            });\n        }\n    };\n\n    Cookies.prototype.getCookie = function getCookie (cookieName) {\n        var re = new RegExp('[; ]' + cookieName + '=([^\\\\s;]*)');\n        var sMatch = (' ' + document.cookie).match(re);\n\n        if (cookieName && sMatch) {\n            return unescape(sMatch[1]);\n        }\n\n        return '';\n    };\n\n    Cookies.prototype.setCookie = function setCookie (cookieName, cookieValue) {\n        var name = cookieName;\n        var value = cookieValue;\n        var d = new Date();\n        d.setTime(d.getTime() + (1 * 24 * 60 * 60 * 1000));\n        var expires = 'expires=' + d.toUTCString();\n        document.cookie = name + '=' + value + ';' + expires + ';path=/';\n    };\n\n    Cookies.prototype.deleteCookie = function deleteCookie (cookieName) {\n        var name = cookieName;\n        var d = new Date();\n        d.setTime(d.getTime() - 10);\n        var expires = 'expires=' + d.toUTCString();\n        document.cookie = name + '=;' + expires + ';path=/';\n    };\n\n    Cookies.prototype.hideCookiesPanel = function hideCookiesPanel () {\n        var that = this;\n\n        this.$cookiesPanel.classList.add('hide');\n        this.$cookiesPanel.addEventListener('transitionend', function () {\n            that.$cookiesPanel.remove();\n        });\n    };\n\n    Cookies.prototype.minifyCookiesPanel = function minifyCookiesPanel () {\n        var that = this;\n\n        this.$cookiesPanelInner.style.height = this.$cookiesPanelInner.clientHeight + 'px';\n        this.$cookiesPanelInner.style.width = this.$cookiesPanelInner.clientWidth + 'px';\n\n        setTimeout(function () {\n            that.$cookiesPanel.classList.add('minify');\n        }, 10);\n    };\n\n    Cookies.prototype.maximizeCookiesPanel = function maximizeCookiesPanel () {\n        var that = this;\n\n        this.$cookiesPanel.classList.remove('minify');\n\n        var onTransitionEnd = function () {\n            that.$cookiesPanelInner.style.height = '';\n            that.$cookiesPanelInner.style.width = '';\n\n            that.$cookiesPanel.removeEventListener('transitionend', onTransitionEnd);\n        };\n\n        this.$cookiesPanel.addEventListener('transitionend', onTransitionEnd);\n    };\n\n    Cookies.prototype.allowCookies = function allowCookies () {\n        this.initAnalytics();\n    };\n\n    Cookies.prototype.initAnalytics = function initAnalytics () {\n        if (typeof ga_id !== 'undefined') {\n            window.dataLayer = window.dataLayer || [];\n            this.gtag('js', new Date());\n            this.gtag('config', ga_id);\n        }\n    };\n\n    Cookies.prototype.gtag = function gtag () {\n        dataLayer.push(arguments);\n    };\n\n    (function ($) {\n        new Cookies();\n    })(jQuery);\n\n})));\n//# sourceMappingURL=lacanau-lodge-child.min.js.map\n"],"names":["factory","define","amd","Cookies","this","allowed","getCookie","$cookiesPanel","document","querySelector","$cookiesPanelInner","$declineBtn","$allowBtn","$minimiseBtn","$maximiseBtn","$deleteCookiesBtns","querySelectorAll","initEvents","allowCookies","prototype","that","addEventListener","e","preventDefault","hideCookiesPanel","setCookie","window","dispatchEvent","Event","minifyCookiesPanel","maximizeCookiesPanel","forEach","$deleteCookiesBtn","deleteCookie","location","cookieName","re","RegExp","sMatch","cookie","match","unescape","cookieValue","d","Date","expires","setTime","getTime","toUTCString","name","value","classList","add","remove","style","height","clientHeight","width","clientWidth","setTimeout","onTransitionEnd","removeEventListener","initAnalytics","ga_id","dataLayer","gtag","push","arguments","jQuery"],"mappings":"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"}