{"version":3,"sources":["job.js"],"names":["jobToast","jobToastCookie","setJobToastCookie","setCookie","init","$","length","getCookie","lastTriggerPosition","addClass","triggerElement","document","querySelector","IntersectionObserver","entries","y","boundingClientRect","down","undefined","attr","observe","watchForWhenToShowToast","on","slideUp","stickyNugget","element","wrapper","header","stickOrNoStick","offset","offsetHeight","wrapperCompStyles","window","getComputedStyle","parseInt","getPropertyValue","matchMedia","matches","innerHeight","style","top","position","debouncedResizeEvent","utils","supportsSticky","debounce","addEventListener"],"mappings":"AAAA,IAAAA,SAAA,WAEA,IAAAC,EAAA,2BA+CA,SAAAC,IACAC,UAAAF,EAAA,OAAA,KAgBA,MAAA,CACAG,KA/DA,WAWAC,EAAA,0BAAAC,QAAAD,EAAA,iBAAAC,SAAAC,UAAAN,KAGA,WAKA,IAAAO,EAJAH,EAAA,iBAAAI,SAAA,aAKA,IAAAC,EAAAC,SAAAC,cAAA,0BAEA,IAAAC,qBAAA,SAAAC,GAEA,IAAAC,EAAAD,EAAA,GAAAE,mBAAAD,EACAE,OAAAC,IAAAV,GAAAO,EAAAP,EACAA,EAAAO,EAEAE,IAaAZ,EAAA,iBAAAI,SAAA,aAAAU,KAAA,OAAA,SACAjB,OANAkB,QAAAV,GAjCAW,GA+CAhB,EAAA,uBAAAiB,GAAA,QAAA,WACAjB,EAAA,iBAAAkB,UACArB,OAKAG,EAAA,2BAAAC,QACAJ,MA9DA,GAwEAG,EAAA,WACAL,SAAAI,SAEA,IAAAoB,aAAA,WAEA,IAAAC,EAAAd,SAAAC,cAAA,wBACAc,EAAAf,SAAAC,cAAA,gCACAe,EAAAhB,SAAAC,cAAA,mBAkBA,SAAAgB,IAEA,IAAAC,EAAAF,EAAAG,aACAC,EAAAC,OAAAC,iBAAAP,GACAG,GAAAK,SAAAH,EAAAI,iBAAA,gBAEAH,OAAAI,WAAA,sBAAAC,SAAAZ,EAAAK,aAAAD,EAAAG,OAAAM,aAEAb,EAAAc,MAAAC,IAAAX,EAAA,KACAJ,EAAAc,MAAAE,SAAA,WAIAhB,EAAAc,MAAAC,IAAA,OACAf,EAAAc,MAAAE,SAAA,UAMA,MAAA,CACArC,KArCA,WASA,IAEAsC,EATAjB,GAAAkB,MAAAC,mBASAF,EAAAC,MAAAE,SAAA,WAAAjB,KAAA,KACAI,OAAAc,iBAAA,SAAAJ,GAPAd,OAXA,GAgDAvB,EAAA,WACAmB,aAAApB","file":"job-78e048618f.min.js","sourcesContent":["var jobToast = function () {\r\n\r\n\tvar jobToastCookie = \"SearchResultsPageVisited\";\r\n\r\n\tfunction init() {\r\n\r\n\t\tif (shouldShowToast()) {\r\n\t\t\twatchForWhenToShowToast();\r\n\t\t\tattachCloseButtonClick();\r\n\t\t}\r\n\r\n\t\tcheckIfCareersSearchPage();\r\n\t}\r\n\r\n\tfunction shouldShowToast() {\r\n\t\treturn $('.js-job-toast-waypoint').length && $('.js-job-toast').length && !getCookie(jobToastCookie);\r\n\t}\r\n\r\n\tfunction watchForWhenToShowToast() {\r\n\t\t$('.js-job-toast').addClass('is-active');\r\n\r\n\t\t// https://codepen.io/benfrain/pen/RwoGYKd\r\n\r\n\t\tvar lastTriggerPosition;\r\n\t\tvar triggerElement = document.querySelector('.js-job-toast-waypoint');\r\n\r\n\t\tvar toastObserver = new IntersectionObserver(function (entries) {\r\n\r\n\t\t\tvar y = entries[0].boundingClientRect.y;\r\n\t\t\tvar down = lastTriggerPosition !== undefined ? lastTriggerPosition > y : true;\r\n\t\t\tlastTriggerPosition = y;\r\n\r\n\t\t\tif (!down) {\r\n\r\n\t\t\t\tshowToast();\r\n\r\n\t\t\t}\r\n\r\n\t\t});\r\n\r\n\t\ttoastObserver.observe(triggerElement);\r\n\r\n\t}\r\n\r\n\tfunction showToast() {\r\n\t\t$('.js-job-toast').addClass('is-sticky').attr('role', 'alert');\r\n\t\tsetJobToastCookie();\r\n\t}\r\n\r\n\tfunction setJobToastCookie() {\r\n\t\tsetCookie(jobToastCookie, 'true', 365);\r\n\t}\r\n\r\n\tfunction attachCloseButtonClick() {\r\n\t\t$('.js-job-toast-close').on('click', function () {\r\n\t\t\t$('.js-job-toast').slideUp();\r\n\t\t\tsetJobToastCookie();\r\n\t\t});\r\n\t}\r\n\r\n\tfunction checkIfCareersSearchPage() {\r\n\t\tif ($('.js-search-results-page').length) {\r\n\t\t\tsetJobToastCookie();\r\n\t\t}\r\n\t}\r\n\r\n\treturn {\r\n\t\tinit: init\r\n\t};\r\n\r\n}();\r\n\r\n$(function () {\r\n\tjobToast.init();\r\n});\r\nvar stickyNugget = function () {\r\n\r\n\tvar element = document.querySelector('[data-sticky-nugget]');\r\n\tvar wrapper = document.querySelector('[data-sticky-nugget-wrapper]');\r\n\tvar header = document.querySelector('.js-site-header');\r\n\r\n\tfunction init() {\r\n\r\n\t\tif (!element || !utils.supportsSticky()) return;\r\n\r\n\t\tattachResizeEvent();\r\n\t\tstickOrNoStick();\r\n\r\n\t}\r\n\r\n\tfunction attachResizeEvent() {\r\n\r\n\t\tvar debouncedResizeEvent = utils.debounce(function () { stickOrNoStick(); }, 150);\r\n\t\twindow.addEventListener('resize', debouncedResizeEvent);\r\n\r\n\t}\r\n\r\n\tfunction stickOrNoStick() {\r\n\r\n\t\tvar offset = header.offsetHeight;\r\n\t\tvar wrapperCompStyles = window.getComputedStyle(wrapper);\r\n\t\toffset += parseInt(wrapperCompStyles.getPropertyValue('padding-top'));\r\n\r\n\t\tif (window.matchMedia('(min-width: 768px)').matches && (element.offsetHeight + offset) < window.innerHeight) {\r\n\r\n\t\t\telement.style.top = offset + 'px';\r\n\t\t\telement.style.position = 'sticky';\r\n\r\n\t\t} else {\r\n\r\n\t\t\telement.style.top = 'auto';\r\n\t\t\telement.style.position = 'static';\r\n\r\n\t\t}\r\n\r\n\t}\r\n\r\n\treturn {\r\n\t\tinit: init\r\n\t};\r\n\r\n}();\r\n\r\n$(function () {\r\n\tstickyNugget.init();\r\n});\r\n"]}