"use strict"; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } (function ($) { var themeSearchToggle = /*#__PURE__*/function () { function themeSearchToggle() { _classCallCheck(this, themeSearchToggle); this.searchToggle(); } _createClass(themeSearchToggle, [{ key: "searchToggle", value: function searchToggle() { var searchToggle = document.getElementById('header__search-toggle'); if (!searchToggle) { return; } var performToggle = function performToggle(element) { var toggle = element; var target = document.querySelector(toggle.dataset.toggleTarget); if (target.classList.contains('show-modal')) { // Hide the modal. target.classList.remove('active'); setTimeout(function () { target.classList.remove('show-modal'); toggle.focus(); }, 250); } else { // Show the modal. target.classList.add('show-modal'); setTimeout(function () { target.classList.add('active'); if (toggle.dataset.setFocus) { var focusElement = document.querySelector(toggle.dataset.setFocus); if (focusElement) { var searchTerm = focusElement.value; focusElement.value = ''; focusElement.focus(); focusElement.value = searchTerm; } } }, 10); } }; document.querySelectorAll('*[data-toggle-target]').forEach(function (element) { element.addEventListener('click', function (event) { event.preventDefault(); performToggle(element); }); }); // Close modal on escape key press. document.addEventListener('keyup', function (event) { if (event.keyCode === 27) { event.preventDefault(); document.querySelectorAll('.search-modal.active').forEach(function (element) { performToggle(); }); } }); // Close modal on outside click. document.addEventListener('click', function (event) { var target = event.target; var modal = document.querySelector('.search-modal.active'); if (target === modal) { performToggle(document.querySelector('*[data-toggle-target="' + modal.dataset.modalTargetString + '"]')); } }); document.addEventListener('keydown', function (event) { var e = event || evt; // for cross-browser compatibility var charCode = e.which || e.keyCode; if (charCode !== 9 || !jQuery('div.search-modal').hasClass('active')) { return; } var $element = jQuery(':focus'), isShiftTab = event.shiftKey && event.keyCode == 9; if ($element.hasClass('search-form__input') && isShiftTab) { setTimeout(function () { jQuery('.search-input__button').focus(); }, 10); } if ($element.hasClass('search-input__button') && !isShiftTab) { setTimeout(function () { jQuery('input.search-form__input').focus(); }, 10); } }); } }]); return themeSearchToggle; }(); new themeSearchToggle(); var themeActivatelife = /*#__PURE__*/function () { function themeActivatelife() { _classCallCheck(this, themeActivatelife); this.handheldMenu(); this.primaryMenu(); } _createClass(themeActivatelife, [{ key: "primaryMenu", value: function primaryMenu() { // Wait for DOM to be ready. var container = document.getElementById('site-navigation'); if (!container) { return; } var menu = container.querySelector('ul'); // Hide menu toggle button if menu is empty and return early. if (!menu) { button.style.display = 'none'; return; } menu.classList.add('nav-menu'); } }, { key: "handheldMenu", value: function handheldMenu() { this.themeToggle('handheld'); var handheldNavigation = $('.handheld-navigation'); if (handheldNavigation.length > 0) { handheldNavigation.find('.menu-item-has-children > a, .page_item_has_children > a').each(function (index, element) { var dropdown = $(''); dropdown.insertAfter(element); dropdown.on('click', function (e) { e.preventDefault(); dropdown.toggleClass('toggled-on'); dropdown.siblings('ul').stop().slideToggle(400); }); }); } } }, { key: "themeToggle", value: function themeToggle($nameToggle) { var toggleObject = document.getElementById($nameToggle + '-toggle'); var toggleOverlay = document.getElementById($nameToggle + '-overlay'); var toggleClose = document.getElementById($nameToggle + '-close'); var toggleWrap = document.getElementById($nameToggle + '-wrap'); if (null === toggleObject || null === toggleOverlay || null === toggleClose) { return; } document.body.classList.add('has-' + $nameToggle + '-toggle'); toggleObject.addEventListener('click', function (event) { event.preventDefault(); handheldNavigationVisibility(); }); toggleOverlay.addEventListener('click', function (event) { handheldNavigationVisibility(); }); toggleClose.addEventListener('click', function (event) { handheldNavigationVisibility(); }); var handheldNavigationVisibility = function handheldNavigationVisibility(event) { toggleWrap.classList.toggle('active'); toggleOverlay.classList.toggle('active'); document.body.classList.toggle($nameToggle + '-toggle-active'); jquery('html').toggleClass('overflow-hidden'); }; } }]); return themeActivatelife; }(); new themeActivatelife(); var Woocommerce = function Woocommerce() { _classCallCheck(this, Woocommerce); }; new Woocommerce(); var themeCartToggle = /*#__PURE__*/function () { function themeCartToggle() { _classCallCheck(this, themeCartToggle); this.wooMenuCart(); } _createClass(themeCartToggle, [{ key: "wooMenuCart", value: function wooMenuCart() { var menuObject = document.getElementById('header__cart-toggle'); var siteOverlay = document.getElementById('site-overlay'); var sideNav = document.getElementById('site-nav--cart'); var sideNavClose = document.getElementById('site-close-handle'); if (null === menuObject || null === siteOverlay || null === sideNavClose) { return; } document.body.classList.add('has-woo-cart-slideout'); menuObject.addEventListener('click', function (event) { event.preventDefault(); toggleSideNavVisibility(); }); siteOverlay.addEventListener('click', function (event) { toggleSideNavVisibility(); }); sideNavClose.addEventListener('click', function (event) { toggleSideNavVisibility(); }); var toggleSideNavVisibility = function toggleSideNavVisibility(event) { sideNav.classList.toggle('active'); siteOverlay.classList.toggle('active'); document.body.classList.toggle('sidebar-move'); }; } }]); return themeCartToggle; }(); jQuery(document).ready(function ($) { new themeCartToggle(); }); })(jQuery); //# sourceMappingURL=theme.js.map