{"version":3,"sources":["Cookies.js","Functions.js","Header.js","Loading_Screen.js","Media_Queries.js","Page_Title_Slider.js","Search.js","Videos.js","gforms.js","hash-links.js"],"names":["ThemeJS","Cookies","get_cookie","cname","name","ca","decodeURIComponent","document","cookie","split","i","length","c","charAt","substring","indexOf","JSON","parse","get","cookie_names","cookies","$","each","index","cookie_name","set","cookie_data","_typeof","isArray","value","hasOwnProperty","expires","cvalue","exdays","isEmptyObject","d","Date","setTime","getTime","toUTCString","stringify","set_cookie","Functions","$header","scrollbar_width","get_scrollbar_width","outer","inner","createElement","style","visibility","overflow","msOverflowStyle","body","appendChild","offsetWidth","parentNode","removeChild","querySelector","setProperty","concat","send_ajax_request","args","data","nonce","Variables","Ajax","post","url","response","success","error","get_query_parameter","window","location","href","replace","results","RegExp","exec","scroll_to_element","$target","_options$up_only","options","arguments","undefined","scroll_to_pos","offset","top","outerHeight","_options$offset","up_only","scrollTop","animate","_options$focus","focus","is","attr","jQuery","$body","$menu","$toggle","is_mobile","focus_trap","focusTrap","createFocusTrap","onActivate","addClass","onDeactivate","removeClass","setTimeout","initialFocus","resize","deactivate","set_submenu_open","$li","opening","$btn","$submenu","on","click","hasClass","activate","this","closest","e","contains","relatedTarget","Loading_Screen","transition_duration","$loading_screen","$icon","$icon_wrapper","append","transition_duration_string","css","parseInt","parseFloat","remove","fn","loading_screen","show","callback","$local_load_screen","Boolean","clone","Media_Queries","breakpoints_obj","Screen_Sizes","breakpoints","size","px","push","sort","a","b","queries","obj","matchMedia","addListener","breakpoint_changed","current_size","previous_size","calculate_current_size","max_matched_size","query","matches","trigger","get_current_size","is_at_least","$slider","$section","slick","initADA","$slides","filter","removeAttr","$dots","find","$prevArrow","add","$nextArrow","infinite","dots","appendDots","customPaging","slider","html","text","arrows","prevArrow","nextArrow","accessibility","slidesToShow","slidesToScroll","rows","adaptiveHeight","fadeIn","stopPropagation","target","fadeOut","ro","$video_wraps","ResizeObserver","entries","_step","_iterator","_createForOfIteratorHelper","s","n","done","entry","width","contentBoxSize","Array","inlineSize","contentRect","$video","_step2","reload","_iterator2","src","min_width","prepend","mime","err","f","load","set_video_source","$wrap","play","observe","readyState","prop","paused","toggleClass","init_select2","element","$element","$gf_placeholder","select2","minimumResultsForSearch","closeOnSelect","_$$data$close_on_sele","close_on_select","allowClear","$button","$wrapper","form_id","current_page","preventDefault","modal"],"mappings":"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","file":"main.js","sourcesContent":["/*-------------------------------------------------------*\\\n Exposes get/set methods to read/write cookies\n\n See .get and .set functions for more documentation\n\\*-------------------------------------------------------*/\n\nThemeJS.Cookies = (function () {\n\n function set_cookie ( cname, cvalue, exdays ) {\n if ( !cvalue || $.isEmptyObject( cvalue ) || !cvalue.length ) {\n cvalue = ''\n exdays = 0;\n }\n var d = new Date();\n d.setTime( d.getTime() + ( exdays * 24 * 60 * 60 * 1000 ) );\n var expires = \"expires=\"+ d.toUTCString();\n document.cookie = cname + \"=\" + JSON.stringify( cvalue ) + \";\" + expires + \";path=/\";\n }\n\n function get_cookie ( cname ) {\n var name = cname + \"=\";\n var decodedCookie = decodeURIComponent( document.cookie );\n var ca = decodedCookie.split( ';' );\n for( var i = 0; i < ca.length; i++ ) {\n var c = ca[i];\n while ( c.charAt(0) == ' ' ) {\n c = c.substring(1);\n }\n if ( c.indexOf( name ) == 0 ) {\n return JSON.parse( c.substring( name.length, c.length ) );\n }\n }\n return \"\";\n }\n\n\n /*-------------------------------------------------------*\\\n Read cookies by name\n\n\n Params:\n cookie_names:\n String/Array( String[] )\n\n Return:\n If cookie_names = String:\n value of cookie\n If cookie_names = Array\n Object of signatue\n {\n cookie_name : cookie_value\n ...\n }\n\n \\*-------------------------------------------------------*/\n function get ( cookie_names ) {\n if ( typeof cookie_names == 'string' ) {\n return get_cookie( cookie_names );\n }\n var cookies = {};\n $.each( cookie_names, function ( index, cookie_name ) {\n cookies[ cookie_name ] = get_cookie( cookie_name );\n });\n return cookies;\n }\n\n\n\n /*-------------------------------------------------------*\\\n Set cookies\n\n Params:\n cookies:\n Object of signature\n {\n cookie_name : cookie_value\n ...\n }\n\n \\*-------------------------------------------------------*/\n function set ( cookies ) {\n $.each( cookies, function ( cookie_name, cookie_data ) {\n if ( cookie_data ) {\n if ( typeof cookie_data != 'object' || $.isArray( cookie_data ) ) {\n cookie_data = { value: cookie_data };\n }\n if ( !cookie_data.hasOwnProperty( 'expires' ) ) {\n cookie_data.expires = 1;\n }\n } else {\n cookie_data = { value: '', expires: 0 };\n }\n set_cookie( cookie_name, cookie_data.value, cookie_data.expires );\n });\n }\n\n return {\n get: get,\n set: set\n }\n\n})();","/*--------------------------------------------*\\\n Include Globally Useful JS Functions\n\\*--------------------------------------------*/\n\nThemeJS.Functions = (function ( $, root ) {\n\n const $header = $( '#site-header' );\n\n function send_ajax_request ( args ) {\n args.data.nonce = ThemeJS.Variables.Ajax.nonce;\n $.post( ThemeJS.Variables.Ajax.url, args.data, function ( response ) {\n response = JSON.parse( response );\n if ( !response.hasOwnProperty( 'data' ) ) { response.data = {}; }\n if ( response.success && typeof args.success == 'function' ) {\n args.success( response.data );\n } else if ( !response.success && typeof args.error == 'function' ) {\n args.error( response.data );\n }\n });\n }\n\n function get_query_parameter( name, url ) {\n if (!url) url = window.location.href;\n name = name.replace(/[\\[\\]]/g, '\\\\$&');\n var regex = new RegExp('[?&#]' + name + '(=([^&#]*)|&|#|$)'),\n results = regex.exec(url);\n if (!results) return null;\n if (!results[2]) return '';\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n }\n\n let scrollbar_width = null;\n // taken from https://stackoverflow.com/questions/13382516/getting-scroll-bar-width-using-javascript\n function get_scrollbar_width () {\n if ( scrollbar_width === null ) {\n let outer = document.createElement('div');\n outer.style.visibility = 'hidden';\n outer.style.overflow = 'scroll';\n outer.style.msOverflowStyle = 'scrollbar';\n document.body.appendChild(outer);\n let inner = document.createElement('div');\n outer.appendChild(inner);\n scrollbar_width = ( outer.offsetWidth - inner.offsetWidth );\n outer.parentNode.removeChild(outer);\n }\n return scrollbar_width;\n }\n document.querySelector( ':root' ).style.setProperty( '--scrollbar-width', `${ get_scrollbar_width() }px` );\n\n function scroll_to_element ( $target, options = {} ) {\n const scroll_to_pos = $target.offset().top - $header.outerHeight() - ( options.offset ?? 0 );\n if ( ( options.up_only ?? null ) && scroll_to_pos > $(window).scrollTop() ) {\n return;\n }\n $('html, body').animate(\n { scrollTop: scroll_to_pos },\n 300,\n 'linear',\n function() {\n if ( options.focus ?? null ) {\n $target.focus();\n if ( $target.is(\":focus\") ) {\n return false;\n } else {\n $target.attr('tabindex','-1');\n $target.focus();\n }\n }\n }\n );\n }\n \n return {\n send_ajax_request,\n get_query_parameter,\n get_scrollbar_width,\n scroll_to_element,\n }\n\n})( jQuery, this );","jQuery( function ( $ ) {\n\n const $body = $( 'body' );\n const $header = $( '#site-header' );\n const $menu = $( '#menu-wrap' );\n const $toggle = $( '#mobile-menu-toggle' );\n const speed = 300;\n\n function is_mobile () {\n return $toggle.is( ':visible' );\n }\n\n // create focus trap\n const focus_trap = focusTrap.createFocusTrap( $header.get(0), {\n onActivate () {\n $toggle.addClass( 'is-active' );\n $menu.addClass( 'visible' )\n $body.addClass( 'menu-open' );\n },\n onDeactivate () {\n $toggle.removeClass( 'is-active' );\n $body.removeClass( 'menu-open' );\n setTimeout( function () {\n $menu.removeClass( 'visible' );\n }, speed );\n },\n initialFocus: $toggle.get(0),\n });\n\n\n function resize () {\n document.querySelector( ':root' ).style.setProperty( '--header-height', `${ $header.outerHeight() }px` );\n $menu.removeClass( 'mobile-transition-enabled' );\n setTimeout( function () {\n $menu.addClass( 'mobile-transition-enabled' );\n }, 0 );\n if ( !is_mobile() ) {\n focus_trap.deactivate()\n }\n }\n\n // init header pad height and set header to fixed\n resize();\n $header.addClass( 'fixed' );\n // trigger height recalculation on breakpoint change\n $( window ).on( 'breakpoint_changed', resize );\n\n // toggle mobile menu on hamburger click\n $toggle.click( () => {\n $body.hasClass( 'menu-open' ) ? focus_trap.deactivate() : focus_trap.activate();\n });\n\n\n\n function set_submenu_open ( $li, opening ) {\n let $btn = $( '> .link-wrap button.sub-menu-toggle', $li );\n if ( !$btn.length ) { return; }\n let $submenu = $( `#${ $btn.attr( 'aria-controls' ) }` );\n if ( !$submenu.length ) { return; }\n $btn.attr( 'aria-expanded', opening ? 'true' : 'false' );\n\t$submenu.attr( 'aria-hidden', opening ? 'false' : 'true' );\n }\n\n\n $menu.on( 'click', 'button.sub-menu-toggle', function () {\n set_submenu_open( $(this).closest( 'li' ), $(this).attr( 'aria-expanded' ) == 'false' );\n });\n\n\n $menu.on( 'focusout', 'li.menu-item-has-children', function ( e ) {\n if ( is_mobile() || $.contains( this, e.relatedTarget ) ) { return; }\n set_submenu_open( $(this), false );\n });\n \n});","/*-------------------------------------------------------------------*\\\n\n\tJQuery extension for easy load screens\n\n Usage:\n $('selector').loadingScreen( show, callback );\n\n Params:\n show:\n Boolean\n Default = true\n Whether loading screen is coming in or out\n callback:\n Function\n Default = null\n Function to execute after transition has completed\n\n Styling handled in SCSS\n\n\\*-------------------------------------------------------------------*/\n\n\nThemeJS.Loading_Screen = (function ( $, root ) {\n\n var $loading_screen = false;\n var transition_duration = 0;\n\n function init () {\n var $icon = $('').addClass( 'loading-icon fas fa-cog fa-spin' );\n var $icon_wrapper = $('
').addClass('loading-icon-wrapper').append( $icon );\n $loading_screen = $('
').addClass('simplistics-loading-screen').append( $icon_wrapper );\n $('body').append( $loading_screen );\n var transition_duration_string = $loading_screen.css('transition-duration'); // js reads in seconds (will convert from ms)\n transition_duration = parseInt( 1000 * parseFloat( transition_duration_string ) ); // convert to int in ms\n $loading_screen.remove();\n\n $.fn.loading_screen = function ( show, callback ) {\n show = ( typeof show == 'undefined' || Boolean( show ) );\n if ( show ) {\n if ( $( '.simplistics-loading-screen', this ).length ) { return; }\n if ( $(this).css('position') == 'static' ) { $(this).css( 'position', 'relative' ); }\n var $local_load_screen = $loading_screen.clone();\n $(this).append( $local_load_screen );\n setTimeout( function () {\n $local_load_screen.addClass('loading');\n }, 0 );\n if ( typeof callback == 'function' ) {\n setTimeout( callback, transition_duration );\n }\n } else {\n var $local_load_screen = $( '.simplistics-loading-screen', this );\n if ( !$local_load_screen.length ) { return; }\n $local_load_screen.removeClass('loading');\n setTimeout(function(){\n $local_load_screen.remove();\n if ( typeof callback == 'function' ) {\n callback();\n }\n }, transition_duration );\n }\n }\n\n }\n\n $( function () {\n init();\n });\n\n})( jQuery, this );","ThemeJS.Media_Queries = ( function ( $ ) {\n\n let breakpoints_obj = ThemeJS.Variables.Screen_Sizes;\n\n // JS objects cannot be relied on for ordering\n // rebuild into array of objects and sort\n let breakpoints = [];\n $.each( breakpoints_obj, function ( size, px ) {\n breakpoints.push({ size, px });\n });\n breakpoints.sort( function( a, b ) {\n return a.px - b.px;\n });\n\n let queries = {};\n $.each( breakpoints, function ( index, obj ) {\n queries[ obj.size ] = window.matchMedia( `( min-width: ${ obj.px }px )` );\n queries[ obj.size ].addListener( breakpoint_changed );\n });\n\n let previous_size = null;\n let current_size;\n calculate_current_size();\n function calculate_current_size () {\n let max_matched_size = 'xs';\n $.each( queries, function ( size, query ) {\n if ( query.matches ) {\n max_matched_size = size;\n return;\n }\n return false;\n });\n current_size = max_matched_size;\n }\n\n function breakpoint_changed () {\n previous_size = current_size;\n calculate_current_size();\n $( window ).trigger( 'breakpoint_changed', [ current_size, previous_size ] );\n }\n\n return {\n get_current_size: function () {\n return current_size;\n },\n is_at_least: function ( size ) {\n return queries[ size ].matches;\n },\n };\n\n})( jQuery );","jQuery( function ( $ ) {\n\n const $section = $( '#page-title-slider' );\n if ( !$section.length ) { return; }\n const $slider = $( '.slider', $section );\n\n $slider.on( 'init afterChange', function ( e, slick, index = null ) {\n // slick calls a11y functionality before afterChange\n // we want to remove the slide's tabindex, so we need to disable the a11y option and call it's core function ourselves\n slick.initADA();\n slick.$slides.filter( '.slick-active' ).removeAttr( 'tabindex' );\n slick.$dots.find( 'button' ).removeAttr( 'tabindex' );\n slick.$prevArrow.add( slick.$nextArrow ).each( function () {\n $(this).attr( 'disabled', $(this).hasClass( 'slick-disabled' ) ).removeAttr( 'aria-disabled' );\n });\n });\n\n $slider.slick({\n infinite: true,\n dots: true,\n appendDots: $( '.dots-wrap', $section ),\n customPaging: function ( slider, i ) {\n return $('