{"version":3,"file":"app.js","sources":["app.js"],"sourcesContent":["// eslint-disable-next-line func-names\n(function ($, Drupal) {\n var App = (function () {\n // Base UI Actions\n const bindUiActions = () => {\n // Init responsive view\n if ($(window).outerWidth() < 1024) {\n responsive();\n } else {\n setAdminTopOffsets();\n }\n\n // Remove preload class\n $('body').removeClass('preload');\n\n // On scroll shrink header\n $(window).scroll(function () {\n const $header = $('.header');\n if ($(window).scrollTop() > 50) {\n $header.addClass('header--narrow');\n } else {\n $header.removeClass('header--narrow');\n }\n });\n\n // Document listeners\n $(document).click(function (event) {\n const $target = $(event.target);\n if ($('.header .u-submenu-open').length > 0 && !$target.closest('.u-submenu-open').length) {\n $('.u-submenu-open .menu-level-1').removeAttr('style');\n $('.u-submenu-open').removeClass('u-submenu-open');\n }\n });\n\n $(document).keyup(function (e) {\n if (e.which === 27) closeMenu();\n });\n\n let isMobileView = $(window).outerWidth() < 1024;\n\n const windowResize = debounce(() => {\n if (isMobileView && $(window).outerWidth() >= 1024) {\n responsive();\n isMobileView = false;\n }\n\n if (!isMobileView && $(window).outerWidth() < 1024) {\n responsive();\n isMobileView = true;\n }\n }, 100);\n\n $(window).on('resize', windowResize);\n\n $('select[multiple]').on('select2:opening select2:closing', function () {\n const $searchfield = $(this).parent().find('.select2-search__field');\n $searchfield.prop('disabled', true);\n });\n\n // Open/close mobile main menu\n $('.js-toggle-menu').on('click', e => {\n e.preventDefault();\n setAdminTopOffsets();\n const $this = $(e.target);\n $('body').toggleClass('u-menu-open');\n $this.attr('aria-expanded', (key, val) => {\n return val === 'false' ? 'true' : 'false';\n });\n });\n\n // Open mobile menu's submenu\n $('.mobile-menu').on('click', '.menu-item--expanded > [role=\"menuitem\"]', e => {\n e.preventDefault();\n $this = $(e.target);\n $this.parent().addClass('u-submenu-open');\n checkMobileMenuTheme();\n });\n\n // Close mobile menu's submenu\n $('.menu-back-button').on('click', e => {\n e.preventDefault();\n $this.closest('.u-submenu-open').removeClass('u-submenu-open');\n checkMobileMenuTheme();\n });\n\n // Open/close desktop main menu\n $('.header .menu-level-0 > .menu-item--expanded > [role=\"menuitem\"]').on('click', function (e) {\n e.preventDefault();\n const $parent = $(this).parent();\n $('.u-submenu-open').each(function () {\n if ($(this)[0] !== $parent[0]) $(this).removeClass('u-submenu-open');\n });\n if (!$parent.hasClass('u-submenu-open')) {\n $parent.addClass('u-submenu-open');\n const $subMenu = $('.u-submenu-open .menu-level-1');\n const availableHeight = $(window).height() - $subMenu[0].getBoundingClientRect().top - 10;\n $subMenu.css('max-height', availableHeight + 'px');\n } else {\n $('.u-submenu-open .menu-level-1').removeAttr('style');\n $parent.removeClass('u-submenu-open')\n $(this).focus();\n }\n });\n\n // Close messages\n $('body').on('click', '.messages__close', function (e) {\n $(this).parent().parent().fadeOut('fast');\n });\n\n // Datepicker fields to readonly\n $('.bef-datepicker').each(function () {\n $(this).attr('readonly', 'true');\n });\n\n // Site search type changes\n $('input[type=radio][name=type_radios]').on('change', function () {\n const $searchItemSite = $('.form-item-keys');\n const $searchItemEster = $('.form-item-searcharg');\n\n if ($(this).val() !== 'site') {\n $searchItemEster.addClass('is-visible');\n $searchItemSite.addClass('is-hidden');\n } else {\n $searchItemEster.removeClass('is-visible');\n $searchItemSite.removeClass('is-hidden');\n }\n\n });\n\n // Init Select2\n $('select').each(function () {\n const select = $(this).select2({\n minimumResultsForSearch: -1,\n width: '100%',\n });\n if ($(this).attr('multiple')) {\n const id = $(this).attr('data-drupal-selector');\n $(this)\n .next(\"span.select2\")\n .find(\"ul\")\n .html(function () {\n let count = select.select2(\"data\").length;\n return \"