{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./app/client/src/app.js","webpack:///.*(common)).*\\.js$","webpack:///./app/client/src/scripts/components/about.js","webpack:///./app/client/src/scripts/components/animation.js","webpack:///./app/client/src/scripts/components/cursor-overlay.js","webpack:///./app/client/src/scripts/components/donate.js","webpack:///./app/client/src/scripts/components/donation-form.js","webpack:///./app/client/src/scripts/components/forms.js","webpack:///./app/client/src/scripts/components/gallery-masonry.js","webpack:///./app/client/src/scripts/components/header-slider.js","webpack:///./app/client/src/scripts/components/latest-class-slider.js","webpack:///./app/client/src/scripts/components/masonry.js","webpack:///./app/client/src/scripts/components/navigation.js","webpack:///./app/client/src/scripts/components/nomination-form.js","webpack:///./app/client/src/scripts/components/pagination.js","webpack:///./app/client/src/scripts/components/pop-up.js","webpack:///./app/client/src/scripts/components/preloader.js","webpack:///./app/client/src/scripts/components/scholarship-form.js","webpack:///./app/client/src/scripts/components/scroll-to.js","webpack:///./app/client/src/scripts/components/search-popuup.js","webpack:///./app/client/src/scripts/components/side-menu.js","webpack:///./app/client/src/scripts/components/testimonial-slider.js","webpack:///./app/client/src/scripts/components/tooltip.js","webpack:///./app/client/src/scripts/common/selectors.js","webpack:///./app/client/src/scripts/common/scrollTo.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","0","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","require","jQueryBridget","imagesLoaded","document","addEventListener","$","makeJQueryPlugin","Isotope","keys","reduce","script","default","map","can","run","webpackContext","req","id","webpackContextResolve","e","Error","code","resolve","tabs","fn","init","milestoneLink","find","milestoneTab","on","preventDefault","target","this","attr","activeTab","getElementById","removeClass","addClass","$animatedElements","querySelectorAll","WOW","boxClass","animateClass","mobile","live","cursor","follower","posX","posY","mouseX","mouseY","TweenMax","to","repeat","onRepeat","set","css","left","top","scrollTop","pageYOffset","documentElement","pageX","pageY","SELECTORS","Selectors","donationForm","stripeCardElement","thirdpartyPayment","paypalElement","$form","querySelector","$cardElement","$otherAmountField","$submitButton","state","stripe","stripeCard","paypal","paymentRequest","isRepeating","pristineConfig","classTo","errorClass","successClass","errorTextParent","errorTextTag","errorTextClass","Stripe","dataset","stripePubKey","setupStripeCard","bindEvents","setupValidation","classList","contains","checked","focus","slideToggle","handleSubmit","forEach","$el","pristine","Pristine","addValidator","$presetAmount","isSelectingOtherAmount","asClass","validate","skipValidation","$firstError","scrollTo","card","elements","style","base","fontSize","fontFamily","color","fontSmoothing","textTransform","invalid","mount","asId","error","displayError","textContent","message","debounce","updateStripeCard","matchMedia","matches","update","setupPaypal","sessionData","Buttons","layout","height","tagline","createOrder","actions","order","purchase_units","amount","onApprove","capture","then","details","hiddenInput","createElement","setAttribute","JSON","stringify","appendChild","forceSubmit","disabled","click","render","setupApplePay","country","currency","total","label","amount_as_cents","requestPayerName","requestPayerEmail","paymentRequestButton","canMakePayment","applePay","add","display","token","createToken","stripeTokenHandler","body","$forms","$repeatDonationCheckBox","$repeatDonationInput","$donationCheckContent","hasClass","styledForm","ajaxForm","formAnchor","formScroll","formErrorMessage","field","focused","loading","replace","isNaN","parseInt","Number","customForms","$customForms","Array","from","filter","$f","closest","some","x","setupForm","$field","remove","$input","$placeholder","files","getAttribute","parentNode","insertBefore","form","allowScroll","$error","valid","$errorMessage","formData","FormData","ajax","type","url","action","dataType","processData","contentType","success","resp","innerHTML","$anchor","field_errors","complete","Form","event","resizeAllMasonryItems","waitForImages","resizeMasonryItem","item","grid","getElementsByClassName","rowGap","getComputedStyle","getPropertyValue","rowHeight","gridImagesAsContent","rowSpan","Math","ceil","getBoundingClientRect","gridRowEnd","allItems","instance","slideOneCarousel","owlCarousel","loop","items","margin","dots","nav","animateOut","animateIn","active","smartSpeed","autoplay","trigger","$slider","navText","autoWidth","autoplayTimeout","autoplayHoverPause","responsive","slideBy","masonryLayout","masonryLayoutNoGridWidth","$masonryLayout","$masonryLayoutNoGridWidth","ready","isotope","layoutMode","itemSelector","parent","children","append","mainNavToggler","subNavToggler","Self","menu","toggleClass","clone","insertAfter","fadeIn","fadeOut","stricky","each","accrodionName","accordion","hide","show","slideUp","slideDown","$nominationTypeDropdown","$individualFields","$teamFields","setActive","options","selectedIndex","inactive","removeAttribute","textArea","TextArea","paginatedList","paginatedListNav","paginatedListTrigger","paginatedListHide","paginatedCount","paginatedCountTarget","$paginated","handleClick","$trigger","$nav","$list","previousElementSibling","isHide","getJSON","href","$newNav","createRange","createContextualFragment","replaceChild","list","$newList","$imagePopups","$contentPopups","$videoPopups","setupImagePopup","setupContentPopup","setupVideoPopup","jQuery","groups","magnificPopup","closeOnContentClick","closeBtnInside","gallery","enabled","fixedContentPos","animate","offset","mCustomScrollbar","axis","theme","testimonialCarouselMargin","undefined","testimonialCarousel","480","600","991","1000","1200","tooltip","selectors","assign","selectorKey","asString","getStuckHeaderHeight","$header","offsetHeight","$target","additionalOffset","callback","headerHeight","headerOffset","floor","jump","duration"],"mappings":"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","file":"app.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/_resources/app/client/dist/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([103,1]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","// Styles\nimport 'styles/app';\n\n// Thirdparty\nimport 'what-input';\nimport 'owl.carousel';\nimport 'bootstrap';\nimport 'bootstrap-datepicker';\nimport 'bootstrap-select';\nimport 'jquery-validation';\nrequire('magnific-popup');\nrequire('malihu-custom-scrollbar-plugin');\nvar jQueryBridget = require('jquery-bridget');\nvar imagesLoaded = require('imagesloaded');\n\ndocument.addEventListener('DOMContentLoaded', () => {\n if (window.jQuery) {\n var $ = window.jQuery;\n imagesLoaded.makeJQueryPlugin($);\n }\n if (window.Isotope) {\n var Isotope = window.Isotope;\n jQueryBridget('isotope', Isotope, $);\n }\n (r => {\n r\n .keys()\n .reduce((modules, script) => {\n const module = r(script).default;\n module && modules.push(module);\n return modules;\n }, [])\n .map(module => (module.can === true || module.can()) && module.run());\n })(require.context('scripts', true, /^(?!.*(common)).*\\.js$/));\n});\n\n// document.body.classList.remove('preload');\n","var map = {\n\t\"./components/about.js\": 135,\n\t\"./components/animation.js\": 136,\n\t\"./components/cursor-overlay.js\": 137,\n\t\"./components/donate.js\": 139,\n\t\"./components/donation-form.js\": 154,\n\t\"./components/file-upload.js\": 155,\n\t\"./components/forms.js\": 156,\n\t\"./components/gallery-masonry.js\": 168,\n\t\"./components/header-slider.js\": 169,\n\t\"./components/latest-class-slider.js\": 170,\n\t\"./components/masonry.js\": 171,\n\t\"./components/navigation.js\": 172,\n\t\"./components/nomination-form.js\": 173,\n\t\"./components/pagination.js\": 174,\n\t\"./components/pop-up.js\": 175,\n\t\"./components/preloader.js\": 176,\n\t\"./components/scholarship-form.js\": 177,\n\t\"./components/scroll-to.js\": 178,\n\t\"./components/search-popuup.js\": 179,\n\t\"./components/side-menu.js\": 180,\n\t\"./components/testimonial-slider.js\": 181,\n\t\"./components/tooltip.js\": 182,\n\t\"./sections/theme.js\": 183\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 134;","const tabs = $('.about__tab-list');\n\nconst fn = {\n init: () => {\n if ($('.about__tab-list').length) {\n // console.log('Milestones loaded');\n var milestoneLink = $('.about__tab-list').find('.nav-link');\n var milestoneTab = $('.tab-content').find('.tab-pane');\n\n milestoneLink.on('click', function(e) {\n e.preventDefault();\n var target = $(this).attr('data-toggle');\n // animate\n const activeTab = document.getElementById(`${target}`);\n milestoneLink.removeClass('active');\n milestoneTab.removeClass('active');\n $(this).addClass('active');\n $(activeTab).addClass('active');\n\n return false;\n });\n }\n }\n}\n\nexport default {\n can: () => tabs.length,\n run: fn.init,\n};\n","import { WOW } from 'wowjs';\n\nconst $animatedElements = document.querySelectorAll('.wow');\n\nconst fn = {\n init: () => {\n const wow = new WOW({\n boxClass: 'wow', // animated element css class (default is wow)\n animateClass: 'animated', // animation css class (default is animated)\n\n mobile: true, // trigger animations on mobile devices (default is true)\n live: true, // act on asynchronously loaded content (default is true)\n });\n wow.init();\n },\n};\n\nexport default {\n can: () => $animatedElements.length,\n run: fn.init,\n};\n","import { TweenMax } from 'gsap';\n\nconst fn = {\n init: () => {\n if ($('.custom-cursor__overlay').length) {\n // / cursor /\n var cursor = $('.custom-cursor__overlay .cursor'),\n follower = $('.custom-cursor__overlay .cursor-follower');\n\n var posX = 0,\n posY = 0;\n\n var mouseX = 0,\n mouseY = 0;\n\n TweenMax.to({}, 0.016, {\n repeat: -1,\n onRepeat: function () {\n posX += (mouseX - posX) / 9;\n posY += (mouseY - posY) / 9;\n\n TweenMax.set(follower, {\n css: {\n left: posX - 22,\n top: posY - 22,\n },\n });\n\n TweenMax.set(cursor, {\n css: {\n left: mouseX,\n top: mouseY,\n },\n });\n },\n });\n\n $(document).on('mousemove', function (e) {\n var scrollTop = window.pageYOffset || document.documentElement.scrollTop;\n mouseX = e.pageX;\n mouseY = e.pageY - scrollTop;\n });\n $('button, a').on('mouseenter', function () {\n cursor.addClass('active');\n follower.addClass('active');\n });\n $('button, a').on('mouseleave', function () {\n cursor.removeClass('active');\n follower.removeClass('active');\n });\n $('.custom-cursor__overlay').on('mouseenter', function () {\n cursor.addClass('close-cursor');\n follower.addClass('close-cursor');\n });\n $('.custom-cursor__overlay').on('mouseleave', function () {\n cursor.removeClass('close-cursor');\n follower.removeClass('close-cursor');\n });\n }\n }\n}\n\nexport default {\n can: () => true,\n run: fn.init,\n};\n","import { on } from 'delegated-events';\nimport debounce from 'lodash/debounce';\nimport scrollTo from '../common/scrollTo';\nimport Pristine from 'pristinejs';\n\nconst SELECTORS = Selectors({\n donationForm: 'donation-form',\n stripeCardElement: 'card-element',\n thirdpartyPayment: 'payment-thirdparty',\n paypalElement: 'paypal-payment-container',\n});\n\nconst $form = document.querySelector('form.donation-form');\nconst $cardElement = document.getElementById(SELECTORS.stripeCardElement);\n//const $thirdPartyElement = document.getElementById(SELECTORS.thirdpartyPayment);\n//const $repeatDonation = document.getElementById('DonationForm_DonationForm_RepeatDonation_Holder');\n//const $repeatDuration = document.getElementById('DonationForm_DonationForm_RepeatDuration_Holder');\nconst $otherAmountField = document.getElementById('DonationForm_DonationForm_OtherAmount');\nconst $submitButton = document.querySelector('[type=submit][name=action_finish]');\n//const $sessionField = document.querySelector('[type=hidden][name=MultiFormSessionID]');\n\nconst state = {\n stripe: null,\n stripeCard: null,\n paypal: null,\n paymentRequest: null,\n isRepeating: null,\n};\n\nconst pristineConfig = {\n classTo: 'field',\n errorClass: 'has-error',\n successClass: 'has-success',\n errorTextParent: 'field',\n errorTextTag: 'div',\n errorTextClass: 'text-help',\n};\n\nconst fn = {\n init: () => {\n if ($cardElement) {\n state.stripe = window.Stripe($form.dataset.stripePubKey);\n state.isRepeating = $form.querySelector('[type=hidden][name=IsRepeating]');\n fn.setupStripeCard();\n }\n\n /*\n if ($thirdPartyElement) {\n state.paypal = window.paypal;\n\n // Load in any session data we need to complete a thirdparty transaction\n $.ajax({\n type: 'post',\n dataType: 'json',\n url: `${$form.dataset.controllerUrl}fetchsessiondata`,\n data: {\n sessionId: $sessionField.value,\n },\n success: resp => {\n if (state.isRepeating) {\n const $paypal = document.getElementById(SELECTORS.paypalElement);\n\n if ($paypal) {\n $paypal.style.display = 'none';\n }\n } else {\n $form.classList.add('has-thirdparty');\n fn.setupPaypal(resp);\n }\n\n fn.setupApplePay(resp);\n },\n });\n }\n */\n\n if ($form) {\n fn.bindEvents();\n fn.setupValidation();\n }\n },\n\n bindEvents: () => {\n // Setup any events for AmountStep\n if ($form.classList.contains('amount-step')) {\n on('change', '[name=PresetAmount]:not([value=Other])', () => {\n $otherAmountField.value = null;\n });\n\n on('change', '[name=PresetAmount][value=Other]', e => {\n if (e.target.checked) {\n $otherAmountField.focus();\n }\n });\n\n $otherAmountField.addEventListener('focus', () => {\n document.querySelector('[name=PresetAmount][value=Other]').checked = true;\n });\n\n /*\n $repeatDonation.querySelector('[type=checkbox]').addEventListener('change', e => {\n if (e.target.checked) {\n $repeatDuration.classList.add('is-active');\n } else {\n $repeatDuration.classList.remove('is-active');\n $repeatDuration.querySelector('select').value = null;\n }\n });\n\n if ($repeatDonation.querySelector('[type=checkbox]:checked')) {\n $repeatDuration.classList.add('is-active');\n }\n */\n\n on('click', '.donation-check-toggle', () => {\n $('.donation-check-content').slideToggle('fast');\n });\n }\n\n // Setup any events for PaymentStep\n if ($form.classList.contains('payment-step')) {\n $form.addEventListener('submit', fn.handleSubmit);\n\n // Setup form's submit button(s) to handle cases where we want to skip validation\n $form.querySelectorAll('[type=submit]').forEach($el => {\n $el.addEventListener('click', () => {\n //this.form.skipValidation = this.getAttribute('formnovalidate') === 'formnovalidate';\n });\n });\n }\n },\n\n setupValidation: () => {\n const pristine = new Pristine($form, pristineConfig);\n\n /*\n if ($repeatDuration) {\n pristine.addValidator(\n $repeatDuration.querySelector('select'),\n function(value) {\n if ($repeatDonation.querySelector('[type=checkbox]:checked')) {\n return value !== '';\n }\n\n return true;\n },\n 'Please select an option',\n 10,\n false\n );\n }\n */\n\n if ($otherAmountField) {\n pristine.addValidator(\n $otherAmountField,\n function(value) {\n const $presetAmount = document.querySelector('[name=PresetAmount]:checked');\n const isSelectingOtherAmount = $presetAmount && $presetAmount.value === 'Other';\n\n if (!isSelectingOtherAmount) {\n return true;\n }\n\n return isSelectingOtherAmount && value !== '';\n },\n 'Please enter an amount',\n 10,\n false\n );\n }\n\n // Revalidate easydropdown fields on change\n on('change', `${SELECTORS.asClass('donationForm')} select`, e => pristine.validate(e.target));\n\n $form.addEventListener('submit', e => {\n if (e.target.skipValidation) {\n return true;\n }\n\n const valid = pristine.validate();\n\n if (!valid) {\n e.preventDefault();\n const $firstError = $form.querySelector('.field.has-error');\n\n if ($firstError) {\n scrollTo(\n $firstError,\n 150,\n () => $firstError.querySelector('input') && $firstError.querySelector('input').focus()\n );\n }\n\n return false;\n }\n });\n },\n\n setupStripeCard: () => {\n const style = {\n base: {\n fontSize: '16px',\n fontFamily: 'Open Sans, sans-serif',\n color: '#2c2c2c',\n fontSmoothing: 'antialiased',\n textTransform: 'uppercase',\n '::placeholder': {\n color: '#b4b4b4',\n },\n },\n invalid: {\n color: '#b9112a',\n },\n };\n\n const card = state.stripe.elements().create('card', { style });\n card.mount(SELECTORS.asId('stripeCardElement'));\n state.stripeCard = card;\n\n card.addEventListener('change', ({ error }) => {\n const displayError = document.getElementById('card-errors');\n if (error) {\n displayError.textContent = error.message;\n } else {\n displayError.textContent = '';\n }\n });\n\n window.addEventListener('resize', debounce(fn.updateStripeCard, 250));\n fn.updateStripeCard();\n },\n\n updateStripeCard: () => {\n let fontSize = '16px';\n\n if (window.matchMedia('(min-width: 1200px)').matches) {\n fontSize = '18px';\n }\n\n const style = {\n base: {\n fontSize,\n },\n };\n\n state.stripeCard.update({ style });\n },\n\n setupPaypal: sessionData => {\n state.paypal\n .Buttons({\n style: {\n layout: 'horizontal',\n color: 'white',\n height: 55,\n tagline: false,\n },\n createOrder: function(data, actions) {\n return actions.order.create({\n purchase_units: [\n {\n amount: {\n value: sessionData.amount,\n },\n },\n ],\n });\n },\n onApprove: function(data, actions) {\n return actions.order.capture().then(function(details) {\n const hiddenInput = document.createElement('input');\n hiddenInput.setAttribute('type', 'hidden');\n hiddenInput.setAttribute('name', 'paypalPayload');\n hiddenInput.setAttribute('value', JSON.stringify(details));\n $form.appendChild(hiddenInput);\n\n $form.forceSubmit = true;\n $submitButton.disabled = false;\n $submitButton.click();\n $submitButton.disabled = true;\n });\n },\n })\n .render(SELECTORS.asId('paypalElement'));\n },\n\n setupApplePay: sessionData => {\n const paymentRequest = state.stripe.paymentRequest({\n country: 'US',\n currency: 'usd',\n total: {\n label: 'The Center Donation',\n amount: sessionData.amount_as_cents,\n },\n requestPayerName: true,\n requestPayerEmail: true,\n });\n\n const paymentRequestButton = state.stripe.elements().create('paymentRequestButton', {\n paymentRequest: paymentRequest,\n style: {\n paymentRequestButton: {\n height: '55px',\n },\n },\n });\n\n // Check the availability of the Payment Request API first\n paymentRequest.canMakePayment().then(function(result) {\n if (result && result.applePay) {\n paymentRequestButton.mount('#payment-request-button');\n state.paymentRequest = paymentRequest;\n\n $form.classList.add('has-thirdparty');\n } else {\n document.getElementById('payment-request-button').style.display = 'none';\n }\n });\n\n paymentRequest.on('token', e => {\n const hiddenInput = document.createElement('input');\n hiddenInput.setAttribute('type', 'hidden');\n hiddenInput.setAttribute('name', 'stripeApplePayToken');\n hiddenInput.setAttribute('value', e.token.id);\n $form.appendChild(hiddenInput);\n\n $form.forceSubmit = true;\n $submitButton.disabled = false;\n $submitButton.click();\n $submitButton.disabled = true;\n });\n },\n\n handleSubmit: e => {\n if (e.target.skipValidation || e.target.forceSubmit) {\n return true;\n }\n\n // Handle PayPal - if PayPal was used there should be a hidden input\n // with payload data, if so we should skip validation for Stripe and submit\n if ($form.classList.contains('payment-step')) {\n if (document.querySelector('[name=paypalPayload]')) {\n return true;\n }\n }\n\n e.preventDefault();\n\n // Handle Stripe\n $submitButton.disabled = true;\n\n state.stripe.createToken(state.stripeCard).then(result => {\n if (result.error) {\n const errorElement = document.getElementById('card-errors');\n errorElement.textContent = result.error.message;\n } else {\n fn.stripeTokenHandler(result.token);\n }\n });\n\n return false;\n },\n\n stripeTokenHandler: token => {\n const hiddenInput = document.createElement('input');\n hiddenInput.setAttribute('type', 'hidden');\n hiddenInput.setAttribute('name', 'stripeToken');\n hiddenInput.setAttribute('value', token.id);\n $form.appendChild(hiddenInput);\n\n $form.forceSubmit = true;\n $submitButton.disabled = false;\n $submitButton.click();\n $submitButton.disabled = true;\n },\n};\n\nexport default {\n can: () => document.body.classList.contains('pagetype-donationpage'),\n run: fn.init,\n};\n","import { on } from 'delegated-events';\n\nconst $forms = document.querySelectorAll('form.donation-form__form');\nconst $repeatDonationCheckBox = document.querySelector('input[name=\"RepeatDonation\"]');\nconst $repeatDonationInput = document.querySelector('.dropdown__repeat-donation');\n// const $donationCheckToggle = document.querySelector('.donation-check-toggle');\nconst $donationCheckContent = document.querySelector('.donation-check-content');\nconst fn = {\n init: () => {\n on('change', 'input[name=\"RepeatDonation\"]', () => {\n let isChecked = $repeatDonationCheckBox.checked;\n if (isChecked) {\n $($repeatDonationInput).addClass('active');\n } else {\n $($repeatDonationInput).removeClass('active');\n }\n return false;\n });\n on('click', '.donation-check-toggle', e => {\n e.preventDefault();\n if ($($donationCheckContent).hasClass('active')) {\n $($donationCheckContent).removeClass('active');\n } else {\n $($donationCheckContent).addClass('active');\n }\n return false;\n });\n },\n};\n\nexport default {\n can: () => $forms.length,\n run: fn.init,\n};\n","import { on } from 'delegated-events';\nimport Pristine from 'pristinejs';\nimport scrollTo from '../common/scrollTo';\n\nconst SELECTORS = Selectors({\n styledForm: 'form--styled',\n ajaxForm: 'form--ajax',\n formAnchor: '[data-form-anchor]',\n formScroll: '[data-form-scroll]',\n formErrorMessage: 'form-error-message',\n field: 'field',\n focused: 'is-focused',\n loading: 'is-loading',\n});\n\nconst $forms = document.querySelectorAll('form');\n\nexport const pristineConfig = {\n classTo: 'field',\n errorClass: 'has-error',\n successClass: 'has-success',\n errorTextParent: 'field',\n errorTextTag: 'div',\n errorTextClass: 'text-help',\n};\n\nPristine.addValidator(\n 'currency-integer',\n function(value) {\n if (value === '') {\n return true;\n }\n\n value = value.replace('$', '');\n\n return !isNaN(value) && parseInt(Number(value)) == value && !isNaN(parseInt(value, 10)) && value > 0;\n },\n 'Please enter a whole dollar amount',\n 1,\n false\n);\n\nconst fn = {\n init: () => {\n // Only setup any custom forms defined by our classes\n const customForms = [ SELECTORS.styledForm, SELECTORS.ajaxForm ];\n const $customForms = Array.from($forms).filter($f => {\n // Handle cases where we wrap the form with an element (ex: SilverStripe forms)\n if ($f.closest(SELECTORS.asClass('styledForm'))) {\n return true;\n }\n\n return customForms.some(x => $f.classList.contains(x));\n });\n\n if ($customForms.length) {\n $customForms.forEach($f => fn.setupForm($f));\n }\n\n on('change', '.has-field-error', e => {\n const $field = e.target.closest('.field');\n\n e.target.classList.remove('has-field-error');\n\n if ($field.classList.contains('checkbox')) {\n $($field).closest('ul').find('.has-field-error').removeClass('has-field-error');\n }\n });\n },\n\n setupForm: $form => {\n if (!$form.classList.contains('has-custom-validation')) {\n fn.setupValidation($form);\n }\n\n // Setup file inputs\n $form.querySelectorAll('input[type=file]').forEach($el => {\n const $input = $el;\n const $placeholder = document.createElement('div');\n $placeholder.classList.add('file-input-placeholder');\n\n if ($input.value) {\n $placeholder.textContent = $input.files[0].name;\n } else {\n $placeholder.textContent = $input.getAttribute('placeholder');\n }\n\n $input.parentNode.insertBefore($placeholder, $input);\n\n $placeholder.addEventListener('click', () => $input.click());\n $input.addEventListener('change', e => {\n $placeholder.textContent = e.target.files[0].name;\n $placeholder.classList.add('filled');\n $input.closest('.field').classList.add('is-focused');\n });\n });\n\n // Setup form's submit button(s) to handle cases where we want to skip validation\n $form.querySelectorAll('[type=submit]').forEach($el => {\n $el.addEventListener('click', function() {\n this.form.skipValidation = this.getAttribute('formnovalidate') === 'formnovalidate';\n });\n });\n },\n\n setupValidation: $form => {\n const allowScroll = $form.matches(SELECTORS.formScroll);\n const pristine = new Pristine($form, pristineConfig);\n\n // reset all validation on nomination form type change\n /*\n on('change', `${SELECTORS.asClass('styledForm')} select[name=\"NominationType\"]`, function() {\n window.setTimeout(function() {\n pristine.destroy();\n fn.setupForm($form);\n }, 100);\n });\n */\n\n // Revalidate easydropdown fields on change\n on('change', `${SELECTORS.asClass('styledForm')} select`, e => pristine.validate(e.target));\n\n // Hide any native SilverStripe errors\n on('keyup', `${SELECTORS.asClass('styledForm')} input`, e => {\n const $field = e.target.closest('.field');\n const $error = $field.querySelector('.message');\n\n if ($error) {\n $error.remove();\n }\n });\n\n $form.addEventListener('submit', e => {\n if (e.target.skipValidation) {\n return true;\n }\n\n const valid = pristine.validate();\n\n if (!valid) {\n e.preventDefault();\n const $firstError = $form.querySelector('.field.has-error');\n\n if ($firstError && allowScroll) {\n scrollTo($firstError, 150, () => $firstError.querySelector('input').focus());\n }\n\n return false;\n }\n\n // Handle ajax submit if appropriate\n if ($form.classList.contains(SELECTORS.ajaxForm)) {\n e.preventDefault();\n\n const $errorMessage = $form.querySelector(SELECTORS.asClass('formErrorMessage'));\n $errorMessage.style.display = 'none';\n\n const $submitButton = $form.querySelector('[type=submit]');\n $submitButton.disabled = true;\n $submitButton.classList.add(SELECTORS.loading);\n\n const formData = new FormData($form);\n\n $.ajax({\n type: 'post',\n url: $form.action,\n data: formData,\n dataType: 'json',\n processData: false,\n contentType: false,\n success: resp => {\n if (resp.success) {\n $form.innerHTML = `
${resp.message}
`;\n\n // Figure out where to scroll to\n let $anchor = $form.closest(SELECTORS.formAnchor);\n $anchor =\n $anchor ? $anchor :\n $form;\n\n if (allowScroll) {\n scrollTo($anchor, 150);\n }\n } else {\n $errorMessage.innerHTML = resp.message;\n $errorMessage.style.display = 'block';\n\n if (resp.field_errors) {\n for (const field of resp.field_errors) {\n const $field = $form.querySelector(`[name=\"${field}\"]`);\n\n if ($field) {\n $field.classList.add('has-field-error');\n }\n }\n }\n }\n },\n error: () => {\n $errorMessage.innerHTML = 'Sorry, there was a problem with your submission';\n $errorMessage.style.display = 'block';\n },\n complete: () => {\n $submitButton.disabled = false;\n $submitButton.classList.remove(SELECTORS.loading);\n },\n });\n }\n\n return valid;\n });\n },\n};\n\nexport const Form = {\n init: $form => {\n fn.setupForm($form);\n },\n};\n\nexport default {\n can: () => $forms.length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n fn.bindEvents();\n },\n\n bindEvents: () => {\n var masonryEvents = ['load', 'resize'];\n masonryEvents.forEach(function (event) {\n window.addEventListener(event, fn.resizeAllMasonryItems());\n });\n\n fn.waitForImages();\n },\n\n resizeMasonryItem: (item) => {\n var grid = document.getElementsByClassName('masonry')[0];\n if (grid) {\n var rowGap = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-row-gap')),\n rowHeight = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-auto-rows')),\n gridImagesAsContent = item.querySelector('img.masonry-content');\n var rowSpan = Math.ceil((item.querySelector('.masonry-content').getBoundingClientRect().height + rowGap) / (rowHeight + rowGap));\n item.style.gridRowEnd = 'span ' + rowSpan;\n if (gridImagesAsContent) {\n item.querySelector('img.masonry-content').style.height = item.getBoundingClientRect().height + \"px\";\n }\n }\n },\n\n resizeAllMasonryItems: () => {\n var allItems = document.querySelectorAll('.masonry-item');\n if (allItems) {\n for (var i = 0; i < allItems.length; i++) {\n fn.resizeMasonryItem(allItems[i]);\n }\n }\n },\n\n waitForImages: () => {\n var allItems = document.querySelectorAll('.masonry-item');\n if (allItems) {\n for (var i = 0; i < allItems.length; i++) {\n $(allItems[i]).imagesLoaded((instance) => {\n var item = instance.elements[0];\n fn.resizeMasonryItem(item);\n });\n }\n }\n }\n}\n\nexport default {\n can: () => document.querySelectorAll('.masonry-item').length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.header-slider__carousel').length) {\n var slideOneCarousel = $('.header-slider__carousel').owlCarousel({\n loop: true,\n items: 1,\n margin: 0,\n dots: true,\n nav: false,\n animateOut: 'slideOutDown',\n animateIn: 'fadeIn',\n active: true,\n smartSpeed: 1000,\n autoplay: 9000,\n });\n $('.slide-one__left-btn').on('click', e => {\n slideOneCarousel.trigger('next.owl.carousel');\n e.preventDefault();\n });\n $('.slide-one__right-btn').on('click', e => {\n slideOneCarousel.trigger('prev.owl.carousel');\n e.preventDefault();\n });\n }\n }\n}\n\nexport default {\n can: () => $('.header-slider__carousel').length,\n run: fn.init,\n};\n","const angleLeft = `\n \n`;\nconst angleRight = `\n \n\n`;\n\nconst $slider = document.querySelectorAll('.latest-class-slider__carousel');\n\nconst fn = {\n init: () => {\n $($slider).owlCarousel({\n loop: true,\n margin: 0,\n nav: true,\n navText: [ `${angleLeft}`, `${angleRight}` ],\n dots: true,\n autoWidth: false,\n autoplay: true,\n smartSpeed: 700,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n responsive: {\n 0: {\n items: 1,\n slideBy: 1,\n },\n },\n });\n },\n};\n\nexport default {\n can: () => $slider.length,\n run: fn.init,\n};\n","const SELECTORS = Selectors({\n masonryLayout: '.masonary-layout',\n masonryLayoutNoGridWidth: '.masonary-layout-no-grid-width',\n});\n\nconst $masonryLayout = document.querySelectorAll(SELECTORS.masonryLayout);\nconst $masonryLayoutNoGridWidth = document.querySelectorAll(SELECTORS.masonryLayoutNoGridWidth);\n\nconst fn = {\n init: () => {\n $(document).ready(() => {\n if ($(SELECTORS.masonryLayout).length) {\n $(SELECTORS.masonryLayout).isotope({\n layoutMode: 'masonry',\n itemSelector: '.masonary-item',\n });\n }\n if ($(SELECTORS.masonryLayoutNoGridWidth).length) {\n $(SELECTORS.masonryLayoutNoGridWidth).isotope({\n layoutMode: 'masonry',\n itemSelector: '.masonary-item',\n });\n }\n });\n },\n};\n\nexport default {\n can: () => $masonryLayout.length || $masonryLayoutNoGridWidth.length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.main-navigation .navigation-box').length) {\n var subMenu = $('.main-navigation .submenu');\n subMenu.parent('li').children('a').append(function() {\n return '';\n });\n var mainNavToggler = $('.header-navigation .menu-toggler');\n var subNavToggler = $('.main-navigation .sub-nav-toggler');\n mainNavToggler.on('click', function() {\n var Self = $(this);\n var menu = Self.closest('.header-navigation').find(Self.data('target'));\n $(menu).slideToggle();\n $(menu).toggleClass('showen');\n return false;\n });\n subNavToggler.on('click', function() {\n var Self = $(this);\n Self.parent().parent().children('.submenu').slideToggle();\n return false;\n });\n }\n if ($('.stricky').length) {\n $('.stricky')\n .addClass('original')\n .clone(true)\n .insertAfter('.stricky')\n .addClass('stricked-menu')\n .removeClass('original');\n }\n $(window).on('scroll', function() {\n if ($('.scroll-to-top').length) {\n var strickyScrollPos = 100;\n if ($(window).scrollTop() > strickyScrollPos) {\n $('.scroll-to-top').fadeIn(500);\n } else {\n $('.scroll-to-top').fadeOut(500);\n }\n }\n if ($('.stricked-menu').length) {\n var headerScrollPos = 100;\n var stricky = $('.stricked-menu');\n if ($(window).scrollTop() > headerScrollPos) {\n stricky.addClass('stricky-fixed');\n } else {\n stricky.removeClass('stricky-fixed');\n }\n }\n });\n if ($('.accrodion-grp').length) {\n var accrodionGrp = $('.accrodion-grp');\n accrodionGrp.each(function() {\n var accrodionName = $(this).data('grp-name');\n var Self = $(this);\n var accordion = Self.find('.accrodion');\n Self.addClass(accrodionName);\n Self.find('.accrodion .accrodion-content').hide();\n Self.find('.accrodion.active').find('.accrodion-content').show();\n accordion.each(function() {\n $(this).find('.accrodion-title').on('click', function() {\n if ($(this).parent().hasClass('active') === false) {\n $('.accrodion-grp.' + accrodionName).find('.accrodion').removeClass('active');\n $('.accrodion-grp.' + accrodionName).find('.accrodion').find('.accrodion-content').slideUp();\n $(this).parent().addClass('active');\n $(this).parent().find('.accrodion-content').slideDown();\n }\n });\n });\n });\n }\n }\n}\n\nexport default {\n can: true,\n run: fn.init,\n};\n","import { on } from 'delegated-events';\nimport Pristine from 'pristinejs';\nimport scrollTo from '../common/scrollTo';\n\nconst $form = document.querySelector('form.nomination-form__form');\nconst $nominationTypeDropdown = document.querySelector('select[name=\"NominationType\"]');\nconst $individualFields = document.querySelector('.individual-fields');\nconst $teamFields = document.querySelector('.team-fields');\nlet oldFields;\nlet currentFields;\nlet oldTextAreas;\nlet currentTextAreas;\n\nconst SELECTORS = Selectors({\n formAnchor: '[data-form-anchor]',\n loading: 'is-loading',\n formErrorMessage: 'form-error-message'\n});\n\nexport const pristineConfig = {\n classTo: 'field',\n errorClass: 'has-error',\n successClass: 'has-success',\n errorTextParent: 'field',\n errorTextTag: 'div',\n errorTextClass: 'text-help',\n};\n\nconst fn = {\n init: () => {\n fn.setActive($individualFields, $teamFields);\n on('change', 'select[name=\"NominationType\"]', () => {\n let currentValue = $nominationTypeDropdown.options[$nominationTypeDropdown.selectedIndex].value;\n switch (currentValue) {\n case 'Individual':\n fn.setActive($individualFields, $teamFields);\n break;\n case 'Team':\n fn.setActive($teamFields, $individualFields);\n break;\n case '':\n $($individualFields).removeClass('active');\n $($teamFields).addClass('active');\n break;\n default:\n break;\n }\n return false;\n });\n\n $form.addEventListener('submit', e => {\n\n const pristine = new Pristine($form, pristineConfig)\n const valid = pristine.validate()\n\n e.preventDefault()\n if (!valid) {\n e.preventDefault();\n const $firstError = $form.querySelector('.field.has-error');\n\n if ($firstError) {\n if ($firstError.classList.contains('textarea')) {\n scrollTo($firstError, 150, () => $firstError.querySelector('textarea').focus());\n }\n else {\n scrollTo($firstError, 150, () => $firstError.querySelector('input').focus());\n }\n }\n\n return false;\n }\n else {\n\n const $submitButton = $form.querySelector('[type=submit]');\n $submitButton.disabled = true;\n $submitButton.classList.add(SELECTORS.loading);\n\n const formData = new FormData($form);\n\n const $errorMessage = $form.querySelector(SELECTORS.asClass('formErrorMessage'));\n $errorMessage.style.display = 'none';\n\n $.ajax({\n type: 'post',\n url: $form.action,\n data: formData,\n dataType: 'json',\n processData: false,\n contentType: false,\n success: resp => {\n if (resp.success) {\n $form.innerHTML = `
${resp.message}
`;\n\n // Figure out where to scroll to\n let $anchor = $form.closest(SELECTORS.formAnchor);\n $anchor =\n $anchor ? $anchor :\n $form;\n\n scrollTo($anchor, 150);\n\n } else {\n\n $errorMessage.innerHTML = resp.message;\n $errorMessage.style.display = 'block';\n\n if (resp.field_errors) {\n for (const field of resp.field_errors) {\n const $field = $form.querySelector(`[name=\"${field}\"]`);\n\n if ($field) {\n $field.classList.add('has-field-error');\n }\n }\n }\n }\n },\n error: () => {\n $errorMessage.innerHTML = 'Sorry, there was a problem with your submission';\n $errorMessage.style.display = 'block';\n },\n complete: () => {\n $submitButton.disabled = false;\n $submitButton.classList.remove(SELECTORS.loading);\n },\n });\n\n }\n });\n\n },\n\n setActive: (active, inactive) => {\n $(inactive).removeClass('active');\n oldFields = inactive.querySelectorAll('input');\n oldFields.forEach(field => {\n field.removeAttribute('required');\n field.removeAttribute('aria-required');\n field.removeAttribute('data-pristine-required');\n });\n oldTextAreas = inactive.querySelectorAll('textarea');\n oldTextAreas.forEach(textArea => {\n textArea.removeAttribute('required');\n textArea.removeAttribute('aria-required');\n textArea.removeAttribute('data-pristine-required');\n });\n $(active).addClass('active');\n currentFields = active.querySelectorAll('input');\n currentFields.forEach(field => {\n field.setAttribute('required', 'required');\n field.setAttribute('aria-required', 'true');\n field.setAttribute('data-pristine-required', 'true');\n });\n currentTextAreas = active.querySelectorAll('textarea');\n currentTextAreas.forEach(TextArea => {\n TextArea.setAttribute('required', 'required');\n TextArea.setAttribute('aria-required', 'true');\n TextArea.setAttribute('data-pristine-required', 'true');\n });\n },\n};\n\nexport default {\n can: () => $form,\n run: fn.init,\n};\n","import { on } from 'delegated-events'\nimport scrollTo from '../common/scrollTo'\n\nconst SELECTORS = Selectors({\n paginatedList: '[data-paginated-list]',\n paginatedListNav: '[data-paginated-list-nav]',\n paginatedListTrigger: '[data-paginated-list-trigger]',\n paginatedListHide: '[data-paginated-list-hide]',\n paginatedCount: 'paginated-count',\n paginatedCountTarget: '[data-paginated-count-target]',\n loading: 'is-loading'\n})\n\nconst $paginated = document.querySelectorAll(SELECTORS.paginatedList)\n\nconst fn = {\n init: () => {\n fn.bindEvents()\n },\n\n bindEvents: () => {\n on('click', SELECTORS.paginatedListTrigger, fn.handleClick)\n },\n\n handleClick: (e) => {\n e.preventDefault()\n\n const $trigger = e.target\n const $nav = $trigger.closest(SELECTORS.paginatedListNav)\n const $list = $nav.previousElementSibling\n const isHide = $trigger.matches(SELECTORS.paginatedListHide)\n\n $trigger.disabled = true\n $trigger.classList.add(SELECTORS.loading)\n\n $.getJSON($trigger.href)\n .then(resp => {\n const $newNav = document.createRange().createContextualFragment(resp.nav)\n $nav.parentNode.replaceChild($newNav, $nav)\n\n if (isHide) {\n $list.innerHTML = resp.list\n } else {\n const $newList = document.createRange().createContextualFragment(resp.list)\n $list.append($newList)\n }\n\n if (isHide) {\n scrollTo($list, 150)\n }\n })\n }\n}\n\nexport default {\n can: () => $paginated.length,\n run: fn.init\n}\n","const $imagePopups = document.querySelectorAll('.img-popup');\nconst $contentPopups = document.querySelectorAll('.content-popup');\nconst $videoPopups = document.querySelectorAll('.video-popup');\n\nconst fn = {\n init: () => {\n (function ($) {\n 'use strict';\n if ($($imagePopups).length) {\n fn.setupImagePopup();\n }\n if ($($contentPopups).length) {\n fn.setupContentPopup();\n }\n if ($($videoPopups).length) {\n fn.setupVideoPopup();\n }\n })(jQuery);\n },\n\n setupImagePopup: () => {\n var groups = {};\n $($imagePopups).each(function() {\n var id = parseInt($(this).attr('data-group'), 10);\n\n if (!groups[id]) {\n groups[id] = [];\n }\n\n groups[id].push(this);\n });\n\n $.each(groups, function() {\n $(this).magnificPopup({\n type: 'image',\n closeOnContentClick: true,\n closeBtnInside: false,\n gallery: { enabled: true },\n });\n });\n },\n\n setupContentPopup: () => {\n var groups = {};\n $($contentPopups).each(function() {\n var id = parseInt($(this).attr('data-group'), 10);\n\n if (!groups[id]) {\n groups[id] = [];\n }\n\n groups[id].push(this);\n });\n\n $.each(groups, function() {\n $(this).magnificPopup({\n type: 'ajax',\n closeOnContentClick: true,\n closeBtnInside: false,\n gallery: { enabled: true },\n fixedContentPos: true,\n });\n });\n },\n\n setupVideoPopup: () => {\n var groups = {};\n $($videoPopups).each(function() {\n var id = parseInt($(this).attr('data-group'), 10);\n\n if (!groups[id]) {\n groups[id] = [];\n }\n\n groups[id].push(this);\n });\n\n $.each(groups, function() {\n $(this).magnificPopup({\n type: 'iframe',\n closeOnContentClick: true,\n closeBtnInside: false,\n gallery: { enabled: true },\n fixedContentPos: true,\n });\n });\n },\n};\n\nexport default {\n can: () => $imagePopups.length || $contentPopups.length || $videoPopups.length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.preloader').length) {\n $('.preloader').fadeOut('slow');\n }\n }\n}\n\nexport default {\n can: () => true,\n run: fn.init,\n};\n","import Pristine from 'pristinejs';\nimport scrollTo from '../common/scrollTo';\n\nconst $form = document.querySelector('form.scholarship-form__form');\n\nconst SELECTORS = Selectors({\n formAnchor: '[data-form-anchor]',\n loading: 'is-loading',\n formErrorMessage: 'form-error-message'\n});\n\nexport const pristineConfig = {\n classTo: 'field',\n errorClass: 'has-error',\n successClass: 'has-success',\n errorTextParent: 'field',\n errorTextTag: 'div',\n errorTextClass: 'text-help',\n};\n\nconst fn = {\n init: () => {\n\n $form.addEventListener('submit', e => {\n\n const pristine = new Pristine($form, pristineConfig)\n const valid = pristine.validate()\n\n if (!valid) {\n e.preventDefault();\n const $firstError = $form.querySelector('.field.has-error');\n\n if ($firstError) {\n if ($firstError.classList.contains('textarea')) {\n scrollTo($firstError, 150, () => $firstError.querySelector('textarea').focus());\n }\n else if ($firstError.classList.contains('dropdown')) {\n scrollTo($firstError, 150, () => $firstError.querySelector('dropdown'));\n }\n else {\n scrollTo($firstError, 150, () => $firstError.querySelector('input').focus());\n }\n }\n\n return false;\n }\n else {\n\n const $submitButton = $form.querySelector('[type=submit]');\n $submitButton.disabled = true;\n $submitButton.classList.add(SELECTORS.loading);\n\n }\n });\n\n },\n\n};\n\nexport default {\n can: () => $form,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.scroll-to-target').length) {\n $('.scroll-to-target').on('click', function () {\n var target = $(this).attr('data-target');\n // animate\n $('html, body').animate(\n {\n scrollTop: $(target).offset().top,\n },\n 1000\n );\n\n return false;\n });\n }\n }\n}\n\nexport default {\n can: () => true,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.search-popup__toggler').length) {\n $('.search-popup__toggler').on('click', e => {\n $('.search-popup').addClass('active');\n e.preventDefault();\n });\n }\n if ($('.search-popup__overlay').length) {\n $('.search-popup__overlay').on('click', e => {\n $('.search-popup').removeClass('active');\n e.preventDefault();\n });\n }\n }\n}\n\nexport default {\n can: () => $('.search-popup__toggler').length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('.side-menu__block-inner').length) {\n $('.side-menu__block-inner').mCustomScrollbar({\n axis: 'y',\n theme: 'dark',\n });\n }\n\n if ($('.side-menu__toggler').length) {\n $('.side-menu__toggler').on('click', function (e) {\n $('.side-menu__block').addClass('active');\n e.preventDefault();\n });\n }\n\n if ($('.side-menu__block-overlay').length) {\n $('.side-menu__block-overlay').on('click', function (e) {\n $('.side-menu__block').removeClass('active');\n e.preventDefault();\n });\n }\n }\n}\n\nexport default {\n can: () => true,\n run: fn.init,\n};\n","const $slider = document.querySelectorAll('.testimonials-slider__carousel');\n\nconst fn = {\n init: () => {\n let testimonialCarouselMargin = 80;\n if ($($slider).data('carousel-margin') !== undefined) {\n testimonialCarouselMargin = $($slider).data('carousel-margin');\n } else {\n testimonialCarouselMargin = 80;\n }\n let testimonialCarousel = $($slider).owlCarousel({\n loop: true,\n margin: testimonialCarouselMargin,\n nav: false,\n dots: true,\n autoWidth: false,\n autoplay: true,\n smartSpeed: 700,\n autoplayTimeout: 5000,\n autoplayHoverPause: true,\n responsive: {\n 0: {\n items: 1,\n },\n 480: {\n items: 1,\n },\n 600: {\n items: 1,\n },\n 991: {\n items: 1,\n },\n 1000: {\n items: 1,\n },\n 1200: {\n items: 1,\n },\n },\n });\n\n $('.testimonials-slider__navbtn-left').on('click', () => {\n testimonialCarousel.trigger('next.owl.carousel');\n return false;\n });\n $('.testimonials-slider__navbtn-right').on('click', () => {\n testimonialCarousel.trigger('prev.owl.carousel');\n return false;\n });\n },\n};\n\nexport default {\n can: () => $slider.length,\n run: fn.init,\n};\n","const fn = {\n init: () => {\n if ($('[data-toggle=\"tooltip\"]').length) {\n $('[data-toggle=\"tooltip\"]').tooltip();\n }\n }\n}\n\nexport default {\n can: () => $('[data-toggle=\"tooltip\"]').length,\n run: fn.init,\n};\n","const Selectors = function(selectors = {}) {\n return Object.assign({\n asId(selectorKey) {\n return `#${this[selectorKey]}`\n },\n asClass(selectorKey) {\n return `.${this[selectorKey]}`\n },\n asString(selectorKey) {\n return selectorKey.replace(/^(#|\\.)/, '')\n }\n }, selectors)\n}\n\nexport default Selectors\n","import jump from 'jump.js';\n\nconst getStuckHeaderHeight = () => {\n const $header = document.querySelector('.site-header');\n\n if ($header) {\n return $header.offsetHeight - 90;\n }\n\n return 0;\n};\n\nconst scrollTo = ($target, additionalOffset = 0, callback) => {\n const headerHeight = getStuckHeaderHeight();\n const headerOffset = Math.floor(headerHeight + headerHeight / 3) * -1;\n const offset = headerOffset - additionalOffset;\n\n jump($target, { duration: 500, offset, callback });\n};\n\nexport default scrollTo;\n"],"sourceRoot":""}