{"mappings":"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","sources":["src/070_views/degrees-programs-view/degree-programs.js"],"sourcesContent":["(function ($, Drupal, window, document) {\n 'use strict';\n\n Drupal.behaviors.degree_programs = {\n attach: function degree_programs(context, settings) {\n if (typeof context['location'] !== 'undefined') {\n // document has loaded.\n window.degreeViewOptions.bindEvents();\n } else {\n document.addEventListener('DOMContentLoaded', window.degreeViewOptions.bindEvents)\n }\n }\n };\n\n window.degreeViewOptions = {\n // eventsBound: false,\n isIos() {\n const ua = navigator.userAgent\n return (ua.includes('iPhone') || ua.includes('iPad'))\n },\n getView() {\n var href = new URL(document.location.href);\n return href.searchParams.get('view');\n },\n updateSearchURI(target) {\n try {\n // Set GET param (view=grid)\n var href = new URL(document.location.href);\n href.searchParams.set('view', target);\n window.history.replaceState(null, null, href.toString());\n } catch (err) {\n\n }\n },\n openFilters() {\n // Show Grid\n $('.fieldset__view-filters.tray')\n .addClass('active')\n .attr('aria-hidden', 'false');\n\n $('body').addClass('no-scroll');\n },\n closeFilters() {\n // Hide Grid\n $('.fieldset__view-filters.tray')\n .removeClass('active filters-open search-open')\n .attr('aria-hidden', 'true');\n\n $('body').removeClass('no-scroll');\n },\n showGridView() {\n // Hide List\n $('.degree-program__list')\n .removeClass('active')\n .attr('aria-hidden', 'true');\n\n // Show Grid\n $('.degree-program__grid')\n .addClass('active')\n .attr('aria-hidden', 'false');\n\n window.degreeViewOptions.updateSearchURI(\"grid\");\n\n },\n showListView() {\n // Hide Grid\n $('.degree-program__list')\n .addClass('active')\n .attr('aria-hidden', 'false');\n\n // Show List\n $('.degree-program__grid')\n .removeClass('active')\n .attr('aria-hidden', 'true');\n\n window.degreeViewOptions.updateSearchURI(\"list\");\n },\n setDefaultView() {\n // For ios limit to list view only\n if (window.degreeViewOptions.isIos()) {\n window.degreeViewOptions.showListView();\n document.querySelector('.degree-program__view-toggles').classList.add('visually-hidden')\n } else {\n (window.degreeViewOptions.getView() == 'list') ? window.degreeViewOptions.showListView(): window.degreeViewOptions.showGridView();\n\n // Set the correct button to active\n $('.degree-program__toggle').removeClass('active');\n $(`button[data-target=\"${window.degreeViewOptions.getView()}\"]`).addClass('active');\n }\n },\n bindEvents() {\n // if !(this.eventsBound) {\n // On ajax reload, set the default view\n $(document).ready(window.degreeViewOptions.setDefaultView);\n\n // On ajax reload, set the default view\n $(document).ajaxComplete(function () {\n window.degreeViewOptions.setDefaultView()\n // Make sure view is scrollable (mobile only)\n $('body').removeClass('no-scroll');\n });\n\n // Toggle mobile filters\n $('.degree-program__tray-toggle').on('click', function (e) {\n const currentToggle = $(this);\n const target = $(this).data('target');\n\n // Toggle tray menu\n const isOpen = $('.fieldset__view-filters.tray').hasClass('active');\n\n // Toggle view\n (isOpen) ? window.degreeViewOptions.closeFilters(): window.degreeViewOptions.openFilters();\n });\n\n\n $('.degree-program__tray-toggle.filters').on('click', function (e) {\n $('.fieldset__view-filters.tray').addClass('filters-open');\n });\n\n\n $('.degree-program__tray-toggle.search').on('click', function (e) {\n $('.fieldset__view-filters.tray').addClass('search-open');\n });\n\n // Toggle grid/list layouts\n $('.degree-program__toggle').on('click', function (e) {\n const currentToggle = $(this);\n const targetToggle = currentToggle.siblings('.active');\n const target = $(this).data('target');\n\n // Toggle buttons\n targetToggle.removeClass('active');\n currentToggle.addClass('active');\n\n // this.updateSearchURI('target');\n\n // Toggle view\n (target == 'grid') ? window.degreeViewOptions.showGridView(): window.degreeViewOptions.showListView();\n });\n\n // this.eventsBound = true;\n // }\n }\n };\n})(jQuery, Drupal, window, document);\n"],"names":[],"version":3,"file":"degree-programs.js.map"}