diff --git a/components/byu-header/byu-header-common.scss b/components/byu-header/byu-header-common.scss index 5deead9d..85140760 100644 --- a/components/byu-header/byu-header-common.scss +++ b/components/byu-header/byu-header-common.scss @@ -178,12 +178,15 @@ padding: 0; } +$menuTransitionTiming: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1); +$menuTransition: max-height $menuTransitionTiming; /* MOBILE */ @mixin mobileMenu() { max-height: 0; - transition: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1); + transition: $menuTransition; + will-change: max-height; } @mixin mobileHeaderContent() { @@ -272,17 +275,19 @@ } @mixin searchTransition() { - transform: scaleY(1); - transition: height .1s ease-in-out; - height: 35px!important; + max-height: 35px; + transition: $menuTransition, transform $menuTransitionTiming; + will-change: max-height, transform; + overflow: hidden; + transform: scale(1, 1); transform-origin: top; } @mixin searchTransformed() { - transform: scaleY(0); - height: 0 !important; -} + max-height: 0; + transform: scale(1, 0); +} /* FULL SIZE */ diff --git a/components/byu-header/byu-header.js b/components/byu-header/byu-header.js index a8984349..e5321e4d 100644 --- a/components/byu-header/byu-header.js +++ b/components/byu-header/byu-header.js @@ -169,9 +169,11 @@ class BYUHeader extends HTMLElement { if (!menu) return; if (this.menuOpen) { menu.style.maxHeight = menu.scrollHeight + 'px'; + this.classList.add('byu-header-menu-open'); transformIcon(this.shadowRoot.querySelector('.mobile-menu-button')); } else { menu.style.maxHeight = null; + this.classList.remove('byu-header-menu-open'); revertIcon(this.shadowRoot.querySelector('.mobile-menu-button')); } } diff --git a/components/byu-header/byu-header.scss b/components/byu-header/byu-header.scss index ffb7147e..0a6cda63 100644 --- a/components/byu-header/byu-header.scss +++ b/components/byu-header/byu-header.scss @@ -171,7 +171,7 @@ @include searchTransition(); } -:host([menu-open][mobile-view]) .byu-header-search { +:host(.byu-header-menu-open[mobile-view]) .byu-header-search { @include searchTransformed(); } diff --git a/dist/byu-theme-components.css.map b/dist/byu-theme-components.css.map index 6c878637..be742958 100644 --- a/dist/byu-theme-components.css.map +++ b/dist/byu-theme-components.css.map @@ -1 +1 @@ -{"version":3,"file":"byu-theme-components.css","sources":["byu-theme-components.scss","shared-styles/colors.scss","shared-styles/nav.scss","shared-styles/settings.scss","byu-footer/byu-footer-extras.scss","byu-footer/byu-footer-common.scss","byu-footer-action-button/byu-footer-action-button-extras.scss","byu-footer-action-button/byu-footer-action-button-common.scss","byu-footer-column/byu-footer-column-extras.scss","byu-footer-column/byu-footer-column-common.scss","byu-header/byu-header-extras.scss","byu-header/byu-header-common.scss","byu-header/icons/transformicons.scss","byu-menu/byu-menu-extras.scss","byu-menu/byu-menu-common.scss","byu-search/byu-search-extras.scss","byu-search/byu-search-common.scss","byu-social-media-links/byu-social-media-links-extras.scss","byu-social-media-links/byu-social-media-links-common.scss","byu-user-info/byu-user-info-extras.scss","byu-user-info/byu-user-info-common.scss"],"sourcesContent":["@import \"shared-styles/colors\";\r\n@import \"shared-styles/nav\";\r\n\r\n// import individual component extras files\r\n@import \"byu-footer/byu-footer-extras\";\r\n@import \"byu-footer-action-button/byu-footer-action-button-extras\";\r\n@import \"byu-footer-column/byu-footer-column-extras\";\r\n@import \"byu-header/byu-header-extras\";\r\n@import \"byu-menu/byu-menu-extras\";\r\n@import \"byu-search/byu-search-extras\";\r\n@import \"byu-social-media-links/byu-social-media-links-extras\";\r\n@import \"byu-user-info/byu-user-info-extras\";\r\n\r\n// this isn't the place for general styling. Please include further styling in the 2017-styles repo.\r\nbody {\r\n margin: 0;\r\n}","\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n//$byu_blue: #002e5d; // replacing this to just $navy\r\n$navy: #002e5d;\r\n//$menuHoverGray: $gray; // need to go replace\r\n//$menuActiveGray: $lightgray; // need to go replace\r\n\r\n// blues\r\n$navy: #002E5D;\r\n$medblue: #869DB5;\r\n$lightBlue: #e0f0cc;\r\n$xlightblue: #C3DDF9;\r\n$brightBlue: #0057B8;\r\n\r\n$royal: #003DA5;\r\n$lightRoyal: #114BAD;\r\n\r\n// There are 6 grays right now..\r\n$xlightgray: #f2f2f2;\r\n$lightgray: #e5e5e5;\r\n$lightergray: #e6e6e6;\r\n//$medgray: #9b9b9b; // extra\r\n$gray: #c5c5c5;\r\n$medgray: #666;\r\n$darkgray: #6a6a6b; // least used gray\r\n$darkestgray: #141414; // this should be used for body & default text.\r\n\r\n\r\n// other colors\r\n$red: #B3041A;\r\n\r\n$yellow: #FCC015;\r\n$lightyellow: #fef2d0;\r\n\r\n$teal: #84DCB4;\r\n$lightteal: #e5f7ef;\r\n\r\n$green: #66B200; // doesn't work with accessibility\r\n$lightgreen: #e0f0cc;\r\n//$green: #4D8501; // was #6EAE17;\r\n//$greendarkened: #498000 ; // was #6AA816;\r\n\r\n// other blues Aleni has used:\r\n//$lightestblue: #C4CFDA;\r\n//$lightblue: #A6B6C7;\r\n//$lightmedblue: #889FB7;\r\n//$medblue: #697F96; // was #889FB7 but it couldn't have white on it with enough contrast\r\n//$darkmedblue: #5B728A; // #5B728A is enough contrast for small white text","@import \"colors.scss\";\r\n@import \"settings.scss\";\r\n\r\n@mixin headerLink() {\r\n text-decoration: none !important;\r\n font-size: 13px!important;\r\n font-family: $headerContentFont !important;\r\n font-weight: $headerContentFontWeight!important;\r\n text-transform: uppercase!important;\r\n color: white !important;\r\n}\r\n\r\n@mixin navItemHover() {\r\n background: $gray !important;\r\n}\r\n\r\n@mixin navItemSelected() {\r\n background: $lightgray !important;\r\n}\r\n\r\n//@mixin navItemLongLink() {\r\n// max-width: 300px;\r\n// flex: 2;\r\n//}\r\n//\r\n//@mixin navItemExtraLongLink() {\r\n// max-width: 400px;\r\n// flex: 3;\r\n//}\r\n\r\n@mixin navItem() {\r\n @include headerLink();\r\n font-family: $menuFont !important;\r\n font-weight: $menuFontWeight!important;\r\n color: $navy !important;\r\n height: $menuHeight !important;\r\n display: inline-block;\r\n box-sizing: border-box;\r\n text-align: center !important;\r\n padding: 0 6px !important;\r\n line-height: $menuHeight !important;\r\n white-space: nowrap !important;\r\n overflow: hidden !important;\r\n text-overflow: ellipsis !important;\r\n transition: background 0.3s;\r\n\r\n &:hover {\r\n @include navItemHover();\r\n }\r\n\r\n &.selected {\r\n @include navItemSelected();\r\n }\r\n\r\n &.active {\r\n @include navItemSelected();\r\n }\r\n\r\n //&.long-link {\r\n // @include navItemLongLink();\r\n //}\r\n //\r\n //&.extra-long-link {\r\n // @include navItemExtraLongLink();\r\n //}\r\n}\r\n\r\n@mixin dropdownNavItem() {\r\n @include navItem();\r\n display: block;\r\n //width: 100%;\r\n box-sizing: border-box;\r\n padding: 18px 33px !important;\r\n line-height: 12px;\r\n text-align: left !important;\r\n height: auto !important;\r\n}","@import \"colors.scss\";\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n/* -- breakpoint settings ----- */\r\n$mobile_sidebar_width: 20%;\r\n$mobile_main_width: 100% - $mobile_sidebar_width;\r\n\r\n/* --- header settings ------- */\r\n$headerHeight: 55px;\r\n$siteNameFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n\r\n$byuLogoHeight: 34px;\r\n\r\n$siteTitleSize: 22px;\r\n$mobileSiteTitleSize: 16px;\r\n$siteSubTitleSize: 14px;\r\n$siteSuperTitleSize: 14px;\r\n$mobileSiteSubTitleSize: 12px;\r\n$mobileSiteSuperTitleSize: 12px;\r\n\r\n$pageContentVerticalPadding: 0;\r\n$pageContentHorizontalPadding: 16px;\r\n$pageContentPadding: $pageContentVerticalPadding $pageContentHorizontalPadding;\r\n\r\n$headerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$headerContentFontWeight: 500;\r\n/* --- search settings -------- */\r\n$searchPlaceholderColor: $gray;\r\n\r\n// menu settings\r\n$menuHeight: 35px;\r\n$menuFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$menuFontWeight: 500;\r\n//headerContentFont and menuFont are currently same, but might change later\r\n\r\n$nav_gradient: 10%;\r\n$nav_gradient_2: 5%;\r\n\r\n$menuHover: $gray; // need to go replace\r\n$menuActive: $lightgray; // need to go replace$hover_color\r\n\r\n/* --------- general text settings ----- */\r\n\r\n\r\n\r\n/* ------ footer settings ------------- */\r\n\r\n\r\n$footerBackground: $lightgray;\r\n$footerContentColor: $medgray;\r\n$footerColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$footerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$footerContentFontWeight: 400;\r\n$footerContentFontSize: 14px;\r\n\r\n$footerButtonColor: $medgray; // change this to one of the colors\r\n$footerButtonFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n","\r\n@import \"byu-footer-common\";\r\n\r\nbyu-footer:not(.byu-component-rendered) {\r\n background: $lightgray;\r\n min-height: 200px;\r\n display: flex;\r\n width: 100%;\r\n font-family: sans-serif;\r\n font-weight: 600;\r\n flex-wrap: wrap;\r\n padding-top: 30px;\r\n justify-content: space-around;\r\n\r\n &:empty {\r\n min-height: 0;\r\n padding: 0;\r\n }\r\n}\r\n\r\nbyu-footer:not(.byu-component-rendered):after {\r\n background: $navy url('https://cdn.byu.edu/shared-icons/latest/logos/word-mark-wide-white.svg') no-repeat center 11px;\r\n background-size: 450px 40px;\r\n height: 90px;\r\n width: 100vw;\r\n content: ' ';\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n$universityFooterBgColor: $navy;\r\n$universityFooterTextColor: white;\r\n$universityFooterFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$universityFooterFontWeight: 400;\r\n$universityFooterHeight: 80px;\r\n\r\n$universityFooterLogoHeight: 40px;\r\n$universityFooterLogoWidth: 450px;\r\n$universityFooterLogoVerticalOffset: 10px;\r\n\r\n$universityFooterVerticalPadding: 21px;\r\n\r\n$siteFooterHorizontalPadding: 8px;\r\n$siteFooterVerticalPadding: 0;\r\n$siteFooterPadding: $siteFooterVerticalPadding $siteFooterHorizontalPadding;\r\n\r\n$siteFooterMobilePadding: 16px $siteFooterHorizontalPadding 0;\r\n\r\n$large-siteFooterContentTopMargin: 30px;\r\n$large-siteFooterContentBottomMargin: 40px;\r\n\r\n$large-siteFooterContentMargin: $large-siteFooterContentTopMargin $siteFooterHorizontalPadding $large-siteFooterContentBottomMargin;\r\n\r\n$siteFooterBackground: $lightgray;\r\n$siteFooterContentColor: $medgray;\r\n$siteFooterColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$siteFooterContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$siteFooterContentFontWeight: 400;\r\n$siteFooterContentFontSize: 13px;\r\n\r\n","@import \"byu-footer-action-button-common\";\r\n\r\n//byu-footer-action-button:not(:defined) {\r\nbyu-footer-action-button:not(.byu-component-rendered) {\r\n @include footerActionButton();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) > * {\r\nbyu-footer-action-button:not(.byu-component-rendered) > * {\r\n @include footerActionButtonSlotted();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) a {\r\nbyu-footer-action-button:not(.byu-component-rendered) a {\r\n @include footerActionButtonSlottedLink();\r\n}","\r\n@import \"../shared-styles/colors\";\r\n@import \"../shared-styles/settings\";\r\n\r\n@mixin footerActionButton() {\r\n background-color: $footerButtonColor;\r\n font-family: $footerButtonFont;\r\n font-size: 20px !important;\r\n color: #fff;\r\n display: inline-block;\r\n text-align: center;\r\n line-height: 2.1em;\r\n height: 45px;\r\n width: auto;\r\n min-width: 125px;\r\n margin: 10px 0 20px 0;\r\n -webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n -moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n}\r\n\r\n// Use this to change how the button looks when active\r\n// :host(:active) {\r\n// -webkit-box-shadow: none;\r\n// -moz-box-shadow: none;\r\n// box-shadow: none;\r\n// }\r\n\r\n@mixin footerActionButtonSlotted() {\r\n font-family: $footerButtonFont !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: #fff !important;\r\n display: inline-block !important;\r\n position: relative !important;\r\n height: 100% !important;\r\n width: 100% !important;\r\n margin: 0 20px !important;\r\n left: -20px !important;\r\n cursor: pointer !important;\r\n vertical-align: middle !important;\r\n}\r\n\r\n@mixin footerActionButtonSlottedLink() {\r\n text-decoration: none !important;\r\n}","@import \"byu-footer-column-common\";\r\n\r\n//byu-footer-column:not(:defined) {\r\nbyu-footer-column:not(.byu-component-rendered) {\r\n @include footerColumn();\r\n\r\n .header {\r\n @include header();\r\n }\r\n\r\n .header > * {\r\n @include headerSlotted();\r\n }\r\n\r\n .content *:not(byu-footer-action-button) {\r\n @include contentNotButton();\r\n }\r\n\r\n #defaultContent a {\r\n @include defaultContentLink();\r\n }\r\n\r\n #defaultContent a:hover {\r\n @include defaultContentLinkHover();\r\n }\r\n}\r\n\r\nbyu-footer-column:not(.byu-component-rendered) [slot=\"header\"] {\r\n font-family: serif;\r\n font-size: 20px;\r\n text-transform: uppercase;\r\n color: $navy;\r\n font-weight: 600;\r\n display: block;\r\n}\r\n\r\nbyu-footer-column a {\r\n color: $footerContentColor !important;\r\n text-decoration: none !important;\r\n}\r\n\r\nbyu-footer-column a:hover {\r\n color: $navy !important;\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin footerColumn() {\r\n padding: 0 15px;\r\n box-sizing: border-box;\r\n float: left;\r\n}\r\n\r\n@mixin header() {\r\n width: 100%;\r\n margin: 0 0 8px;\r\n}\r\n\r\n@mixin headerSlotted() {\r\n font-family: $footerColumnTitleFont !important;\r\n text-transform: uppercase !important;\r\n color: $navy !important;\r\n font-size: 20px !important;\r\n border-bottom: 1px solid $gray !important;\r\n padding-bottom: 3px !important;\r\n font-weight: $footerContentFontWeight !important;\r\n width: 100%;\r\n display: inline-block;\r\n}\r\n\r\n@mixin contentNotButton() {\r\n font-family: $footerContentFont !important;\r\n font-size: $footerContentFontSize !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: $footerContentColor !important;\r\n display: block;\r\n padding: 11px 0;\r\n}\r\n\r\n@mixin defaultContentLink() {\r\n text-decoration: none !important;\r\n outline: none !important;\r\n color: #666;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin defaultContentLinkHover() {\r\n cursor: pointer;\r\n color: $navy !important;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin clearParagraphMargins() {\r\n margin: 0;\r\n}","@import \"byu-header-common\";\r\n\r\n//byu-header:not(:defined) {\r\nbyu-header:not(.byu-component-rendered) {\r\n @include headerPrimary();\r\n flex-wrap: wrap;\r\n width: 100%;\r\n height: 90px;\r\n color: #fff!important;\r\n padding: 0;\r\n a {\r\n color: #fff!important;\r\n }\r\n [slot=\"actions\"] {\r\n text-transform: uppercase;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n font-weight: 500;\r\n font-size: 13px;\r\n margin-top: 1px;\r\n }\r\n}\r\n\r\n//byu-header:not(:defined) > [slot=\"site-title\"] {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"] {\r\n @include headerTitles();\r\n padding-left: 16px;\r\n flex-direction: row;\r\n height: 40px;\r\n align-items: center;\r\n}\r\n\r\n// byu icon\r\n//byu-header:not(:defined) > [slot=\"site-title\"]:before {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"]:before {\r\n content: \"BYU\"; // make sure the space is the exact same size\r\n font-size: 40px;\r\n font-family: \"Arial\", sans-serif;\r\n padding-right: 16px;\r\n font-weight: 800 !important;\r\n letter-spacing: 2px;\r\n}\r\n\r\n\r\nbyu-header a[slot=\"site-title\"], byu-header [slot=\"site-title\"] a {\r\n @include headerTitleText();\r\n}\r\n/* MOBILE */\r\n//#mobileMenu {\r\n// @include mobileMenu();\r\n//}\r\n//\r\n//.byu-header > [name=actions] {\r\n// @include actions();\r\n//}\r\n//\r\n//.byu-header[mobile-view] {\r\n// & > [name=actions] {\r\n// @include actionsMobile();\r\n// }\r\n// & > div > * {\r\n// @include headerInnerMarginMobile();\r\n// }\r\n//}\r\n//\r\n//.byu-header {\r\n// @include headerFonts();\r\n// & > div > * {\r\n// @include headerInnerMargin();\r\n// }\r\n// button {\r\n// @include headerButton();\r\n//\r\n// &.mobile-menu-button {\r\n// @include headerButtonMobile();\r\n// }\r\n// }\r\n// .byu-header-primary {\r\n// @include headerPrimary();\r\n// .byu-header-title, #title > * {\r\n// @include headerTitle();\r\n// }\r\n// }\r\n// .byu-header-user {\r\n// button {\r\n// @include headerUserButton();\r\n// .icon {\r\n// @include headerUserIcon();\r\n// }\r\n// .label {\r\n// @include headerUserLabel();\r\n// }\r\n// }\r\n// }\r\n// .byu-header-search {\r\n// #search-input {\r\n// @include searchInput();\r\n// .byu-header-search.-webkit-input-placeholder {\r\n// @include searchWebkitPlaceholder();\r\n// }\r\n// .byu-header-search.-ms-input-placeholder {\r\n// @include searchMicrosoftPlaceholder();\r\n// }\r\n// .byu-header-search.-moz-placeholder {\r\n// @include searchMozillaPlaceholder();\r\n// }\r\n// }\r\n// }\r\n// .byu-logo {\r\n// @include byuLogo();\r\n// }\r\n//}\r\n//\r\n//#mobileMenu {\r\n// @include mobileMenu();","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n@import \"../shared-styles/nav.scss\";\r\n@import \"icons/transformicons.scss\";\r\n\r\n/* GENERAL STYLING */\r\n@mixin headerRoot() {\r\n //background-color: $navy;\r\n width: 100%;\r\n}\r\n\r\n@mixin headerContent() {\r\n display: flex;\r\n justify-content: center;\r\n flex: 1;\r\n flex-basis: 100%;\r\n //padding: $pageContentPadding;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin headerLogoMargin() {\r\n margin-right: 16px;\r\n}\r\n\r\n@mixin headerDefaultFont(){\r\n font-family: $headerContentFont;\r\n font-size: 18px;\r\n}\r\n\r\n@mixin headerInnerMargin() {\r\n margin-right: 16px;\r\n}\r\n\r\n@mixin actionsNotMobile() {\r\n margin-left: 4px;\r\n margin-right: 4px;\r\n}\r\n\r\n@mixin actionsNotMobileLinks() {\r\n color: #fff !important;\r\n}\r\n\r\n@mixin actionsWrapper() {\r\n display: flex;\r\n align-items: center;\r\n height: $byuLogoHeight;\r\n}\r\n\r\n@mixin actions(){\r\n @include headerLink();\r\n}\r\n\r\n@mixin headerButton(){\r\n background-color: $medgray;\r\n color: #ffffff;\r\n border: none;\r\n cursor: pointer;\r\n}\r\n\r\n@mixin headerPrimary() {\r\n background-color: $navy;\r\n color: #ffffff;\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1;\r\n min-height: $headerHeight;\r\n box-sizing: border-box;\r\n padding-left: 16px;\r\n}\r\n\r\n@mixin headerTitleText() {\r\n font-family: $siteNameFont !important;\r\n color: #fff!important;\r\n text-decoration: none;\r\n}\r\n\r\n@mixin headerTitles() {\r\n overflow: hidden;\r\n -ms-text-overflow: ellipsis;\r\n text-overflow: ellipsis;\r\n flex: 1;\r\n display: flex;\r\n flex-direction: column;\r\n font-size: $siteTitleSize;\r\n @include headerTitleText();\r\n}\r\n\r\n@mixin titleSlotted() {\r\n font-family: $siteNameFont !important;\r\n font-weight: normal;\r\n font-size: $siteTitleSize;\r\n line-height: initial;\r\n}\r\n\r\n@mixin mobileSiteTitleSlotted() {\r\n font-size: $mobileSiteTitleSize !important;\r\n}\r\n\r\n@mixin headerSubTitle() {\r\n font-size: $siteSubTitleSize;\r\n line-height: $siteSubTitleSize;\r\n margin: 0;\r\n margin-top: -1px;\r\n margin-bottom: 3px;\r\n}\r\n\r\n@mixin headerSuperTitle() {\r\n font-size: $siteSuperTitleSize;\r\n line-height: $siteSuperTitleSize;\r\n margin-bottom: -1px;\r\n margin-top: 2px;\r\n}\r\n\r\n@mixin headerUserButton() {\r\n background-color: transparent;\r\n position: relative;\r\n}\r\n\r\n@mixin headerUserIcon() {\r\n width: 20px;\r\n height: 20px;\r\n font-size: 20px;\r\n vertical-align: middle;\r\n}\r\n\r\n@mixin headerUserLabel() {\r\n font-family: $headerContentFont;\r\n font-weight: $headerContentFontWeight;\r\n font-size: 13px;\r\n text-transform: uppercase;\r\n}\r\n\r\n@mixin searchInput() {\r\n font-family: $headerContentFont;\r\n font-weight: $headerContentFontWeight;\r\n font-size: 13px;\r\n color: $navy;\r\n}\r\n\r\n@mixin searchWebkitPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin searchMicrosoftPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin searchMozillaPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin byuLogo() {\r\n height: $byuLogoHeight;\r\n}\r\n\r\n@mixin menuOuterWrapper() {\r\n border-bottom: 1px solid #ccc;\r\n background-color: #fff;\r\n}\r\n\r\n@mixin menuInnerWrapper() {\r\n margin: 0 auto;\r\n padding: $pageContentPadding;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin menuTransparent() {\r\n opacity: 0.88;\r\n}\r\n\r\n@mixin belowMaxMenuInnerWrapper() {\r\n padding: 0;\r\n}\r\n\r\n\r\n/* MOBILE */\r\n\r\n@mixin mobileMenu() {\r\n max-height: 0;\r\n transition: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1);\r\n}\r\n\r\n@mixin mobileHeaderContent() {\r\n display: block;\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n@mixin mobileHeaderPrimary() {\r\n //margin-left: $pageContentHorizontalPadding;\r\n}\r\n\r\n@mixin mobileMenuOverflow() {\r\n overflow: hidden;\r\n}\r\n\r\n@mixin mobileHeaderAlign() {\r\n padding-top: ($headerHeight - $byuLogoHeight)/2;\r\n padding-bottom: ($headerHeight - $byuLogoHeight)/2;\r\n min-height: $byuLogoHeight;\r\n padding-right: $pageContentHorizontalPadding !important;\r\n align-items: baseline;\r\n}\r\n\r\n@mixin mobileLogoAlign() {\r\n align-self: flex-start;\r\n}\r\n\r\n@mixin actionsMobile() {\r\n @include dropdownNavItem();\r\n padding: 0 !important;\r\n background-color: $lightergray;\r\n color: $navy !important;\r\n border-top: 1px solid $gray;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin actionsMobileSlotted() {\r\n color: $navy !important;\r\n padding: 18px 50px !important;\r\n}\r\n\r\n@mixin mobileActionsLinks() {\r\n color: $navy !important;\r\n font-weight: $menuFontWeight !important;\r\n}\r\n\r\n@mixin mobileActionsLinksP() {\r\n margin: 0 !important;\r\n}\r\n\r\n@mixin headerInnerMarginMobile() {\r\n margin-right: 0;\r\n}\r\n\r\n@mixin mobileSiteTitle() {\r\n align-items: flex-start;\r\n align-self: center;\r\n font-size: $mobileSiteTitleSize !important;\r\n}\r\n\r\n@mixin mobileSubTitle() {\r\n font-size: $mobileSiteSubTitleSize !important;\r\n margin-top: 3px;\r\n}\r\n\r\n@mixin mobileSuperTitle() {\r\n margin-top: 0 !important;\r\n margin-bottom: $mobileSiteTitleSize - $mobileSiteSubTitleSize;\r\n}\r\n\r\n\r\n@mixin headerButtonMobile() {\r\n background-color: transparent;\r\n margin-top: ($byuLogoHeight - $tcon-size)/2;\r\n margin-bottom: ($byuLogoHeight - $tcon-size)/2;\r\n margin-left: ($byuLogoHeight - $tcon-size)/2;\r\n}\r\n\r\n@mixin mobileMenuButton() {\r\n display: none;\r\n}\r\n\r\n@mixin searchTransition() {\r\n transform: scaleY(1);\r\n transition: height .1s ease-in-out;\r\n height: 35px!important;\r\n transform-origin: top;\r\n}\r\n\r\n@mixin searchTransformed() {\r\n transform: scaleY(0);\r\n height: 0 !important;\r\n}\r\n\r\n\r\n/* FULL SIZE */\r\n\r\n@mixin headerNotMobile() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n align-items: center;\r\n background-color: $navy;\r\n}\r\n\r\n@mixin headerNotMobileNoNav() {\r\n height: 48px;\r\n}\r\n\r\n@mixin headerNotMobileNavExpand() {\r\n display: none;\r\n}\r\n\r\n@mixin headerSecondaryNotMobile() {\r\n background-color: $navy;\r\n color: #ffffff;\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: $headerHeight;\r\n padding-right: 16px;\r\n}\r\n\r\n@mixin searchNotMobile() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n@mixin searchInputNotMobile() {\r\n border: 1px solid $navy;\r\n border-right: none;\r\n height: 20px;\r\n padding: 4px 6px;\r\n flex: 1;\r\n width: 217px;\r\n box-sizing: content-box;\r\n}\r\n\r\n@mixin searchButtonNotMobile() {\r\n height: 28px;\r\n width: 30px;\r\n text-align: center;\r\n}\r\n\r\n@mixin headerMenuButtonNotMobile() {\r\n display: none;\r\n}\r\n\r\n/* FULL WIDTH (NOT DEFAULT WIDTH OF 1200px) */\r\n@mixin headerContentFullWidth() {\r\n max-width: 100% !important;\r\n width: 100% !important;\r\n}","//$tcon-size: 1.5em !default;\r\n$tcon-size: 24px !default;\r\n$tcon-transition: .15s !default;\r\n$tcon-jstransform: 'tcon-transform' !default;\r\n\r\n$tcon-menu-radius: 1px !default;\r\n$tcon-menu-color: white !default;\r\n$tcon-menu-arrowleft-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 90deg)\r\n) !default;\r\n$tcon-menu-arrow360left-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 360deg)\r\n) !default;\r\n\r\n.tcon {\r\n appearance: none;\r\n border: none;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: $tcon-size;\r\n transition: $tcon-transition;\r\n user-select: none;\r\n width: 17px;\r\n background: transparent;\r\n outline: none;\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n -webkit-tap-highlight-color: transparent;\r\n padding: 0 !important;\r\n\r\n > * {\r\n display: block;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n outline: none; // see issue #36 https://github.com/grayghostvisuals/transformicons/issues/36\r\n }\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n}\r\n\r\n@mixin tcon-menu-lines {\r\n display: inline-block;\r\n border-radius: $tcon-menu-radius;\r\n height: 3px;\r\n width: $tcon-size;\r\n transition: $tcon-transition;\r\n background: $tcon-menu-color;\r\n}\r\n\r\n.tcon-menu__lines {\r\n @include tcon-menu-lines;\r\n position: relative;\r\n\r\n &::before,\r\n &::after {\r\n @include tcon-menu-lines;\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n transform-origin: ($tcon-size / 14) center;\r\n width: 100%;\r\n }\r\n\r\n &::before {\r\n top: ($tcon-size / 4);\r\n }\r\n\r\n &::after {\r\n top: -($tcon-size / 4);\r\n }\r\n\r\n .#{$tcon-jstransform} & {\r\n transform: scale3d(.8, .8, .8);\r\n }\r\n}\r\n\r\n.tcon-menu--xbutterfly {\r\n width: auto;\r\n\r\n .tcon-menu__lines {\r\n &::before,\r\n &::after {\r\n transform-origin: 50% 50%;\r\n transition: top .3s .6s ease, transform .3s ease;\r\n }\r\n }\r\n\r\n &.#{$tcon-jstransform} {\r\n .tcon-menu__lines {\r\n background: transparent;\r\n\r\n &::before,\r\n &::after {\r\n top: 0;\r\n transition: top .3s ease, transform .3s .5s ease;\r\n width: $tcon-size;\r\n }\r\n\r\n &::before {\r\n transform: rotate3d(0, 0, 1, 45deg);\r\n }\r\n\r\n &::after {\r\n transform: rotate3d(0, 0, 1, -45deg);\r\n }\r\n }\r\n }\r\n}\r\n\r\n// see issue #7 https://github.com/grayghostvisuals/transformicons/issues/7#issuecomment-59813596\r\n.tcon-visuallyhidden {\r\n border: 0;\r\n clip: rect(0 0 0 0);\r\n height: 1px;\r\n margin: -1px;\r\n overflow: hidden;\r\n padding: 0;\r\n position: absolute;\r\n width: 1px;\r\n\r\n &:active,\r\n &:focus {\r\n clip: auto;\r\n height: auto;\r\n margin: 0;\r\n overflow: visible;\r\n position: static;\r\n width: auto;\r\n }\r\n}","@import \"byu-menu-common\";\r\n\r\nbyu-menu:not(.byu-component-rendered) {\r\n @include menuGeneral();\r\n @include outerNav();\r\n color: $navy !important;\r\n height: $menuHeight;\r\n justify-content: flex-start;\r\n order: 3;\r\n margin-bottom: -5px;\r\n max-width: 100%;\r\n flex-basis: 100%;\r\n a {\r\n color: $navy !important;\r\n }\r\n}\r\n\r\nbyu-menu:not(.byu-component-rendered) > * {\r\n @include navItemSlotted();\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n@import \"../shared-styles/nav.scss\";\r\n\r\n@mixin menuGeneral() {\r\n display: flex;\r\n justify-content: center;\r\n width: 100%;\r\n height: auto;\r\n background: #fff;\r\n // opacity used to be set here, but now it is an option.\r\n}\r\n\r\n@mixin bgTransparent() {\r\n //background: rgba(255,255,255,0.8);\r\n opacity: 0.88;\r\n}\r\n\r\n@mixin outerNav() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n align-items: center;\r\n justify-content: flex-start;\r\n box-sizing: border-box;\r\n height: 35px;\r\n position: relative;\r\n flex: 1;\r\n flex-basis: 100%;\r\n}\r\n\r\n@mixin navItemSlotted() {\r\n @include navItem();\r\n flex: 1;\r\n flex-basis: auto;\r\n}\r\n\r\n@mixin navItemsSlottedSetWidth() {\r\n min-width: 200px;\r\n flex: 0;\r\n padding: 0 16px;\r\n flex-basis: auto;\r\n}\r\n\r\n@mixin moreMenu() {\r\n display: none;\r\n position: relative;\r\n height: 35px;\r\n width: 16.66%;\r\n overflow: visible !important;\r\n}\r\n\r\n@mixin moreMenuVisible() {\r\n display: block;\r\n}\r\n\r\n@mixin menuMoreExpanded() {\r\n background: $menuActive;\r\n box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.75);\r\n}\r\n\r\n@mixin menuMoreItems() {\r\n display: block;\r\n}\r\n\r\n@mixin menuFixedOverlay() {\r\n position: fixed;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n right: 0;\r\n z-index: 1;\r\n}\r\n\r\n@mixin moreLink() {\r\n @include navItem();\r\n position: relative;\r\n flex: 1;\r\n display: block;\r\n}\r\n\r\n@mixin moreLinkSvg() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg');\r\n height: 13px;\r\n width: 13px;\r\n display: inline-block;\r\n background-size: 100%;\r\n //transition: transform 0.5s ease;\r\n //transform: rotate(0);\r\n //transform-origin: center;\r\n}\r\n\r\n@mixin moreItems() {\r\n display: none;\r\n position: absolute;\r\n top: 35px;\r\n right: 0;\r\n min-width: 100%;\r\n max-width: 250px;\r\n z-index: 2;\r\n background: white;\r\n box-shadow: 0 0 2px 0 rgba(0,0,0,0.75);\r\n}\r\n\r\n@mixin moreItemsSlotted() {\r\n width: 100%;\r\n @include navItem();\r\n display: block;\r\n text-align: left !important;\r\n padding-left: 12px !important;\r\n padding-right: 12px !important;\r\n}\r\n\r\n/* MOBILE */\r\n\r\n@mixin mobileOuterNav() {\r\n display: block;\r\n height: auto;\r\n}\r\n\r\n@mixin mobileMenuMore() {\r\n display: none !important;\r\n}\r\n\r\n@mixin mobileMenuSlotted() {\r\n display: block !important;\r\n text-align: left !important;\r\n padding: 18px 18px 18px 50px !important;\r\n height: auto !important;\r\n width: 100%;\r\n max-width: 100%;\r\n position: static;\r\n box-sizing: border-box;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin mobileMenuMoreMenuSlotted() {\r\n padding: 0 !important;\r\n}\r\n\r\n@mixin mobileMenuMoreMenu() {\r\n display: block;\r\n width: 100%;\r\n box-shadow: none;\r\n position: static;\r\n height: auto;\r\n}\r\n\r\n@mixin mobileMenuMoreItems() {\r\n display: block;\r\n box-shadow: none;\r\n padding: 0;\r\n position: static !important;\r\n}\r\n\r\n@mixin mobileMenuMoreItemsSlotted() {\r\n display: block !important;\r\n text-align: left !important;\r\n padding: 18px 50px !important;\r\n height: auto !important;\r\n width: 100%;\r\n position: static;\r\n box-sizing: border-box;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin mobileMenuMoreExpanded() {\r\n box-shadow: none;\r\n}\r\n\r\n@mixin mobileMenuFixedOverlay() {\r\n display: none !important;\r\n}","\r\n@import \"../shared-styles/colors.scss\";\r\n@import \"byu-search-common\";\r\n\r\nbyu-search:not(.byu-component-rendered) {\r\n background: #fff;\r\n height: 32px;\r\n margin-right: 30px;\r\n margin-left: 16px;\r\n display: flex;\r\n justify-content: flex-end;\r\n}\r\n\r\n// should be 25px height to account for\r\n// added border from searchButton OR\r\n// add border to byu-search\r\nbyu-search:not(.byu-component-rendered):after {\r\n content: \" \"; // placeholder for search icon\r\n @include searchButton();\r\n height: 32px;\r\n width: 35px;\r\n float: right;\r\n}\r\n\r\n// Helpers for styling search elements.\r\n\r\nbyu-search input.__byu-search-selected-input {\r\n @include searchInput();\r\n @include searchInputPlaceholderRules();\r\n}\r\n\r\nbyu-search.mobile-view input.__byu-search-selected-input {\r\n @include searchInputMobile();\r\n}\r\n\r\nbyu-search {\r\n input:not(.__byu-search-selected-input), button {\r\n display: none;\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin byuSearch() {\r\n //display: inline-block;\r\n margin-left: 20px;\r\n}\r\n\r\n@mixin searchIcon() {\r\n width: 17px;\r\n height: 17px;\r\n}\r\n\r\n@mixin searchButton() {\r\n background-color: var(--byu-search-color, $medgray);\r\n border: 1px solid var(--byu-search-color, $medgray);\r\n color: #FFF;\r\n width: 30px;\r\n height: 30px;\r\n display: flex;\r\n align-items: center;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin searchForm() {\r\n display: flex;\r\n align-items: stretch;\r\n align-content: center;\r\n width: 216px;\r\n}\r\n\r\n@mixin searchContainer() {\r\n flex: 1;\r\n}\r\n\r\n@mixin searchInputPlaceholder() {\r\n color: $medgray;\r\n}\r\n\r\n@mixin searchInputPlaceholderRules() {\r\n //Comma-joining these doesn't work.\r\n &::placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-webkit-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &:-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n}\r\n\r\n@mixin searchInput() {\r\n padding: 5px 10px;\r\n border: none;\r\n height: 30px;\r\n // Fixes issues on Safari with type=search\r\n -webkit-appearance: none;\r\n border-radius: 0;\r\n margin: 0;\r\n // END: Safari fixes\r\n box-sizing: border-box;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif !important;\r\n font-size: 13px !important;\r\n font-weight: 500 !important;\r\n color: $navy !important;\r\n width: 100%;\r\n}\r\n\r\n@mixin searchMobile() {\r\n width: 100%;\r\n height: 35px;\r\n margin: 0;\r\n}\r\n\r\n@mixin searchInputMobile() {\r\n padding-left: $pageContentHorizontalPadding;\r\n width: 100%;\r\n height: 35px;\r\n border-bottom: 1px solid $gray;\r\n}\r\n\r\n@mixin searchButtonMobile() {\r\n width: 53px;\r\n height: 35px;\r\n padding: 0 16px;\r\n}\r\n\r\n@mixin searchIconMobile() {\r\n width: 20px;\r\n height: 20px;\r\n}","@import \"byu-social-media-links-common\";\r\n\r\nbyu-social-media-links:not(.byu-component-rendered) {\r\n @include socialMain();\r\n\r\n > * {\r\n @include allSocialIcons();\r\n }\r\n\r\n > .facebook, > [slot=\"facebook\"] {\r\n @include facebook();\r\n }\r\n\r\n > .twitter, > [slot=\"twitter\"] {\r\n @include twitter();\r\n }\r\n\r\n > .instagram, > [slot=\"instagram\"] {\r\n @include instagram();\r\n }\r\n\r\n > .youtube, > [slot=\"youtube\"] {\r\n @include youtube();\r\n }\r\n\r\n > .pinterest, > [slot=\"pinterest\"] {\r\n @include pinterest();\r\n }\r\n\r\n > .linkedin, > [slot=\"linkedin\"] {\r\n @include linkedin();\r\n }\r\n \r\n > .rss, > [slot=\"rss\"] {\r\n @include rss();\r\n }\r\n \r\n > .snapchat, > [slot=\"snapchat\"] {\r\n @include snapchat();\r\n }\r\n\r\n > .gplus, > [slot=\"gplus\"],\r\n > .googleplus, > [slot=\"googleplus\"],\r\n > .google-plus, > [slot=\"google-plus\"] {\r\n @include google-plus();\r\n }\r\n\r\n > .podcast {\r\n @include podcast();\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin socialMain() {\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n//noinspection CssOptimizeSimilarProperties\r\n@mixin allSocialIcons() {\r\n height: 28px;\r\n width: 28px;\r\n display: block;\r\n\r\n color: transparent!important;\r\n overflow: hidden;\r\n background-size: contain;\r\n background-repeat: no-repeat;\r\n background-clip: content-box;\r\n background-position: center;\r\n\r\n margin: 8px 8px 8px 0 !important;\r\n}\r\n\r\n//We use obfuscated image names here to get around some common ad blocking lists.\r\n@mixin facebook() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg');\r\n}\r\n\r\n@mixin twitter() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg');\r\n}\r\n\r\n@mixin instagram() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg');\r\n}\r\n\r\n@mixin youtube() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg');\r\n}\r\n\r\n@mixin pinterest() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg');\r\n}\r\n\r\n@mixin google-plus() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg');\r\n}\r\n\r\n@mixin linkedin() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg');\r\n}\r\n\r\n@mixin rss() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg');\r\n}\r\n\r\n@mixin snapchat() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg');\r\n}\r\n\r\n@mixin podcast() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg');\r\n}\r\n","@import \"byu-user-info-common\";\r\n\r\n\r\n//byu-user-info:not(:defined) > * {\r\nbyu-user-info:not(.byu-component-rendered) > * {\r\n @include userInfoSlotted();\r\n}\r\n\r\n/* NON MOBILE */\r\n//byu-user-info:not(:defined):not([mobile-view]) {\r\nbyu-user-info:not(.byu-component-rendered):not([mobile-view]) {\r\n @include userInfoNotMobile();\r\n\r\n & > * {\r\n @include userInfoNotMobileSlotted();\r\n }\r\n\r\n .mobile {\r\n @include userInfoNotMobileDisplay();\r\n }\r\n\r\n img {\r\n @include userInfoNotMobileImages();\r\n }\r\n}\r\n\r\n/* MOBILE */\r\n//byu-user-info:not(:defined)[mobile-view] {\r\n// @include userInfoMobile();\r\n//\r\n// .not-mobile {\r\n// @include userInfoMobileDisplay();\r\n// }\r\n//\r\n// .has-user {\r\n//\r\n// .name {\r\n// @include hasUserName();\r\n// }\r\n//\r\n// img {\r\n// @include hasUserImage();\r\n// }\r\n//\r\n// .logout {\r\n// @include hasUserLogout();\r\n// }\r\n// }\r\n//\r\n// & > * {\r\n// @include mobileSlotted();\r\n// }","@import \"../shared-styles/nav.scss\";\r\n@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin nonMobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg');\r\n}\r\n\r\n@mixin mobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg')\r\n}\r\n\r\n@mixin userInfoImage() {\r\n height: 20px;\r\n width: 20px;\r\n margin: 5px;\r\n margin-right: 11px;\r\n background-size: contain;\r\n}\r\n\r\n@mixin userInfoSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userPresent() {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n}\r\n\r\n@mixin centeredText() {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* NON MOBILE */\r\n@mixin userInfoNotMobile() {\r\n color: white;\r\n}\r\n\r\n@mixin userInfoNotMobileSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userInfoNotMobileDisplay() {\r\n display: none;\r\n}\r\n@mixin nonMobileUsername() {\r\n color: $xlightblue !important;\r\n text-transform: uppercase !important;\r\n max-width: 130px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n\r\n}\r\n\r\n@mixin nonMobileHeaderLinkHover() {\r\n text-decoration: underline !important;\r\n}\r\n\r\n@mixin userInfoNotMobileImages() {\r\n margin: 7px;\r\n}\r\n\r\n/* MOBILE */\r\n@mixin userInfoMobile() {\r\n @include dropdownNavItem();\r\n border-bottom: solid 1px $gray;\r\n padding: 10px 14px !important;\r\n background-color: #fff !important;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin userInfoMobileNotDisplay() {\r\n display: none;\r\n}\r\n\r\n@mixin hasUserName() {\r\n order: 2;\r\n flex: 1;\r\n}\r\n\r\n@mixin hasUserNameSlotted() {\r\n text-transform: capitalize !important;\r\n color: $brightBlue !important;\r\n}\r\n\r\n/* @mixin hasUserImage() {\r\n order: 1;\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n/* @mixin noUserImage() {\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n@mixin hasUserLogout() {\r\n order: 3;\r\n}\r\n\r\n@mixin mobileSlotted() {\r\n color: $navy !important;\r\n}\r\n\r\n@mixin notHasUserMobile() {\r\n display: none;\r\n}\r\n\r\n@mixin noUserMobile() {\r\n display: none;\r\n}"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"byu-theme-components.css","sources":["byu-theme-components.scss","shared-styles/colors.scss","shared-styles/nav.scss","shared-styles/settings.scss","byu-footer/byu-footer-extras.scss","byu-footer/byu-footer-common.scss","byu-footer-action-button/byu-footer-action-button-extras.scss","byu-footer-action-button/byu-footer-action-button-common.scss","byu-footer-column/byu-footer-column-extras.scss","byu-footer-column/byu-footer-column-common.scss","byu-header/byu-header-extras.scss","byu-header/byu-header-common.scss","byu-header/icons/transformicons.scss","byu-menu/byu-menu-extras.scss","byu-menu/byu-menu-common.scss","byu-search/byu-search-extras.scss","byu-search/byu-search-common.scss","byu-social-media-links/byu-social-media-links-extras.scss","byu-social-media-links/byu-social-media-links-common.scss","byu-user-info/byu-user-info-extras.scss","byu-user-info/byu-user-info-common.scss"],"sourcesContent":["@import \"shared-styles/colors\";\r\n@import \"shared-styles/nav\";\r\n\r\n// import individual component extras files\r\n@import \"byu-footer/byu-footer-extras\";\r\n@import \"byu-footer-action-button/byu-footer-action-button-extras\";\r\n@import \"byu-footer-column/byu-footer-column-extras\";\r\n@import \"byu-header/byu-header-extras\";\r\n@import \"byu-menu/byu-menu-extras\";\r\n@import \"byu-search/byu-search-extras\";\r\n@import \"byu-social-media-links/byu-social-media-links-extras\";\r\n@import \"byu-user-info/byu-user-info-extras\";\r\n\r\n// this isn't the place for general styling. Please include further styling in the 2017-styles repo.\r\nbody {\r\n margin: 0;\r\n}","\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n//$byu_blue: #002e5d; // replacing this to just $navy\r\n$navy: #002e5d;\r\n//$menuHoverGray: $gray; // need to go replace\r\n//$menuActiveGray: $lightgray; // need to go replace\r\n\r\n// blues\r\n$navy: #002E5D;\r\n$medblue: #869DB5;\r\n$lightBlue: #e0f0cc;\r\n$xlightblue: #C3DDF9;\r\n$brightBlue: #0057B8;\r\n\r\n$royal: #003DA5;\r\n$lightRoyal: #114BAD;\r\n\r\n// There are 6 grays right now..\r\n$xlightgray: #f2f2f2;\r\n$lightgray: #e5e5e5;\r\n$lightergray: #e6e6e6;\r\n//$medgray: #9b9b9b; // extra\r\n$gray: #c5c5c5;\r\n$medgray: #666;\r\n$darkgray: #6a6a6b; // least used gray\r\n$darkestgray: #141414; // this should be used for body & default text.\r\n\r\n\r\n// other colors\r\n$red: #B3041A;\r\n\r\n$yellow: #FCC015;\r\n$lightyellow: #fef2d0;\r\n\r\n$teal: #84DCB4;\r\n$lightteal: #e5f7ef;\r\n\r\n$green: #66B200; // doesn't work with accessibility\r\n$lightgreen: #e0f0cc;\r\n//$green: #4D8501; // was #6EAE17;\r\n//$greendarkened: #498000 ; // was #6AA816;\r\n\r\n// other blues Aleni has used:\r\n//$lightestblue: #C4CFDA;\r\n//$lightblue: #A6B6C7;\r\n//$lightmedblue: #889FB7;\r\n//$medblue: #697F96; // was #889FB7 but it couldn't have white on it with enough contrast\r\n//$darkmedblue: #5B728A; // #5B728A is enough contrast for small white text","@import \"colors.scss\";\r\n@import \"settings.scss\";\r\n\r\n@mixin headerLink() {\r\n text-decoration: none !important;\r\n font-size: 13px!important;\r\n font-family: $headerContentFont !important;\r\n font-weight: $headerContentFontWeight!important;\r\n text-transform: uppercase!important;\r\n color: white !important;\r\n}\r\n\r\n@mixin navItemHover() {\r\n background: $gray !important;\r\n}\r\n\r\n@mixin navItemSelected() {\r\n background: $lightgray !important;\r\n}\r\n\r\n//@mixin navItemLongLink() {\r\n// max-width: 300px;\r\n// flex: 2;\r\n//}\r\n//\r\n//@mixin navItemExtraLongLink() {\r\n// max-width: 400px;\r\n// flex: 3;\r\n//}\r\n\r\n@mixin navItem() {\r\n @include headerLink();\r\n font-family: $menuFont !important;\r\n font-weight: $menuFontWeight!important;\r\n color: $navy !important;\r\n height: $menuHeight !important;\r\n display: inline-block;\r\n box-sizing: border-box;\r\n text-align: center !important;\r\n padding: 0 6px !important;\r\n line-height: $menuHeight !important;\r\n white-space: nowrap !important;\r\n overflow: hidden !important;\r\n text-overflow: ellipsis !important;\r\n transition: background 0.3s;\r\n\r\n &:hover {\r\n @include navItemHover();\r\n }\r\n\r\n &.selected {\r\n @include navItemSelected();\r\n }\r\n\r\n &.active {\r\n @include navItemSelected();\r\n }\r\n\r\n //&.long-link {\r\n // @include navItemLongLink();\r\n //}\r\n //\r\n //&.extra-long-link {\r\n // @include navItemExtraLongLink();\r\n //}\r\n}\r\n\r\n@mixin dropdownNavItem() {\r\n @include navItem();\r\n display: block;\r\n //width: 100%;\r\n box-sizing: border-box;\r\n padding: 18px 33px !important;\r\n line-height: 12px;\r\n text-align: left !important;\r\n height: auto !important;\r\n}","@import \"colors.scss\";\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n/* -- breakpoint settings ----- */\r\n$mobile_sidebar_width: 20%;\r\n$mobile_main_width: 100% - $mobile_sidebar_width;\r\n\r\n/* --- header settings ------- */\r\n$headerHeight: 55px;\r\n$siteNameFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n\r\n$byuLogoHeight: 34px;\r\n\r\n$siteTitleSize: 22px;\r\n$mobileSiteTitleSize: 16px;\r\n$siteSubTitleSize: 14px;\r\n$siteSuperTitleSize: 14px;\r\n$mobileSiteSubTitleSize: 12px;\r\n$mobileSiteSuperTitleSize: 12px;\r\n\r\n$pageContentVerticalPadding: 0;\r\n$pageContentHorizontalPadding: 16px;\r\n$pageContentPadding: $pageContentVerticalPadding $pageContentHorizontalPadding;\r\n\r\n$headerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$headerContentFontWeight: 500;\r\n/* --- search settings -------- */\r\n$searchPlaceholderColor: $gray;\r\n\r\n// menu settings\r\n$menuHeight: 35px;\r\n$menuFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$menuFontWeight: 500;\r\n//headerContentFont and menuFont are currently same, but might change later\r\n\r\n$nav_gradient: 10%;\r\n$nav_gradient_2: 5%;\r\n\r\n$menuHover: $gray; // need to go replace\r\n$menuActive: $lightgray; // need to go replace$hover_color\r\n\r\n/* --------- general text settings ----- */\r\n\r\n\r\n\r\n/* ------ footer settings ------------- */\r\n\r\n\r\n$footerBackground: $lightgray;\r\n$footerContentColor: $medgray;\r\n$footerColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$footerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$footerContentFontWeight: 400;\r\n$footerContentFontSize: 14px;\r\n\r\n$footerButtonColor: $medgray; // change this to one of the colors\r\n$footerButtonFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n","\r\n@import \"byu-footer-common\";\r\n\r\nbyu-footer:not(.byu-component-rendered) {\r\n background: $lightgray;\r\n min-height: 200px;\r\n display: flex;\r\n width: 100%;\r\n font-family: sans-serif;\r\n font-weight: 600;\r\n flex-wrap: wrap;\r\n padding-top: 30px;\r\n justify-content: space-around;\r\n\r\n &:empty {\r\n min-height: 0;\r\n padding: 0;\r\n }\r\n}\r\n\r\nbyu-footer:not(.byu-component-rendered):after {\r\n background: $navy url('https://cdn.byu.edu/shared-icons/latest/logos/word-mark-wide-white.svg') no-repeat center 11px;\r\n background-size: 450px 40px;\r\n height: 90px;\r\n width: 100vw;\r\n content: ' ';\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n$universityFooterBgColor: $navy;\r\n$universityFooterTextColor: white;\r\n$universityFooterFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$universityFooterFontWeight: 400;\r\n$universityFooterHeight: 80px;\r\n\r\n$universityFooterLogoHeight: 40px;\r\n$universityFooterLogoWidth: 450px;\r\n$universityFooterLogoVerticalOffset: 10px;\r\n\r\n$universityFooterVerticalPadding: 21px;\r\n\r\n$siteFooterHorizontalPadding: 8px;\r\n$siteFooterVerticalPadding: 0;\r\n$siteFooterPadding: $siteFooterVerticalPadding $siteFooterHorizontalPadding;\r\n\r\n$siteFooterMobilePadding: 16px $siteFooterHorizontalPadding 0;\r\n\r\n$large-siteFooterContentTopMargin: 30px;\r\n$large-siteFooterContentBottomMargin: 40px;\r\n\r\n$large-siteFooterContentMargin: $large-siteFooterContentTopMargin $siteFooterHorizontalPadding $large-siteFooterContentBottomMargin;\r\n\r\n$siteFooterBackground: $lightgray;\r\n$siteFooterContentColor: $medgray;\r\n$siteFooterColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$siteFooterContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$siteFooterContentFontWeight: 400;\r\n$siteFooterContentFontSize: 13px;\r\n\r\n","@import \"byu-footer-action-button-common\";\r\n\r\n//byu-footer-action-button:not(:defined) {\r\nbyu-footer-action-button:not(.byu-component-rendered) {\r\n @include footerActionButton();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) > * {\r\nbyu-footer-action-button:not(.byu-component-rendered) > * {\r\n @include footerActionButtonSlotted();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) a {\r\nbyu-footer-action-button:not(.byu-component-rendered) a {\r\n @include footerActionButtonSlottedLink();\r\n}","\r\n@import \"../shared-styles/colors\";\r\n@import \"../shared-styles/settings\";\r\n\r\n@mixin footerActionButton() {\r\n background-color: $footerButtonColor;\r\n font-family: $footerButtonFont;\r\n font-size: 20px !important;\r\n color: #fff;\r\n display: inline-block;\r\n text-align: center;\r\n line-height: 2.1em;\r\n height: 45px;\r\n width: auto;\r\n min-width: 125px;\r\n margin: 10px 0 20px 0;\r\n -webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n -moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n}\r\n\r\n// Use this to change how the button looks when active\r\n// :host(:active) {\r\n// -webkit-box-shadow: none;\r\n// -moz-box-shadow: none;\r\n// box-shadow: none;\r\n// }\r\n\r\n@mixin footerActionButtonSlotted() {\r\n font-family: $footerButtonFont !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: #fff !important;\r\n display: inline-block !important;\r\n position: relative !important;\r\n height: 100% !important;\r\n width: 100% !important;\r\n margin: 0 20px !important;\r\n left: -20px !important;\r\n cursor: pointer !important;\r\n vertical-align: middle !important;\r\n}\r\n\r\n@mixin footerActionButtonSlottedLink() {\r\n text-decoration: none !important;\r\n}","@import \"byu-footer-column-common\";\r\n\r\n//byu-footer-column:not(:defined) {\r\nbyu-footer-column:not(.byu-component-rendered) {\r\n @include footerColumn();\r\n\r\n .header {\r\n @include header();\r\n }\r\n\r\n .header > * {\r\n @include headerSlotted();\r\n }\r\n\r\n .content *:not(byu-footer-action-button) {\r\n @include contentNotButton();\r\n }\r\n\r\n #defaultContent a {\r\n @include defaultContentLink();\r\n }\r\n\r\n #defaultContent a:hover {\r\n @include defaultContentLinkHover();\r\n }\r\n}\r\n\r\nbyu-footer-column:not(.byu-component-rendered) [slot=\"header\"] {\r\n font-family: serif;\r\n font-size: 20px;\r\n text-transform: uppercase;\r\n color: $navy;\r\n font-weight: 600;\r\n display: block;\r\n}\r\n\r\nbyu-footer-column a {\r\n color: $footerContentColor !important;\r\n text-decoration: none !important;\r\n}\r\n\r\nbyu-footer-column a:hover {\r\n color: $navy !important;\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin footerColumn() {\r\n padding: 0 15px;\r\n box-sizing: border-box;\r\n float: left;\r\n}\r\n\r\n@mixin header() {\r\n width: 100%;\r\n margin: 0 0 8px;\r\n}\r\n\r\n@mixin headerSlotted() {\r\n font-family: $footerColumnTitleFont !important;\r\n text-transform: uppercase !important;\r\n color: $navy !important;\r\n font-size: 20px !important;\r\n border-bottom: 1px solid $gray !important;\r\n padding-bottom: 3px !important;\r\n font-weight: $footerContentFontWeight !important;\r\n width: 100%;\r\n display: inline-block;\r\n}\r\n\r\n@mixin contentNotButton() {\r\n font-family: $footerContentFont !important;\r\n font-size: $footerContentFontSize !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: $footerContentColor !important;\r\n display: block;\r\n padding: 11px 0;\r\n}\r\n\r\n@mixin defaultContentLink() {\r\n text-decoration: none !important;\r\n outline: none !important;\r\n color: #666;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin defaultContentLinkHover() {\r\n cursor: pointer;\r\n color: $navy !important;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin clearParagraphMargins() {\r\n margin: 0;\r\n}","@import \"byu-header-common\";\r\n\r\n//byu-header:not(:defined) {\r\nbyu-header:not(.byu-component-rendered) {\r\n @include headerPrimary();\r\n flex-wrap: wrap;\r\n width: 100%;\r\n height: 90px;\r\n color: #fff!important;\r\n padding: 0;\r\n a {\r\n color: #fff!important;\r\n }\r\n [slot=\"actions\"] {\r\n text-transform: uppercase;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n font-weight: 500;\r\n font-size: 13px;\r\n margin-top: 1px;\r\n }\r\n}\r\n\r\n//byu-header:not(:defined) > [slot=\"site-title\"] {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"] {\r\n @include headerTitles();\r\n padding-left: 16px;\r\n flex-direction: row;\r\n height: 40px;\r\n align-items: center;\r\n}\r\n\r\n// byu icon\r\n//byu-header:not(:defined) > [slot=\"site-title\"]:before {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"]:before {\r\n content: \"BYU\"; // make sure the space is the exact same size\r\n font-size: 40px;\r\n font-family: \"Arial\", sans-serif;\r\n padding-right: 16px;\r\n font-weight: 800 !important;\r\n letter-spacing: 2px;\r\n}\r\n\r\n\r\nbyu-header a[slot=\"site-title\"], byu-header [slot=\"site-title\"] a {\r\n @include headerTitleText();\r\n}\r\n/* MOBILE */\r\n//#mobileMenu {\r\n// @include mobileMenu();\r\n//}\r\n//\r\n//.byu-header > [name=actions] {\r\n// @include actions();\r\n//}\r\n//\r\n//.byu-header[mobile-view] {\r\n// & > [name=actions] {\r\n// @include actionsMobile();\r\n// }\r\n// & > div > * {\r\n// @include headerInnerMarginMobile();\r\n// }\r\n//}\r\n//\r\n//.byu-header {\r\n// @include headerFonts();\r\n// & > div > * {\r\n// @include headerInnerMargin();\r\n// }\r\n// button {\r\n// @include headerButton();\r\n//\r\n// &.mobile-menu-button {\r\n// @include headerButtonMobile();\r\n// }\r\n// }\r\n// .byu-header-primary {\r\n// @include headerPrimary();\r\n// .byu-header-title, #title > * {\r\n// @include headerTitle();\r\n// }\r\n// }\r\n// .byu-header-user {\r\n// button {\r\n// @include headerUserButton();\r\n// .icon {\r\n// @include headerUserIcon();\r\n// }\r\n// .label {\r\n// @include headerUserLabel();\r\n// }\r\n// }\r\n// }\r\n// .byu-header-search {\r\n// #search-input {\r\n// @include searchInput();\r\n// .byu-header-search.-webkit-input-placeholder {\r\n// @include searchWebkitPlaceholder();\r\n// }\r\n// .byu-header-search.-ms-input-placeholder {\r\n// @include searchMicrosoftPlaceholder();\r\n// }\r\n// .byu-header-search.-moz-placeholder {\r\n// @include searchMozillaPlaceholder();\r\n// }\r\n// }\r\n// }\r\n// .byu-logo {\r\n// @include byuLogo();\r\n// }\r\n//}\r\n//\r\n//#mobileMenu {\r\n// @include mobileMenu();","@import \"../shared-styles/colors.scss\";\n@import \"../shared-styles/settings.scss\";\n@import \"../shared-styles/nav.scss\";\n@import \"icons/transformicons.scss\";\n\n/* GENERAL STYLING */\n@mixin headerRoot() {\n //background-color: $navy;\n width: 100%;\n}\n\n@mixin headerContent() {\n display: flex;\n justify-content: center;\n flex: 1;\n flex-basis: 100%;\n //padding: $pageContentPadding;\n box-sizing: border-box;\n}\n\n@mixin headerLogoMargin() {\n margin-right: 16px;\n}\n\n@mixin headerDefaultFont(){\n font-family: $headerContentFont;\n font-size: 18px;\n}\n\n@mixin headerInnerMargin() {\n margin-right: 16px;\n}\n\n@mixin actionsNotMobile() {\n margin-left: 4px;\n margin-right: 4px;\n}\n\n@mixin actionsNotMobileLinks() {\n color: #fff !important;\n}\n\n@mixin actionsWrapper() {\n display: flex;\n align-items: center;\n height: $byuLogoHeight;\n}\n\n@mixin actions(){\n @include headerLink();\n}\n\n@mixin headerButton(){\n background-color: $medgray;\n color: #ffffff;\n border: none;\n cursor: pointer;\n}\n\n@mixin headerPrimary() {\n background-color: $navy;\n color: #ffffff;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n flex: 1;\n min-height: $headerHeight;\n box-sizing: border-box;\n padding-left: 16px;\n}\n\n@mixin headerTitleText() {\n font-family: $siteNameFont !important;\n color: #fff!important;\n text-decoration: none;\n}\n\n@mixin headerTitles() {\n overflow: hidden;\n -ms-text-overflow: ellipsis;\n text-overflow: ellipsis;\n flex: 1;\n display: flex;\n flex-direction: column;\n font-size: $siteTitleSize;\n @include headerTitleText();\n}\n\n@mixin titleSlotted() {\n font-family: $siteNameFont !important;\n font-weight: normal;\n font-size: $siteTitleSize;\n line-height: initial;\n}\n\n@mixin mobileSiteTitleSlotted() {\n font-size: $mobileSiteTitleSize !important;\n}\n\n@mixin headerSubTitle() {\n font-size: $siteSubTitleSize;\n line-height: $siteSubTitleSize;\n margin: 0;\n margin-top: -1px;\n margin-bottom: 3px;\n}\n\n@mixin headerSuperTitle() {\n font-size: $siteSuperTitleSize;\n line-height: $siteSuperTitleSize;\n margin-bottom: -1px;\n margin-top: 2px;\n}\n\n@mixin headerUserButton() {\n background-color: transparent;\n position: relative;\n}\n\n@mixin headerUserIcon() {\n width: 20px;\n height: 20px;\n font-size: 20px;\n vertical-align: middle;\n}\n\n@mixin headerUserLabel() {\n font-family: $headerContentFont;\n font-weight: $headerContentFontWeight;\n font-size: 13px;\n text-transform: uppercase;\n}\n\n@mixin searchInput() {\n font-family: $headerContentFont;\n font-weight: $headerContentFontWeight;\n font-size: 13px;\n color: $navy;\n}\n\n@mixin searchWebkitPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin searchMicrosoftPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin searchMozillaPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin byuLogo() {\n height: $byuLogoHeight;\n}\n\n@mixin menuOuterWrapper() {\n border-bottom: 1px solid #ccc;\n background-color: #fff;\n}\n\n@mixin menuInnerWrapper() {\n margin: 0 auto;\n padding: $pageContentPadding;\n box-sizing: border-box;\n}\n\n@mixin menuTransparent() {\n opacity: 0.88;\n}\n\n@mixin belowMaxMenuInnerWrapper() {\n padding: 0;\n}\n\n$menuTransitionTiming: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1);\n$menuTransition: max-height $menuTransitionTiming;\n\n/* MOBILE */\n\n@mixin mobileMenu() {\n max-height: 0;\n transition: $menuTransition;\n will-change: max-height;\n}\n\n@mixin mobileHeaderContent() {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n@mixin mobileHeaderPrimary() {\n //margin-left: $pageContentHorizontalPadding;\n}\n\n@mixin mobileMenuOverflow() {\n overflow: hidden;\n}\n\n@mixin mobileHeaderAlign() {\n padding-top: ($headerHeight - $byuLogoHeight)/2;\n padding-bottom: ($headerHeight - $byuLogoHeight)/2;\n min-height: $byuLogoHeight;\n padding-right: $pageContentHorizontalPadding !important;\n align-items: baseline;\n}\n\n@mixin mobileLogoAlign() {\n align-self: flex-start;\n}\n\n@mixin actionsMobile() {\n @include dropdownNavItem();\n padding: 0 !important;\n background-color: $lightergray;\n color: $navy !important;\n border-top: 1px solid $gray;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n line-height: 12px !important;\n}\n\n@mixin actionsMobileSlotted() {\n color: $navy !important;\n padding: 18px 50px !important;\n}\n\n@mixin mobileActionsLinks() {\n color: $navy !important;\n font-weight: $menuFontWeight !important;\n}\n\n@mixin mobileActionsLinksP() {\n margin: 0 !important;\n}\n\n@mixin headerInnerMarginMobile() {\n margin-right: 0;\n}\n\n@mixin mobileSiteTitle() {\n align-items: flex-start;\n align-self: center;\n font-size: $mobileSiteTitleSize !important;\n}\n\n@mixin mobileSubTitle() {\n font-size: $mobileSiteSubTitleSize !important;\n margin-top: 3px;\n}\n\n@mixin mobileSuperTitle() {\n margin-top: 0 !important;\n margin-bottom: $mobileSiteTitleSize - $mobileSiteSubTitleSize;\n}\n\n\n@mixin headerButtonMobile() {\n background-color: transparent;\n margin-top: ($byuLogoHeight - $tcon-size)/2;\n margin-bottom: ($byuLogoHeight - $tcon-size)/2;\n margin-left: ($byuLogoHeight - $tcon-size)/2;\n}\n\n@mixin mobileMenuButton() {\n display: none;\n}\n\n@mixin searchTransition() {\n max-height: 35px;\n transition: $menuTransition, transform $menuTransitionTiming;\n will-change: max-height, transform;\n overflow: hidden;\n transform: scale(1, 1);\n transform-origin: top;\n}\n\n@mixin searchTransformed() {\n max-height: 0;\n transform: scale(1, 0);\n\n}\n\n/* FULL SIZE */\n\n@mixin headerNotMobile() {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n background-color: $navy;\n}\n\n@mixin headerNotMobileNoNav() {\n height: 48px;\n}\n\n@mixin headerNotMobileNavExpand() {\n display: none;\n}\n\n@mixin headerSecondaryNotMobile() {\n background-color: $navy;\n color: #ffffff;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n height: $headerHeight;\n padding-right: 16px;\n}\n\n@mixin searchNotMobile() {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n}\n\n@mixin searchInputNotMobile() {\n border: 1px solid $navy;\n border-right: none;\n height: 20px;\n padding: 4px 6px;\n flex: 1;\n width: 217px;\n box-sizing: content-box;\n}\n\n@mixin searchButtonNotMobile() {\n height: 28px;\n width: 30px;\n text-align: center;\n}\n\n@mixin headerMenuButtonNotMobile() {\n display: none;\n}\n\n/* FULL WIDTH (NOT DEFAULT WIDTH OF 1200px) */\n@mixin headerContentFullWidth() {\n max-width: 100% !important;\n width: 100% !important;\n}","//$tcon-size: 1.5em !default;\r\n$tcon-size: 24px !default;\r\n$tcon-transition: .15s !default;\r\n$tcon-jstransform: 'tcon-transform' !default;\r\n\r\n$tcon-menu-radius: 1px !default;\r\n$tcon-menu-color: white !default;\r\n$tcon-menu-arrowleft-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 90deg)\r\n) !default;\r\n$tcon-menu-arrow360left-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 360deg)\r\n) !default;\r\n\r\n.tcon {\r\n appearance: none;\r\n border: none;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: $tcon-size;\r\n transition: $tcon-transition;\r\n user-select: none;\r\n width: 17px;\r\n background: transparent;\r\n outline: none;\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n -webkit-tap-highlight-color: transparent;\r\n padding: 0 !important;\r\n\r\n > * {\r\n display: block;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n outline: none; // see issue #36 https://github.com/grayghostvisuals/transformicons/issues/36\r\n }\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n}\r\n\r\n@mixin tcon-menu-lines {\r\n display: inline-block;\r\n border-radius: $tcon-menu-radius;\r\n height: 3px;\r\n width: $tcon-size;\r\n transition: $tcon-transition;\r\n background: $tcon-menu-color;\r\n}\r\n\r\n.tcon-menu__lines {\r\n @include tcon-menu-lines;\r\n position: relative;\r\n\r\n &::before,\r\n &::after {\r\n @include tcon-menu-lines;\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n transform-origin: ($tcon-size / 14) center;\r\n width: 100%;\r\n }\r\n\r\n &::before {\r\n top: ($tcon-size / 4);\r\n }\r\n\r\n &::after {\r\n top: -($tcon-size / 4);\r\n }\r\n\r\n .#{$tcon-jstransform} & {\r\n transform: scale3d(.8, .8, .8);\r\n }\r\n}\r\n\r\n.tcon-menu--xbutterfly {\r\n width: auto;\r\n\r\n .tcon-menu__lines {\r\n &::before,\r\n &::after {\r\n transform-origin: 50% 50%;\r\n transition: top .3s .6s ease, transform .3s ease;\r\n }\r\n }\r\n\r\n &.#{$tcon-jstransform} {\r\n .tcon-menu__lines {\r\n background: transparent;\r\n\r\n &::before,\r\n &::after {\r\n top: 0;\r\n transition: top .3s ease, transform .3s .5s ease;\r\n width: $tcon-size;\r\n }\r\n\r\n &::before {\r\n transform: rotate3d(0, 0, 1, 45deg);\r\n }\r\n\r\n &::after {\r\n transform: rotate3d(0, 0, 1, -45deg);\r\n }\r\n }\r\n }\r\n}\r\n\r\n// see issue #7 https://github.com/grayghostvisuals/transformicons/issues/7#issuecomment-59813596\r\n.tcon-visuallyhidden {\r\n border: 0;\r\n clip: rect(0 0 0 0);\r\n height: 1px;\r\n margin: -1px;\r\n overflow: hidden;\r\n padding: 0;\r\n position: absolute;\r\n width: 1px;\r\n\r\n &:active,\r\n &:focus {\r\n clip: auto;\r\n height: auto;\r\n margin: 0;\r\n overflow: visible;\r\n position: static;\r\n width: auto;\r\n }\r\n}","@import \"byu-menu-common\";\r\n\r\nbyu-menu:not(.byu-component-rendered) {\r\n @include menuGeneral();\r\n @include outerNav();\r\n color: $navy !important;\r\n height: $menuHeight;\r\n justify-content: flex-start;\r\n order: 3;\r\n margin-bottom: -5px;\r\n max-width: 100%;\r\n flex-basis: 100%;\r\n a {\r\n color: $navy !important;\r\n }\r\n}\r\n\r\nbyu-menu:not(.byu-component-rendered) > * {\r\n @include navItemSlotted();\r\n}","@import \"../shared-styles/colors.scss\";\n@import \"../shared-styles/settings.scss\";\n@import \"../shared-styles/nav.scss\";\n\n@mixin menuGeneral() {\n display: flex;\n justify-content: center;\n width: 100%;\n height: auto;\n background: #fff;\n // opacity used to be set here, but now it is an option.\n}\n\n@mixin bgTransparent() {\n //background: rgba(255,255,255,0.8);\n opacity: 0.88;\n}\n\n@mixin outerNav() {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n justify-content: flex-start;\n box-sizing: border-box;\n height: 35px;\n position: relative;\n flex: 1;\n flex-basis: 100%;\n}\n\n@mixin navItemSlotted() {\n @include navItem();\n flex: 1;\n flex-basis: auto;\n}\n\n@mixin navItemsSlottedSetWidth() {\n min-width: 200px;\n flex: 0;\n padding: 0 16px;\n flex-basis: auto;\n}\n\n@mixin moreMenu() {\n display: none;\n position: relative;\n height: 35px;\n width: 16.66%;\n overflow: visible !important;\n}\n\n@mixin moreMenuVisible() {\n display: block;\n}\n\n@mixin menuMoreExpanded() {\n background: $menuActive;\n box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.75);\n}\n\n@mixin menuMoreItems() {\n display: block;\n}\n\n@mixin menuFixedOverlay() {\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1;\n}\n\n@mixin moreLink() {\n @include navItem();\n position: relative;\n flex: 1;\n display: block;\n}\n\n@mixin moreLinkSvg() {\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg');\n height: 13px;\n width: 13px;\n display: inline-block;\n background-size: 100%;\n //transition: transform 0.5s ease;\n //transform: rotate(0);\n //transform-origin: center;\n}\n\n@mixin moreItems() {\n display: none;\n position: absolute;\n top: 35px;\n right: 0;\n min-width: 100%;\n max-width: 250px;\n z-index: 2;\n background: white;\n box-shadow: 0 0 2px 0 rgba(0,0,0,0.75);\n}\n\n@mixin moreItemsSlotted() {\n width: 100%;\n @include navItem();\n display: block;\n text-align: left !important;\n padding-left: 12px !important;\n padding-right: 12px !important;\n}\n\n/* MOBILE */\n\n@mixin mobileOuterNav() {\n display: block;\n height: auto;\n}\n\n@mixin mobileMenuMore() {\n display: none !important;\n}\n\n@mixin mobileMenuSlotted() {\n display: block !important;\n text-align: left !important;\n padding: 18px 18px 18px 50px !important;\n height: auto !important;\n width: 100%;\n max-width: 100%;\n position: static;\n box-sizing: border-box;\n line-height: 12px !important;\n}\n\n@mixin mobileMenuMoreMenuSlotted() {\n padding: 0 !important;\n}\n\n@mixin mobileMenuMoreMenu() {\n display: block;\n width: 100%;\n box-shadow: none;\n position: static;\n height: auto;\n}\n\n@mixin mobileMenuMoreItems() {\n display: block;\n box-shadow: none;\n padding: 0;\n position: static !important;\n}\n\n@mixin mobileMenuMoreItemsSlotted() {\n display: block !important;\n text-align: left !important;\n padding: 18px 50px !important;\n height: auto !important;\n width: 100%;\n position: static;\n box-sizing: border-box;\n line-height: 12px !important;\n}\n\n@mixin mobileMenuMoreExpanded() {\n box-shadow: none;\n}\n\n@mixin mobileMenuFixedOverlay() {\n display: none !important;\n}","\r\n@import \"../shared-styles/colors.scss\";\r\n@import \"byu-search-common\";\r\n\r\nbyu-search:not(.byu-component-rendered) {\r\n background: #fff;\r\n height: 32px;\r\n margin-right: 30px;\r\n margin-left: 16px;\r\n display: flex;\r\n justify-content: flex-end;\r\n}\r\n\r\n// should be 25px height to account for\r\n// added border from searchButton OR\r\n// add border to byu-search\r\nbyu-search:not(.byu-component-rendered):after {\r\n content: \" \"; // placeholder for search icon\r\n @include searchButton();\r\n height: 32px;\r\n width: 35px;\r\n float: right;\r\n}\r\n\r\n// Helpers for styling search elements.\r\n\r\nbyu-search input.__byu-search-selected-input {\r\n @include searchInput();\r\n @include searchInputPlaceholderRules();\r\n}\r\n\r\nbyu-search.mobile-view input.__byu-search-selected-input {\r\n @include searchInputMobile();\r\n}\r\n\r\nbyu-search {\r\n input:not(.__byu-search-selected-input), button {\r\n display: none;\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin byuSearch() {\r\n //display: inline-block;\r\n margin-left: 20px;\r\n}\r\n\r\n@mixin searchIcon() {\r\n width: 17px;\r\n height: 17px;\r\n}\r\n\r\n@mixin searchButton() {\r\n background-color: var(--byu-search-color, $medgray);\r\n border: 1px solid var(--byu-search-color, $medgray);\r\n color: #FFF;\r\n width: 30px;\r\n height: 30px;\r\n display: flex;\r\n align-items: center;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin searchForm() {\r\n display: flex;\r\n align-items: stretch;\r\n align-content: center;\r\n width: 216px;\r\n}\r\n\r\n@mixin searchContainer() {\r\n flex: 1;\r\n}\r\n\r\n@mixin searchInputPlaceholder() {\r\n color: $medgray;\r\n}\r\n\r\n@mixin searchInputPlaceholderRules() {\r\n //Comma-joining these doesn't work.\r\n &::placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-webkit-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &:-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n}\r\n\r\n@mixin searchInput() {\r\n padding: 5px 10px;\r\n border: none;\r\n height: 30px;\r\n // Fixes issues on Safari with type=search\r\n -webkit-appearance: none;\r\n border-radius: 0;\r\n margin: 0;\r\n // END: Safari fixes\r\n box-sizing: border-box;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif !important;\r\n font-size: 13px !important;\r\n font-weight: 500 !important;\r\n color: $navy !important;\r\n width: 100%;\r\n}\r\n\r\n@mixin searchMobile() {\r\n width: 100%;\r\n height: 35px;\r\n margin: 0;\r\n}\r\n\r\n@mixin searchInputMobile() {\r\n padding-left: $pageContentHorizontalPadding;\r\n width: 100%;\r\n height: 35px;\r\n border-bottom: 1px solid $gray;\r\n}\r\n\r\n@mixin searchButtonMobile() {\r\n width: 53px;\r\n height: 35px;\r\n padding: 0 16px;\r\n}\r\n\r\n@mixin searchIconMobile() {\r\n width: 20px;\r\n height: 20px;\r\n}","@import \"byu-social-media-links-common\";\r\n\r\nbyu-social-media-links:not(.byu-component-rendered) {\r\n @include socialMain();\r\n\r\n > * {\r\n @include allSocialIcons();\r\n }\r\n\r\n > .facebook, > [slot=\"facebook\"] {\r\n @include facebook();\r\n }\r\n\r\n > .twitter, > [slot=\"twitter\"] {\r\n @include twitter();\r\n }\r\n\r\n > .instagram, > [slot=\"instagram\"] {\r\n @include instagram();\r\n }\r\n\r\n > .youtube, > [slot=\"youtube\"] {\r\n @include youtube();\r\n }\r\n\r\n > .pinterest, > [slot=\"pinterest\"] {\r\n @include pinterest();\r\n }\r\n\r\n > .linkedin, > [slot=\"linkedin\"] {\r\n @include linkedin();\r\n }\r\n \r\n > .rss, > [slot=\"rss\"] {\r\n @include rss();\r\n }\r\n \r\n > .snapchat, > [slot=\"snapchat\"] {\r\n @include snapchat();\r\n }\r\n\r\n > .gplus, > [slot=\"gplus\"],\r\n > .googleplus, > [slot=\"googleplus\"],\r\n > .google-plus, > [slot=\"google-plus\"] {\r\n @include google-plus();\r\n }\r\n\r\n > .podcast {\r\n @include podcast();\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin socialMain() {\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n//noinspection CssOptimizeSimilarProperties\r\n@mixin allSocialIcons() {\r\n height: 28px;\r\n width: 28px;\r\n display: block;\r\n\r\n color: transparent!important;\r\n overflow: hidden;\r\n background-size: contain;\r\n background-repeat: no-repeat;\r\n background-clip: content-box;\r\n background-position: center;\r\n\r\n margin: 8px 8px 8px 0 !important;\r\n}\r\n\r\n//We use obfuscated image names here to get around some common ad blocking lists.\r\n@mixin facebook() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg');\r\n}\r\n\r\n@mixin twitter() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg');\r\n}\r\n\r\n@mixin instagram() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg');\r\n}\r\n\r\n@mixin youtube() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg');\r\n}\r\n\r\n@mixin pinterest() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg');\r\n}\r\n\r\n@mixin google-plus() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg');\r\n}\r\n\r\n@mixin linkedin() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg');\r\n}\r\n\r\n@mixin rss() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg');\r\n}\r\n\r\n@mixin snapchat() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg');\r\n}\r\n\r\n@mixin podcast() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg');\r\n}\r\n","@import \"byu-user-info-common\";\r\n\r\n\r\n//byu-user-info:not(:defined) > * {\r\nbyu-user-info:not(.byu-component-rendered) > * {\r\n @include userInfoSlotted();\r\n}\r\n\r\n/* NON MOBILE */\r\n//byu-user-info:not(:defined):not([mobile-view]) {\r\nbyu-user-info:not(.byu-component-rendered):not([mobile-view]) {\r\n @include userInfoNotMobile();\r\n\r\n & > * {\r\n @include userInfoNotMobileSlotted();\r\n }\r\n\r\n .mobile {\r\n @include userInfoNotMobileDisplay();\r\n }\r\n\r\n img {\r\n @include userInfoNotMobileImages();\r\n }\r\n}\r\n\r\n/* MOBILE */\r\n//byu-user-info:not(:defined)[mobile-view] {\r\n// @include userInfoMobile();\r\n//\r\n// .not-mobile {\r\n// @include userInfoMobileDisplay();\r\n// }\r\n//\r\n// .has-user {\r\n//\r\n// .name {\r\n// @include hasUserName();\r\n// }\r\n//\r\n// img {\r\n// @include hasUserImage();\r\n// }\r\n//\r\n// .logout {\r\n// @include hasUserLogout();\r\n// }\r\n// }\r\n//\r\n// & > * {\r\n// @include mobileSlotted();\r\n// }","@import \"../shared-styles/nav.scss\";\r\n@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin nonMobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg');\r\n}\r\n\r\n@mixin mobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg')\r\n}\r\n\r\n@mixin userInfoImage() {\r\n height: 20px;\r\n width: 20px;\r\n margin: 5px;\r\n margin-right: 11px;\r\n background-size: contain;\r\n}\r\n\r\n@mixin userInfoSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userPresent() {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n}\r\n\r\n@mixin centeredText() {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* NON MOBILE */\r\n@mixin userInfoNotMobile() {\r\n color: white;\r\n}\r\n\r\n@mixin userInfoNotMobileSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userInfoNotMobileDisplay() {\r\n display: none;\r\n}\r\n@mixin nonMobileUsername() {\r\n color: $xlightblue !important;\r\n text-transform: uppercase !important;\r\n max-width: 130px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n\r\n}\r\n\r\n@mixin nonMobileHeaderLinkHover() {\r\n text-decoration: underline !important;\r\n}\r\n\r\n@mixin userInfoNotMobileImages() {\r\n margin: 7px;\r\n}\r\n\r\n/* MOBILE */\r\n@mixin userInfoMobile() {\r\n @include dropdownNavItem();\r\n border-bottom: solid 1px $gray;\r\n padding: 10px 14px !important;\r\n background-color: #fff !important;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin userInfoMobileNotDisplay() {\r\n display: none;\r\n}\r\n\r\n@mixin hasUserName() {\r\n order: 2;\r\n flex: 1;\r\n}\r\n\r\n@mixin hasUserNameSlotted() {\r\n text-transform: capitalize !important;\r\n color: $brightBlue !important;\r\n}\r\n\r\n/* @mixin hasUserImage() {\r\n order: 1;\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n/* @mixin noUserImage() {\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n@mixin hasUserLogout() {\r\n order: 3;\r\n}\r\n\r\n@mixin mobileSlotted() {\r\n color: $navy !important;\r\n}\r\n\r\n@mixin notHasUserMobile() {\r\n display: none;\r\n}\r\n\r\n@mixin noUserMobile() {\r\n display: none;\r\n}"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/byu-theme-components.min.css.map b/dist/byu-theme-components.min.css.map index 9ba322e0..225cc48b 100644 --- a/dist/byu-theme-components.min.css.map +++ b/dist/byu-theme-components.min.css.map @@ -1 +1 @@ -{"version":3,"file":"byu-theme-components.min.css","sources":["byu-theme-components.scss","shared-styles/colors.scss","shared-styles/nav.scss","shared-styles/settings.scss","byu-footer/byu-footer-extras.scss","byu-footer/byu-footer-common.scss","byu-footer-action-button/byu-footer-action-button-extras.scss","byu-footer-action-button/byu-footer-action-button-common.scss","byu-footer-column/byu-footer-column-extras.scss","byu-footer-column/byu-footer-column-common.scss","byu-header/byu-header-extras.scss","byu-header/byu-header-common.scss","byu-header/icons/transformicons.scss","byu-menu/byu-menu-extras.scss","byu-menu/byu-menu-common.scss","byu-search/byu-search-extras.scss","byu-search/byu-search-common.scss","byu-social-media-links/byu-social-media-links-extras.scss","byu-social-media-links/byu-social-media-links-common.scss","byu-user-info/byu-user-info-extras.scss","byu-user-info/byu-user-info-common.scss"],"sourcesContent":["@import \"shared-styles/colors\";\r\n@import \"shared-styles/nav\";\r\n\r\n// import individual component extras files\r\n@import \"byu-footer/byu-footer-extras\";\r\n@import \"byu-footer-action-button/byu-footer-action-button-extras\";\r\n@import \"byu-footer-column/byu-footer-column-extras\";\r\n@import \"byu-header/byu-header-extras\";\r\n@import \"byu-menu/byu-menu-extras\";\r\n@import \"byu-search/byu-search-extras\";\r\n@import \"byu-social-media-links/byu-social-media-links-extras\";\r\n@import \"byu-user-info/byu-user-info-extras\";\r\n\r\n// this isn't the place for general styling. Please include further styling in the 2017-styles repo.\r\nbody {\r\n margin: 0;\r\n}","\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n//$byu_blue: #002e5d; // replacing this to just $navy\r\n$navy: #002e5d;\r\n//$menuHoverGray: $gray; // need to go replace\r\n//$menuActiveGray: $lightgray; // need to go replace\r\n\r\n// blues\r\n$navy: #002E5D;\r\n$medblue: #869DB5;\r\n$lightBlue: #e0f0cc;\r\n$xlightblue: #C3DDF9;\r\n$brightBlue: #0057B8;\r\n\r\n$royal: #003DA5;\r\n$lightRoyal: #114BAD;\r\n\r\n// There are 6 grays right now..\r\n$xlightgray: #f2f2f2;\r\n$lightgray: #e5e5e5;\r\n$lightergray: #e6e6e6;\r\n//$medgray: #9b9b9b; // extra\r\n$gray: #c5c5c5;\r\n$medgray: #666;\r\n$darkgray: #6a6a6b; // least used gray\r\n$darkestgray: #141414; // this should be used for body & default text.\r\n\r\n\r\n// other colors\r\n$red: #B3041A;\r\n\r\n$yellow: #FCC015;\r\n$lightyellow: #fef2d0;\r\n\r\n$teal: #84DCB4;\r\n$lightteal: #e5f7ef;\r\n\r\n$green: #66B200; // doesn't work with accessibility\r\n$lightgreen: #e0f0cc;\r\n//$green: #4D8501; // was #6EAE17;\r\n//$greendarkened: #498000 ; // was #6AA816;\r\n\r\n// other blues Aleni has used:\r\n//$lightestblue: #C4CFDA;\r\n//$lightblue: #A6B6C7;\r\n//$lightmedblue: #889FB7;\r\n//$medblue: #697F96; // was #889FB7 but it couldn't have white on it with enough contrast\r\n//$darkmedblue: #5B728A; // #5B728A is enough contrast for small white text","@import \"colors.scss\";\r\n@import \"settings.scss\";\r\n\r\n@mixin headerLink() {\r\n text-decoration: none !important;\r\n font-size: 13px!important;\r\n font-family: $headerContentFont !important;\r\n font-weight: $headerContentFontWeight!important;\r\n text-transform: uppercase!important;\r\n color: white !important;\r\n}\r\n\r\n@mixin navItemHover() {\r\n background: $gray !important;\r\n}\r\n\r\n@mixin navItemSelected() {\r\n background: $lightgray !important;\r\n}\r\n\r\n//@mixin navItemLongLink() {\r\n// max-width: 300px;\r\n// flex: 2;\r\n//}\r\n//\r\n//@mixin navItemExtraLongLink() {\r\n// max-width: 400px;\r\n// flex: 3;\r\n//}\r\n\r\n@mixin navItem() {\r\n @include headerLink();\r\n font-family: $menuFont !important;\r\n font-weight: $menuFontWeight!important;\r\n color: $navy !important;\r\n height: $menuHeight !important;\r\n display: inline-block;\r\n box-sizing: border-box;\r\n text-align: center !important;\r\n padding: 0 6px !important;\r\n line-height: $menuHeight !important;\r\n white-space: nowrap !important;\r\n overflow: hidden !important;\r\n text-overflow: ellipsis !important;\r\n transition: background 0.3s;\r\n\r\n &:hover {\r\n @include navItemHover();\r\n }\r\n\r\n &.selected {\r\n @include navItemSelected();\r\n }\r\n\r\n &.active {\r\n @include navItemSelected();\r\n }\r\n\r\n //&.long-link {\r\n // @include navItemLongLink();\r\n //}\r\n //\r\n //&.extra-long-link {\r\n // @include navItemExtraLongLink();\r\n //}\r\n}\r\n\r\n@mixin dropdownNavItem() {\r\n @include navItem();\r\n display: block;\r\n //width: 100%;\r\n box-sizing: border-box;\r\n padding: 18px 33px !important;\r\n line-height: 12px;\r\n text-align: left !important;\r\n height: auto !important;\r\n}","@import \"colors.scss\";\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n/* -- breakpoint settings ----- */\r\n$mobile_sidebar_width: 20%;\r\n$mobile_main_width: 100% - $mobile_sidebar_width;\r\n\r\n/* --- header settings ------- */\r\n$headerHeight: 55px;\r\n$siteNameFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n\r\n$byuLogoHeight: 34px;\r\n\r\n$siteTitleSize: 22px;\r\n$mobileSiteTitleSize: 16px;\r\n$siteSubTitleSize: 14px;\r\n$siteSuperTitleSize: 14px;\r\n$mobileSiteSubTitleSize: 12px;\r\n$mobileSiteSuperTitleSize: 12px;\r\n\r\n$pageContentVerticalPadding: 0;\r\n$pageContentHorizontalPadding: 16px;\r\n$pageContentPadding: $pageContentVerticalPadding $pageContentHorizontalPadding;\r\n\r\n$headerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$headerContentFontWeight: 500;\r\n/* --- search settings -------- */\r\n$searchPlaceholderColor: $gray;\r\n\r\n// menu settings\r\n$menuHeight: 35px;\r\n$menuFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$menuFontWeight: 500;\r\n//headerContentFont and menuFont are currently same, but might change later\r\n\r\n$nav_gradient: 10%;\r\n$nav_gradient_2: 5%;\r\n\r\n$menuHover: $gray; // need to go replace\r\n$menuActive: $lightgray; // need to go replace$hover_color\r\n\r\n/* --------- general text settings ----- */\r\n\r\n\r\n\r\n/* ------ footer settings ------------- */\r\n\r\n\r\n$footerBackground: $lightgray;\r\n$footerContentColor: $medgray;\r\n$footerColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$footerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$footerContentFontWeight: 400;\r\n$footerContentFontSize: 14px;\r\n\r\n$footerButtonColor: $medgray; // change this to one of the colors\r\n$footerButtonFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n","\r\n@import \"byu-footer-common\";\r\n\r\nbyu-footer:not(.byu-component-rendered) {\r\n background: $lightgray;\r\n min-height: 200px;\r\n display: flex;\r\n width: 100%;\r\n font-family: sans-serif;\r\n font-weight: 600;\r\n flex-wrap: wrap;\r\n padding-top: 30px;\r\n justify-content: space-around;\r\n\r\n &:empty {\r\n min-height: 0;\r\n padding: 0;\r\n }\r\n}\r\n\r\nbyu-footer:not(.byu-component-rendered):after {\r\n background: $navy url('https://cdn.byu.edu/shared-icons/latest/logos/word-mark-wide-white.svg') no-repeat center 11px;\r\n background-size: 450px 40px;\r\n height: 90px;\r\n width: 100vw;\r\n content: ' ';\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n$universityFooterBgColor: $navy;\r\n$universityFooterTextColor: white;\r\n$universityFooterFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$universityFooterFontWeight: 400;\r\n$universityFooterHeight: 80px;\r\n\r\n$universityFooterLogoHeight: 40px;\r\n$universityFooterLogoWidth: 450px;\r\n$universityFooterLogoVerticalOffset: 10px;\r\n\r\n$universityFooterVerticalPadding: 21px;\r\n\r\n$siteFooterHorizontalPadding: 8px;\r\n$siteFooterVerticalPadding: 0;\r\n$siteFooterPadding: $siteFooterVerticalPadding $siteFooterHorizontalPadding;\r\n\r\n$siteFooterMobilePadding: 16px $siteFooterHorizontalPadding 0;\r\n\r\n$large-siteFooterContentTopMargin: 30px;\r\n$large-siteFooterContentBottomMargin: 40px;\r\n\r\n$large-siteFooterContentMargin: $large-siteFooterContentTopMargin $siteFooterHorizontalPadding $large-siteFooterContentBottomMargin;\r\n\r\n$siteFooterBackground: $lightgray;\r\n$siteFooterContentColor: $medgray;\r\n$siteFooterColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$siteFooterContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$siteFooterContentFontWeight: 400;\r\n$siteFooterContentFontSize: 13px;\r\n\r\n","@import \"byu-footer-action-button-common\";\r\n\r\n//byu-footer-action-button:not(:defined) {\r\nbyu-footer-action-button:not(.byu-component-rendered) {\r\n @include footerActionButton();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) > * {\r\nbyu-footer-action-button:not(.byu-component-rendered) > * {\r\n @include footerActionButtonSlotted();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) a {\r\nbyu-footer-action-button:not(.byu-component-rendered) a {\r\n @include footerActionButtonSlottedLink();\r\n}","\r\n@import \"../shared-styles/colors\";\r\n@import \"../shared-styles/settings\";\r\n\r\n@mixin footerActionButton() {\r\n background-color: $footerButtonColor;\r\n font-family: $footerButtonFont;\r\n font-size: 20px !important;\r\n color: #fff;\r\n display: inline-block;\r\n text-align: center;\r\n line-height: 2.1em;\r\n height: 45px;\r\n width: auto;\r\n min-width: 125px;\r\n margin: 10px 0 20px 0;\r\n -webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n -moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n}\r\n\r\n// Use this to change how the button looks when active\r\n// :host(:active) {\r\n// -webkit-box-shadow: none;\r\n// -moz-box-shadow: none;\r\n// box-shadow: none;\r\n// }\r\n\r\n@mixin footerActionButtonSlotted() {\r\n font-family: $footerButtonFont !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: #fff !important;\r\n display: inline-block !important;\r\n position: relative !important;\r\n height: 100% !important;\r\n width: 100% !important;\r\n margin: 0 20px !important;\r\n left: -20px !important;\r\n cursor: pointer !important;\r\n vertical-align: middle !important;\r\n}\r\n\r\n@mixin footerActionButtonSlottedLink() {\r\n text-decoration: none !important;\r\n}","@import \"byu-footer-column-common\";\r\n\r\n//byu-footer-column:not(:defined) {\r\nbyu-footer-column:not(.byu-component-rendered) {\r\n @include footerColumn();\r\n\r\n .header {\r\n @include header();\r\n }\r\n\r\n .header > * {\r\n @include headerSlotted();\r\n }\r\n\r\n .content *:not(byu-footer-action-button) {\r\n @include contentNotButton();\r\n }\r\n\r\n #defaultContent a {\r\n @include defaultContentLink();\r\n }\r\n\r\n #defaultContent a:hover {\r\n @include defaultContentLinkHover();\r\n }\r\n}\r\n\r\nbyu-footer-column:not(.byu-component-rendered) [slot=\"header\"] {\r\n font-family: serif;\r\n font-size: 20px;\r\n text-transform: uppercase;\r\n color: $navy;\r\n font-weight: 600;\r\n display: block;\r\n}\r\n\r\nbyu-footer-column a {\r\n color: $footerContentColor !important;\r\n text-decoration: none !important;\r\n}\r\n\r\nbyu-footer-column a:hover {\r\n color: $navy !important;\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin footerColumn() {\r\n padding: 0 15px;\r\n box-sizing: border-box;\r\n float: left;\r\n}\r\n\r\n@mixin header() {\r\n width: 100%;\r\n margin: 0 0 8px;\r\n}\r\n\r\n@mixin headerSlotted() {\r\n font-family: $footerColumnTitleFont !important;\r\n text-transform: uppercase !important;\r\n color: $navy !important;\r\n font-size: 20px !important;\r\n border-bottom: 1px solid $gray !important;\r\n padding-bottom: 3px !important;\r\n font-weight: $footerContentFontWeight !important;\r\n width: 100%;\r\n display: inline-block;\r\n}\r\n\r\n@mixin contentNotButton() {\r\n font-family: $footerContentFont !important;\r\n font-size: $footerContentFontSize !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: $footerContentColor !important;\r\n display: block;\r\n padding: 11px 0;\r\n}\r\n\r\n@mixin defaultContentLink() {\r\n text-decoration: none !important;\r\n outline: none !important;\r\n color: #666;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin defaultContentLinkHover() {\r\n cursor: pointer;\r\n color: $navy !important;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin clearParagraphMargins() {\r\n margin: 0;\r\n}","@import \"byu-header-common\";\r\n\r\n//byu-header:not(:defined) {\r\nbyu-header:not(.byu-component-rendered) {\r\n @include headerPrimary();\r\n flex-wrap: wrap;\r\n width: 100%;\r\n height: 90px;\r\n color: #fff!important;\r\n padding: 0;\r\n a {\r\n color: #fff!important;\r\n }\r\n [slot=\"actions\"] {\r\n text-transform: uppercase;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n font-weight: 500;\r\n font-size: 13px;\r\n margin-top: 1px;\r\n }\r\n}\r\n\r\n//byu-header:not(:defined) > [slot=\"site-title\"] {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"] {\r\n @include headerTitles();\r\n padding-left: 16px;\r\n flex-direction: row;\r\n height: 40px;\r\n align-items: center;\r\n}\r\n\r\n// byu icon\r\n//byu-header:not(:defined) > [slot=\"site-title\"]:before {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"]:before {\r\n content: \"BYU\"; // make sure the space is the exact same size\r\n font-size: 40px;\r\n font-family: \"Arial\", sans-serif;\r\n padding-right: 16px;\r\n font-weight: 800 !important;\r\n letter-spacing: 2px;\r\n}\r\n\r\n\r\nbyu-header a[slot=\"site-title\"], byu-header [slot=\"site-title\"] a {\r\n @include headerTitleText();\r\n}\r\n/* MOBILE */\r\n//#mobileMenu {\r\n// @include mobileMenu();\r\n//}\r\n//\r\n//.byu-header > [name=actions] {\r\n// @include actions();\r\n//}\r\n//\r\n//.byu-header[mobile-view] {\r\n// & > [name=actions] {\r\n// @include actionsMobile();\r\n// }\r\n// & > div > * {\r\n// @include headerInnerMarginMobile();\r\n// }\r\n//}\r\n//\r\n//.byu-header {\r\n// @include headerFonts();\r\n// & > div > * {\r\n// @include headerInnerMargin();\r\n// }\r\n// button {\r\n// @include headerButton();\r\n//\r\n// &.mobile-menu-button {\r\n// @include headerButtonMobile();\r\n// }\r\n// }\r\n// .byu-header-primary {\r\n// @include headerPrimary();\r\n// .byu-header-title, #title > * {\r\n// @include headerTitle();\r\n// }\r\n// }\r\n// .byu-header-user {\r\n// button {\r\n// @include headerUserButton();\r\n// .icon {\r\n// @include headerUserIcon();\r\n// }\r\n// .label {\r\n// @include headerUserLabel();\r\n// }\r\n// }\r\n// }\r\n// .byu-header-search {\r\n// #search-input {\r\n// @include searchInput();\r\n// .byu-header-search.-webkit-input-placeholder {\r\n// @include searchWebkitPlaceholder();\r\n// }\r\n// .byu-header-search.-ms-input-placeholder {\r\n// @include searchMicrosoftPlaceholder();\r\n// }\r\n// .byu-header-search.-moz-placeholder {\r\n// @include searchMozillaPlaceholder();\r\n// }\r\n// }\r\n// }\r\n// .byu-logo {\r\n// @include byuLogo();\r\n// }\r\n//}\r\n//\r\n//#mobileMenu {\r\n// @include mobileMenu();","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n@import \"../shared-styles/nav.scss\";\r\n@import \"icons/transformicons.scss\";\r\n\r\n/* GENERAL STYLING */\r\n@mixin headerRoot() {\r\n //background-color: $navy;\r\n width: 100%;\r\n}\r\n\r\n@mixin headerContent() {\r\n display: flex;\r\n justify-content: center;\r\n flex: 1;\r\n flex-basis: 100%;\r\n //padding: $pageContentPadding;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin headerLogoMargin() {\r\n margin-right: 16px;\r\n}\r\n\r\n@mixin headerDefaultFont(){\r\n font-family: $headerContentFont;\r\n font-size: 18px;\r\n}\r\n\r\n@mixin headerInnerMargin() {\r\n margin-right: 16px;\r\n}\r\n\r\n@mixin actionsNotMobile() {\r\n margin-left: 4px;\r\n margin-right: 4px;\r\n}\r\n\r\n@mixin actionsNotMobileLinks() {\r\n color: #fff !important;\r\n}\r\n\r\n@mixin actionsWrapper() {\r\n display: flex;\r\n align-items: center;\r\n height: $byuLogoHeight;\r\n}\r\n\r\n@mixin actions(){\r\n @include headerLink();\r\n}\r\n\r\n@mixin headerButton(){\r\n background-color: $medgray;\r\n color: #ffffff;\r\n border: none;\r\n cursor: pointer;\r\n}\r\n\r\n@mixin headerPrimary() {\r\n background-color: $navy;\r\n color: #ffffff;\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1;\r\n min-height: $headerHeight;\r\n box-sizing: border-box;\r\n padding-left: 16px;\r\n}\r\n\r\n@mixin headerTitleText() {\r\n font-family: $siteNameFont !important;\r\n color: #fff!important;\r\n text-decoration: none;\r\n}\r\n\r\n@mixin headerTitles() {\r\n overflow: hidden;\r\n -ms-text-overflow: ellipsis;\r\n text-overflow: ellipsis;\r\n flex: 1;\r\n display: flex;\r\n flex-direction: column;\r\n font-size: $siteTitleSize;\r\n @include headerTitleText();\r\n}\r\n\r\n@mixin titleSlotted() {\r\n font-family: $siteNameFont !important;\r\n font-weight: normal;\r\n font-size: $siteTitleSize;\r\n line-height: initial;\r\n}\r\n\r\n@mixin mobileSiteTitleSlotted() {\r\n font-size: $mobileSiteTitleSize !important;\r\n}\r\n\r\n@mixin headerSubTitle() {\r\n font-size: $siteSubTitleSize;\r\n line-height: $siteSubTitleSize;\r\n margin: 0;\r\n margin-top: -1px;\r\n margin-bottom: 3px;\r\n}\r\n\r\n@mixin headerSuperTitle() {\r\n font-size: $siteSuperTitleSize;\r\n line-height: $siteSuperTitleSize;\r\n margin-bottom: -1px;\r\n margin-top: 2px;\r\n}\r\n\r\n@mixin headerUserButton() {\r\n background-color: transparent;\r\n position: relative;\r\n}\r\n\r\n@mixin headerUserIcon() {\r\n width: 20px;\r\n height: 20px;\r\n font-size: 20px;\r\n vertical-align: middle;\r\n}\r\n\r\n@mixin headerUserLabel() {\r\n font-family: $headerContentFont;\r\n font-weight: $headerContentFontWeight;\r\n font-size: 13px;\r\n text-transform: uppercase;\r\n}\r\n\r\n@mixin searchInput() {\r\n font-family: $headerContentFont;\r\n font-weight: $headerContentFontWeight;\r\n font-size: 13px;\r\n color: $navy;\r\n}\r\n\r\n@mixin searchWebkitPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin searchMicrosoftPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin searchMozillaPlaceholder() {\r\n color: $gray;\r\n opacity: 1;\r\n}\r\n\r\n@mixin byuLogo() {\r\n height: $byuLogoHeight;\r\n}\r\n\r\n@mixin menuOuterWrapper() {\r\n border-bottom: 1px solid #ccc;\r\n background-color: #fff;\r\n}\r\n\r\n@mixin menuInnerWrapper() {\r\n margin: 0 auto;\r\n padding: $pageContentPadding;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin menuTransparent() {\r\n opacity: 0.88;\r\n}\r\n\r\n@mixin belowMaxMenuInnerWrapper() {\r\n padding: 0;\r\n}\r\n\r\n\r\n/* MOBILE */\r\n\r\n@mixin mobileMenu() {\r\n max-height: 0;\r\n transition: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1);\r\n}\r\n\r\n@mixin mobileHeaderContent() {\r\n display: block;\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n@mixin mobileHeaderPrimary() {\r\n //margin-left: $pageContentHorizontalPadding;\r\n}\r\n\r\n@mixin mobileMenuOverflow() {\r\n overflow: hidden;\r\n}\r\n\r\n@mixin mobileHeaderAlign() {\r\n padding-top: ($headerHeight - $byuLogoHeight)/2;\r\n padding-bottom: ($headerHeight - $byuLogoHeight)/2;\r\n min-height: $byuLogoHeight;\r\n padding-right: $pageContentHorizontalPadding !important;\r\n align-items: baseline;\r\n}\r\n\r\n@mixin mobileLogoAlign() {\r\n align-self: flex-start;\r\n}\r\n\r\n@mixin actionsMobile() {\r\n @include dropdownNavItem();\r\n padding: 0 !important;\r\n background-color: $lightergray;\r\n color: $navy !important;\r\n border-top: 1px solid $gray;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin actionsMobileSlotted() {\r\n color: $navy !important;\r\n padding: 18px 50px !important;\r\n}\r\n\r\n@mixin mobileActionsLinks() {\r\n color: $navy !important;\r\n font-weight: $menuFontWeight !important;\r\n}\r\n\r\n@mixin mobileActionsLinksP() {\r\n margin: 0 !important;\r\n}\r\n\r\n@mixin headerInnerMarginMobile() {\r\n margin-right: 0;\r\n}\r\n\r\n@mixin mobileSiteTitle() {\r\n align-items: flex-start;\r\n align-self: center;\r\n font-size: $mobileSiteTitleSize !important;\r\n}\r\n\r\n@mixin mobileSubTitle() {\r\n font-size: $mobileSiteSubTitleSize !important;\r\n margin-top: 3px;\r\n}\r\n\r\n@mixin mobileSuperTitle() {\r\n margin-top: 0 !important;\r\n margin-bottom: $mobileSiteTitleSize - $mobileSiteSubTitleSize;\r\n}\r\n\r\n\r\n@mixin headerButtonMobile() {\r\n background-color: transparent;\r\n margin-top: ($byuLogoHeight - $tcon-size)/2;\r\n margin-bottom: ($byuLogoHeight - $tcon-size)/2;\r\n margin-left: ($byuLogoHeight - $tcon-size)/2;\r\n}\r\n\r\n@mixin mobileMenuButton() {\r\n display: none;\r\n}\r\n\r\n@mixin searchTransition() {\r\n transform: scaleY(1);\r\n transition: height .1s ease-in-out;\r\n height: 35px!important;\r\n transform-origin: top;\r\n}\r\n\r\n@mixin searchTransformed() {\r\n transform: scaleY(0);\r\n height: 0 !important;\r\n}\r\n\r\n\r\n/* FULL SIZE */\r\n\r\n@mixin headerNotMobile() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n align-items: center;\r\n background-color: $navy;\r\n}\r\n\r\n@mixin headerNotMobileNoNav() {\r\n height: 48px;\r\n}\r\n\r\n@mixin headerNotMobileNavExpand() {\r\n display: none;\r\n}\r\n\r\n@mixin headerSecondaryNotMobile() {\r\n background-color: $navy;\r\n color: #ffffff;\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: $headerHeight;\r\n padding-right: 16px;\r\n}\r\n\r\n@mixin searchNotMobile() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n@mixin searchInputNotMobile() {\r\n border: 1px solid $navy;\r\n border-right: none;\r\n height: 20px;\r\n padding: 4px 6px;\r\n flex: 1;\r\n width: 217px;\r\n box-sizing: content-box;\r\n}\r\n\r\n@mixin searchButtonNotMobile() {\r\n height: 28px;\r\n width: 30px;\r\n text-align: center;\r\n}\r\n\r\n@mixin headerMenuButtonNotMobile() {\r\n display: none;\r\n}\r\n\r\n/* FULL WIDTH (NOT DEFAULT WIDTH OF 1200px) */\r\n@mixin headerContentFullWidth() {\r\n max-width: 100% !important;\r\n width: 100% !important;\r\n}","//$tcon-size: 1.5em !default;\r\n$tcon-size: 24px !default;\r\n$tcon-transition: .15s !default;\r\n$tcon-jstransform: 'tcon-transform' !default;\r\n\r\n$tcon-menu-radius: 1px !default;\r\n$tcon-menu-color: white !default;\r\n$tcon-menu-arrowleft-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 90deg)\r\n) !default;\r\n$tcon-menu-arrow360left-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 360deg)\r\n) !default;\r\n\r\n.tcon {\r\n appearance: none;\r\n border: none;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: $tcon-size;\r\n transition: $tcon-transition;\r\n user-select: none;\r\n width: 17px;\r\n background: transparent;\r\n outline: none;\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n -webkit-tap-highlight-color: transparent;\r\n padding: 0 !important;\r\n\r\n > * {\r\n display: block;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n outline: none; // see issue #36 https://github.com/grayghostvisuals/transformicons/issues/36\r\n }\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n}\r\n\r\n@mixin tcon-menu-lines {\r\n display: inline-block;\r\n border-radius: $tcon-menu-radius;\r\n height: 3px;\r\n width: $tcon-size;\r\n transition: $tcon-transition;\r\n background: $tcon-menu-color;\r\n}\r\n\r\n.tcon-menu__lines {\r\n @include tcon-menu-lines;\r\n position: relative;\r\n\r\n &::before,\r\n &::after {\r\n @include tcon-menu-lines;\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n transform-origin: ($tcon-size / 14) center;\r\n width: 100%;\r\n }\r\n\r\n &::before {\r\n top: ($tcon-size / 4);\r\n }\r\n\r\n &::after {\r\n top: -($tcon-size / 4);\r\n }\r\n\r\n .#{$tcon-jstransform} & {\r\n transform: scale3d(.8, .8, .8);\r\n }\r\n}\r\n\r\n.tcon-menu--xbutterfly {\r\n width: auto;\r\n\r\n .tcon-menu__lines {\r\n &::before,\r\n &::after {\r\n transform-origin: 50% 50%;\r\n transition: top .3s .6s ease, transform .3s ease;\r\n }\r\n }\r\n\r\n &.#{$tcon-jstransform} {\r\n .tcon-menu__lines {\r\n background: transparent;\r\n\r\n &::before,\r\n &::after {\r\n top: 0;\r\n transition: top .3s ease, transform .3s .5s ease;\r\n width: $tcon-size;\r\n }\r\n\r\n &::before {\r\n transform: rotate3d(0, 0, 1, 45deg);\r\n }\r\n\r\n &::after {\r\n transform: rotate3d(0, 0, 1, -45deg);\r\n }\r\n }\r\n }\r\n}\r\n\r\n// see issue #7 https://github.com/grayghostvisuals/transformicons/issues/7#issuecomment-59813596\r\n.tcon-visuallyhidden {\r\n border: 0;\r\n clip: rect(0 0 0 0);\r\n height: 1px;\r\n margin: -1px;\r\n overflow: hidden;\r\n padding: 0;\r\n position: absolute;\r\n width: 1px;\r\n\r\n &:active,\r\n &:focus {\r\n clip: auto;\r\n height: auto;\r\n margin: 0;\r\n overflow: visible;\r\n position: static;\r\n width: auto;\r\n }\r\n}","@import \"byu-menu-common\";\r\n\r\nbyu-menu:not(.byu-component-rendered) {\r\n @include menuGeneral();\r\n @include outerNav();\r\n color: $navy !important;\r\n height: $menuHeight;\r\n justify-content: flex-start;\r\n order: 3;\r\n margin-bottom: -5px;\r\n max-width: 100%;\r\n flex-basis: 100%;\r\n a {\r\n color: $navy !important;\r\n }\r\n}\r\n\r\nbyu-menu:not(.byu-component-rendered) > * {\r\n @include navItemSlotted();\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n@import \"../shared-styles/nav.scss\";\r\n\r\n@mixin menuGeneral() {\r\n display: flex;\r\n justify-content: center;\r\n width: 100%;\r\n height: auto;\r\n background: #fff;\r\n // opacity used to be set here, but now it is an option.\r\n}\r\n\r\n@mixin bgTransparent() {\r\n //background: rgba(255,255,255,0.8);\r\n opacity: 0.88;\r\n}\r\n\r\n@mixin outerNav() {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: nowrap;\r\n align-items: center;\r\n justify-content: flex-start;\r\n box-sizing: border-box;\r\n height: 35px;\r\n position: relative;\r\n flex: 1;\r\n flex-basis: 100%;\r\n}\r\n\r\n@mixin navItemSlotted() {\r\n @include navItem();\r\n flex: 1;\r\n flex-basis: auto;\r\n}\r\n\r\n@mixin navItemsSlottedSetWidth() {\r\n min-width: 200px;\r\n flex: 0;\r\n padding: 0 16px;\r\n flex-basis: auto;\r\n}\r\n\r\n@mixin moreMenu() {\r\n display: none;\r\n position: relative;\r\n height: 35px;\r\n width: 16.66%;\r\n overflow: visible !important;\r\n}\r\n\r\n@mixin moreMenuVisible() {\r\n display: block;\r\n}\r\n\r\n@mixin menuMoreExpanded() {\r\n background: $menuActive;\r\n box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.75);\r\n}\r\n\r\n@mixin menuMoreItems() {\r\n display: block;\r\n}\r\n\r\n@mixin menuFixedOverlay() {\r\n position: fixed;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n right: 0;\r\n z-index: 1;\r\n}\r\n\r\n@mixin moreLink() {\r\n @include navItem();\r\n position: relative;\r\n flex: 1;\r\n display: block;\r\n}\r\n\r\n@mixin moreLinkSvg() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg');\r\n height: 13px;\r\n width: 13px;\r\n display: inline-block;\r\n background-size: 100%;\r\n //transition: transform 0.5s ease;\r\n //transform: rotate(0);\r\n //transform-origin: center;\r\n}\r\n\r\n@mixin moreItems() {\r\n display: none;\r\n position: absolute;\r\n top: 35px;\r\n right: 0;\r\n min-width: 100%;\r\n max-width: 250px;\r\n z-index: 2;\r\n background: white;\r\n box-shadow: 0 0 2px 0 rgba(0,0,0,0.75);\r\n}\r\n\r\n@mixin moreItemsSlotted() {\r\n width: 100%;\r\n @include navItem();\r\n display: block;\r\n text-align: left !important;\r\n padding-left: 12px !important;\r\n padding-right: 12px !important;\r\n}\r\n\r\n/* MOBILE */\r\n\r\n@mixin mobileOuterNav() {\r\n display: block;\r\n height: auto;\r\n}\r\n\r\n@mixin mobileMenuMore() {\r\n display: none !important;\r\n}\r\n\r\n@mixin mobileMenuSlotted() {\r\n display: block !important;\r\n text-align: left !important;\r\n padding: 18px 18px 18px 50px !important;\r\n height: auto !important;\r\n width: 100%;\r\n max-width: 100%;\r\n position: static;\r\n box-sizing: border-box;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin mobileMenuMoreMenuSlotted() {\r\n padding: 0 !important;\r\n}\r\n\r\n@mixin mobileMenuMoreMenu() {\r\n display: block;\r\n width: 100%;\r\n box-shadow: none;\r\n position: static;\r\n height: auto;\r\n}\r\n\r\n@mixin mobileMenuMoreItems() {\r\n display: block;\r\n box-shadow: none;\r\n padding: 0;\r\n position: static !important;\r\n}\r\n\r\n@mixin mobileMenuMoreItemsSlotted() {\r\n display: block !important;\r\n text-align: left !important;\r\n padding: 18px 50px !important;\r\n height: auto !important;\r\n width: 100%;\r\n position: static;\r\n box-sizing: border-box;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin mobileMenuMoreExpanded() {\r\n box-shadow: none;\r\n}\r\n\r\n@mixin mobileMenuFixedOverlay() {\r\n display: none !important;\r\n}","\r\n@import \"../shared-styles/colors.scss\";\r\n@import \"byu-search-common\";\r\n\r\nbyu-search:not(.byu-component-rendered) {\r\n background: #fff;\r\n height: 32px;\r\n margin-right: 30px;\r\n margin-left: 16px;\r\n display: flex;\r\n justify-content: flex-end;\r\n}\r\n\r\n// should be 25px height to account for\r\n// added border from searchButton OR\r\n// add border to byu-search\r\nbyu-search:not(.byu-component-rendered):after {\r\n content: \" \"; // placeholder for search icon\r\n @include searchButton();\r\n height: 32px;\r\n width: 35px;\r\n float: right;\r\n}\r\n\r\n// Helpers for styling search elements.\r\n\r\nbyu-search input.__byu-search-selected-input {\r\n @include searchInput();\r\n @include searchInputPlaceholderRules();\r\n}\r\n\r\nbyu-search.mobile-view input.__byu-search-selected-input {\r\n @include searchInputMobile();\r\n}\r\n\r\nbyu-search {\r\n input:not(.__byu-search-selected-input), button {\r\n display: none;\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin byuSearch() {\r\n //display: inline-block;\r\n margin-left: 20px;\r\n}\r\n\r\n@mixin searchIcon() {\r\n width: 17px;\r\n height: 17px;\r\n}\r\n\r\n@mixin searchButton() {\r\n background-color: var(--byu-search-color, $medgray);\r\n border: 1px solid var(--byu-search-color, $medgray);\r\n color: #FFF;\r\n width: 30px;\r\n height: 30px;\r\n display: flex;\r\n align-items: center;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin searchForm() {\r\n display: flex;\r\n align-items: stretch;\r\n align-content: center;\r\n width: 216px;\r\n}\r\n\r\n@mixin searchContainer() {\r\n flex: 1;\r\n}\r\n\r\n@mixin searchInputPlaceholder() {\r\n color: $medgray;\r\n}\r\n\r\n@mixin searchInputPlaceholderRules() {\r\n //Comma-joining these doesn't work.\r\n &::placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-webkit-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &:-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n}\r\n\r\n@mixin searchInput() {\r\n padding: 5px 10px;\r\n border: none;\r\n height: 30px;\r\n // Fixes issues on Safari with type=search\r\n -webkit-appearance: none;\r\n border-radius: 0;\r\n margin: 0;\r\n // END: Safari fixes\r\n box-sizing: border-box;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif !important;\r\n font-size: 13px !important;\r\n font-weight: 500 !important;\r\n color: $navy !important;\r\n width: 100%;\r\n}\r\n\r\n@mixin searchMobile() {\r\n width: 100%;\r\n height: 35px;\r\n margin: 0;\r\n}\r\n\r\n@mixin searchInputMobile() {\r\n padding-left: $pageContentHorizontalPadding;\r\n width: 100%;\r\n height: 35px;\r\n border-bottom: 1px solid $gray;\r\n}\r\n\r\n@mixin searchButtonMobile() {\r\n width: 53px;\r\n height: 35px;\r\n padding: 0 16px;\r\n}\r\n\r\n@mixin searchIconMobile() {\r\n width: 20px;\r\n height: 20px;\r\n}","@import \"byu-social-media-links-common\";\r\n\r\nbyu-social-media-links:not(.byu-component-rendered) {\r\n @include socialMain();\r\n\r\n > * {\r\n @include allSocialIcons();\r\n }\r\n\r\n > .facebook, > [slot=\"facebook\"] {\r\n @include facebook();\r\n }\r\n\r\n > .twitter, > [slot=\"twitter\"] {\r\n @include twitter();\r\n }\r\n\r\n > .instagram, > [slot=\"instagram\"] {\r\n @include instagram();\r\n }\r\n\r\n > .youtube, > [slot=\"youtube\"] {\r\n @include youtube();\r\n }\r\n\r\n > .pinterest, > [slot=\"pinterest\"] {\r\n @include pinterest();\r\n }\r\n\r\n > .linkedin, > [slot=\"linkedin\"] {\r\n @include linkedin();\r\n }\r\n \r\n > .rss, > [slot=\"rss\"] {\r\n @include rss();\r\n }\r\n \r\n > .snapchat, > [slot=\"snapchat\"] {\r\n @include snapchat();\r\n }\r\n\r\n > .gplus, > [slot=\"gplus\"],\r\n > .googleplus, > [slot=\"googleplus\"],\r\n > .google-plus, > [slot=\"google-plus\"] {\r\n @include google-plus();\r\n }\r\n\r\n > .podcast {\r\n @include podcast();\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin socialMain() {\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n//noinspection CssOptimizeSimilarProperties\r\n@mixin allSocialIcons() {\r\n height: 28px;\r\n width: 28px;\r\n display: block;\r\n\r\n color: transparent!important;\r\n overflow: hidden;\r\n background-size: contain;\r\n background-repeat: no-repeat;\r\n background-clip: content-box;\r\n background-position: center;\r\n\r\n margin: 8px 8px 8px 0 !important;\r\n}\r\n\r\n//We use obfuscated image names here to get around some common ad blocking lists.\r\n@mixin facebook() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg');\r\n}\r\n\r\n@mixin twitter() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg');\r\n}\r\n\r\n@mixin instagram() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg');\r\n}\r\n\r\n@mixin youtube() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg');\r\n}\r\n\r\n@mixin pinterest() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg');\r\n}\r\n\r\n@mixin google-plus() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg');\r\n}\r\n\r\n@mixin linkedin() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg');\r\n}\r\n\r\n@mixin rss() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg');\r\n}\r\n\r\n@mixin snapchat() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg');\r\n}\r\n\r\n@mixin podcast() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg');\r\n}\r\n","@import \"byu-user-info-common\";\r\n\r\n\r\n//byu-user-info:not(:defined) > * {\r\nbyu-user-info:not(.byu-component-rendered) > * {\r\n @include userInfoSlotted();\r\n}\r\n\r\n/* NON MOBILE */\r\n//byu-user-info:not(:defined):not([mobile-view]) {\r\nbyu-user-info:not(.byu-component-rendered):not([mobile-view]) {\r\n @include userInfoNotMobile();\r\n\r\n & > * {\r\n @include userInfoNotMobileSlotted();\r\n }\r\n\r\n .mobile {\r\n @include userInfoNotMobileDisplay();\r\n }\r\n\r\n img {\r\n @include userInfoNotMobileImages();\r\n }\r\n}\r\n\r\n/* MOBILE */\r\n//byu-user-info:not(:defined)[mobile-view] {\r\n// @include userInfoMobile();\r\n//\r\n// .not-mobile {\r\n// @include userInfoMobileDisplay();\r\n// }\r\n//\r\n// .has-user {\r\n//\r\n// .name {\r\n// @include hasUserName();\r\n// }\r\n//\r\n// img {\r\n// @include hasUserImage();\r\n// }\r\n//\r\n// .logout {\r\n// @include hasUserLogout();\r\n// }\r\n// }\r\n//\r\n// & > * {\r\n// @include mobileSlotted();\r\n// }","@import \"../shared-styles/nav.scss\";\r\n@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin nonMobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg');\r\n}\r\n\r\n@mixin mobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg')\r\n}\r\n\r\n@mixin userInfoImage() {\r\n height: 20px;\r\n width: 20px;\r\n margin: 5px;\r\n margin-right: 11px;\r\n background-size: contain;\r\n}\r\n\r\n@mixin userInfoSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userPresent() {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n}\r\n\r\n@mixin centeredText() {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* NON MOBILE */\r\n@mixin userInfoNotMobile() {\r\n color: white;\r\n}\r\n\r\n@mixin userInfoNotMobileSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userInfoNotMobileDisplay() {\r\n display: none;\r\n}\r\n@mixin nonMobileUsername() {\r\n color: $xlightblue !important;\r\n text-transform: uppercase !important;\r\n max-width: 130px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n\r\n}\r\n\r\n@mixin nonMobileHeaderLinkHover() {\r\n text-decoration: underline !important;\r\n}\r\n\r\n@mixin userInfoNotMobileImages() {\r\n margin: 7px;\r\n}\r\n\r\n/* MOBILE */\r\n@mixin userInfoMobile() {\r\n @include dropdownNavItem();\r\n border-bottom: solid 1px $gray;\r\n padding: 10px 14px !important;\r\n background-color: #fff !important;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin userInfoMobileNotDisplay() {\r\n display: none;\r\n}\r\n\r\n@mixin hasUserName() {\r\n order: 2;\r\n flex: 1;\r\n}\r\n\r\n@mixin hasUserNameSlotted() {\r\n text-transform: capitalize !important;\r\n color: $brightBlue !important;\r\n}\r\n\r\n/* @mixin hasUserImage() {\r\n order: 1;\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n/* @mixin noUserImage() {\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n@mixin hasUserLogout() {\r\n order: 3;\r\n}\r\n\r\n@mixin mobileSlotted() {\r\n color: $navy !important;\r\n}\r\n\r\n@mixin notHasUserMobile() {\r\n display: none;\r\n}\r\n\r\n@mixin noUserMobile() {\r\n display: none;\r\n}"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"byu-theme-components.min.css","sources":["byu-theme-components.scss","shared-styles/colors.scss","shared-styles/nav.scss","shared-styles/settings.scss","byu-footer/byu-footer-extras.scss","byu-footer/byu-footer-common.scss","byu-footer-action-button/byu-footer-action-button-extras.scss","byu-footer-action-button/byu-footer-action-button-common.scss","byu-footer-column/byu-footer-column-extras.scss","byu-footer-column/byu-footer-column-common.scss","byu-header/byu-header-extras.scss","byu-header/byu-header-common.scss","byu-header/icons/transformicons.scss","byu-menu/byu-menu-extras.scss","byu-menu/byu-menu-common.scss","byu-search/byu-search-extras.scss","byu-search/byu-search-common.scss","byu-social-media-links/byu-social-media-links-extras.scss","byu-social-media-links/byu-social-media-links-common.scss","byu-user-info/byu-user-info-extras.scss","byu-user-info/byu-user-info-common.scss"],"sourcesContent":["@import \"shared-styles/colors\";\r\n@import \"shared-styles/nav\";\r\n\r\n// import individual component extras files\r\n@import \"byu-footer/byu-footer-extras\";\r\n@import \"byu-footer-action-button/byu-footer-action-button-extras\";\r\n@import \"byu-footer-column/byu-footer-column-extras\";\r\n@import \"byu-header/byu-header-extras\";\r\n@import \"byu-menu/byu-menu-extras\";\r\n@import \"byu-search/byu-search-extras\";\r\n@import \"byu-social-media-links/byu-social-media-links-extras\";\r\n@import \"byu-user-info/byu-user-info-extras\";\r\n\r\n// this isn't the place for general styling. Please include further styling in the 2017-styles repo.\r\nbody {\r\n margin: 0;\r\n}","\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n//$byu_blue: #002e5d; // replacing this to just $navy\r\n$navy: #002e5d;\r\n//$menuHoverGray: $gray; // need to go replace\r\n//$menuActiveGray: $lightgray; // need to go replace\r\n\r\n// blues\r\n$navy: #002E5D;\r\n$medblue: #869DB5;\r\n$lightBlue: #e0f0cc;\r\n$xlightblue: #C3DDF9;\r\n$brightBlue: #0057B8;\r\n\r\n$royal: #003DA5;\r\n$lightRoyal: #114BAD;\r\n\r\n// There are 6 grays right now..\r\n$xlightgray: #f2f2f2;\r\n$lightgray: #e5e5e5;\r\n$lightergray: #e6e6e6;\r\n//$medgray: #9b9b9b; // extra\r\n$gray: #c5c5c5;\r\n$medgray: #666;\r\n$darkgray: #6a6a6b; // least used gray\r\n$darkestgray: #141414; // this should be used for body & default text.\r\n\r\n\r\n// other colors\r\n$red: #B3041A;\r\n\r\n$yellow: #FCC015;\r\n$lightyellow: #fef2d0;\r\n\r\n$teal: #84DCB4;\r\n$lightteal: #e5f7ef;\r\n\r\n$green: #66B200; // doesn't work with accessibility\r\n$lightgreen: #e0f0cc;\r\n//$green: #4D8501; // was #6EAE17;\r\n//$greendarkened: #498000 ; // was #6AA816;\r\n\r\n// other blues Aleni has used:\r\n//$lightestblue: #C4CFDA;\r\n//$lightblue: #A6B6C7;\r\n//$lightmedblue: #889FB7;\r\n//$medblue: #697F96; // was #889FB7 but it couldn't have white on it with enough contrast\r\n//$darkmedblue: #5B728A; // #5B728A is enough contrast for small white text","@import \"colors.scss\";\r\n@import \"settings.scss\";\r\n\r\n@mixin headerLink() {\r\n text-decoration: none !important;\r\n font-size: 13px!important;\r\n font-family: $headerContentFont !important;\r\n font-weight: $headerContentFontWeight!important;\r\n text-transform: uppercase!important;\r\n color: white !important;\r\n}\r\n\r\n@mixin navItemHover() {\r\n background: $gray !important;\r\n}\r\n\r\n@mixin navItemSelected() {\r\n background: $lightgray !important;\r\n}\r\n\r\n//@mixin navItemLongLink() {\r\n// max-width: 300px;\r\n// flex: 2;\r\n//}\r\n//\r\n//@mixin navItemExtraLongLink() {\r\n// max-width: 400px;\r\n// flex: 3;\r\n//}\r\n\r\n@mixin navItem() {\r\n @include headerLink();\r\n font-family: $menuFont !important;\r\n font-weight: $menuFontWeight!important;\r\n color: $navy !important;\r\n height: $menuHeight !important;\r\n display: inline-block;\r\n box-sizing: border-box;\r\n text-align: center !important;\r\n padding: 0 6px !important;\r\n line-height: $menuHeight !important;\r\n white-space: nowrap !important;\r\n overflow: hidden !important;\r\n text-overflow: ellipsis !important;\r\n transition: background 0.3s;\r\n\r\n &:hover {\r\n @include navItemHover();\r\n }\r\n\r\n &.selected {\r\n @include navItemSelected();\r\n }\r\n\r\n &.active {\r\n @include navItemSelected();\r\n }\r\n\r\n //&.long-link {\r\n // @include navItemLongLink();\r\n //}\r\n //\r\n //&.extra-long-link {\r\n // @include navItemExtraLongLink();\r\n //}\r\n}\r\n\r\n@mixin dropdownNavItem() {\r\n @include navItem();\r\n display: block;\r\n //width: 100%;\r\n box-sizing: border-box;\r\n padding: 18px 33px !important;\r\n line-height: 12px;\r\n text-align: left !important;\r\n height: auto !important;\r\n}","@import \"colors.scss\";\r\n\r\n/* --- Color variable names are all lower case. Other variables are camel-case --- */\r\n\r\n/* -- breakpoint settings ----- */\r\n$mobile_sidebar_width: 20%;\r\n$mobile_main_width: 100% - $mobile_sidebar_width;\r\n\r\n/* --- header settings ------- */\r\n$headerHeight: 55px;\r\n$siteNameFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n\r\n$byuLogoHeight: 34px;\r\n\r\n$siteTitleSize: 22px;\r\n$mobileSiteTitleSize: 16px;\r\n$siteSubTitleSize: 14px;\r\n$siteSuperTitleSize: 14px;\r\n$mobileSiteSubTitleSize: 12px;\r\n$mobileSiteSuperTitleSize: 12px;\r\n\r\n$pageContentVerticalPadding: 0;\r\n$pageContentHorizontalPadding: 16px;\r\n$pageContentPadding: $pageContentVerticalPadding $pageContentHorizontalPadding;\r\n\r\n$headerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$headerContentFontWeight: 500;\r\n/* --- search settings -------- */\r\n$searchPlaceholderColor: $gray;\r\n\r\n// menu settings\r\n$menuHeight: 35px;\r\n$menuFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$menuFontWeight: 500;\r\n//headerContentFont and menuFont are currently same, but might change later\r\n\r\n$nav_gradient: 10%;\r\n$nav_gradient_2: 5%;\r\n\r\n$menuHover: $gray; // need to go replace\r\n$menuActive: $lightgray; // need to go replace$hover_color\r\n\r\n/* --------- general text settings ----- */\r\n\r\n\r\n\r\n/* ------ footer settings ------------- */\r\n\r\n\r\n$footerBackground: $lightgray;\r\n$footerContentColor: $medgray;\r\n$footerColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$footerContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$footerContentFontWeight: 400;\r\n$footerContentFontSize: 14px;\r\n\r\n$footerButtonColor: $medgray; // change this to one of the colors\r\n$footerButtonFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n","\r\n@import \"byu-footer-common\";\r\n\r\nbyu-footer:not(.byu-component-rendered) {\r\n background: $lightgray;\r\n min-height: 200px;\r\n display: flex;\r\n width: 100%;\r\n font-family: sans-serif;\r\n font-weight: 600;\r\n flex-wrap: wrap;\r\n padding-top: 30px;\r\n justify-content: space-around;\r\n\r\n &:empty {\r\n min-height: 0;\r\n padding: 0;\r\n }\r\n}\r\n\r\nbyu-footer:not(.byu-component-rendered):after {\r\n background: $navy url('https://cdn.byu.edu/shared-icons/latest/logos/word-mark-wide-white.svg') no-repeat center 11px;\r\n background-size: 450px 40px;\r\n height: 90px;\r\n width: 100vw;\r\n content: ' ';\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n$universityFooterBgColor: $navy;\r\n$universityFooterTextColor: white;\r\n$universityFooterFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$universityFooterFontWeight: 400;\r\n$universityFooterHeight: 80px;\r\n\r\n$universityFooterLogoHeight: 40px;\r\n$universityFooterLogoWidth: 450px;\r\n$universityFooterLogoVerticalOffset: 10px;\r\n\r\n$universityFooterVerticalPadding: 21px;\r\n\r\n$siteFooterHorizontalPadding: 8px;\r\n$siteFooterVerticalPadding: 0;\r\n$siteFooterPadding: $siteFooterVerticalPadding $siteFooterHorizontalPadding;\r\n\r\n$siteFooterMobilePadding: 16px $siteFooterHorizontalPadding 0;\r\n\r\n$large-siteFooterContentTopMargin: 30px;\r\n$large-siteFooterContentBottomMargin: 40px;\r\n\r\n$large-siteFooterContentMargin: $large-siteFooterContentTopMargin $siteFooterHorizontalPadding $large-siteFooterContentBottomMargin;\r\n\r\n$siteFooterBackground: $lightgray;\r\n$siteFooterContentColor: $medgray;\r\n$siteFooterColumnTitleFont: \"Vitesse A\", \"Vitesse B\", Georgia, serif;\r\n$siteFooterContentFont: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n$siteFooterContentFontWeight: 400;\r\n$siteFooterContentFontSize: 13px;\r\n\r\n","@import \"byu-footer-action-button-common\";\r\n\r\n//byu-footer-action-button:not(:defined) {\r\nbyu-footer-action-button:not(.byu-component-rendered) {\r\n @include footerActionButton();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) > * {\r\nbyu-footer-action-button:not(.byu-component-rendered) > * {\r\n @include footerActionButtonSlotted();\r\n}\r\n\r\n//byu-footer-action-button:not(:defined) a {\r\nbyu-footer-action-button:not(.byu-component-rendered) a {\r\n @include footerActionButtonSlottedLink();\r\n}","\r\n@import \"../shared-styles/colors\";\r\n@import \"../shared-styles/settings\";\r\n\r\n@mixin footerActionButton() {\r\n background-color: $footerButtonColor;\r\n font-family: $footerButtonFont;\r\n font-size: 20px !important;\r\n color: #fff;\r\n display: inline-block;\r\n text-align: center;\r\n line-height: 2.1em;\r\n height: 45px;\r\n width: auto;\r\n min-width: 125px;\r\n margin: 10px 0 20px 0;\r\n -webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n -moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.35);\r\n}\r\n\r\n// Use this to change how the button looks when active\r\n// :host(:active) {\r\n// -webkit-box-shadow: none;\r\n// -moz-box-shadow: none;\r\n// box-shadow: none;\r\n// }\r\n\r\n@mixin footerActionButtonSlotted() {\r\n font-family: $footerButtonFont !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: #fff !important;\r\n display: inline-block !important;\r\n position: relative !important;\r\n height: 100% !important;\r\n width: 100% !important;\r\n margin: 0 20px !important;\r\n left: -20px !important;\r\n cursor: pointer !important;\r\n vertical-align: middle !important;\r\n}\r\n\r\n@mixin footerActionButtonSlottedLink() {\r\n text-decoration: none !important;\r\n}","@import \"byu-footer-column-common\";\r\n\r\n//byu-footer-column:not(:defined) {\r\nbyu-footer-column:not(.byu-component-rendered) {\r\n @include footerColumn();\r\n\r\n .header {\r\n @include header();\r\n }\r\n\r\n .header > * {\r\n @include headerSlotted();\r\n }\r\n\r\n .content *:not(byu-footer-action-button) {\r\n @include contentNotButton();\r\n }\r\n\r\n #defaultContent a {\r\n @include defaultContentLink();\r\n }\r\n\r\n #defaultContent a:hover {\r\n @include defaultContentLinkHover();\r\n }\r\n}\r\n\r\nbyu-footer-column:not(.byu-component-rendered) [slot=\"header\"] {\r\n font-family: serif;\r\n font-size: 20px;\r\n text-transform: uppercase;\r\n color: $navy;\r\n font-weight: 600;\r\n display: block;\r\n}\r\n\r\nbyu-footer-column a {\r\n color: $footerContentColor !important;\r\n text-decoration: none !important;\r\n}\r\n\r\nbyu-footer-column a:hover {\r\n color: $navy !important;\r\n}","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin footerColumn() {\r\n padding: 0 15px;\r\n box-sizing: border-box;\r\n float: left;\r\n}\r\n\r\n@mixin header() {\r\n width: 100%;\r\n margin: 0 0 8px;\r\n}\r\n\r\n@mixin headerSlotted() {\r\n font-family: $footerColumnTitleFont !important;\r\n text-transform: uppercase !important;\r\n color: $navy !important;\r\n font-size: 20px !important;\r\n border-bottom: 1px solid $gray !important;\r\n padding-bottom: 3px !important;\r\n font-weight: $footerContentFontWeight !important;\r\n width: 100%;\r\n display: inline-block;\r\n}\r\n\r\n@mixin contentNotButton() {\r\n font-family: $footerContentFont !important;\r\n font-size: $footerContentFontSize !important;\r\n font-weight: $footerContentFontWeight !important;\r\n color: $footerContentColor !important;\r\n display: block;\r\n padding: 11px 0;\r\n}\r\n\r\n@mixin defaultContentLink() {\r\n text-decoration: none !important;\r\n outline: none !important;\r\n color: #666;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin defaultContentLinkHover() {\r\n cursor: pointer;\r\n color: $navy !important;\r\n font-size: 14px;\r\n}\r\n\r\n@mixin clearParagraphMargins() {\r\n margin: 0;\r\n}","@import \"byu-header-common\";\r\n\r\n//byu-header:not(:defined) {\r\nbyu-header:not(.byu-component-rendered) {\r\n @include headerPrimary();\r\n flex-wrap: wrap;\r\n width: 100%;\r\n height: 90px;\r\n color: #fff!important;\r\n padding: 0;\r\n a {\r\n color: #fff!important;\r\n }\r\n [slot=\"actions\"] {\r\n text-transform: uppercase;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif;\r\n font-weight: 500;\r\n font-size: 13px;\r\n margin-top: 1px;\r\n }\r\n}\r\n\r\n//byu-header:not(:defined) > [slot=\"site-title\"] {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"] {\r\n @include headerTitles();\r\n padding-left: 16px;\r\n flex-direction: row;\r\n height: 40px;\r\n align-items: center;\r\n}\r\n\r\n// byu icon\r\n//byu-header:not(:defined) > [slot=\"site-title\"]:before {\r\nbyu-header:not(.byu-component-rendered) > [slot=\"site-title\"]:before {\r\n content: \"BYU\"; // make sure the space is the exact same size\r\n font-size: 40px;\r\n font-family: \"Arial\", sans-serif;\r\n padding-right: 16px;\r\n font-weight: 800 !important;\r\n letter-spacing: 2px;\r\n}\r\n\r\n\r\nbyu-header a[slot=\"site-title\"], byu-header [slot=\"site-title\"] a {\r\n @include headerTitleText();\r\n}\r\n/* MOBILE */\r\n//#mobileMenu {\r\n// @include mobileMenu();\r\n//}\r\n//\r\n//.byu-header > [name=actions] {\r\n// @include actions();\r\n//}\r\n//\r\n//.byu-header[mobile-view] {\r\n// & > [name=actions] {\r\n// @include actionsMobile();\r\n// }\r\n// & > div > * {\r\n// @include headerInnerMarginMobile();\r\n// }\r\n//}\r\n//\r\n//.byu-header {\r\n// @include headerFonts();\r\n// & > div > * {\r\n// @include headerInnerMargin();\r\n// }\r\n// button {\r\n// @include headerButton();\r\n//\r\n// &.mobile-menu-button {\r\n// @include headerButtonMobile();\r\n// }\r\n// }\r\n// .byu-header-primary {\r\n// @include headerPrimary();\r\n// .byu-header-title, #title > * {\r\n// @include headerTitle();\r\n// }\r\n// }\r\n// .byu-header-user {\r\n// button {\r\n// @include headerUserButton();\r\n// .icon {\r\n// @include headerUserIcon();\r\n// }\r\n// .label {\r\n// @include headerUserLabel();\r\n// }\r\n// }\r\n// }\r\n// .byu-header-search {\r\n// #search-input {\r\n// @include searchInput();\r\n// .byu-header-search.-webkit-input-placeholder {\r\n// @include searchWebkitPlaceholder();\r\n// }\r\n// .byu-header-search.-ms-input-placeholder {\r\n// @include searchMicrosoftPlaceholder();\r\n// }\r\n// .byu-header-search.-moz-placeholder {\r\n// @include searchMozillaPlaceholder();\r\n// }\r\n// }\r\n// }\r\n// .byu-logo {\r\n// @include byuLogo();\r\n// }\r\n//}\r\n//\r\n//#mobileMenu {\r\n// @include mobileMenu();","@import \"../shared-styles/colors.scss\";\n@import \"../shared-styles/settings.scss\";\n@import \"../shared-styles/nav.scss\";\n@import \"icons/transformicons.scss\";\n\n/* GENERAL STYLING */\n@mixin headerRoot() {\n //background-color: $navy;\n width: 100%;\n}\n\n@mixin headerContent() {\n display: flex;\n justify-content: center;\n flex: 1;\n flex-basis: 100%;\n //padding: $pageContentPadding;\n box-sizing: border-box;\n}\n\n@mixin headerLogoMargin() {\n margin-right: 16px;\n}\n\n@mixin headerDefaultFont(){\n font-family: $headerContentFont;\n font-size: 18px;\n}\n\n@mixin headerInnerMargin() {\n margin-right: 16px;\n}\n\n@mixin actionsNotMobile() {\n margin-left: 4px;\n margin-right: 4px;\n}\n\n@mixin actionsNotMobileLinks() {\n color: #fff !important;\n}\n\n@mixin actionsWrapper() {\n display: flex;\n align-items: center;\n height: $byuLogoHeight;\n}\n\n@mixin actions(){\n @include headerLink();\n}\n\n@mixin headerButton(){\n background-color: $medgray;\n color: #ffffff;\n border: none;\n cursor: pointer;\n}\n\n@mixin headerPrimary() {\n background-color: $navy;\n color: #ffffff;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n flex: 1;\n min-height: $headerHeight;\n box-sizing: border-box;\n padding-left: 16px;\n}\n\n@mixin headerTitleText() {\n font-family: $siteNameFont !important;\n color: #fff!important;\n text-decoration: none;\n}\n\n@mixin headerTitles() {\n overflow: hidden;\n -ms-text-overflow: ellipsis;\n text-overflow: ellipsis;\n flex: 1;\n display: flex;\n flex-direction: column;\n font-size: $siteTitleSize;\n @include headerTitleText();\n}\n\n@mixin titleSlotted() {\n font-family: $siteNameFont !important;\n font-weight: normal;\n font-size: $siteTitleSize;\n line-height: initial;\n}\n\n@mixin mobileSiteTitleSlotted() {\n font-size: $mobileSiteTitleSize !important;\n}\n\n@mixin headerSubTitle() {\n font-size: $siteSubTitleSize;\n line-height: $siteSubTitleSize;\n margin: 0;\n margin-top: -1px;\n margin-bottom: 3px;\n}\n\n@mixin headerSuperTitle() {\n font-size: $siteSuperTitleSize;\n line-height: $siteSuperTitleSize;\n margin-bottom: -1px;\n margin-top: 2px;\n}\n\n@mixin headerUserButton() {\n background-color: transparent;\n position: relative;\n}\n\n@mixin headerUserIcon() {\n width: 20px;\n height: 20px;\n font-size: 20px;\n vertical-align: middle;\n}\n\n@mixin headerUserLabel() {\n font-family: $headerContentFont;\n font-weight: $headerContentFontWeight;\n font-size: 13px;\n text-transform: uppercase;\n}\n\n@mixin searchInput() {\n font-family: $headerContentFont;\n font-weight: $headerContentFontWeight;\n font-size: 13px;\n color: $navy;\n}\n\n@mixin searchWebkitPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin searchMicrosoftPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin searchMozillaPlaceholder() {\n color: $gray;\n opacity: 1;\n}\n\n@mixin byuLogo() {\n height: $byuLogoHeight;\n}\n\n@mixin menuOuterWrapper() {\n border-bottom: 1px solid #ccc;\n background-color: #fff;\n}\n\n@mixin menuInnerWrapper() {\n margin: 0 auto;\n padding: $pageContentPadding;\n box-sizing: border-box;\n}\n\n@mixin menuTransparent() {\n opacity: 0.88;\n}\n\n@mixin belowMaxMenuInnerWrapper() {\n padding: 0;\n}\n\n$menuTransitionTiming: 0.5s cubic-bezier(0.4, 0.0, 0.2, 1);\n$menuTransition: max-height $menuTransitionTiming;\n\n/* MOBILE */\n\n@mixin mobileMenu() {\n max-height: 0;\n transition: $menuTransition;\n will-change: max-height;\n}\n\n@mixin mobileHeaderContent() {\n display: block;\n margin: 0;\n padding: 0;\n}\n\n@mixin mobileHeaderPrimary() {\n //margin-left: $pageContentHorizontalPadding;\n}\n\n@mixin mobileMenuOverflow() {\n overflow: hidden;\n}\n\n@mixin mobileHeaderAlign() {\n padding-top: ($headerHeight - $byuLogoHeight)/2;\n padding-bottom: ($headerHeight - $byuLogoHeight)/2;\n min-height: $byuLogoHeight;\n padding-right: $pageContentHorizontalPadding !important;\n align-items: baseline;\n}\n\n@mixin mobileLogoAlign() {\n align-self: flex-start;\n}\n\n@mixin actionsMobile() {\n @include dropdownNavItem();\n padding: 0 !important;\n background-color: $lightergray;\n color: $navy !important;\n border-top: 1px solid $gray;\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n line-height: 12px !important;\n}\n\n@mixin actionsMobileSlotted() {\n color: $navy !important;\n padding: 18px 50px !important;\n}\n\n@mixin mobileActionsLinks() {\n color: $navy !important;\n font-weight: $menuFontWeight !important;\n}\n\n@mixin mobileActionsLinksP() {\n margin: 0 !important;\n}\n\n@mixin headerInnerMarginMobile() {\n margin-right: 0;\n}\n\n@mixin mobileSiteTitle() {\n align-items: flex-start;\n align-self: center;\n font-size: $mobileSiteTitleSize !important;\n}\n\n@mixin mobileSubTitle() {\n font-size: $mobileSiteSubTitleSize !important;\n margin-top: 3px;\n}\n\n@mixin mobileSuperTitle() {\n margin-top: 0 !important;\n margin-bottom: $mobileSiteTitleSize - $mobileSiteSubTitleSize;\n}\n\n\n@mixin headerButtonMobile() {\n background-color: transparent;\n margin-top: ($byuLogoHeight - $tcon-size)/2;\n margin-bottom: ($byuLogoHeight - $tcon-size)/2;\n margin-left: ($byuLogoHeight - $tcon-size)/2;\n}\n\n@mixin mobileMenuButton() {\n display: none;\n}\n\n@mixin searchTransition() {\n max-height: 35px;\n transition: $menuTransition, transform $menuTransitionTiming;\n will-change: max-height, transform;\n overflow: hidden;\n transform: scale(1, 1);\n transform-origin: top;\n}\n\n@mixin searchTransformed() {\n max-height: 0;\n transform: scale(1, 0);\n\n}\n\n/* FULL SIZE */\n\n@mixin headerNotMobile() {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: center;\n align-items: center;\n background-color: $navy;\n}\n\n@mixin headerNotMobileNoNav() {\n height: 48px;\n}\n\n@mixin headerNotMobileNavExpand() {\n display: none;\n}\n\n@mixin headerSecondaryNotMobile() {\n background-color: $navy;\n color: #ffffff;\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n height: $headerHeight;\n padding-right: 16px;\n}\n\n@mixin searchNotMobile() {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n justify-content: space-between;\n align-items: center;\n}\n\n@mixin searchInputNotMobile() {\n border: 1px solid $navy;\n border-right: none;\n height: 20px;\n padding: 4px 6px;\n flex: 1;\n width: 217px;\n box-sizing: content-box;\n}\n\n@mixin searchButtonNotMobile() {\n height: 28px;\n width: 30px;\n text-align: center;\n}\n\n@mixin headerMenuButtonNotMobile() {\n display: none;\n}\n\n/* FULL WIDTH (NOT DEFAULT WIDTH OF 1200px) */\n@mixin headerContentFullWidth() {\n max-width: 100% !important;\n width: 100% !important;\n}","//$tcon-size: 1.5em !default;\r\n$tcon-size: 24px !default;\r\n$tcon-transition: .15s !default;\r\n$tcon-jstransform: 'tcon-transform' !default;\r\n\r\n$tcon-menu-radius: 1px !default;\r\n$tcon-menu-color: white !default;\r\n$tcon-menu-arrowleft-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 90deg)\r\n) !default;\r\n$tcon-menu-arrow360left-transformation: (\r\n transform: scale3d(.8, .8, .8) rotate3d(0, 0, 1, 360deg)\r\n) !default;\r\n\r\n.tcon {\r\n appearance: none;\r\n border: none;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: $tcon-size;\r\n transition: $tcon-transition;\r\n user-select: none;\r\n width: 17px;\r\n background: transparent;\r\n outline: none;\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n -webkit-tap-highlight-color: transparent;\r\n padding: 0 !important;\r\n\r\n > * {\r\n display: block;\r\n }\r\n\r\n &:hover,\r\n &:focus {\r\n outline: none; // see issue #36 https://github.com/grayghostvisuals/transformicons/issues/36\r\n }\r\n &::-moz-focus-inner {\r\n border: 0;\r\n }\r\n}\r\n\r\n@mixin tcon-menu-lines {\r\n display: inline-block;\r\n border-radius: $tcon-menu-radius;\r\n height: 3px;\r\n width: $tcon-size;\r\n transition: $tcon-transition;\r\n background: $tcon-menu-color;\r\n}\r\n\r\n.tcon-menu__lines {\r\n @include tcon-menu-lines;\r\n position: relative;\r\n\r\n &::before,\r\n &::after {\r\n @include tcon-menu-lines;\r\n content: '';\r\n position: absolute;\r\n left: 0;\r\n transform-origin: ($tcon-size / 14) center;\r\n width: 100%;\r\n }\r\n\r\n &::before {\r\n top: ($tcon-size / 4);\r\n }\r\n\r\n &::after {\r\n top: -($tcon-size / 4);\r\n }\r\n\r\n .#{$tcon-jstransform} & {\r\n transform: scale3d(.8, .8, .8);\r\n }\r\n}\r\n\r\n.tcon-menu--xbutterfly {\r\n width: auto;\r\n\r\n .tcon-menu__lines {\r\n &::before,\r\n &::after {\r\n transform-origin: 50% 50%;\r\n transition: top .3s .6s ease, transform .3s ease;\r\n }\r\n }\r\n\r\n &.#{$tcon-jstransform} {\r\n .tcon-menu__lines {\r\n background: transparent;\r\n\r\n &::before,\r\n &::after {\r\n top: 0;\r\n transition: top .3s ease, transform .3s .5s ease;\r\n width: $tcon-size;\r\n }\r\n\r\n &::before {\r\n transform: rotate3d(0, 0, 1, 45deg);\r\n }\r\n\r\n &::after {\r\n transform: rotate3d(0, 0, 1, -45deg);\r\n }\r\n }\r\n }\r\n}\r\n\r\n// see issue #7 https://github.com/grayghostvisuals/transformicons/issues/7#issuecomment-59813596\r\n.tcon-visuallyhidden {\r\n border: 0;\r\n clip: rect(0 0 0 0);\r\n height: 1px;\r\n margin: -1px;\r\n overflow: hidden;\r\n padding: 0;\r\n position: absolute;\r\n width: 1px;\r\n\r\n &:active,\r\n &:focus {\r\n clip: auto;\r\n height: auto;\r\n margin: 0;\r\n overflow: visible;\r\n position: static;\r\n width: auto;\r\n }\r\n}","@import \"byu-menu-common\";\r\n\r\nbyu-menu:not(.byu-component-rendered) {\r\n @include menuGeneral();\r\n @include outerNav();\r\n color: $navy !important;\r\n height: $menuHeight;\r\n justify-content: flex-start;\r\n order: 3;\r\n margin-bottom: -5px;\r\n max-width: 100%;\r\n flex-basis: 100%;\r\n a {\r\n color: $navy !important;\r\n }\r\n}\r\n\r\nbyu-menu:not(.byu-component-rendered) > * {\r\n @include navItemSlotted();\r\n}","@import \"../shared-styles/colors.scss\";\n@import \"../shared-styles/settings.scss\";\n@import \"../shared-styles/nav.scss\";\n\n@mixin menuGeneral() {\n display: flex;\n justify-content: center;\n width: 100%;\n height: auto;\n background: #fff;\n // opacity used to be set here, but now it is an option.\n}\n\n@mixin bgTransparent() {\n //background: rgba(255,255,255,0.8);\n opacity: 0.88;\n}\n\n@mixin outerNav() {\n display: flex;\n flex-direction: row;\n flex-wrap: nowrap;\n align-items: center;\n justify-content: flex-start;\n box-sizing: border-box;\n height: 35px;\n position: relative;\n flex: 1;\n flex-basis: 100%;\n}\n\n@mixin navItemSlotted() {\n @include navItem();\n flex: 1;\n flex-basis: auto;\n}\n\n@mixin navItemsSlottedSetWidth() {\n min-width: 200px;\n flex: 0;\n padding: 0 16px;\n flex-basis: auto;\n}\n\n@mixin moreMenu() {\n display: none;\n position: relative;\n height: 35px;\n width: 16.66%;\n overflow: visible !important;\n}\n\n@mixin moreMenuVisible() {\n display: block;\n}\n\n@mixin menuMoreExpanded() {\n background: $menuActive;\n box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.75);\n}\n\n@mixin menuMoreItems() {\n display: block;\n}\n\n@mixin menuFixedOverlay() {\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1;\n}\n\n@mixin moreLink() {\n @include navItem();\n position: relative;\n flex: 1;\n display: block;\n}\n\n@mixin moreLinkSvg() {\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg');\n height: 13px;\n width: 13px;\n display: inline-block;\n background-size: 100%;\n //transition: transform 0.5s ease;\n //transform: rotate(0);\n //transform-origin: center;\n}\n\n@mixin moreItems() {\n display: none;\n position: absolute;\n top: 35px;\n right: 0;\n min-width: 100%;\n max-width: 250px;\n z-index: 2;\n background: white;\n box-shadow: 0 0 2px 0 rgba(0,0,0,0.75);\n}\n\n@mixin moreItemsSlotted() {\n width: 100%;\n @include navItem();\n display: block;\n text-align: left !important;\n padding-left: 12px !important;\n padding-right: 12px !important;\n}\n\n/* MOBILE */\n\n@mixin mobileOuterNav() {\n display: block;\n height: auto;\n}\n\n@mixin mobileMenuMore() {\n display: none !important;\n}\n\n@mixin mobileMenuSlotted() {\n display: block !important;\n text-align: left !important;\n padding: 18px 18px 18px 50px !important;\n height: auto !important;\n width: 100%;\n max-width: 100%;\n position: static;\n box-sizing: border-box;\n line-height: 12px !important;\n}\n\n@mixin mobileMenuMoreMenuSlotted() {\n padding: 0 !important;\n}\n\n@mixin mobileMenuMoreMenu() {\n display: block;\n width: 100%;\n box-shadow: none;\n position: static;\n height: auto;\n}\n\n@mixin mobileMenuMoreItems() {\n display: block;\n box-shadow: none;\n padding: 0;\n position: static !important;\n}\n\n@mixin mobileMenuMoreItemsSlotted() {\n display: block !important;\n text-align: left !important;\n padding: 18px 50px !important;\n height: auto !important;\n width: 100%;\n position: static;\n box-sizing: border-box;\n line-height: 12px !important;\n}\n\n@mixin mobileMenuMoreExpanded() {\n box-shadow: none;\n}\n\n@mixin mobileMenuFixedOverlay() {\n display: none !important;\n}","\r\n@import \"../shared-styles/colors.scss\";\r\n@import \"byu-search-common\";\r\n\r\nbyu-search:not(.byu-component-rendered) {\r\n background: #fff;\r\n height: 32px;\r\n margin-right: 30px;\r\n margin-left: 16px;\r\n display: flex;\r\n justify-content: flex-end;\r\n}\r\n\r\n// should be 25px height to account for\r\n// added border from searchButton OR\r\n// add border to byu-search\r\nbyu-search:not(.byu-component-rendered):after {\r\n content: \" \"; // placeholder for search icon\r\n @include searchButton();\r\n height: 32px;\r\n width: 35px;\r\n float: right;\r\n}\r\n\r\n// Helpers for styling search elements.\r\n\r\nbyu-search input.__byu-search-selected-input {\r\n @include searchInput();\r\n @include searchInputPlaceholderRules();\r\n}\r\n\r\nbyu-search.mobile-view input.__byu-search-selected-input {\r\n @include searchInputMobile();\r\n}\r\n\r\nbyu-search {\r\n input:not(.__byu-search-selected-input), button {\r\n display: none;\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n@import \"../shared-styles/settings.scss\";\r\n\r\n@mixin byuSearch() {\r\n //display: inline-block;\r\n margin-left: 20px;\r\n}\r\n\r\n@mixin searchIcon() {\r\n width: 17px;\r\n height: 17px;\r\n}\r\n\r\n@mixin searchButton() {\r\n background-color: var(--byu-search-color, $medgray);\r\n border: 1px solid var(--byu-search-color, $medgray);\r\n color: #FFF;\r\n width: 30px;\r\n height: 30px;\r\n display: flex;\r\n align-items: center;\r\n box-sizing: border-box;\r\n}\r\n\r\n@mixin searchForm() {\r\n display: flex;\r\n align-items: stretch;\r\n align-content: center;\r\n width: 216px;\r\n}\r\n\r\n@mixin searchContainer() {\r\n flex: 1;\r\n}\r\n\r\n@mixin searchInputPlaceholder() {\r\n color: $medgray;\r\n}\r\n\r\n@mixin searchInputPlaceholderRules() {\r\n //Comma-joining these doesn't work.\r\n &::placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-webkit-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &:-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n &::-ms-input-placeholder {\r\n @include searchInputPlaceholder();\r\n }\r\n}\r\n\r\n@mixin searchInput() {\r\n padding: 5px 10px;\r\n border: none;\r\n height: 30px;\r\n // Fixes issues on Safari with type=search\r\n -webkit-appearance: none;\r\n border-radius: 0;\r\n margin: 0;\r\n // END: Safari fixes\r\n box-sizing: border-box;\r\n font-family: \"Gotham A\", \"Gotham B\", Helvetica, sans-serif !important;\r\n font-size: 13px !important;\r\n font-weight: 500 !important;\r\n color: $navy !important;\r\n width: 100%;\r\n}\r\n\r\n@mixin searchMobile() {\r\n width: 100%;\r\n height: 35px;\r\n margin: 0;\r\n}\r\n\r\n@mixin searchInputMobile() {\r\n padding-left: $pageContentHorizontalPadding;\r\n width: 100%;\r\n height: 35px;\r\n border-bottom: 1px solid $gray;\r\n}\r\n\r\n@mixin searchButtonMobile() {\r\n width: 53px;\r\n height: 35px;\r\n padding: 0 16px;\r\n}\r\n\r\n@mixin searchIconMobile() {\r\n width: 20px;\r\n height: 20px;\r\n}","@import \"byu-social-media-links-common\";\r\n\r\nbyu-social-media-links:not(.byu-component-rendered) {\r\n @include socialMain();\r\n\r\n > * {\r\n @include allSocialIcons();\r\n }\r\n\r\n > .facebook, > [slot=\"facebook\"] {\r\n @include facebook();\r\n }\r\n\r\n > .twitter, > [slot=\"twitter\"] {\r\n @include twitter();\r\n }\r\n\r\n > .instagram, > [slot=\"instagram\"] {\r\n @include instagram();\r\n }\r\n\r\n > .youtube, > [slot=\"youtube\"] {\r\n @include youtube();\r\n }\r\n\r\n > .pinterest, > [slot=\"pinterest\"] {\r\n @include pinterest();\r\n }\r\n\r\n > .linkedin, > [slot=\"linkedin\"] {\r\n @include linkedin();\r\n }\r\n \r\n > .rss, > [slot=\"rss\"] {\r\n @include rss();\r\n }\r\n \r\n > .snapchat, > [slot=\"snapchat\"] {\r\n @include snapchat();\r\n }\r\n\r\n > .gplus, > [slot=\"gplus\"],\r\n > .googleplus, > [slot=\"googleplus\"],\r\n > .google-plus, > [slot=\"google-plus\"] {\r\n @include google-plus();\r\n }\r\n\r\n > .podcast {\r\n @include podcast();\r\n }\r\n}\r\n","@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin socialMain() {\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n\r\n//noinspection CssOptimizeSimilarProperties\r\n@mixin allSocialIcons() {\r\n height: 28px;\r\n width: 28px;\r\n display: block;\r\n\r\n color: transparent!important;\r\n overflow: hidden;\r\n background-size: contain;\r\n background-repeat: no-repeat;\r\n background-clip: content-box;\r\n background-position: center;\r\n\r\n margin: 8px 8px 8px 0 !important;\r\n}\r\n\r\n//We use obfuscated image names here to get around some common ad blocking lists.\r\n@mixin facebook() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg');\r\n}\r\n\r\n@mixin twitter() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg');\r\n}\r\n\r\n@mixin instagram() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg');\r\n}\r\n\r\n@mixin youtube() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg');\r\n}\r\n\r\n@mixin pinterest() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg');\r\n}\r\n\r\n@mixin google-plus() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg');\r\n}\r\n\r\n@mixin linkedin() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg');\r\n}\r\n\r\n@mixin rss() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg');\r\n}\r\n\r\n@mixin snapchat() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg');\r\n}\r\n\r\n@mixin podcast() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg');\r\n}\r\n","@import \"byu-user-info-common\";\r\n\r\n\r\n//byu-user-info:not(:defined) > * {\r\nbyu-user-info:not(.byu-component-rendered) > * {\r\n @include userInfoSlotted();\r\n}\r\n\r\n/* NON MOBILE */\r\n//byu-user-info:not(:defined):not([mobile-view]) {\r\nbyu-user-info:not(.byu-component-rendered):not([mobile-view]) {\r\n @include userInfoNotMobile();\r\n\r\n & > * {\r\n @include userInfoNotMobileSlotted();\r\n }\r\n\r\n .mobile {\r\n @include userInfoNotMobileDisplay();\r\n }\r\n\r\n img {\r\n @include userInfoNotMobileImages();\r\n }\r\n}\r\n\r\n/* MOBILE */\r\n//byu-user-info:not(:defined)[mobile-view] {\r\n// @include userInfoMobile();\r\n//\r\n// .not-mobile {\r\n// @include userInfoMobileDisplay();\r\n// }\r\n//\r\n// .has-user {\r\n//\r\n// .name {\r\n// @include hasUserName();\r\n// }\r\n//\r\n// img {\r\n// @include hasUserImage();\r\n// }\r\n//\r\n// .logout {\r\n// @include hasUserLogout();\r\n// }\r\n// }\r\n//\r\n// & > * {\r\n// @include mobileSlotted();\r\n// }","@import \"../shared-styles/nav.scss\";\r\n@import \"../shared-styles/colors.scss\";\r\n\r\n@mixin nonMobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg');\r\n}\r\n\r\n@mixin mobileUserImage() {\r\n background-image: url('https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg')\r\n}\r\n\r\n@mixin userInfoImage() {\r\n height: 20px;\r\n width: 20px;\r\n margin: 5px;\r\n margin-right: 11px;\r\n background-size: contain;\r\n}\r\n\r\n@mixin userInfoSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userPresent() {\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n}\r\n\r\n@mixin centeredText() {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* NON MOBILE */\r\n@mixin userInfoNotMobile() {\r\n color: white;\r\n}\r\n\r\n@mixin userInfoNotMobileSlotted() {\r\n @include headerLink();\r\n}\r\n\r\n@mixin userInfoNotMobileDisplay() {\r\n display: none;\r\n}\r\n@mixin nonMobileUsername() {\r\n color: $xlightblue !important;\r\n text-transform: uppercase !important;\r\n max-width: 130px;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n\r\n}\r\n\r\n@mixin nonMobileHeaderLinkHover() {\r\n text-decoration: underline !important;\r\n}\r\n\r\n@mixin userInfoNotMobileImages() {\r\n margin: 7px;\r\n}\r\n\r\n/* MOBILE */\r\n@mixin userInfoMobile() {\r\n @include dropdownNavItem();\r\n border-bottom: solid 1px $gray;\r\n padding: 10px 14px !important;\r\n background-color: #fff !important;\r\n line-height: 12px !important;\r\n}\r\n\r\n@mixin userInfoMobileNotDisplay() {\r\n display: none;\r\n}\r\n\r\n@mixin hasUserName() {\r\n order: 2;\r\n flex: 1;\r\n}\r\n\r\n@mixin hasUserNameSlotted() {\r\n text-transform: capitalize !important;\r\n color: $brightBlue !important;\r\n}\r\n\r\n/* @mixin hasUserImage() {\r\n order: 1;\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n/* @mixin noUserImage() {\r\n margin: 0 !important;\r\n padding: 0 14px 0 0 !important;\r\n} */\r\n\r\n@mixin hasUserLogout() {\r\n order: 3;\r\n}\r\n\r\n@mixin mobileSlotted() {\r\n color: $navy !important;\r\n}\r\n\r\n@mixin notHasUserMobile() {\r\n display: none;\r\n}\r\n\r\n@mixin noUserMobile() {\r\n display: none;\r\n}"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/components-compat.js b/dist/components-compat.js index 1f17c5e4..abb73193 100644 --- a/dist/components-compat.js +++ b/dist/components-compat.js @@ -564,9 +564,11 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" if (!menu) return; if (this.menuOpen) { menu.style.maxHeight = menu.scrollHeight + 'px'; + this.classList.add('byu-header-menu-open'); __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__["transform"])(this.shadowRoot.querySelector('.mobile-menu-button')); } else { menu.style.maxHeight = null; + this.classList.remove('byu-header-menu-open'); __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__["revert"])(this.shadowRoot.querySelector('.mobile-menu-button')); } } @@ -1469,8 +1471,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37); /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__); /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1); - /** - * Created by ThatJoeMoore on 11/7/16. + /** + * Created by ThatJoeMoore on 11/7/16. */ var ByuUserInfo = function (_HTMLElement8) { @@ -1583,8 +1585,8 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" "use strict"; - var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__; /** - * Created by ThatJoeMoore on 2/24/17 + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__; /** + * Created by ThatJoeMoore on 2/24/17 */ (function (root, factory) { @@ -1620,12 +1622,12 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" // private methods // ############## - /** - * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements. - * @private - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements - * @returns {array} Array of DOM elements + /** + * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements. + * @private + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements + * @returns {array} Array of DOM elements */ var getElementList = function getElementList(elements) { if (typeof elements === 'string') { @@ -1637,12 +1639,12 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" } }; - /** - * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames. - * @private - * - * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames - * @returns {array} Array of eventnames + /** + * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames. + * @private + * + * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames + * @returns {array} Array of eventnames */ var getEventList = function getEventList(events) { if (typeof events === 'string') { @@ -1652,13 +1654,13 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" } }; - /** - * Attach or remove transformicon events to one or more elements. - * @private - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed. + /** + * Attach or remove transformicon events to one or more elements. + * @private + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed. */ var setListeners = function setListeners(elements, events, remove) { var method = (remove ? 'remove' : 'add') + 'EventListener', @@ -1682,11 +1684,11 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" } }; - /** - * Event handler for transform events. - * @private - * - * @param {object} event - event object + /** + * Event handler for transform events. + * @private + * + * @param {object} event - event object */ var handleEvent = function handleEvent(event) { tcon.toggle(event.currentTarget); @@ -1696,42 +1698,42 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" // public methods // ############## - /** - * Add transformicon behavior to one or more elements. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. - * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. - * @returns {transformicon} transformicon instance for chaining + /** + * Add transformicon behavior to one or more elements. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. + * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. + * @returns {transformicon} transformicon instance for chaining */ tcon.add = function (elements, events) { setListeners(elements, events); return tcon; }; - /** - * Remove transformicon behavior from one or more elements. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. - * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. - * @returns {transformicon} transformicon instance for chaining + /** + * Remove transformicon behavior from one or more elements. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. + * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. + * @returns {transformicon} transformicon instance for chaining */ tcon.remove = function (elements, events) { setListeners(elements, events, true); return tcon; }; - /** - * Put one or more elements in the transformed state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed - * @returns {transformicon} transformicon instance for chaining + /** + * Put one or more elements in the transformed state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed + * @returns {transformicon} transformicon instance for chaining */ tcon.transform = function (elements) { getElementList(elements).forEach(function (element) { @@ -1740,12 +1742,12 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" return tcon; }; - /** - * Revert one or more elements to the original state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted - * @returns {transformicon} transformicon instance for chaining + /** + * Revert one or more elements to the original state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted + * @returns {transformicon} transformicon instance for chaining */ tcon.revert = function (elements) { getElementList(elements).forEach(function (element) { @@ -1754,12 +1756,12 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" return tcon; }; - /** - * Toggles one or more elements between transformed and original state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @returns {transformicon} transformicon instance for chaining + /** + * Toggles one or more elements between transformed and original state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @returns {transformicon} transformicon instance for chaining */ tcon.toggle = function (elements) { getElementList(elements).forEach(function (element) { @@ -1789,16 +1791,16 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" /* harmony import */var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9); /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11); /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__); - /** - * Created by ThatJoeMoore on 2/18/17 + /** + * Created by ThatJoeMoore on 2/18/17 */ - /* - * Header Bits + /* + * Header Bits */ - /* - * Footer Bits + /* + * Footer Bits */ console.log('--------------- Starting byu-theme-components ' + __WEBPACK_IMPORTED_MODULE_8__package_json__["version"] + ' ---------------'); @@ -2024,7 +2026,7 @@ function _inherits(subClass, superClass) { if (typeof superClass !== "function" // module - exports.push([module.i, ".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}", ""]); + exports.push([module.i, ".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}", ""]); // exports diff --git a/dist/components-compat.js.map b/dist/components-compat.js.map index b956dc4e..122665f4 100644 --- a/dist/components-compat.js.map +++ b/dist/components-compat.js.map @@ -1 +1 @@ -{"version":3,"sources":["components.js","webpack:/webpack/bootstrap f34479c4d67cb2a18bae","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["module","list","result","item","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","window","currentYear","component","observer","w","needsWidthSetting","mobile","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","menuButton","each","kids","arr","setTimeout","console","header","menu","__webpack_require__","aTag","q","obs","toggleClass","render","updateMoreMenuState","addSlotListeners","document","classes","el","filteredChildren","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","teardownInputElement","teardownSearchListeners","runPredefinedAction","search","handleSlotChange","setupInputElement","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","runSubmitFormAction","runClickAction","runNavigateAction","form","button","input","helped","handler","applyTitleToChildren","SOCIAL_IDS","kid","userSlot","root","_transformClass","DEFAULT_EVENTS","transform","revert","eventLists","elementList","tcon","setListeners","getElementList","element","Object","evt","elSettings","applyTemplateShady","applyTemplateNative","templateElement","ShadyCSS","shadow","runAfterStamping","callback","exports","a","b","ka","kb","key","keys","escapeFn","__append","hash","chr","seen"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAA8B;ACA9B;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AACA;AAAA;ADEA;AACA;ACAA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AAA2C;AAAc;ADEzD;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;ADEA;ACAA;AACA;AACA;AACA;AAA2B;AAA4B;AACvD;AAAiC;AAAe;AAChD;AACA;AACA;AAAA;ADEA;ACAA;AACA;AAAsD;AAA+D;ADErH;ACAA;AACA;ADEA;ACAA;AACA;ADEA;AAAU;AACV;AACA;AACA;AACA;AA8BA;AEpGA;AFsGA;AACA;AACA;AEpGA;AACAA;AACA;AFsGA;AEpGA;AACAC;AACA;AACA;AACA;AACA;AACAC;AACI;AACJA;AACA;AACA;AACA;AACA;AFsGA;AEpGA;AACAD;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACK;AACLA;AACA;AACAF;AACA;AACA;AACA;AACA;AACA;AFoGA;AAzBA;AAAO;AACP;AACA;AA4BA;AA1BA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AAA8F;AAA4D;AAC1J;AACA;AAA8F;AAAmE;AGvIjK;AAAA;AAAA;AAAA;AH4KA;AACA;AACA;AAxBA;AAAO;AACP;AACA;AA2BA;AAzBA;AI1JA;AAAAG;AAAA;AJwLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AIrLA;AACA;AACA;AAQA;AACA;AACA;AJgLA;AI9KA;AACA;AJgLA;AAjBA;AAAO;AACP;AACA;AAoBA;AAlBA;AACA;AAAqB;AACrB;AACA;AAqBA;AA1BkE;AAAA;AA6BlE;AKvNA;AAAA;AL0NA;AK1NA;AL4NA;AK1NA;AAFA;AAGA;AL6NA;AAtCkE;AAAA;AAAA;AKpLlEC;AACA;ALmLkE;AA6ClE;AA7CkE;AAAA;AAgDlE;AKhOAC;AACAA;ALkOA;AAtBA;AAAO;AACP;AACA;AAyBA;AAvBA;AACA;AAAqB;AACrB;AACA;AA0BA;AA/BkE;AAAA;AAkClE;AM5PA;AAAA;AN+PA;AM/PA;ANiQA;AM/PA;AAFA;AAGA;ANkQA;AA3CkE;AAAA;AAAA;AMpNlED;AACA;ANmNkE;AAkDlE;AAlDkE;AAAA;AAqDlE;AMrQAC;AACAA;ANuQA;AA7BA;AAAO;AACP;AACA;AAgCA;AA9BA;AACA;AAAqB;AACrB;AACA;AAiCA;AO/RA;AACA;AACA;APiSA;AA1CkE;AAAA;AA6ClE;AOhSA;AAAA;APmSA;AOnSA;APqSA;AOnSA;AAFA;AAGA;APsSA;AAtDkE;AAAA;AAAA;AO7OlE;AACAD;AACA;AACA;AACAE;APwSA;AOtSA;AACA;AACAC;AACa;APwSb;AOtSA;AACA;AACAC;AACAD;AACS;AACT;AP6NkE;AAAA;AAAA;AA8ElE;AOvSA;AACA;AACA;AACA;AAGA;AACA;APuSA;AOrSA;AACA;AACAE;AACA;AACA;APuSA;AOrSA;AACA;AAEAC;AACAA;AACA;AACA;APoMkE;AAmGlE;AAnGkE;AAAA;AAsGlE;AOvSAL;AACAA;APySA;AAlCA;AAAO;AACP;AACA;AAqCA;AAnCA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AAsCA;AQ9WA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ARgXA;AQ9WA;AACA;AACA;ARgXA;AA5DkE;AAAA;AA+DlE;AQ/WA;AAAA;ARkXA;AQlXA;ARoXA;AQlXA;AAFA;AAGA;ARqXA;AAxEkE;AAAA;AAAA;AQ3SlE;ARwXA;AQvXA;AACAM;AADA;AAGA;AACAC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACb;AACA;AR2RkE;AAAA;AAAA;AQxRlE;AACA;AACA;AR0XA;AQxXA;AACA;AR0XA;AQxXA;AACA;AR0XA;AQxXA;AR0XA;AQxXA;AACA;AACA;AAEA;AACA;AACA;ARsQkE;AAAA;AAAA;AQpQlE;AR2XA;AQ1XA;AACA;AACA;AACA;AACA;AACAC;AAAA;AAAA;AACA;AR6PkE;AAAA;AAAA;AQ1PlE;AACA;ARyPkE;AAAA;AAAA;AQvPlE;ARiYA;AQhYA;AACAC;AACA;AACA;AACA;AACa;AACJ;AACT;AR+OkE;AAAA;AAAA;AQ5OlE;AACA;AACAC;AACAD;AACAA;AACa;AACJ;AACTC;AACAD;AACAA;AACa;AACb;AACA;ARgOkE;AAAA;AAAA;AQ7NlE;AACA;AACA;AACAE;AACA;AACA;AACA;ARuNkE;AAAA;AAAA;AQpNlE;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;ARkNkE;AAAA;AAAA;AQ/MlE;AACA;AACA;AACA;AACA;AR2YA;AQzYA;AACAC;AACA;AACA;AACAC;AACA;AACAC;AACA;AACa;AACJ;AR2YT;AQzYA;AACAD;AACA;ARkVK;AAtJ6D;AAAA;AAAA;AQpLlE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA;AAiBA;ARmKkE;AAAA;AAAA;AQhKlE;AACA;AACA;AACAE;AACAC;AACS;AACTD;AACAC;AACA;AACA;ARuJkE;AAAA;AAAA;AQpJlE;AACA;AAAmB;AACnBC;AACA;AACA;ARgJkE;AAAA;AAAA;AQ7DlE;AACA;AACA;AACA;AACA;AACA;AACa;AACbC;AACA;AACA;AACA;AACA;AACA;AR4TA;AQ1TAA;AACA;AACA;AR6CkE;AAAA;AAAA;AQ1ClE;AACA;ARyCkE;AAAA;AAAA;AAuRlE;AQxTA;AACA;AACA;AACAb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACba;AACA;AACA;AACA;AACA;AACA;AR0TA;AQxTAA;AACA;AACA;ARWkE;AAAA;AAAA;AQRlE;AACA;AACA;AAEA;AACA;AACA;AREkE;AAAA;AAAA;AQIlE;ARwTA;AQvTA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACb;AACAC;AACAJ;AACA;AACA;AACA;ARrBkE;AAAA;AAAA;AQwBlE;AACA;AACA;AACA;AACS;AACT;AACA;AACA;AR/BkE;AAAA;AAAA;AQ7IlE;AACA;AR4IkE;AQzIlE;AACA;AACS;AACT;AACA;AACA;ARoIkE;AAAA;AAAA;AQjIlE;AACA;ARgIkE;AQ7HlE;AACA;AACS;AACT;AACA;AACA;ARwHkE;AAAA;AAAA;AQrHlE;AACA;ARoHkE;AQjHlE;AACA;AACS;AACT;AACA;AACA;AR4GkE;AAAA;AAAA;AQzGlE;AACA;ARwGkE;AQrGlE;AACA;AACS;AACT;AACA;AACA;ARgGkE;AAAA;AAAA;AQ7FlE;AACA;AR4FkE;AQzFlE;AACA;AACS;AACT;AACA;AACA;ARoFkE;AAAA;AAAA;AQjFlE;AACA;ARgFkE;AQ7ElE;AACA;AACS;AACT;AACA;AACA;ARwEkE;AAAA;AAAA;AQrElE;AACA;ARoEkE;AQjElE;AACA;ARgEkE;AAAA;AAAA;AQtClE;AACA;ARqCkE;AAAA;AAAA;AQClE;AACA;ARFkE;AAAA;AAAA;AQxLlE;AACA;ARuLkE;AA2blE;AA3bkE;AAAA;AA8blE;AQ3ZAf;AACAA;AR6ZA;AAzEA;AAAO;AACP;AACA;AA4EA;AA1EA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AA6EA;AShxBA;AACA;ATkxBA;AAvFkE;AAAA;AA0FlE;AA1FkE;AAAA;AAAA;ASvrBlE;AACA;ATsrBkE;ASnrBlE;AACA;AACS;AACT;AACA;AACA;AT8qBkE;AAAA;AAAA;AS3qBlE;AACA;AT0qBkE;ASvqBlE;AACA;AACAoB;AACA;AToqBkE;AAkHlE;ASpxBA;AAAA;ATuxBA;AStxBgB;AADhB;AT0xBA;ASxxBA;AAFA;AAGA;AT2xBA;AA5HkE;AAAA;AAAA;AS5pBlEC;AACA;AT2pBkE;AAAA;AAAA;ASxpBlE;AACA;AACAA;AACA;AAHA;AAKA;ATmpBkE;AAAA;AAAA;AS5oBlE;AACA;AT2oBkE;AAAA;AAAA;ASxoBlE;AACA;ATuoBkE;AAAA;AAAA;AShpBlE;AACA;AT+oBkE;AA2JlE;AA3JkE;AAAA;AA8JlE;ASlyBA;AACA;AACA;AACA;AACA;AToyBA;ASlyBA;AACA;AToyBA;ASlyBAtB;AACAG;AACAoB;AACAC;AACA;AACArB;AACAA;AACS;AACJ;AACL;AToyBA;ASlyBA;AACAA;AAEA;AACAU;AAAA;AACAU;AACa;AAFb;AAGS;AACT;ATqyBA;ASnyBA;ATqyBA;ASnyBA;AACAE;AACAtB;AACA;ATqyBA;ASnyBAU;AACAY;AACK;AACL;ATqyBA;ASnyBA;AACA;AACA;AACA;ATqyBA;ASnyBA;AACA;AACA;ATqyBA;ASnyBA;AACA;AACA;AACA;AACA;AACA;AACAC;AACK;AACLA;AACA;AACAC;AACA;ATqyBA;ASnyBA;AACA;AACA;AACA;AAA4D;AAAqC;AACjG;AAAoE;AAAqC;AACzG;AACA;AACA;ATyyBA;ASvyBA;ATyyBA;ASvyBA;AACA;AACAC;AACA;AACK;AACLA;AACA;ATyyBA;ASvyBA;AACAd;AACAX;AACA;AAEAA;AACA;AACA;ATwyBA;AStyBAF;AACAA;ATwyBA;AA5FA;AAAO;AACP;AACA;AA+FA;AA7FA;AACA;AA+FA;AAlGkE;AAoGlE;AAjGqB;AACrB;AU52BA;AAAA;AVi9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AU38BA;AV68BA;AU38BA;AACA;AACA;AACA;AACA;AV68BA;AU38BA;AACA;AACA;AV68BA;AU38BA;AACA;AV68BA;AU38BA;AV68BA;AU38BA;AV68BA;AUv8BA;AVy8BA;AA7IkE;AAAA;AAgJlE;AUx8BA;AAAA;AV28BA;AU18BgB;AADhB;AV88BA;AU58BA;AAFA;AAGA;AV+8BA;AA1JkE;AAAA;AAAA;AUnzBlE;AVk9BA;AUj9BAD;AACA;AVm9BA;AUj9BA;AVm9BA;AUj9BA6B;AACAC;AVm9BA;AUj9BAC;AACS;AACT;AVwyBkE;AAAA;AAAA;AUryBlE;AACAC;AACA;AVo9BA;AUl9BAC;AAEA;AV+xBkE;AAAA;AAAA;AU5xBlE;AACA;AACA;AACA;AACA;AACA;AVo9BA;AUl9BA;AVo9BA;AUl9BA;AACA;AVo9BA;AUl9BA;AACAC;AACA;AACA;AV6wBkE;AAAA;AAAA;AUtwBlE;AACA;AACA;AACA;AACAF;AACA;AVi9BA;AU/8BA;AVi9BA;AU/8BA;AACA;AATA;AAWA;AV0vBkE;AAAA;AAAA;AUvvBlE;AACA;AVsvBkE;AUnvBlE;AACA;AVkvBkE;AAAA;AAAA;AU/uBlE;AACA;AV8uBkE;AU3uBlE;AACA;AV0uBkE;AAAA;AAAA;AUvuBlE;AACA;AVsuBkE;AUnuBlE;AACA;AVkuBkE;AAAA;AAAA;AU/tBlE;AACA;AV8tBkE;AU3tBlE;AACA;AACA;AVytBkE;AAAA;AAAA;AUttBlE;AACA;AVqtBkE;AUltBlE;AACA;AACA;AVgtBkE;AAAA;AAAA;AU7sBlE;AACA;AV4sBkE;AAAA;AAAA;AU1wBlE;AACA;AVywBkE;AA4QlE;AA5QkE;AAAA;AA+QlE;AUv9BA/B;AACAA;AVy9BA;AUv9BA;AACAkC;AACAC;AACK;AACL;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AVy9BA;AUv9BAD;AVy9BA;AUv9BA;AACAH;AACA;AACA;AACAK;AACK;AACLvB;AACA;AACA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AACA;AVy9BA;AUv9BA;AACAuB;AACK;AACLvB;AACA;AACA;AACA;AVy9BA;AUv9BA;AACAwB;AACAC;AACAC;AACA;AVy9BA;AUv9BA;AACAC;AACAC;AACAC;AACA;AVy9BA;AUv9BA;AACA;AVy9BA;AUv9BA;AACA;AACAC;AACA;AACA;AACAC;AACA;AACA;AACAC;AACA;AACA;AACA;AAXA;AAaA;AVy9BA;AUv9BA;AACA;AVy9BA;AUv9BA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BAC;AACA;AVy9BA;AUv9BA;AACA;AVy9BA;AUv9BA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BAC;AACA;AVy9BA;AUv9BA;AACA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AACAlC;AACA;AVy9BA;AUv9BAb;AACA;AVy9BA;AUv9BA;AACAgD;AACA;AVy9BA;AUv9BA;AACAA;AACA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AVy9BA;AUv9BA;AACAA;AACAC;AACK;AACLD;AACAC;AACK;AACLD;AACAC;AACA;AVy9BA;AUv9BAD;AACA;AVy9BA;AUv9BA;AACA;AACA;AVy9BA;AUv9BA;AACAA;AACA;AACA;AACAA;AACA;AACA;AACA;AVy9BA;AUv9BA;AACAd;AAEAA;AACS;AACT;AVw9BA;AUt9BA;AACA;AACA;AACAA;AACA;AACA;AACAc;AACA;AVw9BA;AUt9BA;AACA;AACA;AACA;AVw9BA;AUt9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACA;AVw9BA;AUt9BAhB;AVw9BA;AUt9BA;AACA;AACA;AVw9BA;AUt9BA;AACA;AACA;AACA;AACAgB;AACA;AVw9BA;AUt9BAhB;AACA;AVw9BA;AUt9BA;AACA;AACAA;AACA;AACA;AACAA;AACA;AACA;AVw9BA;AUt9BA;AACA;AACA;AACA;AVw9BA;AAtGA;AAAO;AACP;AACA;AAyGA;AAvGA;AACA;AAAqB;AACrB;AACA;AA0GA;AWt1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AXq2CA;AWt1CA;AXw1CA;AAhIkE;AAAA;AAmIlE;AWv1CA;AAAA;AX01CA;AW11CA;AX41CA;AW11CA;AAFA;AAGA;AX61CA;AA5IkE;AAAA;AAAA;AW/sClE;AXg2CA;AW/1CAnC;AACA;AACAoD;AXi2CA;AW/1CAC;AACA;AACA;AXi2CA;AW/1CAD;AACA;AACA;AACAtC;AACA;AACa;AACJ;AACT;AX+rCkE;AAmKlE;AAnKkE;AAAA;AAsKlE;AWl2CAb;AACAA;AXo2CA;AWl2CA;AACA;AACAU;AAAA;AAAA;AACA;AADA;AAEA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA2C;AACS;AACT;AXu2CA;AWr2CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AXu2CA;AAnHA;AAAO;AACP;AACA;AAsHA;AApHA;AACA;AAAqB;AACrB;AYp0CA;AAAA;AZ67CA;AACA;AACA;AA/HkE;AAAA;AAkIlE;AYx7CA;AAAA;AZ27CA;AY37CA;AZ67CA;AY17CA;AZ47CA;AY/7CA;AAKA;AZ67CA;AA5IkE;AAAA;AAAA;AYzyClE;AACA;AACA;AACA;AACA;AACA;AZoyCkE;AAAA;AAAA;AYlyClE;AZ47CA;AY37CAtD;AACA;AACA;AACU;AACV;AZ6xCkE;AAAA;AAAA;AY3xClE;AZ+7CA;AY77CA;AACA;AACAuD;AACA;AACS;AACT;AZoxCkE;AAAA;AAAA;AYjxClE;AACA;AACA;AACA;AAEA;AACA;AACA;AZ0wCkE;AAAA;AAAA;AYvwClE;AACA;AZswCkE;AAAA;AAAA;AY7yClE;AACA;AZ4yCkE;AAgMlE;AAhMkE;AAAA;AAmMlE;AYr8CAtD;AACAA;AZu8CA;AA7HA;AAAO;AACP;AACA;AAgIA;Aa3gDAN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AALA;AAlBA;AbsiDA;AA9HA;AAAO;AACP;AACA;AAiIA;AA/HA;AAiIA;Ac7iDA;Ad+iDA;AACA;AACA;Ac5iDA;AACA;AACA;AACA;AACK;AACL;AACAA;AACK;AACL;AACA6D;AACA;AACC;Ad8iDD;Ac5iDA;AACA;AACA;AACA;Ad8iDA;Ac5iDA;AAAA;AAEAC;Ad8iDA;AACA;Ac7iDA;AACAC;AACAC;AACAC;AAFA;AdkjDA;Ac7iDA;AACA;AACA;Ad+iDA;Ac7iDA;Ad+iDA;AACA;AACA;AACA;AACA;AACA;Ac7iDA;AACA;AACA;AACS;AACT;AACS;AACT;AACA;AACA;Ad+iDA;Ac7iDA;Ad+iDA;AACA;AACA;AACA;AACA;AACA;Ac7iDA;AACA;AACA;AACS;AACT;AACA;AACA;Ad+iDA;Ac7iDA;Ad+iDA;AACA;AACA;AACA;AACA;AACA;AACA;Ac7iDA;AACA;AAAA;AAAA;AAAA;AdkjDA;Ac5iDA;AACA;AACAC;AACA;Ad8iDA;Ac5iDA;AACA;AACA;AACA;AACA;AACAC;AACA;AACA;AACA;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;Ac5iDA;AACAC;AACA;Ad8iDA;Ac5iDA;AACA;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ac5iDAA;AACAC;AACA;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ac5iDAD;AACAC;AACA;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;AACA;Ac5iDAD;AACAE;AACAC;AACS;AACT;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;AACA;Ac5iDAH;AACAE;AACAC;AACS;AACT;AACA;Ad8iDA;Ac5iDA;Ad8iDA;AACA;AACA;AACA;AACA;AACA;Ac5iDAH;AACAE;AACAF;AACS;AACT;AACA;Ad8iDA;Ac5iDA;AACC;Ad8iDD;AA3HA;AAAO;AACP;AACA;AA8HA;AA5HA;AA8HA;AA7HAI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ae3nDA;AAAA;AAAA;Af6vDA;AACA;AACA;Ae1vDA;Af4vDA;AACA;AACA;AetvDA;AfwvDA;AACA;AACA;Ae/uDArD;AfivDA;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AgB7pDA;AAAAf;AAAA;AhBmxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AgBhxDA;AACA;AACA;AACA;AACA;AACAqE;AACA;AACA;AhBkxDA;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AACA;AAAiCrE;AiBhsDjC;AAAA;AjBszDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AiBjzDA;AACA;AACA;AAAA;AjBozDA;AiBlzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AjBozDA;AA9GA;AAAO;AACP;AACA;AAiHA;AA/GA;AACA;AAAiCA;AkB9uDjC;AAAA;AAAA;AlBm2DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AkB91DA;AlBg2DA;AkB91DA;AACA;AlBg2DA;AkB91DA;AACA;AACA;AACA;AACA;AACAsE;AlBg2DA;AkB91DA;AACAC;AACK;AACLC;AACA;AACA;AlBg2DA;AkB91DA;AACA;AACA;AACA;AACAC;AACAA;AACAA;AACA/C;AACAgD;AACA;AACA;AACAA;AACK;AACLA;AACK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACA;AACAA;AACA7D;AACA8D;AACK;AACL;AlBg2DA;AkB91DA;AACAT;AACAS;AACA;AlBg2DA;AkB91DA;AACAT;AACA;AACAU;AACA;AACA;AlBg2DA;AA3GA;AAAO;AACP;AACA;AA8GA;AmBp7DAC;AACA;AnBs7DA;AACA;AmBp7DA;AACAA;AnBs7DA;AmBp7DA;AnBs7DA;AACA;AA5GA;AAAO;AACP;AACA;AA+GA;AoBn8DAA;AACA;ApBq8DA;AACA;AoBn8DA;AACAA;ApBq8DA;AoBn8DA;ApBq8DA;AACA;AA7GA;AAAO;AACP;AACA;AAgHA;AqBl9DAA;AACA;ArBo9DA;AACA;AqBl9DA;AACAA;ArBo9DA;AqBl9DA;ArBo9DA;AACA;AA9GA;AAAO;AACP;AACA;AAiHA;AsBj+DAA;AACA;AtBm+DA;AACA;AsBj+DA;AACAA;AtBm+DA;AsBj+DA;AtBm+DA;AACA;AA/GA;AAAO;AACP;AACA;AAkHA;AuBh/DAA;AACA;AvBk/DA;AACA;AuBh/DA;AACAA;AvBk/DA;AuBh/DA;AvBk/DA;AACA;AAhHA;AAAO;AACP;AACA;AAmHA;AwB//DAA;AACA;AxBigEA;AACA;AwB//DA;AACAA;AxBigEA;AwB//DA;AxBigEA;AACA;AAjHA;AAAO;AACP;AACA;AAoHA;AyB9gEAA;AACA;AzBghEA;AACA;AyB9gEA;AACAA;AzBghEA;AyB9gEA;AzBghEA;AACA;AAlHA;AAAO;AACP;AACA;AAqHA;A0B7hEAA;AACA;A1B+hEA;AACA;A0B7hEA;AACAA;A1B+hEA;A0B7hEA;A1B+hEA;AACA;AAnHA;AAAO;AACP;AACA;AAsHA;A2B5iEAA;AACA;A3B8iEA;AACA;A2B5iEA;AACAA;A3B8iEA;A2B5iEA;A3B8iEA;AACA;AApHA;AAAO;AACP;AACA;AAuHA;A4B3jEA;AACA;AACA;A5B6jEA;A4B3jEA;AACA;AACA;AACA;AACA;AAEG;AACH;A5B4jEA;A4B1jEA;AACA;AACG;AACH;A5B4jEA;A4B1jEA;AACA;AACA;AACA;AACA;AACA;AACG;AACH;AACA;AACA;A5B4jEA;A4B1jEA;AACA;AACA;A5B4jEA;A4B1jEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A5B4jEA;A4B1jEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACAC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEG;AAAY;AACf;AACA;AACA;AACA;AACA;AAEA;AACAC;AACAC;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACAC;AACA;AACA;AACA;AACA;A5B0jEA;AAjHA;AAAO;AACP;AACA;AAoHA;A6B5pEA;AACA;AACC;A7B8pED;A6B5pEAL;A7B8pEA;A6B5pEAA;AACA;AACA;AACA;A7B8pEA;A6B5pEAA;AACA;AACA;AAMA;A7BypEA;AA5GA;AAAO;AACP;AACA;AA+GA;A8BjrEAA;A9BmrEA;A8BhrEAA;AACA;AACA;AACA;AAAAM;AAAA;AAEA;A9BmrEA;AA5GA;AAAO;AACP;AACA;AA+GA;A+BhsEAxF;AACA;A/BksEA;A+BjsEAyF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AAOA;AACA;AACA;AACA;AAAA;AACAC;AACAA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACA;A/BolEC;AAkHD;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AAmHA;AgC7uEA;AACA;AACAC;AACA;AACA;AACA;AhC+uEA;AgC7uEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACAD;AACAA;AACA;AACA;AACA;AhC+uEA;AgC7uEA;AACA;AACA;AACA;AACA;AACA;AhC+uEA;AgC7uEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACA;AACA;AACA;AACA;AhC+uEA;AgC7uEA;AACA;AACA;AhC+uEA;AgC7uEA;AACA;AACA;AhC+uEA;AgC7uEA7F;AhC+uEA;AA/GA;AAAO;AACP;AACA;AAkHA;AiC7yEAA;AjC+yEA;AAhHA;AAAO;AACP;AACA;AAmHA;AkCpzEAA;AlCszEA;AAjHA;AAAO;AACP;AACA;AAoHA;AmC3zEAA;AnC6zEA;AAlHA;AAAO;AACP;AACA;AAqHA;AoCl0EAA;ApCo0EA;AAnHA;AAAO;AACP;AACA;AAsHA;AqCz0EAA;ArC20EA;AApHA;AAAO;AACP;AACA;AAuHA;AsCh1EAA;AtCk1EA;AArHA;AAAO;AACP;AACA;AAwHA;AuCv1EAA;AvCy1EA;AAtHA;AAAO;AACP","file":"components-compat.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a
, but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\r\n\r\n\r\n\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\r\n\r\n(function (root, factory) {\r\n if (true) {\r\n // AMD module\r\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\r\n\r\n/*\r\n * Header Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\r\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f34479c4d67cb2a18bae","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\"use strict\";\r\n\r\nimport template from \"./byu-user-info.html\";\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-user-info', template, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\"use strict\";\r\n\r\n(function (root, factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD module\r\n define(factory);\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\"use strict\";\r\n\r\n/*\r\n * Header Bits\r\n */\r\nimport './byu-header/byu-header.js';\r\nimport './byu-menu/byu-menu.js';\r\nimport './byu-search/byu-search.js';\r\nimport './byu-user-info/byu-user-info.js';\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\nimport './byu-footer/byu-footer.js';\r\nimport './byu-footer-column/byu-footer-column.js';\r\nimport './byu-footer-action-button/byu-footer-action-button.js';\r\nimport './byu-social-media-links/byu-social-media-links.js';\r\n\r\nimport {version} from '../package.json';\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file +{"version":3,"sources":["components.js","webpack:/webpack/bootstrap db575c1616d355860a86","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["module","list","result","item","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","window","currentYear","component","observer","w","needsWidthSetting","mobile","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","menuButton","each","kids","arr","setTimeout","console","header","menu","__webpack_require__","aTag","q","obs","toggleClass","render","updateMoreMenuState","addSlotListeners","document","classes","el","filteredChildren","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","teardownInputElement","teardownSearchListeners","runPredefinedAction","search","handleSlotChange","setupInputElement","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","runSubmitFormAction","runClickAction","runNavigateAction","form","button","input","helped","handler","applyTitleToChildren","SOCIAL_IDS","kid","userSlot","root","_transformClass","DEFAULT_EVENTS","transform","revert","eventLists","elementList","tcon","setListeners","getElementList","element","Object","evt","elSettings","applyTemplateShady","applyTemplateNative","templateElement","ShadyCSS","shadow","runAfterStamping","callback","exports","a","b","ka","kb","key","keys","escapeFn","__append","hash","chr","seen"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAbA;AAA8B;ACA9B;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AACA;AAAA;ADEA;AACA;ACAA;AACA;ADEA;ACAA;AACA;ADEA;ACAA;AACA;AAA2C;AAAc;ADEzD;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;ADEA;ACAA;AACA;AACA;AACA;AAA2B;AAA4B;AACvD;AAAiC;AAAe;AAChD;AACA;AACA;AAAA;ADEA;ACAA;AACA;AAAsD;AAA+D;ADErH;ACAA;AACA;ADEA;ACAA;AACA;ADEA;AAAU;AACV;AACA;AACA;AACA;AA8BA;AEpGA;AFsGA;AACA;AACA;AEpGA;AACAA;AACA;AFsGA;AEpGA;AACAC;AACA;AACA;AACA;AACA;AACAC;AACI;AACJA;AACA;AACA;AACA;AACA;AFsGA;AEpGA;AACAD;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACK;AACLA;AACA;AACAF;AACA;AACA;AACA;AACA;AACA;AFoGA;AAzBA;AAAO;AACP;AACA;AA4BA;AA1BA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AAA8F;AAA4D;AAC1J;AACA;AAA8F;AAAmE;AGvIjK;AAAA;AAAA;AAAA;AH4KA;AACA;AACA;AAxBA;AAAO;AACP;AACA;AA2BA;AAzBA;AI1JA;AAAAG;AAAA;AJwLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AIrLA;AACA;AACA;AAQA;AACA;AACA;AJgLA;AI9KA;AACA;AJgLA;AAjBA;AAAO;AACP;AACA;AAoBA;AAlBA;AACA;AAAqB;AACrB;AACA;AAqBA;AA1BkE;AAAA;AA6BlE;AKvNA;AAAA;AL0NA;AK1NA;AL4NA;AK1NA;AAFA;AAGA;AL6NA;AAtCkE;AAAA;AAAA;AKpLlEC;AACA;ALmLkE;AA6ClE;AA7CkE;AAAA;AAgDlE;AKhOAC;AACAA;ALkOA;AAtBA;AAAO;AACP;AACA;AAyBA;AAvBA;AACA;AAAqB;AACrB;AACA;AA0BA;AA/BkE;AAAA;AAkClE;AM5PA;AAAA;AN+PA;AM/PA;ANiQA;AM/PA;AAFA;AAGA;ANkQA;AA3CkE;AAAA;AAAA;AMpNlED;AACA;ANmNkE;AAkDlE;AAlDkE;AAAA;AAqDlE;AMrQAC;AACAA;ANuQA;AA7BA;AAAO;AACP;AACA;AAgCA;AA9BA;AACA;AAAqB;AACrB;AACA;AAiCA;AO/RA;AACA;AACA;APiSA;AA1CkE;AAAA;AA6ClE;AOhSA;AAAA;APmSA;AOnSA;APqSA;AOnSA;AAFA;AAGA;APsSA;AAtDkE;AAAA;AAAA;AO7OlE;AACAD;AACA;AACA;AACAE;APwSA;AOtSA;AACA;AACAC;AACa;APwSb;AOtSA;AACA;AACAC;AACAD;AACS;AACT;AP6NkE;AAAA;AAAA;AA8ElE;AOvSA;AACA;AACA;AACA;AAGA;AACA;APuSA;AOrSA;AACA;AACAE;AACA;AACA;APuSA;AOrSA;AACA;AAEAC;AACAA;AACA;AACA;APoMkE;AAmGlE;AAnGkE;AAAA;AAsGlE;AOvSAL;AACAA;APySA;AAlCA;AAAO;AACP;AACA;AAqCA;AAnCA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AAsCA;AQ9WA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ARgXA;AQ9WA;AACA;AACA;ARgXA;AA5DkE;AAAA;AA+DlE;AQ/WA;AAAA;ARkXA;AQlXA;ARoXA;AQlXA;AAFA;AAGA;ARqXA;AAxEkE;AAAA;AAAA;AQ3SlE;ARwXA;AQvXA;AACAM;AADA;AAGA;AACAC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACb;AACA;AR2RkE;AAAA;AAAA;AQxRlE;AACA;AACA;AR0XA;AQxXA;AACA;AR0XA;AQxXA;AACA;AR0XA;AQxXA;AR0XA;AQxXA;AACA;AACA;AAEA;AACA;AACA;ARsQkE;AAAA;AAAA;AQpQlE;AR2XA;AQ1XA;AACA;AACA;AACA;AACA;AACAC;AAAA;AAAA;AACA;AR6PkE;AAAA;AAAA;AQ1PlE;AACA;ARyPkE;AAAA;AAAA;AQvPlE;ARiYA;AQhYA;AACAC;AACA;AACA;AACA;AACa;AACJ;AACT;AR+OkE;AAAA;AAAA;AQ5OlE;AACA;AACAC;AACAD;AACAA;AACa;AACJ;AACTC;AACAD;AACAA;AACa;AACb;AACA;ARgOkE;AAAA;AAAA;AQ7NlE;AACA;AACA;AACAE;AACA;AACA;AACA;ARuNkE;AAAA;AAAA;AQpNlE;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;ARkNkE;AAAA;AAAA;AQ/MlE;AACA;AACA;AACA;AACA;AR2YA;AQzYA;AACAC;AACA;AACA;AACAC;AACA;AACAC;AACA;AACa;AACJ;AR2YT;AQzYA;AACAD;AACA;ARkVK;AAtJ6D;AAAA;AAAA;AQpLlE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA;AAiBA;ARmKkE;AAAA;AAAA;AQhKlE;AACA;AACA;AACAE;AACA;AACAC;AACS;AACTD;AACA;AACAC;AACA;AACA;ARqJkE;AAAA;AAAA;AQlJlE;AACA;AAAmB;AACnBC;AACA;AACA;AR8IkE;AAAA;AAAA;AQ3DlE;AACA;AACA;AACA;AACA;AACA;AACa;AACbC;AACA;AACA;AACA;AACA;AACA;AR4TA;AQ1TAA;AACA;AACA;AR2CkE;AAAA;AAAA;AQxClE;AACA;ARuCkE;AAAA;AAAA;AAyRlE;AQxTA;AACA;AACA;AACAb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACba;AACA;AACA;AACA;AACA;AACA;AR0TA;AQxTAA;AACA;AACA;ARSkE;AAAA;AAAA;AQNlE;AACA;AACA;AAEA;AACA;AACA;ARAkE;AAAA;AAAA;AQMlE;ARwTA;AQvTA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACa;AACb;AACAC;AACAJ;AACA;AACA;AACA;ARvBkE;AAAA;AAAA;AQ0BlE;AACA;AACA;AACA;AACS;AACT;AACA;AACA;ARjCkE;AAAA;AAAA;AQ3IlE;AACA;AR0IkE;AQvIlE;AACA;AACS;AACT;AACA;AACA;ARkIkE;AAAA;AAAA;AQ/HlE;AACA;AR8HkE;AQ3HlE;AACA;AACS;AACT;AACA;AACA;ARsHkE;AAAA;AAAA;AQnHlE;AACA;ARkHkE;AQ/GlE;AACA;AACS;AACT;AACA;AACA;AR0GkE;AAAA;AAAA;AQvGlE;AACA;ARsGkE;AQnGlE;AACA;AACS;AACT;AACA;AACA;AR8FkE;AAAA;AAAA;AQ3FlE;AACA;AR0FkE;AQvFlE;AACA;AACS;AACT;AACA;AACA;ARkFkE;AAAA;AAAA;AQ/ElE;AACA;AR8EkE;AQ3ElE;AACA;AACS;AACT;AACA;AACA;ARsEkE;AAAA;AAAA;AQnElE;AACA;ARkEkE;AQ/DlE;AACA;AR8DkE;AAAA;AAAA;AQpClE;AACA;ARmCkE;AAAA;AAAA;AQGlE;AACA;ARJkE;AAAA;AAAA;AQxLlE;AACA;ARuLkE;AA6blE;AA7bkE;AAAA;AAgclE;AQ3ZAf;AACAA;AR6ZA;AAzEA;AAAO;AACP;AACA;AA4EA;AA1EA;AACA;AAAqB;AACrB;AACA;AACA;AACA;AA6EA;ASlxBA;AACA;AToxBA;AAvFkE;AAAA;AA0FlE;AA1FkE;AAAA;AAAA;ASzrBlE;AACA;ATwrBkE;ASrrBlE;AACA;AACS;AACT;AACA;AACA;ATgrBkE;AAAA;AAAA;AS7qBlE;AACA;AT4qBkE;ASzqBlE;AACA;AACAoB;AACA;ATsqBkE;AAkHlE;AStxBA;AAAA;ATyxBA;ASxxBgB;AADhB;AT4xBA;AS1xBA;AAFA;AAGA;AT6xBA;AA5HkE;AAAA;AAAA;AS9pBlEC;AACA;AT6pBkE;AAAA;AAAA;AS1pBlE;AACA;AACAA;AACA;AAHA;AAKA;ATqpBkE;AAAA;AAAA;AS9oBlE;AACA;AT6oBkE;AAAA;AAAA;AS1oBlE;AACA;ATyoBkE;AAAA;AAAA;ASlpBlE;AACA;ATipBkE;AA2JlE;AA3JkE;AAAA;AA8JlE;ASpyBA;AACA;AACA;AACA;AACA;ATsyBA;ASpyBA;AACA;ATsyBA;ASpyBAtB;AACAG;AACAoB;AACAC;AACA;AACArB;AACAA;AACS;AACJ;AACL;ATsyBA;ASpyBA;AACAA;AAEA;AACAU;AAAA;AACAU;AACa;AAFb;AAGS;AACT;ATuyBA;ASryBA;ATuyBA;ASryBA;AACAE;AACAtB;AACA;ATuyBA;ASryBAU;AACAY;AACK;AACL;ATuyBA;ASryBA;AACA;AACA;AACA;ATuyBA;ASryBA;AACA;AACA;ATuyBA;ASryBA;AACA;AACA;AACA;AACA;AACA;AACAC;AACK;AACLA;AACA;AACAC;AACA;ATuyBA;ASryBA;AACA;AACA;AACA;AAA4D;AAAqC;AACjG;AAAoE;AAAqC;AACzG;AACA;AACA;AT2yBA;ASzyBA;AT2yBA;ASzyBA;AACA;AACAC;AACA;AACK;AACLA;AACA;AT2yBA;ASzyBA;AACAd;AACAX;AACA;AAEAA;AACA;AACA;AT0yBA;ASxyBAF;AACAA;AT0yBA;AA5FA;AAAO;AACP;AACA;AA+FA;AA7FA;AACA;AA+FA;AAlGkE;AAoGlE;AAjGqB;AACrB;AU92BA;AAAA;AVm9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AU78BA;AV+8BA;AU78BA;AACA;AACA;AACA;AACA;AV+8BA;AU78BA;AACA;AACA;AV+8BA;AU78BA;AACA;AV+8BA;AU78BA;AV+8BA;AU78BA;AV+8BA;AUz8BA;AV28BA;AA7IkE;AAAA;AAgJlE;AU18BA;AAAA;AV68BA;AU58BgB;AADhB;AVg9BA;AU98BA;AAFA;AAGA;AVi9BA;AA1JkE;AAAA;AAAA;AUrzBlE;AVo9BA;AUn9BAD;AACA;AVq9BA;AUn9BA;AVq9BA;AUn9BA6B;AACAC;AVq9BA;AUn9BAC;AACS;AACT;AV0yBkE;AAAA;AAAA;AUvyBlE;AACAC;AACA;AVs9BA;AUp9BAC;AAEA;AViyBkE;AAAA;AAAA;AU9xBlE;AACA;AACA;AACA;AACA;AACA;AVs9BA;AUp9BA;AVs9BA;AUp9BA;AACA;AVs9BA;AUp9BA;AACAC;AACA;AACA;AV+wBkE;AAAA;AAAA;AUxwBlE;AACA;AACA;AACA;AACAF;AACA;AVm9BA;AUj9BA;AVm9BA;AUj9BA;AACA;AATA;AAWA;AV4vBkE;AAAA;AAAA;AUzvBlE;AACA;AVwvBkE;AUrvBlE;AACA;AVovBkE;AAAA;AAAA;AUjvBlE;AACA;AVgvBkE;AU7uBlE;AACA;AV4uBkE;AAAA;AAAA;AUzuBlE;AACA;AVwuBkE;AUruBlE;AACA;AVouBkE;AAAA;AAAA;AUjuBlE;AACA;AVguBkE;AU7tBlE;AACA;AACA;AV2tBkE;AAAA;AAAA;AUxtBlE;AACA;AVutBkE;AUptBlE;AACA;AACA;AVktBkE;AAAA;AAAA;AU/sBlE;AACA;AV8sBkE;AAAA;AAAA;AU5wBlE;AACA;AV2wBkE;AA4QlE;AA5QkE;AAAA;AA+QlE;AUz9BA/B;AACAA;AV29BA;AUz9BA;AACAkC;AACAC;AACK;AACL;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AV29BA;AUz9BAD;AV29BA;AUz9BA;AACAH;AACA;AACA;AACAK;AACK;AACLvB;AACA;AACA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AACA;AV29BA;AUz9BA;AACAuB;AACK;AACLvB;AACA;AACA;AACA;AV29BA;AUz9BA;AACAwB;AACAC;AACAC;AACA;AV29BA;AUz9BA;AACAC;AACAC;AACAC;AACA;AV29BA;AUz9BA;AACA;AV29BA;AUz9BA;AACA;AACAC;AACA;AACA;AACAC;AACA;AACA;AACAC;AACA;AACA;AACA;AAXA;AAaA;AV29BA;AUz9BA;AACA;AV29BA;AUz9BA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BAC;AACA;AV29BA;AUz9BA;AACA;AV29BA;AUz9BA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BAC;AACA;AV29BA;AUz9BA;AACA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AACAlC;AACA;AV29BA;AUz9BAb;AACA;AV29BA;AUz9BA;AACAgD;AACA;AV29BA;AUz9BA;AACAA;AACA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AV29BA;AUz9BA;AACAA;AACAC;AACK;AACLD;AACAC;AACK;AACLD;AACAC;AACA;AV29BA;AUz9BAD;AACA;AV29BA;AUz9BA;AACA;AACA;AV29BA;AUz9BA;AACAA;AACA;AACA;AACAA;AACA;AACA;AACA;AV29BA;AUz9BA;AACAd;AAEAA;AACS;AACT;AV09BA;AUx9BA;AACA;AACA;AACAA;AACA;AACA;AACAc;AACA;AV09BA;AUx9BA;AACA;AACA;AACA;AV09BA;AUx9BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACA;AV09BA;AUx9BAhB;AV09BA;AUx9BA;AACA;AACA;AV09BA;AUx9BA;AACA;AACA;AACA;AACAgB;AACA;AV09BA;AUx9BAhB;AACA;AV09BA;AUx9BA;AACA;AACAA;AACA;AACA;AACAA;AACA;AACA;AV09BA;AUx9BA;AACA;AACA;AACA;AV09BA;AAtGA;AAAO;AACP;AACA;AAyGA;AAvGA;AACA;AAAqB;AACrB;AACA;AA0GA;AWx1CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AXu2CA;AWx1CA;AX01CA;AAhIkE;AAAA;AAmIlE;AWz1CA;AAAA;AX41CA;AW51CA;AX81CA;AW51CA;AAFA;AAGA;AX+1CA;AA5IkE;AAAA;AAAA;AWjtClE;AXk2CA;AWj2CAnC;AACA;AACAoD;AXm2CA;AWj2CAC;AACA;AACA;AXm2CA;AWj2CAD;AACA;AACA;AACAtC;AACA;AACa;AACJ;AACT;AXisCkE;AAmKlE;AAnKkE;AAAA;AAsKlE;AWp2CAb;AACAA;AXs2CA;AWp2CA;AACA;AACAU;AAAA;AAAA;AACA;AADA;AAEA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA2C;AACS;AACT;AXy2CA;AWv2CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AXy2CA;AAnHA;AAAO;AACP;AACA;AAsHA;AApHA;AACA;AAAqB;AACrB;AYt0CA;AAAA;AZ+7CA;AACA;AACA;AA/HkE;AAAA;AAkIlE;AY17CA;AAAA;AZ67CA;AY77CA;AZ+7CA;AY57CA;AZ87CA;AYj8CA;AAKA;AZ+7CA;AA5IkE;AAAA;AAAA;AY3yClE;AACA;AACA;AACA;AACA;AACA;AZsyCkE;AAAA;AAAA;AYpyClE;AZ87CA;AY77CAtD;AACA;AACA;AACU;AACV;AZ+xCkE;AAAA;AAAA;AY7xClE;AZi8CA;AY/7CA;AACA;AACAuD;AACA;AACS;AACT;AZsxCkE;AAAA;AAAA;AYnxClE;AACA;AACA;AACA;AAEA;AACA;AACA;AZ4wCkE;AAAA;AAAA;AYzwClE;AACA;AZwwCkE;AAAA;AAAA;AY/yClE;AACA;AZ8yCkE;AAgMlE;AAhMkE;AAAA;AAmMlE;AYv8CAtD;AACAA;AZy8CA;AA7HA;AAAO;AACP;AACA;AAgIA;Aa7gDAN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AALA;AAlBA;AbwiDA;AA9HA;AAAO;AACP;AACA;AAiIA;AA/HA;AAiIA;Ac/iDA;AdijDA;AACA;AACA;Ac9iDA;AACA;AACA;AACA;AACK;AACL;AACAA;AACK;AACL;AACA6D;AACA;AACC;AdgjDD;Ac9iDA;AACA;AACA;AACA;AdgjDA;Ac9iDA;AAAA;AAEAC;AdgjDA;AACA;Ac/iDA;AACAC;AACAC;AACAC;AAFA;AdojDA;Ac/iDA;AACA;AACA;AdijDA;Ac/iDA;AdijDA;AACA;AACA;AACA;AACA;AACA;Ac/iDA;AACA;AACA;AACS;AACT;AACS;AACT;AACA;AACA;AdijDA;Ac/iDA;AdijDA;AACA;AACA;AACA;AACA;AACA;Ac/iDA;AACA;AACA;AACS;AACT;AACA;AACA;AdijDA;Ac/iDA;AdijDA;AACA;AACA;AACA;AACA;AACA;AACA;Ac/iDA;AACA;AAAA;AAAA;AAAA;AdojDA;Ac9iDA;AACA;AACAC;AACA;AdgjDA;Ac9iDA;AACA;AACA;AACA;AACA;AACAC;AACA;AACA;AACA;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;Ac9iDA;AACAC;AACA;AdgjDA;Ac9iDA;AACA;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ac9iDAA;AACAC;AACA;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ac9iDAD;AACAC;AACA;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;AACA;Ac9iDAD;AACAE;AACAC;AACS;AACT;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;AACA;Ac9iDAH;AACAE;AACAC;AACS;AACT;AACA;AdgjDA;Ac9iDA;AdgjDA;AACA;AACA;AACA;AACA;AACA;Ac9iDAH;AACAE;AACAF;AACS;AACT;AACA;AdgjDA;Ac9iDA;AACC;AdgjDD;AA3HA;AAAO;AACP;AACA;AA8HA;AA5HA;AA8HA;AA7HAI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;Ae7nDA;AAAA;AAAA;Af+vDA;AACA;AACA;Ae5vDA;Af8vDA;AACA;AACA;AexvDA;Af0vDA;AACA;AACA;AejvDArD;AfmvDA;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AgB/pDA;AAAAf;AAAA;AhBqxDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AgBlxDA;AACA;AACA;AACA;AACA;AACAqE;AACA;AACA;AhBoxDA;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AACA;AAAiCrE;AiBlsDjC;AAAA;AjBwzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AiBnzDA;AACA;AACA;AAAA;AjBszDA;AiBpzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AjBszDA;AA9GA;AAAO;AACP;AACA;AAiHA;AA/GA;AACA;AAAiCA;AkBhvDjC;AAAA;AAAA;AlBq2DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AkBh2DA;AlBk2DA;AkBh2DA;AACA;AlBk2DA;AkBh2DA;AACA;AACA;AACA;AACA;AACAsE;AlBk2DA;AkBh2DA;AACAC;AACK;AACLC;AACA;AACA;AlBk2DA;AkBh2DA;AACA;AACA;AACA;AACAC;AACAA;AACAA;AACA/C;AACAgD;AACA;AACA;AACAA;AACK;AACLA;AACK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACA;AACAA;AACA7D;AACA8D;AACK;AACL;AlBk2DA;AkBh2DA;AACAT;AACAS;AACA;AlBk2DA;AkBh2DA;AACAT;AACA;AACAU;AACA;AACA;AlBk2DA;AA3GA;AAAO;AACP;AACA;AA8GA;AmBt7DAC;AACA;AnBw7DA;AACA;AmBt7DA;AACAA;AnBw7DA;AmBt7DA;AnBw7DA;AACA;AA5GA;AAAO;AACP;AACA;AA+GA;AoBr8DAA;AACA;ApBu8DA;AACA;AoBr8DA;AACAA;ApBu8DA;AoBr8DA;ApBu8DA;AACA;AA7GA;AAAO;AACP;AACA;AAgHA;AqBp9DAA;AACA;ArBs9DA;AACA;AqBp9DA;AACAA;ArBs9DA;AqBp9DA;ArBs9DA;AACA;AA9GA;AAAO;AACP;AACA;AAiHA;AsBn+DAA;AACA;AtBq+DA;AACA;AsBn+DA;AACAA;AtBq+DA;AsBn+DA;AtBq+DA;AACA;AA/GA;AAAO;AACP;AACA;AAkHA;AuBl/DAA;AACA;AvBo/DA;AACA;AuBl/DA;AACAA;AvBo/DA;AuBl/DA;AvBo/DA;AACA;AAhHA;AAAO;AACP;AACA;AAmHA;AwBjgEAA;AACA;AxBmgEA;AACA;AwBjgEA;AACAA;AxBmgEA;AwBjgEA;AxBmgEA;AACA;AAjHA;AAAO;AACP;AACA;AAoHA;AyBhhEAA;AACA;AzBkhEA;AACA;AyBhhEA;AACAA;AzBkhEA;AyBhhEA;AzBkhEA;AACA;AAlHA;AAAO;AACP;AACA;AAqHA;A0B/hEAA;AACA;A1BiiEA;AACA;A0B/hEA;AACAA;A1BiiEA;A0B/hEA;A1BiiEA;AACA;AAnHA;AAAO;AACP;AACA;AAsHA;A2B9iEAA;AACA;A3BgjEA;AACA;A2B9iEA;AACAA;A3BgjEA;A2B9iEA;A3BgjEA;AACA;AApHA;AAAO;AACP;AACA;AAuHA;A4B7jEA;AACA;AACA;A5B+jEA;A4B7jEA;AACA;AACA;AACA;AACA;AAEG;AACH;A5B8jEA;A4B5jEA;AACA;AACG;AACH;A5B8jEA;A4B5jEA;AACA;AACA;AACA;AACA;AACA;AACG;AACH;AACA;AACA;A5B8jEA;A4B5jEA;AACA;AACA;A5B8jEA;A4B5jEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A5B8jEA;A4B5jEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACAC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEG;AAAY;AACf;AACA;AACA;AACA;AACA;AAEA;AACAC;AACAC;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACAC;AACA;AACA;AACA;AACA;A5B4jEA;AAjHA;AAAO;AACP;AACA;AAoHA;A6B9pEA;AACA;AACC;A7BgqED;A6B9pEAL;A7BgqEA;A6B9pEAA;AACA;AACA;AACA;A7BgqEA;A6B9pEAA;AACA;AACA;AAMA;A7B2pEA;AA5GA;AAAO;AACP;AACA;AA+GA;A8BnrEAA;A9BqrEA;A8BlrEAA;AACA;AACA;AACA;AAAAM;AAAA;AAEA;A9BqrEA;AA5GA;AAAO;AACP;AACA;AA+GA;A+BlsEAxF;AACA;A/BosEA;A+BnsEAyF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAAA;AAOA;AACA;AACA;AACA;AAAA;AACAC;AACAA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACAA;AACA;AACA;A/BslEC;AAkHD;AAhHA;AAAO;AACP;AACA;AAmHA;AAjHA;AAmHA;AgC/uEA;AACA;AACAC;AACA;AACA;AACA;AhCivEA;AgC/uEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAC;AACAD;AACAA;AACA;AACA;AACA;AhCivEA;AgC/uEA;AACA;AACA;AACA;AACA;AACA;AhCivEA;AgC/uEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAE;AACA;AACA;AACA;AACA;AhCivEA;AgC/uEA;AACA;AACA;AhCivEA;AgC/uEA;AACA;AACA;AhCivEA;AgC/uEA7F;AhCivEA;AA/GA;AAAO;AACP;AACA;AAkHA;AiC/yEAA;AjCizEA;AAhHA;AAAO;AACP;AACA;AAmHA;AkCtzEAA;AlCwzEA;AAjHA;AAAO;AACP;AACA;AAoHA;AmC7zEAA;AnC+zEA;AAlHA;AAAO;AACP;AACA;AAqHA;AoCp0EAA;ApCs0EA;AAnHA;AAAO;AACP;AACA;AAsHA;AqC30EAA;ArC60EA;AApHA;AAAO;AACP;AACA;AAuHA;AsCl1EAA;AtCo1EA;AArHA;AAAO;AACP;AACA;AAwHA;AuCz1EAA;AvC21EA;AAtHA;AAAO;AACP","file":"components-compat.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\n\n\n\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\n\n(function (root, factory) {\n if (true) {\n // AMD module\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\n\n/*\n * Header Bits\n */\n\n\n\n\n\n/*\n * Footer Bits\n */\n\n\n\n\n\n\n\n\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap db575c1616d355860a86","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\"use strict\";\n\nimport template from \"./byu-user-info.html\";\nimport * as util from 'byu-web-component-utils';\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n util.applyTemplate(this, 'byu-user-info', template, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\"use strict\";\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD module\n define(factory);\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\"use strict\";\n\n/*\n * Header Bits\n */\nimport './byu-header/byu-header.js';\nimport './byu-menu/byu-menu.js';\nimport './byu-search/byu-search.js';\nimport './byu-user-info/byu-user-info.js';\n\n/*\n * Footer Bits\n */\n\nimport './byu-footer/byu-footer.js';\nimport './byu-footer-column/byu-footer-column.js';\nimport './byu-footer-action-button/byu-footer-action-button.js';\nimport './byu-social-media-links/byu-social-media-links.js';\n\nimport {version} from '../package.json';\n\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file diff --git a/dist/components-compat.min.js b/dist/components-compat.min.js index 2f072261..8749bef0 100644 --- a/dist/components-compat.min.js +++ b/dist/components-compat.min.js @@ -1,2 +1,2 @@ -(function(){"use strict";function t(m,h,y){return h in m?Object.defineProperty(m,h,{value:y,enumerable:!0,configurable:!0,writable:!0}):m[h]=y,m}function r(m,h){if(!(m instanceof h))throw new TypeError("Cannot call a class as a function")}function l(m,h){if(!m)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return h&&("object"==typeof h||"function"==typeof h)?h:m}function d(m,h){if("function"!=typeof h&&null!==h)throw new TypeError("Super expression must either be null or a function, not "+typeof h);m.prototype=Object.create(h&&h.prototype,{constructor:{value:m,enumerable:!1,writable:!0,configurable:!0}}),h&&(Object.setPrototypeOf?Object.setPrototypeOf(m,h):m.__proto__=h)}var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(m){return typeof m}:function(m){return m&&"function"==typeof Symbol&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},u=function(){function m(h,y){for(var g,f=0;fV.assignedNodes().length?this.setAttribute("left-align",""):this.removeAttribute("left-align")}},{key:"_addButtonListeners",value:function(){var P=this;if(!this.inMobileView)return void(this.menuOpen=!1);var Q=this.shadowRoot.querySelector(".mobile-menu-button");Q.addEventListener("click",function(){return P._toggleMenu()})}},{key:"_toggleMenu",value:function(){this.menuOpen=!this.menuOpen}},{key:"_addSlotListeners",value:function(){var P=this;this._findAllSlots().forEach(function(Q){Q.addEventListener("slotchange",function(){P._notifyChildrenOfMobileState(),P._checkIfMenuIsNeeded(),P._applyMenuTransparencyListeners()})})}},{key:"_notifyChildrenOfMobileState",value:function(){var P=this._findAllDistributedChildren();this.inMobileView?P.forEach(function(Q){Q.setAttribute(C,""),Q.classList.add(C)}):P.forEach(function(Q){Q.removeAttribute(C),Q.classList.remove(C)})}},{key:"_findAllSlots",value:function(){for(var P=this.shadowRoot.querySelectorAll("slot"),Q=[],V=0;V"+U+""+z.a;E.a(O,"byu-menu",T,function(){O._renderedActiveSelector=N,M(O),g(O),O.shadowRoot.querySelector(".byu-menu-more").addEventListener("click",function(){O.showMore=!0})})}}function g(O){O.shadowRoot.querySelector("slot").addEventListener("slotchange",function(){setTimeout(function(){return function(){M(O)}})})}function v(O){var B=function N(){document.removeEventListener("click",N),O.showMore=!1};setTimeout(function(){document.addEventListener("click",B)})}function _(O,B){var N=O.className.split(/ +/);return-1!==N.indexOf(B)}function A(O){return _(O.shadowRoot.querySelector(".byu-menu-more-menu"),"byu-menu-more-expanded")}function S(O,B){var U=O.className.split(/ +/),T=U.indexOf(B),I=-1!==T,j=2I?(console.log(I),O.setAttribute("left-align","")):O.removeAttribute("left-align")}var L=y(34),z=y.n(L),E=y(1),C=y(21),R=y.n(C),H="active-selector",G=".active",W=function(O){function B(){r(this,B);var N=l(this,(B.__proto__||Object.getPrototypeOf(B)).call(this));return N.attachShadow({mode:"open"}),N}return d(B,O),u(B,[{key:"activeSelector",get:function(){return this.getAttribute(H)||G},set:function(U){U?this.setAttribute(H,U):this.setAttribute(H,G)}},{key:"showMore",get:function(){return A(this)},set:function(U){var T=this.shadowRoot.querySelector(".byu-menu-more-menu");U&&!A(this)&&v(this),S(T,"byu-menu-more-expanded",U)}}]),u(B,[{key:"connectedCallback",value:function(){f(this,!0)}},{key:"attributeChangedCallback",value:function(U){return U===H?void f(this,!1):void 0}},{key:"_menuSlot",get:function(){return this.shadowRoot.querySelector("#byu-menu-items")}},{key:"_menuMoreSlot",get:function(){return this.shadowRoot.querySelector("#byu-menu-more-slot")}}],[{key:"observedAttributes",get:function(){return[H]}}]),B}(HTMLElement);window.customElements.define("byu-menu",W),window.BYUMenu=W},function(m,h,y){function f(ae){ae._searchSlot.addEventListener("slotchange",function(se){g(ae,se)})}function g(ae){var le=ae._input,de=v(ae);le===de||(ae._input=de,le&&S(ae,le),de?A(ae,de):console.error("[byu-search] WARNING! Unable to find a search input element using the selector '"+ae.searchInputSelector+"' on ",ae))}function v(ae,se){return Q.c(ae._searchSlot,se)}function _(ae,se){var le=v(ae,se);return le?A(ae,le):console.error("[byu-search] WARNING! Unable to find a search input element using the selector '"+se+"' on ",ae),le}function A(ae,se){C(ae,se),H(ae,se),O(ae,se)}function S(ae,se){R(ae,se),G(ae,se),B(ae,se)}function M(ae,se){var le=ae.action;switch(le){case X:L(ae,se);break;case Z:z(ae,se);break;case K:E(ae,se);break;default:throw new Error("Invalid value for "+$+": '"+le+"'");}}function L(ae){var le=ae.actionTarget,de=Q.c(ae._searchSlot,le);if(!de)throw new Error("Unable to find target for 'submit-form' action using selector '"+le+"'");if(!(de instanceof HTMLFormElement))throw new Error("Element found by selector '"+le+"' must be a , but was '"+de.localName+"'");de.submit()}function z(ae){var le=ae.actionTarget,de=Q.c(ae._searchSlot,le);if(!de)throw new Error("Unable to find target for 'click' action using selector '"+le+"'");de.click()}function E(ae,se){var le=ae.actionTarget;if(!le)throw new Error("When using action=\"navigate\", you must specify an action-target");le.indexOf("${search}")&&console.warn("[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain ${search} will not include the search terms in the URL.",ae),window.location.assign(le.replace("${search}",window.encodeURIComponent(se)))}function C(ae,se){se.classList.add(V)}function R(ae,se){se.classList.remove(V)}function H(ae,se){if(!(se.title&&se.placeholder)){var le=[];se.title||se.placeholder?se.title?(se.placeholder=se.title,le.push("placeholder")):(se.title=se.placeholder,le.push("title")):(se.title=se.placeholder="Search",le.push("title","placeholder")),se.__byu_search_a11yHelpersApplied=le}}function G(ae,se){var le=se.__byu_search_a11yHelpersApplied;le&&(le.includes("title")&&(se.title=null),le.includes("placeholder")&&(se.placeholder=null),delete se.__byu_search_a11yHelpersApplied)}function W(ae){ae.shadowRoot.querySelector("#search-button").addEventListener("click",function(){ae.search()})}function O(ae,se){var le=se.__byu_search_keyObserver=function(de){13===de.keyCode&&ae.search()};se.addEventListener("keypress",le,!1)}function B(ae,se){var le=se.__byu_search_keyObserver;le&&se.removeEventListener("keypress",le,!1)}function N(ae){var se=ae.__onbyusearchHandler=function(de){var pe=ae.onbyusearch;if(pe){var ue=window[pe];if(!ue)throw new Error("Unable to find a global function named '"+pe+"'");ue.call(ae,de)}};ae.addEventListener(oe,se,!1);var le=ae.__onsearchLegacyHandler=function(de){var pe=ae.onsearch;if(pe){var ue=window[pe];if(!ue)throw new Error("Unable to find a global function named '"+pe+"'");ue.call(ae,de.detail.search,de)}};ae.addEventListener(oe,le,!1)}function U(ae){ae.__onbyusearchHandler&&ae.removeEventListener(oe,ae.__onbyusearchHandler,!1),ae.__onsearchLegacyHandler&&ae.removeEventListener(oe,ae.__onsearchLegacyHandler,!1)}function T(ae){return ae?ie[ae]:null}var I,j=y(35),P=y.n(j),Q=y(1),V="__byu-search-selected-input",Y="onsearch",D="onbyusearch",F="search-input-selector",$="action",J="action-target",X="submit-form",Z="click",K="navigate",oe="byu-search",ie=(I={},t(I,X,"form"),t(I,Z,"button, input[type=\"submit\"], input[type=\"button\"]"),I),ne=function(ae){function se(){r(this,se);var le=l(this,(se.__proto__||Object.getPrototypeOf(se)).call(this));return le.attachShadow({mode:"open"}),le}return d(se,ae),u(se,[{key:"connectedCallback",value:function(){var de=this;Q.a(this,"byu-search",P.a,function(){de._initialized=!0,de._input=_(de,de.searchInputSelector),W(de),N(de),f(de)})}},{key:"disconnectedCallback",value:function(){this._input&&S(this,this._input),U(this)}},{key:"search",value:function(){var de=this._input;if(!de)throw new Error("Unable to perform search; no search element matching the selector '"+this.searchInputSelector+"' can be found!");var pe=de.value;if(pe){var ue=Q.b(oe,{search:pe}),ce=!this.dispatchEvent(ue);ce||this.action&&M(this,pe)}}},{key:"attributeChangedCallback",value:function(de,pe,ue){if(this._initialized)return de===F?(this._input&&S(this,this._input),void(this._input=_(this,ue))):void 0}},{key:"onbyusearch",get:function(){return this.getAttribute(D)},set:function(de){this.setAttribute(D,de)}},{key:"onsearch",get:function(){return this.getAttribute(Y)},set:function(de){this.setAttribute(Y,de)}},{key:"searchInputSelector",set:function(de){this.setAttribute(F,de)},get:function(){return this.getAttribute(F)||"input[type=\"search\"], input[type=\"text\"]"}},{key:"action",set:function(de){this.setAttribute($,de)},get:function(){return this.getAttribute($)}},{key:"actionTarget",set:function(de){this.setAttribute(J,de)},get:function(){return this.getAttribute(J)||T(this.action)}},{key:"_searchSlot",get:function(){return this.shadowRoot.querySelector("#search")}}],[{key:"observedAttributes",get:function(){return[F]}}]),se}(HTMLElement);window.customElements.define("byu-search",ne),window.ByuSearch=ne},function(m,h,y){function f(z){var E=z.assignedNodes();E.filter(function(C){return C instanceof HTMLElement}).filter(function(C){return!C.title}).forEach(function(C){var R=g(C);R&&(C.title=" "+S[R]+" ")})}function g(z){if(z.hasAttribute("slot"))return z.getAttribute("slot");for(var C,E=0;E:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\"|\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\")}.slot-wrapper ::slotted(.podcast){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\")}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}",""])},function(m,h,y){function f(L){return null===L||L===void 0}function g(L){return L&&"object"===("undefined"==typeof L?"undefined":p(L))&&"number"==typeof L.length&&("function"!=typeof L.copy||"function"!=typeof L.slice?!1:0":">",'"':""","'":"'"},L=/[&<>'"]/g,z=[],E=z.push.bind(z);return E("
\n
\n\n\"BYU\"\n
\n\n
\n"),g.mobile&&E("\n"),E("
"),g.mobile&&E("
\n\n\n
\n\n
\n
\n"),E("
\n"),g.mobile||E("
\n\n
\n
\n\n
\n"),E("
\n\n
\n
\n
\n"),g.mobile||E("
\n
\n\n
\n
\n"),z.join("")}},function(m){function f(M,L){for(;M.lengthM?-2*M:M}function v(M,L,z){return Object.keys(L).sort().reduce(function(C,R){return _(C,L[R],R,z)},M)}function _(M,L,z,E){var C=g(g(g(M,z),A(L)),"undefined"==typeof L?"undefined":p(L));return null===L?g(C,"null"):void 0===L?g(C,"undefined"):"object"===("undefined"==typeof L?"undefined":p(L))?-1===E.indexOf(L)?(E.push(L),v(C,L,E)):g(C,"[Circular]"+z):g(C,L.toString())}function A(M){return Object.prototype.toString.call(M)}m.exports=function(M){return f(_(0,M,"",[]).toString(16),8)}},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="

"},function(m,h,y){m.exports="
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
"},function(m,h,y){m.exports=" "},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="
Sign In
Sign Out
"}])})(); +(function(){"use strict";function t(m,h,y){return h in m?Object.defineProperty(m,h,{value:y,enumerable:!0,configurable:!0,writable:!0}):m[h]=y,m}function r(m,h){if(!(m instanceof h))throw new TypeError("Cannot call a class as a function")}function l(m,h){if(!m)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return h&&("object"==typeof h||"function"==typeof h)?h:m}function d(m,h){if("function"!=typeof h&&null!==h)throw new TypeError("Super expression must either be null or a function, not "+typeof h);m.prototype=Object.create(h&&h.prototype,{constructor:{value:m,enumerable:!1,writable:!0,configurable:!0}}),h&&(Object.setPrototypeOf?Object.setPrototypeOf(m,h):m.__proto__=h)}var p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(m){return typeof m}:function(m){return m&&"function"==typeof Symbol&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},u=function(){function m(h,y){for(var g,f=0;fV.assignedNodes().length?this.setAttribute("left-align",""):this.removeAttribute("left-align")}},{key:"_addButtonListeners",value:function(){var P=this;if(!this.inMobileView)return void(this.menuOpen=!1);var Q=this.shadowRoot.querySelector(".mobile-menu-button");Q.addEventListener("click",function(){return P._toggleMenu()})}},{key:"_toggleMenu",value:function(){this.menuOpen=!this.menuOpen}},{key:"_addSlotListeners",value:function(){var P=this;this._findAllSlots().forEach(function(Q){Q.addEventListener("slotchange",function(){P._notifyChildrenOfMobileState(),P._checkIfMenuIsNeeded(),P._applyMenuTransparencyListeners()})})}},{key:"_notifyChildrenOfMobileState",value:function(){var P=this._findAllDistributedChildren();this.inMobileView?P.forEach(function(Q){Q.setAttribute(C,""),Q.classList.add(C)}):P.forEach(function(Q){Q.removeAttribute(C),Q.classList.remove(C)})}},{key:"_findAllSlots",value:function(){for(var P=this.shadowRoot.querySelectorAll("slot"),Q=[],V=0;V"+U+""+z.a;E.a(O,"byu-menu",T,function(){O._renderedActiveSelector=N,M(O),g(O),O.shadowRoot.querySelector(".byu-menu-more").addEventListener("click",function(){O.showMore=!0})})}}function g(O){O.shadowRoot.querySelector("slot").addEventListener("slotchange",function(){setTimeout(function(){return function(){M(O)}})})}function v(O){var B=function N(){document.removeEventListener("click",N),O.showMore=!1};setTimeout(function(){document.addEventListener("click",B)})}function _(O,B){var N=O.className.split(/ +/);return-1!==N.indexOf(B)}function A(O){return _(O.shadowRoot.querySelector(".byu-menu-more-menu"),"byu-menu-more-expanded")}function S(O,B){var U=O.className.split(/ +/),T=U.indexOf(B),I=-1!==T,j=2I?(console.log(I),O.setAttribute("left-align","")):O.removeAttribute("left-align")}var L=y(34),z=y.n(L),E=y(1),C=y(21),R=y.n(C),H="active-selector",G=".active",W=function(O){function B(){r(this,B);var N=l(this,(B.__proto__||Object.getPrototypeOf(B)).call(this));return N.attachShadow({mode:"open"}),N}return d(B,O),u(B,[{key:"activeSelector",get:function(){return this.getAttribute(H)||G},set:function(U){U?this.setAttribute(H,U):this.setAttribute(H,G)}},{key:"showMore",get:function(){return A(this)},set:function(U){var T=this.shadowRoot.querySelector(".byu-menu-more-menu");U&&!A(this)&&v(this),S(T,"byu-menu-more-expanded",U)}}]),u(B,[{key:"connectedCallback",value:function(){f(this,!0)}},{key:"attributeChangedCallback",value:function(U){return U===H?void f(this,!1):void 0}},{key:"_menuSlot",get:function(){return this.shadowRoot.querySelector("#byu-menu-items")}},{key:"_menuMoreSlot",get:function(){return this.shadowRoot.querySelector("#byu-menu-more-slot")}}],[{key:"observedAttributes",get:function(){return[H]}}]),B}(HTMLElement);window.customElements.define("byu-menu",W),window.BYUMenu=W},function(m,h,y){function f(ae){ae._searchSlot.addEventListener("slotchange",function(se){g(ae,se)})}function g(ae){var le=ae._input,de=v(ae);le===de||(ae._input=de,le&&S(ae,le),de?A(ae,de):console.error("[byu-search] WARNING! Unable to find a search input element using the selector '"+ae.searchInputSelector+"' on ",ae))}function v(ae,se){return Q.c(ae._searchSlot,se)}function _(ae,se){var le=v(ae,se);return le?A(ae,le):console.error("[byu-search] WARNING! Unable to find a search input element using the selector '"+se+"' on ",ae),le}function A(ae,se){C(ae,se),H(ae,se),O(ae,se)}function S(ae,se){R(ae,se),G(ae,se),B(ae,se)}function M(ae,se){var le=ae.action;switch(le){case X:L(ae,se);break;case Z:z(ae,se);break;case K:E(ae,se);break;default:throw new Error("Invalid value for "+$+": '"+le+"'");}}function L(ae){var le=ae.actionTarget,de=Q.c(ae._searchSlot,le);if(!de)throw new Error("Unable to find target for 'submit-form' action using selector '"+le+"'");if(!(de instanceof HTMLFormElement))throw new Error("Element found by selector '"+le+"' must be a , but was '"+de.localName+"'");de.submit()}function z(ae){var le=ae.actionTarget,de=Q.c(ae._searchSlot,le);if(!de)throw new Error("Unable to find target for 'click' action using selector '"+le+"'");de.click()}function E(ae,se){var le=ae.actionTarget;if(!le)throw new Error("When using action=\"navigate\", you must specify an action-target");le.indexOf("${search}")&&console.warn("[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain ${search} will not include the search terms in the URL.",ae),window.location.assign(le.replace("${search}",window.encodeURIComponent(se)))}function C(ae,se){se.classList.add(V)}function R(ae,se){se.classList.remove(V)}function H(ae,se){if(!(se.title&&se.placeholder)){var le=[];se.title||se.placeholder?se.title?(se.placeholder=se.title,le.push("placeholder")):(se.title=se.placeholder,le.push("title")):(se.title=se.placeholder="Search",le.push("title","placeholder")),se.__byu_search_a11yHelpersApplied=le}}function G(ae,se){var le=se.__byu_search_a11yHelpersApplied;le&&(le.includes("title")&&(se.title=null),le.includes("placeholder")&&(se.placeholder=null),delete se.__byu_search_a11yHelpersApplied)}function W(ae){ae.shadowRoot.querySelector("#search-button").addEventListener("click",function(){ae.search()})}function O(ae,se){var le=se.__byu_search_keyObserver=function(de){13===de.keyCode&&ae.search()};se.addEventListener("keypress",le,!1)}function B(ae,se){var le=se.__byu_search_keyObserver;le&&se.removeEventListener("keypress",le,!1)}function N(ae){var se=ae.__onbyusearchHandler=function(de){var pe=ae.onbyusearch;if(pe){var ue=window[pe];if(!ue)throw new Error("Unable to find a global function named '"+pe+"'");ue.call(ae,de)}};ae.addEventListener(oe,se,!1);var le=ae.__onsearchLegacyHandler=function(de){var pe=ae.onsearch;if(pe){var ue=window[pe];if(!ue)throw new Error("Unable to find a global function named '"+pe+"'");ue.call(ae,de.detail.search,de)}};ae.addEventListener(oe,le,!1)}function U(ae){ae.__onbyusearchHandler&&ae.removeEventListener(oe,ae.__onbyusearchHandler,!1),ae.__onsearchLegacyHandler&&ae.removeEventListener(oe,ae.__onsearchLegacyHandler,!1)}function T(ae){return ae?ie[ae]:null}var I,j=y(35),P=y.n(j),Q=y(1),V="__byu-search-selected-input",Y="onsearch",D="onbyusearch",F="search-input-selector",$="action",J="action-target",X="submit-form",Z="click",K="navigate",oe="byu-search",ie=(I={},t(I,X,"form"),t(I,Z,"button, input[type=\"submit\"], input[type=\"button\"]"),I),ne=function(ae){function se(){r(this,se);var le=l(this,(se.__proto__||Object.getPrototypeOf(se)).call(this));return le.attachShadow({mode:"open"}),le}return d(se,ae),u(se,[{key:"connectedCallback",value:function(){var de=this;Q.a(this,"byu-search",P.a,function(){de._initialized=!0,de._input=_(de,de.searchInputSelector),W(de),N(de),f(de)})}},{key:"disconnectedCallback",value:function(){this._input&&S(this,this._input),U(this)}},{key:"search",value:function(){var de=this._input;if(!de)throw new Error("Unable to perform search; no search element matching the selector '"+this.searchInputSelector+"' can be found!");var pe=de.value;if(pe){var ue=Q.b(oe,{search:pe}),ce=!this.dispatchEvent(ue);ce||this.action&&M(this,pe)}}},{key:"attributeChangedCallback",value:function(de,pe,ue){if(this._initialized)return de===F?(this._input&&S(this,this._input),void(this._input=_(this,ue))):void 0}},{key:"onbyusearch",get:function(){return this.getAttribute(D)},set:function(de){this.setAttribute(D,de)}},{key:"onsearch",get:function(){return this.getAttribute(Y)},set:function(de){this.setAttribute(Y,de)}},{key:"searchInputSelector",set:function(de){this.setAttribute(F,de)},get:function(){return this.getAttribute(F)||"input[type=\"search\"], input[type=\"text\"]"}},{key:"action",set:function(de){this.setAttribute($,de)},get:function(){return this.getAttribute($)}},{key:"actionTarget",set:function(de){this.setAttribute(J,de)},get:function(){return this.getAttribute(J)||T(this.action)}},{key:"_searchSlot",get:function(){return this.shadowRoot.querySelector("#search")}}],[{key:"observedAttributes",get:function(){return[F]}}]),se}(HTMLElement);window.customElements.define("byu-search",ne),window.ByuSearch=ne},function(m,h,y){function f(z){var E=z.assignedNodes();E.filter(function(C){return C instanceof HTMLElement}).filter(function(C){return!C.title}).forEach(function(C){var R=g(C);R&&(C.title=" "+S[R]+" ")})}function g(z){if(z.hasAttribute("slot"))return z.getAttribute("slot");for(var C,E=0;E:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\"|\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\")}.slot-wrapper ::slotted(.podcast){background-image:url(\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\")}",""])},function(m,h,y){h=m.exports=y(0)(),h.push([m.i,".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}",""])},function(m,h,y){function f(L){return null===L||L===void 0}function g(L){return L&&"object"===("undefined"==typeof L?"undefined":p(L))&&"number"==typeof L.length&&("function"!=typeof L.copy||"function"!=typeof L.slice?!1:0":">",'"':""","'":"'"},L=/[&<>'"]/g,z=[],E=z.push.bind(z);return E("
\n
\n\n\"BYU\"\n
\n\n
\n"),g.mobile&&E("\n"),E("
"),g.mobile&&E("
\n\n\n
\n\n
\n
\n"),E("
\n"),g.mobile||E("
\n\n
\n
\n\n
\n"),E("
\n\n
\n
\n
\n"),g.mobile||E("
\n
\n\n
\n
\n"),z.join("")}},function(m){function f(M,L){for(;M.lengthM?-2*M:M}function v(M,L,z){return Object.keys(L).sort().reduce(function(C,R){return _(C,L[R],R,z)},M)}function _(M,L,z,E){var C=g(g(g(M,z),A(L)),"undefined"==typeof L?"undefined":p(L));return null===L?g(C,"null"):void 0===L?g(C,"undefined"):"object"===("undefined"==typeof L?"undefined":p(L))?-1===E.indexOf(L)?(E.push(L),v(C,L,E)):g(C,"[Circular]"+z):g(C,L.toString())}function A(M){return Object.prototype.toString.call(M)}m.exports=function(M){return f(_(0,M,"",[]).toString(16),8)}},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="

"},function(m,h,y){m.exports="
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
"},function(m,h,y){m.exports=" "},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="
"},function(m,h,y){m.exports="
Sign In
Sign Out
"}])})(); //# sourceMappingURL=components-compat.min.js.map diff --git a/dist/components-compat.min.js.map b/dist/components-compat.min.js.map index 1ca27a98..3b472c9b 100644 --- a/dist/components-compat.min.js.map +++ b/dist/components-compat.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["components-compat.js","components.js","webpack:/webpack/bootstrap f34479c4d67cb2a18bae","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["key","obj","Object","defineProperty","value","enumerable","configurable","writable","instance","Constructor","TypeError","self","ReferenceError","call","superClass","subClass","prototype","create","constructor","setPrototypeOf","__proto__","Symbol","iterator","i","props","length","descriptor","target","protoProps","defineProperties","staticProps","installedModules","moduleId","exports","l","modules","module","__webpack_require__","m","c","d","o","name","get","getter","n","__esModule","hasOwnProperty","object","property","p","s","list","item","result","join","id","alreadyImportedModules","mediaQuery","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0__lib_templating__","__WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__","__WEBPACK_IMPORTED_MODULE_3__lib_createEvent__","Element","proto","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","document","ownerDocument","querySelectorAll","indexOf","actual","el","selector","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__","_classCallCheck","BYUFooterActionButton","_possibleConstructorReturn","getPrototypeOf","_this","attachShadow","mode","_inherits","_HTMLElement","_createClass","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","HTMLElement","window","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__","BYUFooterColumn","_this2","_HTMLElement2","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__","BYUFooter","_this3","_HTMLElement3","component","shadowRoot","querySelector","currentYear","MutationObserver","observer","attributes","header","hasAttribute","ATTR_FULL_WIDTH","setAttribute","removeAttribute","ATTR_MAX_WIDTH","w","needsWidthSetting","__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__","__WEBPACK_IMPORTED_MODULE_1_deep_equal__","__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__","BYUHeader","_this4","_HTMLElement4","mobile","state","_renderState","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","_this5","_addSlotListeners","_notifyChildrenOfMobileState","_addButtonListeners","_checkIfMenuIsNeeded","_applyHomeUrl","_applyMaxWidth","_applyMenuTransparencyListeners","assignedNodes","noMenu","hasUserInfo","hasMenu","hasActions","inMobileView","menuOpen","menuButton","_this6","_toggleMenu","_findAllSlots","forEach","each","_this7","_findAllDistributedChildren","kids","slots","arr","map","filter","reduce","agg","concat","mobileMaxWidth","_applyMobileWidth","_render","maxWidth","setTimeout","menu","addEventListener","console","ATTR_MOBILE_VIEW","ATTR_MENU_OPEN","ATTR_MENU_KEEP_OPEN","attr","ATTR_MOBILE_MAX_WIDTH","_applyMenuOpen","ATTR_HOME_URL","aTag","mobileMediaQuery","_mobileQuery","q","media","desiredQuery","matchMedia","_mobileQueryListener","_handleMobileChange","bind","mql","maxWidthMediaQuery","_maxWidthQuery","_maxWidthQueryListener","_handleMaxWidthChange","classList","add","remove","navSlot","nodeType","Node","ELEMENT_NODE","_applyMenuTransparency","assigned","__byu_header_transparency_listener","_this8","obs","element","contains","transparent","getAttribute","set","val","DEFAULT_MAX_WIDTH","ATTR_NO_MENU","activeSelector","force","_renderedActiveSelector","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default","a","toString","replace","css","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default","updateMoreMenuState","addSlotListeners","className","split","hasClass","classes","arguments","exists","setTo","children","node","moreChildren","filteredChildren","filteredMoreChildren","nav","toggleClass","hasOverflow","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__","BYUMenu","_this9","_HTMLElement5","ATTR_ACTIVE_SELECTOR","DEFAULT_ACTIVE_SELECTOR","isShowingMoreMenu","show","enableHideClick","render","search","handleSlotChange","_input","lookupSearchInput","oldInput","newInput","teardownInputElement","setupInputElement","_searchSlot","input","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","action","ACTION_SUBMIT_FORM","runSubmitFormAction","ACTION_CLICK","runClickAction","ACTION_NAVIGATE","runNavigateAction","Error","ATTR_ACTION","actionTarget","form","HTMLFormElement","localName","button","title","placeholder","helped","__byu_search_a11yHelpersApplied","helpers","includes","__byu_search_keyObserver","keyCode","keypress","removeEventListener","__onbyusearchHandler","onbyusearch","handler","__onsearchLegacyHandler","onsearch","DEFAULT_ACTION_TARGET","__WEBPACK_IMPORTED_MODULE_0__byu_search_html__","_defineProperty","_DEFAULT_ACTION_TARGE","ByuSearch","_this10","_HTMLElement6","_this11","_initialized","lookupAndConfigureInputElement","searchInputSelector","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","teardownSearchListeners","EVENT_TYPE","dispatchEvent","event","cancelled","runPredefinedAction","ATTR_SEARCH_INPUT_SELECTOR","newValue","ATTR_SEARCH_HANDLER","ATTR_OLD_SEARCH_HANDLER","ATTR_ACTION_TARGET","defaultActionTarget","slotElement","k","detectSocialKind","kid","kind","SOCIAL_IDS","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__","getOwnPropertyNames","SOCIAL_NAMES","BYUSocialMediaLinks","_this12","_HTMLElement7","_this13","applyTitleToChildren","slot","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__","ByuUserInfo","_this14","_HTMLElement8","_this15","_addAriaAttributes","_setHasUser","userSlot","_this16","factory","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","_transformClass","DEFAULT_EVENTS","transform","revert","elements","Array","slice","events","toLowerCase","getElementList","elementList","eventLists","occasion","tcon","setListeners","__WEBPACK_IMPORTED_MODULE_8__package_json__","CustomEvent","detail","cancelable","bubbles","createEvent","evt","flatten","roots","len","__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__","child","elementName","sum","head","templateId","templateElement","ShadyCSS","styleElement","applyStyle","importNode","content","shadow","firstChild","runAfterStamping","callback","__WEBPACK_IMPORTED_MODULE_0_hash_sum___default","template","__byu_webCommunity_components","elSettings","templateHash","nativeShadow","applyTemplateShady","applyTemplateNative","__WEBPACK_IMPORTED_MODULE_0_hash_sum__","x","_typeof","copy","isUndefinedOrNull","b","isArguments","deepEqual","opts","isBuffer","objectKeys","ka","kb","expected","Date","getTime","objEquiv","strict","propertyIsEnumerable","keys","_ENCODE_HTML_RULES","escapeFn","markup","_MATCH_HTML","encode_char","__output","push","__append","locals","hash","text","chr","sort","foldValue","seen","fold","foldObject","pad"],"mappings":"AAAE,WAAW,CACb,aCKA,iBAAA,CAAA,MAAAA,KAAAC,EAAA,CAAAC,OAAAC,cAAA,CAAAF,CAAA,CAAAD,CAAA,CAAA,CAAAI,MAAAA,CAAA,CAAAC,aAAA,CAAAC,eAAA,CAAAC,WAAA,CAAA,CAAA,CAAAN,EAAAD,CAAA,EAAAI,CAAA,CAAAH,CAAA,CAEA,eAAA,CAAA,GAAA,EAAAO,YAAAC,EAAA,CAAA,CAAA,KAAA,IAAAC,UAAA,CAAA,mCAAA,CAAA,CAEA,eAAA,CAAA,GAAA,CAAAC,CAAA,CAAA,KAAA,IAAAC,eAAA,CAAA,2DAAA,CAAA,CAAA,MAAAC,KAAA,QAAA,QAAAA,EAAA,EAAA,UAAA,QAAAA,EAAA,EAAAA,CAAA,CAAAF,CAAA,CAEA,eAAA,CAAA,GAAA,UAAA,QAAAG,EAAA,EAAA,IAAA,IAAA,CAAA,KAAA,IAAAJ,UAAA,CAAA,2DAAA,MAAAI,EAAA,CAAA,CAAAC,EAAAC,SAAA,CAAAd,OAAAe,MAAA,CAAAH,GAAAA,EAAAE,SAAA,CAAA,CAAAE,YAAA,CAAAd,MAAAW,CAAA,CAAAV,aAAA,CAAAE,WAAA,CAAAD,eAAA,CAAA,CAAA,CAAA,CAAAQ,CAAA,GAAAZ,OAAAiB,cAAA,CAAAjB,OAAAiB,cAAA,CAAAJ,CAAA,CAAAD,CAAA,CAAA,CAAAC,EAAAK,SAAA,CAAAN,CAAA,CAAA,CAVA,GAAA,GAAA,UAAA,QAAAO,OAAA,EAAA,QAAA,QAAAA,QAAAC,QAAA,CAAA,WAAA,CAAA,MAAA,OAAArB,EAAA,CAAA,CAAA,WAAA,CAAA,MAAAA,IAAA,UAAA,QAAAoB,OAAA,EAAApB,EAAAiB,WAAA,GAAAG,MAAA,EAAApB,IAAAoB,OAAAL,SAAA,CAAA,QAAA,CAAA,MAAAf,EAAA,CAAA,CAEA,EAAA,UAAA,CAAA,eAAA,CAAA,IAAA,MAAA,EAAA,CAAA,CAAAsB,EAAAC,EAAAC,MAAA,CAAA,GAAA,GAAAD,EAAAD,CAAA,CAAA,CAAAG,EAAArB,UAAA,CAAAqB,EAAArB,UAAA,IAAA,CAAAqB,EAAApB,YAAA,GAAA,CAAA,SAAAoB,EAAA,GAAAA,EAAAnB,QAAA,GAAA,EAAAL,OAAAC,cAAA,CAAAwB,CAAA,CAAAD,EAAA1B,GAAA,CAAA0B,CAAA,CAAA,CAAA,MAAA,gBAAA,CAAA,MAAAE,EAAA,EAAAC,EAAApB,EAAAO,SAAA,CAAAY,CAAA,CAAA,CAAAE,CAAA,EAAAD,EAAApB,CAAA,CAAAqB,CAAA,CAAA,CAAArB,CAAA,CAAA,CAAA,EAFA,CAFA,CAAA,WAAA,CCIA,aAAA,CAGA,GAAAsB,EAAAC,CAAA,CAAA,CACA,MAAAD,GAAAC,CAAA,EAAAC,OAAA,CAGA,GAAA,GAAAF,EAAAC,CAAA,EAAA,CACAT,EAAAS,CADA,CAEAE,IAFA,CAGAD,UAHA,CAAA,CAaA,MANAE,GAAAH,CAAA,EAAAnB,IAAA,CAAAuB,EAAAH,OAAA,CAAAG,CAAA,CAAAA,EAAAH,OAAA,CAAAI,CAAA,CAMA,CAHAD,EAAAF,CAAA,GAGA,CAAAE,EAAAH,OACA,CAxBA,GAAA,KAAA,CA+DA,MAnCAI,GAAAC,CAAA,CAAAH,CAmCA,CAhCAE,EAAAE,CAAA,CAAAR,CAgCA,CA7BAM,EAAAd,CAAA,CAAA,WAAA,CAA2C,MAAAnB,EAAc,CA6BzD,CA1BAiC,EAAAG,CAAA,CAAA,eAAA,CACAH,EAAAI,CAAA,CAAAR,CAAA,CAAAS,CAAA,CADA,EAEAxC,OAAAC,cAAA,CAAA8B,CAAA,CAAAS,CAAA,CAAA,CACApC,eADA,CAEAD,aAFA,CAGAsC,IAAAC,CAHA,CAAA,CAMA,CAkBA,CAfAP,EAAAQ,CAAA,CAAA,WAAA,CACA,GAAA,GAAAT,GAAAA,EAAAU,UAAA,CACA,UAAA,CAA2B,MAAAV,GAAA,SAAA,CAA4B,CADvD,CAEA,UAAA,CAAiC,MAAAA,EAAe,CAFhD,CAIA,MADAC,GAAAG,CAAA,CAAAI,CAAA,CAAA,GAAA,CAAAA,CAAA,CACA,CAAAA,CACA,CASA,CANAP,EAAAI,CAAA,CAAA,aAAA,CAAsD,MAAAvC,QAAAc,SAAA,CAAA+B,cAAA,CAAAlC,IAAA,CAAAmC,CAAA,CAAAC,CAAA,CAA+D,CAMrH,CAHAZ,EAAAa,CAAA,CAAA,EAGA,CAAAb,EAAAA,EAAAc,CAAA,CAAA,EAAA,CDEU,CAlEV,EAoEA,CAEA,WAAA,CEjEAf,EAAAA,OAAAA,CAAAA,UAAAA,CACA,GAAA,KAAA,CA0CA,MAvCAgB,GAAAA,QAAAA,CAAAA,UAAAA,CAEA,IAAA,MADA,IACA,CAAA,EAAA,CAAA,CAAA7B,EAAA,KAAAE,MAAA,CAAA,GAAA,GACA,KAAAF,CAAA,CADA,CAEA8B,EAAA,CAAA,CAFA,CAGAC,EAAAA,IAAAA,CAAAA,UAAAA,EAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,GAAAA,CAHA,CAKAA,EAAAA,IAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CALA,CAQA,MAAAA,GAAAC,IAAA,CAAA,EAAA,CACA,CA4BA,CAzBAH,EAAAA,CAAAA,CAAAA,aAAAA,CACA,QAAA,QAAAjB,EADAiB,GACA,EAAA,CAAA,CAAA,IAAA,CAAAjB,CAAA,CAAA,EAAA,CAAA,CADAiB,EAIA,IAAA,MADA,IACA,CAAA,EAAA,CAAA,CAAA7B,EAAA,KAAAE,MAAA,CAAA,GAAA,GACA,KAAAF,CAAA,EAAA,CAAA,CADA,CAEA,QAAA,QAAAiC,EAFA,GAEAC,EAAAD,CAAA,IAFA,EAKA,IAAA,EAAA,CAAA,CAAAjC,EAAAY,EAAAV,MAAA,CAAA,GAAA,CAAA,CACA,GAAA,GAAAU,EAAAZ,CAAA,CAAA,CAKA,QAAA,QAAA8B,GAAA,CAAA,CAAA,EAAAI,EAAAJ,EAAA,CAAA,CAAA,CANA,GAOAK,GAAA,CAAAL,EAAA,CAAA,CAPA,CAQAA,EAAAA,CAAAA,EAAAA,CARA,CASKK,CATL,GAUAL,EAAAA,CAAAA,EAAAA,IAAAA,EAAAA,CAAAA,CAAAA,CAAAA,SAAAA,CAAAA,CAAAA,CAAAA,GAVA,EAYAD,EAAAA,IAAAA,CAAAA,CAAAA,CAZA,CAcA,CACA,CACA,CAAAA,CACA,CF2EO,CAxDP,CA0DA,eAAA,CAGqB,GAAA,GAAAf,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAA,CAAA,CADqB,CAErB,EAAAA,EAAA,EAAA,CAFqB,CAGrB,EAAAA,EAAA,EAAA,CAHqB,CAIrBA,EAAAG,CAAA,CAAAmB,CAAA,CAAA,GAAA,CAAA,UAAA,CAA8F,MAAAC,IAA4D,CAA1J,CAPA,CASAvB,EAAAG,CAAA,CAAAmB,CAAA,CAAA,GAAA,CAAA,UAAA,CAA8F,MAAAE,IAAmE,CAAjK,CATA,CG9HAxB,EAAAG,CAAA,CAAAmB,CAAA,CAAA,GAAA,CAAA,UAAA,CAAA,MAAAG,IAAA,CAAA,CHsJO,CAlFP,CAoFA,aAAA,CIxJAH,IAkBA,aAAA,CACA,GAAA,GAAAI,QAAA/C,SAAA,CACA,EAAAgD,EAAAC,OAAA,EAAAD,EAAAE,eAAA,EAAAF,EAAAG,kBAAA,EAAAH,EAAAI,iBAAA,EAAAJ,EAAAK,gBAAA,EAAAL,EAAAM,qBAAA,EAAA,WAAA,CAQA,GAAA,GAAA,KAAAC,QAAA,EAAA,KAAAC,aAAA,CACA,MAAA,CAAA,CAAA,KAAAC,gBAAA,CAAAtB,CAAA,EAAAuB,OAAA,CAAA,IAAA,CACA,CAXA,CAaA,MAAAC,GAAA9D,IAAA,CAAA+D,CAAA,CAAAC,CAAA,CACA,CJ+JO,CA5HP,CA8HA,eAAA,CAGqB,GAAA,GAAAxC,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAAiC,CAAA,CADqB,CAErB,EAAAzC,EAAA,CAAA,CAFqB,CAH6C,EAAA,WAAA,CK1LlE,YAAA,CAAA0C,EAAA,IAAA,CAAAC,CAAA,CAAA,CAAA,GAAA,GAAAC,EAAA,IAAA,CAAA,CAAAD,EAAA5D,SAAA,EAAAlB,OAAAgF,cAAA,CAAAF,CAAA,CAAA,EAAAnE,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEAsE,GAAAC,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAF,CAGA,CLuLkE,MAAAG,GAAAN,CAAA,CAAAO,CAAA,CAAA,CAAAC,EAAAR,CAAA,CAAA,CAAA,CAAAhF,IAAA,mBAAA,CAAAI,MAAA,UAAA,CKpLlEqF,IAAAA,IAAAA,CAAAA,0BAAAA,CAAAA,EAAAA,CAAAA,CACA,CLmLkE,CAAA,CAAA,CAAA,CAAAT,CAAA,CAAA,CAAAU,WAAA,CAG7C,CKnLrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,0BAAAA,CAAAA,CAAAA,CLgLA,CK/KAA,OAAAA,qBAAAA,CAAAA,CL4MO,CA3JP,CA6JA,eAAA,CAGqB,GAAA,GAAAtD,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAA+C,CAAA,CADqB,CAErB,EAAAvD,EAAA,CAAA,CAFqB,CAH6C,EAAA,WAAA,CM1NlE,YAAA,CAAA0C,EAAA,IAAA,CAAAc,CAAA,CAAA,CAAA,GAAA,GAAAZ,EAAA,IAAA,CAAA,CAAAY,EAAAzE,SAAA,EAAAlB,OAAAgF,cAAA,CAAAW,CAAA,CAAA,EAAAhF,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEAiF,GAAAV,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAS,CAGA,CNuNkE,MAAAR,GAAAO,CAAA,CAAAE,CAAA,CAAA,CAAAP,EAAAK,CAAA,CAAA,CAAA,CAAA7F,IAAA,mBAAA,CAAAI,MAAA,UAAA,CMpNlEqF,IAAAA,IAAAA,CAAAA,mBAAAA,CAAAA,EAAAA,CAAAA,CACA,CNmNkE,CAAA,CAAA,CAAA,CAAAI,CAAA,CAAA,CAAAH,WAAA,CAG7C,CMnNrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,mBAAAA,CAAAA,CAAAA,CNgNA,CM/MAA,OAAAA,eAAAA,CAAAA,CN0OO,CAxLP,CA0LA,eAAA,CAGqB,GAAA,GAAAtD,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAAmD,CAAA,CADqB,CAErB,EAAA3D,EAAA,CAAA,CAFqB,CO5PrB,EAAA,YP4PqB,CO3PrB,EAAA,WP2PqB,CAH6C,EAAA,WAAA,COnPlE,YAAA,CAAA0C,EAAA,IAAA,CAAAkB,CAAA,CAAA,CAAA,GAAA,GAAAhB,EAAA,IAAA,CAAA,CAAAgB,EAAA7E,SAAA,EAAAlB,OAAAgF,cAAA,CAAAe,CAAA,CAAA,EAAApF,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEAqF,GAAAd,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAa,CAGA,CPgPkE,MAAAZ,GAAAW,CAAA,CAAAE,CAAA,CAAA,CAAAX,EAAAS,CAAA,CAAA,CAAA,CAAAjG,IAAA,mBAAA,CAAAI,MAAA,UAAA,CO7OlE,GAAA,GAAA,IAAA,CACAqF,IAAAA,CAAAA,CAAAA,YAAAA,CAAAA,EAAAA,CAAAA,CAAAA,UAAAA,CAEA,GAAA,GAAAW,EAAAC,UAAA,CAAAC,aAAA,CAAA,cAAA,CAAA,CACAC,EAAAA,SAAAA,CAAAA,GAAAA,KAAAA,GAAAA,WAAAA,EAHAd,CAKA,GAAA,GAAAlB,SAAA+B,aAAA,CAAA,YAAA,CAAA,CACA,EAAA,GAAAE,iBAAA,CAAA,UAAA,CACAJ,EAAAA,0BAAAA,CAAAA,CAAAA,CACa,CAFb,CADA,CAOAK,EAAAA,OAAAA,CAAAA,CAAAA,CADA,CAAAC,aAAA,CACAD,CAZAhB,CAaAW,EAAAA,0BAAAA,CAAAA,CAAAA,CACS,CAdTX,CAeA,CP6NkE,CAAA,CAAA,CAAAzF,IAAA,4BAAA,CAAAI,MAAA,WAAA,COxNlEuG,EAAAC,YAAA,CAAAC,CAAA,CPwNkE,COvNlE,KAAAC,YAAA,CAAAD,CAAA,CAAA,EAAA,CPuNkE,COnNlE,KAAAE,eAAA,CAAAF,CAAA,CPmNkE,COhNlE,GAAA,GAvCA,QAuCA,CACAF,EAAAC,YAAA,CAAAI,CAAA,CP+MkE,GO9MlEC,EAAAA,EAAAA,YAAAA,CAAAA,CAAAA,CP8MkE,EO5MlE,KAAAH,YAAA,CAAAE,CAAA,CAAAC,CAAA,CP4MkE,COzMlE,IAAA,GADA,GAAA,KAAAZ,UAAA,CAAA5B,gBAAA,CAAA,sBAAA,CACA,CAAA,EAAA,CAAA,CAAAlD,EAAA2F,EAAAzF,MAAA,CAAA,GAAA,CAEAyF,EAAAA,CAAAA,EAAAA,KAAAA,CAAAA,QAAAA,CAAAA,CAFA,CAGAA,EAAAA,CAAAA,EAAAA,KAAAA,CAAAA,QAAAA,CAAAA,CAEA,CPoMkE,CAAA,CAAA,CAAA,CAAAjB,CAAA,CAAA,CAAAP,WAAA,CAG7C,COpMrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,YAAAA,CAAAA,CAAAA,CPiMA,COhMAA,OAAAA,SAAAA,CAAAA,CPuQO,CAjQP,CAmQA,eAAA,CAGqB,GAAA,GAAAtD,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAAsE,CAAA,CADqB,CAErB,EAAA9E,EAAA,EAAA,CAFqB,CAGrB,EAAAA,EAAAQ,CAAA,CAAAuE,CAAA,CAHqB,CAIrB,EAAA/E,EAAA,CAAA,CAJqB,CAKrB,EAAAA,EAAA,EAAA,CALqB,CAMrB,EAAAA,EAAAQ,CAAA,CAAAwE,CAAA,CANqB,CQlUrB,EAAA,kBRkUqB,CQhUrB,EAAA,WRgUqB,CQ/TrB,EAAA,aR+TqB,CQ9TrB,EAAA,WR8TqB,CQ7TrB,EAAA,gBR6TqB,CQ5TrB,EAAA,SR4TqB,CQ3TrB,EAAA,UR2TqB,CQxTrB,EAAA,QRwTqB,CAH6C,EAAA,WAAA,CQhTlE,YAAA,CAAAtC,EAAA,IAAA,CAAAuC,CAAA,CAAA,CAAA,GAAA,GAAArC,EAAA,IAAA,CAAA,CAAAqC,EAAAlG,SAAA,EAAAlB,OAAAgF,cAAA,CAAAoC,CAAA,CAAA,EAAAzG,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEA0G,GAAAnC,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAkC,CAGA,CR6SkE,MAAAjC,GAAAgC,CAAA,CAAAE,CAAA,CAAA,CAAAhC,EAAA8B,CAAA,CAAA,CAAA,CAAAtH,IAAA,SAAA,CAAAI,MAAA,UAAA,CQ3SlE,GAAA,GAAA,IAAA,CACA,EAAA,CACAqH,OAAAA,KAAAA,YADA,CADA,CAIAL,EAAAM,CAAA,CAAA,KAAAC,YAAA,CRuSkE,EQtSlEC,IAAAA,IAAAA,CAAAA,YAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,UAAAA,CACAC,EAAAF,YAAA,CAAAD,CADAE,CAEAC,EAAAC,iBAAA,EAFAF,CAGAC,EAAAE,4BAAA,EAHAH,CAIAC,EAAAG,mBAAA,EAJAJ,CAKAC,EAAAI,oBAAA,EALAL,CAMAC,EAAAK,aAAA,EANAN,CAOAC,EAAAM,cAAA,EAPAP,CAQAC,EAAAO,+BAAA,EACa,CATbR,CAWA,CR2RkE,CAAA,CAAA,CAAA5H,IAAA,sBAAA,CAAAI,MAAA,UAAA,CQvRlE,GAAA,GAAA,KAAAiG,UAAA,CAAAC,aAAA,CAAA,OAAA,CAAA,CACA,EAAA,CAAA,KAAA+B,aAAA,GAAA5G,MADA,CAGA,EAAA,KAAA4E,UAAA,CAAAC,aAAA,CAAA,aAAA,CAHA,CAIA,EAAA,CAAA,KAAA+B,aAAA,GAAA5G,MAJA,CAMA,EAAA,KAAA4E,UAAA,CAAAC,aAAA,CAAA,UAAA,CANA,CAOA,EAAA,CAAA,KAAA+B,aAAA,GAAA5G,MAPA,CASA,KAAA6G,MAAA,CAAA,EAAAC,GAAAC,CAAA,EAAAC,CAAA,CR8QkE,CQ5QlE,CAAA,GAAAJ,aAAA,GAAA5G,MR4QkE,CQ3QlE,KAAAqF,YAAA,CAAA,YAAA,CAAA,EAAA,CR2QkE,CQxQlE,KAAAC,eAAA,CAAA,YAAA,CAEA,CRsQkE,CAAA,CAAA,CAAA/G,IAAA,qBAAA,CAAAI,MAAA,UAAA,CQpQlE,GAAA,GAAA,IAAA,CACA,GAAA,CAAA,KAAAsI,YAAA,CAEA,YADA,KAAAC,QAAA,GACA,EAEA,GAAA,GAAA,KAAAtC,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CACAsC,EAAAA,gBAAAA,CAAAA,OAAAA,CAAAA,UAAAA,CAAA,MAAAC,GAAAC,WAAA,EAAA,CAAAF,CACA,CR6PkE,CAAA,CAAA,CAAA5I,IAAA,aAAA,CAAAI,MAAA,UAAA,CQ1PlE,KAAAuI,QAAA,CAAA,CAAA,KAAAA,QACA,CRyPkE,CAAA,CAAA,CAAA3I,IAAA,mBAAA,CAAAI,MAAA,UAAA,CQvPlE,GAAA,GAAA,IAAA,CACA,KAAA2I,aAAA,GAAAC,OAAA,CAAA,WAAA,CACAC,EAAAA,gBAAAA,CAAAA,YAAAA,CAAAA,UAAAA,CACAC,EAAAnB,4BAAA,EADAkB,CAEAC,EAAAjB,oBAAA,EAFAgB,CAGAC,EAAAd,+BAAA,EACa,CAJba,CAKS,CANT,CAOA,CR+OkE,CAAA,CAAA,CAAAjJ,IAAA,8BAAA,CAAAI,MAAA,UAAA,CQ5OlE,GAAA,GAAA,KAAA+I,2BAAA,EAAA,CACA,KAAAT,YR2OkE,CQ1OlEU,EAAAA,OAAAA,CAAAA,WAAAA,CACAH,EAAAA,YAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CADAG,CAEAH,EAAAA,SAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CACa,CAHbG,CR0OkE,CQrOlEA,EAAAA,OAAAA,CAAAA,WAAAA,CACAH,EAAAA,eAAAA,CAAAA,CAAAA,CADAG,CAEAH,EAAAA,SAAAA,CAAAA,MAAAA,CAAAA,CAAAA,CACa,CAHbG,CAKA,CRgOkE,CAAA,CAAA,CAAApJ,IAAA,eAAA,CAAAI,MAAA,UAAA,CQ3NlE,IAAA,GAFA,GAAA,KAAAiG,UAAA,CAAA5B,gBAAA,CAAA,MAAA,CAEA,CADA,IACA,CAAA,EAAA,CAAA,CAAAlD,EAAA8H,EAAA5H,MAAA,CAAA,GAAA,CACA6H,EAAAA,IAAAA,CAAAA,EAAAA,CAAAA,CAAAA,EAEA,MAAAA,EACA,CRuNkE,CAAA,CAAA,CAAAtJ,IAAA,6BAAA,CAAAI,MAAA,UAAA,CQpNlE,MAAA,MAAA2I,aAAA,GAAAQ,GAAA,CAAA,WAAA,CAAA,MAAApG,GAAAkF,aAAA,GAAAmB,MAAA,CAAA,WAAA,CAAA,MAAA3G,aAAA6C,YAAA,CAAA,CAAA,CAAA,EAAA+D,MAAA,CAAA,aAAA,CACA,MAAAC,GAAAC,MAAA,CAAAV,CAAA,CAAA,CADA,IAEA,CRkNkE,CAAA,CAAA,CAAAjJ,IAAA,mBAAA,CAAAI,MAAA,UAAA,CQ9MlE,KAAAwJ,cAAA,CAAA,KAAAA,cR8MkE,CQ7MlE,KAAAC,iBAAA,ER6MkE,CQ5MlE,KAAAC,OAAA,ER4MkE,CQ3MlE,KAAAC,QAAA,CAAA,KAAAA,QR2MkE,CQzMlE,GAAA,GAAA,IAAA,CACAC,WAAAA,UAAAA,CACA,GAAA,GAAArD,EAAAN,UAAA,CAAAC,aAAA,CAAA,aAAA,CAAA,CACA2D,CAFAD,EAEAC,EAAAC,gBAAA,CAAA,OAAA,CAAA,UAAA,CACAC,QAAAA,GAAAA,CAAAA,EAAAA,SAAAA,CADA,CAEAxD,EAAAC,YAAA,CAAAwD,CAAA,GAAAzD,EAAAC,YAAA,CAAAyD,CAAA,CAAA,EAAA,CAAA1D,EAAAC,YAAA,CAAA0D,CAAA,CAFA,EAGA3D,EAAAA,eAAAA,CAAAA,CAAAA,CAEa,CALb,CAMS,CARTqD,CAQS,CARTA,CRwMkE,CQ9LlE,KAAApD,YAAA,CAAA,YAAA,CR8LkE,EQ7LlEuD,QAAAA,GAAAA,CAAAA,oIAAAA,CRmVK,CAtJ6D,CAAA,CAAA,CAAAnK,IAAA,0BAAA,CAAAI,MAAA,WAAA,OQpLlEmK,ERoLkE,GQnLlEC,CRmLkE,KQlLlE,MAAAX,iBAAA,ERkLkE,CQpLlEU,CRoLkE,GQhLlEvD,CRgLkE,KQ/KlE,MAAAmB,cAAA,ER+KkE,CQpLlEoC,CRoLkE,GQ7KlEH,CR6KkE,KQ5KlE,MAAAN,OAAA,ER4KkE,CQpLlES,CRoLkE,GQ1KlEF,CR0KkE,KQzKlE,MAAAI,cAAA,ERyKkE,CQpLlEF,CRoLkE,GQvKlEG,CRuKkE,KQtKlE,MAAAxC,aAAA,ERsKkE,OQnKlE,CRmKkE,CAAA,CAAA,CAAAlI,IAAA,gBAAA,CAAAI,MAAA,UAAA,CQhKlE,GAAA,GAAA,KAAAiG,UAAA,CAAAC,aAAA,CAAA,aAAA,CAAA,CACA2D,CR+JkE,GQ9JlE,KAAAtB,QR8JkE,EQ7JlEsB,EAAAA,KAAAA,CAAAA,SAAAA,CAAAA,EAAAA,YAAAA,CAAAA,IR6JkE,CQ5JlE5H,EAAAA,CAAAA,CAAAA,WAAAA,EAAAA,KAAAA,UAAAA,CAAAA,aAAAA,CAAAA,qBAAAA,CAAAA,CR4JkE,GQ1JlE4H,EAAAA,KAAAA,CAAAA,SAAAA,CAAAA,IR0JkE,CQzJlE5H,EAAAA,CAAAA,CAAAA,QAAAA,EAAAA,KAAAA,UAAAA,CAAAA,aAAAA,CAAAA,qBAAAA,CAAAA,CRyJkE,EQvJlE,CRuJkE,CAAA,CAAA,CAAArC,IAAA,eAAA,CAAAI,MAAA,UAAA,CQpJlE,GAAA,GAAA,KAAAiG,UAAA,CAAAC,aAAA,CAAA,WAAA,CAAA,CACAqE,CRmJkE,EQlJlEA,EAAAA,YAAAA,CAAAA,MAAAA,CAAAA,KAAAA,OAAAA,CAEA,CRgJkE,CAAA,CAAA,CAAA3K,IAAA,mBAAA,CAAAI,MAAA,UAAA,CQ7DlE,GAAA,GAAA,KAAAwK,gBAAA,CACA,EAAA,KAAAC,YADA,CAEA,GAAAC,CAAA,CAAA,CACA,GAAAA,EAAAC,KAAA,GAAAC,CAAA,CAEA,OAEAF,EAAAA,cAAAA,CAAAA,KAAAA,oBAAAA,CALA,CAMA,KAAAD,YAAA,CAAA,IAEA,CACA,KAAAA,YAAA,CAAA,EAAAlF,OAAAsF,UAAA,CAAAD,CAAA,CRkDkE,CQjDlE,KAAAE,oBAAA,CAAA,KAAAC,mBAAA,CAAAC,IAAA,CAAA,IAAA,CRiDkE,CQ/ClEN,EAAAA,WAAAA,CAAAA,KAAAA,oBAAAA,CR+CkE,CQ9ClE,KAAAI,oBAAA,CAAAJ,CAAA,CACA,CR6CkE,CAAA,CAAA,CAAA9K,IAAA,qBAAA,CAAAI,MAAA,WAAA,CQ1ClE,KAAAsI,YAAA,CAAA2C,EAAApH,OACA,CRyCkE,CAAA,CAAA,CAAAjE,IAAA,gBAAA,CAAAI,MAAA,UAAA,CQjClE,GAAA,CAAA,KAAAsI,YAAA,CAEA,IAAA,GADA,GAAA,KAAArC,UAAA,CAAA5B,gBAAA,CAAA,sBAAA,CACA,CAAA,EAAA,CAAA,CAAAlD,EAAA2F,EAAAzF,MAAA,CAAA,GAAA,CACAyF,EAAAA,CAAAA,EAAAA,KAAAA,CAAAA,QAAAA,CAAAA,KAAAA,QAAAA,CAGA,GAAA,GAAA,KAAAoE,kBAAA,CACA,EAAA,KAAAC,cADA,CAEA,GAAAT,CAAA,CAAA,CACA,GAAAA,EAAAC,KAAA,GAAAC,CAAA,CAEA,OAEAF,EAAAA,cAAAA,CAAAA,KAAAA,sBAAAA,CALA,CAMA,KAAAS,cAAA,CAAA,IAEA,CACA,KAAAA,cAAA,CAAA,EAAA5F,OAAAsF,UAAA,CAAAD,CAAA,CRgBkE,CQflE,KAAAQ,sBAAA,CAAA,KAAAC,qBAAA,CAAAL,IAAA,CAAA,IAAA,CRekE,CQblEN,EAAAA,WAAAA,CAAAA,KAAAA,sBAAAA,CRakE,CQZlE,KAAAU,sBAAA,CAAAV,CAAA,CACA,CRWkE,CAAA,CAAA,CAAA9K,IAAA,uBAAA,CAAAI,MAAA,WAAA,CQRlEiL,EAAApH,ORQkE,CQPlE,KAAAyH,SAAA,CAAAC,GAAA,CAAA,iBAAA,CROkE,CQJlE,KAAAD,SAAA,CAAAE,MAAA,CAAA,iBAAA,CAEA,CREkE,CAAA,CAAA,CAAA5L,IAAA,iCAAA,CAAAI,MAAA,UAAA,CQIlE,GAAA,GAAA,IAAA,CACA,EAAA,KAAAiG,UAAA,CAAAC,aAAA,CAAA,aAAA,CADA,CAEA,EAAAuF,EAAAxD,aAAA,GAAAmB,MAAA,CAAA,WAAA,CAAA,MAAA3G,GAAAiJ,QAAA,GAAAC,KAAAC,YAAA,CAAA,CAFA,CAGA,GAAA,CAAA,KAAAvK,MAAA,CAEA,WADA,MAAAwK,sBAAA,CAAA,IAAA,CACA,CAEA,GAAA,GAAAC,EAAA,CAAA,CAAA,CACA,GAAA,CAAAjC,EAAAkC,kCAAA,CAAA,CACA,GAAA,GAAA,GAAA3F,iBAAA,CAAA,UAAA,CACA4F,EAAAH,sBAAA,CAAAhC,CAAA,CACa,CAFb,CAAA,CAIAoC,EAAAA,OAAAA,CAAAA,CAAAA,CAAAA,CAAAA,aAAAA,CAAAA,yBAAAA,CAAAA,CALA,CAMApC,EAAAA,kCAAAA,CAAAA,CACA,CACA,KAAAgC,sBAAA,CAAAhC,CAAA,CACA,CRrBkE,CAAA,CAAA,CAAAjK,IAAA,wBAAA,CAAAI,MAAA,WAAA,CQwBlE,GAAA,GAAAkM,GAAAA,EAAAZ,SAAA,CAAAa,QAAA,CAAA,aAAA,CAAA,CACAC,CRzBkE,CQ2BlE,KAAAd,SAAA,CAAAC,GAAA,CAAA,kBAAA,CR3BkE,CQ6BlE,KAAAD,SAAA,CAAAE,MAAA,CAAA,kBAAA,CAEA,CR/BkE,CAAA,CAAA,CAAA5L,IAAA,gBAAA,CAAA2C,IAAA,UAAA,CQ7IlE,MAAA,MAAA8J,YAAA,CAAAjC,CAAA,CACA,CR4IkE,CAAAkC,IAAA,WAAA,CQzIlEC,CRyIkE,CQxIlE,KAAA7F,YAAA,CAAA0D,CAAA,CAAAmC,CAAA,CRwIkE,CQtIlE,KAAA7F,YAAA,CAAA0D,CAAA,CAhLA,QAgLA,CAEA,CRoIkE,CAAA,CAAA,CAAAxK,IAAA,UAAA,CAAA2C,IAAA,UAAA,CQjIlE,MAAA,MAAA8J,YAAA,CAAAzF,CAAA,GAAA4F,CACA,CRgIkE,CAAAF,IAAA,WAAA,CQ7HlEC,CR6HkE,CQ5HlE,KAAA7F,YAAA,CAAAE,CAAA,CAAA2F,CAAA,CR4HkE,CQ1HlE,KAAA7F,YAAA,CAAAE,CAAA,CAAA4F,CAAA,CAEA,CRwHkE,CAAA,CAAA,CAAA5M,IAAA,cAAA,CAAA2C,IAAA,UAAA,CQrHlE,MAAA,MAAAiE,YAAA,CAAAwD,CAAA,CACA,CRoHkE,CAAAsC,IAAA,WAAA,CQjHlEC,CRiHkE,CQhHlE,KAAA7F,YAAA,CAAAsD,CAAA,CAAA,EAAA,CRgHkE,CQ9GlE,KAAArD,eAAA,CAAAqD,CAAA,CAEA,CR4GkE,CAAA,CAAA,CAAApK,IAAA,UAAA,CAAA2C,IAAA,UAAA,CQzGlE,MAAA,MAAAiE,YAAA,CAAAyD,CAAA,CACA,CRwGkE,CAAAqC,IAAA,WAAA,CQrGlEC,CRqGkE,CQpGlE,KAAA7F,YAAA,CAAAuD,CAAA,CAAA,EAAA,CRoGkE,CQlGlE,KAAAtD,eAAA,CAAAsD,CAAA,CAEA,CRgGkE,CAAA,CAAA,CAAArK,IAAA,cAAA,CAAA2C,IAAA,UAAA,CQ7FlE,MAAA,MAAAiE,YAAA,CAAA0D,CAAA,CACA,CR4FkE,CAAAoC,IAAA,WAAA,CQzFlEC,CRyFkE,CQxFlE,KAAA7F,YAAA,CAAAwD,CAAA,CAAA,EAAA,CRwFkE,CQtFlE,KAAAvD,eAAA,CAAAuD,CAAA,CAEA,CRoFkE,CAAA,CAAA,CAAAtK,IAAA,QAAA,CAAA2C,IAAA,UAAA,CQjFlE,MAAA,MAAAiE,YAAA,CAAAiG,CAAA,CACA,CRgFkE,CAAAH,IAAA,WAAA,CQ7ElEC,CR6EkE,CQ5ElE,KAAA7F,YAAA,CAAA+F,CAAA,CAAA,EAAA,CR4EkE,CQ1ElE,KAAA9F,eAAA,CAAA8F,CAAA,CAEA,CRwEkE,CAAA,CAAA,CAAA7M,IAAA,SAAA,CAAA2C,IAAA,UAAA,CQrElE,MAAA,MAAA8J,YAAA,CAAA/B,CAAA,GA/OA,kBAgPA,CRoEkE,CAAAgC,IAAA,WAAA,CQjElE,KAAA5F,YAAA,CAAA4D,CAAA,CAAAiC,CAAA,CACA,CRgEkE,CAAA,CAAA,CAAA3M,IAAA,kBAAA,CAAA2C,IAAA,UAAA,CQtClE,MAAA,eAAA,KAAAiH,cAAA,CAAA,GACA,CRqCkE,CAAA,CAAA,CAAA5J,IAAA,oBAAA,CAAA2C,IAAA,UAAA,CQClE,MAAA,eAAA,KAAAoH,QAAA,CAAA,GACA,CRFkE,CAAA,CAAA,CAAA,CAAA,CAAA/J,IAAA,oBAAA,CAAA2C,IAAA,UAAA,CQxLlE,MAAA,CAAA6H,CAAA,CAAAJ,CAAA,CAAAC,CAAA,CAAAK,CAAA,CAAA1D,CAAA,CACA,CRuLkE,CAAA,CAAA,CAAA,CAAAM,CAAA,CAAA,CAAA5B,WAAA,CAG7C,CQgCrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,YAAAA,CAAAA,CAAAA,CRnCA,CQoCAA,OAAAA,SAAAA,CAAAA,CRoVO,CA3nBP,CA6nBA,eAAA,CSpoBA,eAAA,CACA,GAAA,GAAAS,EAAA0G,cAAA,CACA,GAAAC,CAAA,EAAAD,IAAA1G,EAAA4G,uBAAA,EAIA,GAAA,GAAAC,EAAAC,CAAA,CAAAC,QAAA,GAAAC,OAAA,CAAA,iCAAA,CAAAN,CAAA,CAAA,CACA,EAAA,UAAAO,CAAA,CAAA,UAAA,CAAAC,EAAAJ,CADA,CAGAzH,IAAAA,CAAAA,CAAAA,UAAAA,CAAAA,CAAAA,CAAAA,UAAAA,CACAW,EAAAA,uBAAAA,CAAAA,CADAX,CAEA8H,EAAAA,CAAAA,CAFA9H,CAGA+H,EAAAA,CAAAA,CAHA/H,CAKAW,EAAAA,UAAAA,CAAAA,aAAAA,CAAAA,gBAAAA,EAAAA,gBAAAA,CAAAA,OAAAA,CAAAA,UAAAA,CACAA,EAAAA,QAAAA,GACS,CAFTA,CAGK,CARLX,CAPA,CAgBA,CAEA,aAAA,CACAW,EAAAA,UAAAA,CAAAA,aAAAA,CAAAA,MAAAA,EAAAA,gBAAAA,CAAAA,YAAAA,CAAAA,UAAAA,CAGA4D,WAAAA,UAAAA,CAAA,MAAA,WAAA,CACAuD,EAAAA,CAAAA,CACa,CAFb,CAAAvD,CAGS,CANT5D,CAOA,CAEA,aAAA,CAEA,GAAA,GAAA,YAAA,CACA7B,SAAAA,mBAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CADA,CAEA6B,EAAAA,QAAAA,GACA,CAHA,CAKA4D,WAAAA,UAAAA,CACAzF,SAAAA,gBAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CACK,CAFLyF,CAGA,CAEA,eAAA,CACA,GAAA,GAAApF,EAAA6I,SAAA,CAAAC,KAAA,CAAA,IAAA,CAAA,CACA,MAAA,CAAA,CAAA,KAAAhJ,OAAA,CAAA+I,CAAA,CACA,CAEA,aAAA,CACA,MAAAE,GAAAvH,EAAAC,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CAAA,wBAAA,CACA,CAEA,eAAA,CACA,GAAA,GAAA1B,EAAA6I,SAAA,CAAAC,KAAA,CAAA,IAAA,CAAA,CACA,EAAAE,EAAAlJ,OAAA,CAAA+I,CAAA,CADA,CAEA,EAAA,CAAA,CAAA,IAFA,CAGA,EAAA,CAAA,WAAAhM,MAAA,CAAAoM,UAAA,CAAA,CAAA,CAAA,CAAAC,CAHA,CAIAC,GAAA,CAAAD,CALA,CAMAF,EAAAA,IAAAA,CAAAA,CAAAA,CANA,CAOK,CAAAG,CAAA,EAAAD,CAPL,EAQAF,EAAAA,MAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CARA,CAUAhJ,EAAAA,SAAAA,CAAAA,EAAAA,IAAAA,CAAAA,GAAAA,CACA,CAEA,aAAA,CACA,GAAA,GAAAwB,EAAAC,UAAA,CAAAC,aAAA,CAAA,iBAAA,EAAA+B,aAAA,EAAA,CACA,EAAAjC,EAAAC,UAAA,CAAAC,aAAA,CAAA,qBAAA,EAAA+B,aAAA,EADA,CAEA,EAAA2F,EAAAxE,MAAA,CAAA,WAAA,CAA4D,MAAAyE,aAAAvI,YAAqC,CAAjG,CAFA,CAGA,EAAAwI,EAAA1E,MAAA,CAAA,WAAA,CAAoE,MAAAyE,aAAAvI,YAAqC,CAAzG,CAHA,CAIA,EAAAyI,EAAA1M,MAAA,CAAA2M,EAAA3M,MAJA,CAKA,EAAA,CAAA,EALA,CAMA,EAAA2E,EAAAC,UAAA,CAAAC,aAAA,CAAA,YAAA,CANA,CAUA,GAFA+H,CAEA,EAFAC,EAAAD,CAAA,CAAA,uBAAA,CAAAE,CAAA,CAEA,CAAAA,CAAA,CACA,IAAA,GAAA,GAAA,CAAA,CAAAhN,EAAA4M,EAAA1M,MAAA,CAAA,GAAA,CACA0M,EAAAA,CAAAA,EAAAA,YAAAA,CAAAA,MAAAA,CAAAA,MAAAA,EAFA,IAIK,EAAA,IAJL,EAKAA,EAAAA,CAAAA,EAAAA,YAAAA,CAAAA,MAAAA,CAAAA,EAAAA,CALA,CAQA,CAAA,EAnBA,EAoBAhE,QAAAA,GAAAA,CAAAA,CAAAA,CApBA,CAqBA/D,EAAAA,YAAAA,CAAAA,YAAAA,CAAAA,EAAAA,CArBA,EAwBAA,EAAAA,eAAAA,CAAAA,YAAAA,CAEA,CT6iBqB,GAAA,GAAA/D,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAA2L,CAAA,CADqB,CAErB,EAAAnM,EAAA,CAAA,CAFqB,CAGrB,EAAAA,EAAA,EAAA,CAHqB,CAIrB,EAAAA,EAAAQ,CAAA,CAAA4L,CAAA,CAJqB,CS/rBrB,EAAA,iBT+rBqB,CS9rBrB,EAAA,ST8rBqB,CAH6C,EAAA,WAAA,CSlqBlE,YAAA,CAAA1J,EAAA,IAAA,CAAA2J,CAAA,CAAA,CAAA,GAAA,GAAAzJ,EAAA,IAAA,CAAA,CAAAyJ,EAAAtN,SAAA,EAAAlB,OAAAgF,cAAA,CAAAwJ,CAAA,CAAA,EAAA7N,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEA8N,GAAAvJ,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAsJ,CAGA,CT+pBkE,MAAArJ,GAAAoJ,CAAA,CAAAE,CAAA,CAAA,CAAApJ,EAAAkJ,CAAA,CAAA,CAAA,CAAA1O,IAAA,gBAAA,CAAA2C,IAAA,UAAA,CSvrBlE,MAAA,MAAA8J,YAAA,CAAAoC,CAAA,GAAAC,CACA,CTsrBkE,CAAApC,IAAA,WAAA,CSnrBlEC,CTmrBkE,CSlrBlE,KAAA7F,YAAA,CAAA+H,CAAA,CAAAlC,CAAA,CTkrBkE,CShrBlE,KAAA7F,YAAA,CAAA+H,CAAA,CAAAC,CAAA,CAEA,CT8qBkE,CAAA,CAAA,CAAA9O,IAAA,UAAA,CAAA2C,IAAA,UAAA,CS3qBlE,MAAAoM,GAAA,IAAA,CACA,CT0qBkE,CAAArC,IAAA,WAAA,CSvqBlE,GAAA,GAAA,KAAArG,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CACA0I,GAAA,CAAAD,EAAA,IAAA,CTsqBkE,EStqBlEE,EAAA,IAAA,CTsqBkE,CSrqBlEX,EAAAA,CAAAA,CAAAA,wBAAAA,CAAAA,CAAAA,CACA,CToqBkE,CAAA,CAAA,CAAA,CAAA9I,EAAAkJ,CAAA,CAAA,CAAA,CAAA1O,IAAA,mBAAA,CAAAI,MAAA,UAAA,CS5pBlE8O,EAAAA,IAAAA,IACA,CT2pBkE,CAAA,CAAA,CAAAlP,IAAA,0BAAA,CAAAI,MAAA,WAAA,OSxpBlEmK,ETwpBkE,GSvpBlEsE,CTupBkE,KStpBlEK,GAAAA,IAAAA,ITspBkE,OSnpBlE,CTmpBkE,CAAA,CAAA,CAAAlP,IAAA,WAAA,CAAA2C,IAAA,UAAA,CS5oBlE,MAAA,MAAA0D,UAAA,CAAAC,aAAA,CAAA,iBAAA,CACA,CT2oBkE,CAAA,CAAA,CAAAtG,IAAA,eAAA,CAAA2C,IAAA,UAAA,CSxoBlE,MAAA,MAAA0D,UAAA,CAAAC,aAAA,CAAA,qBAAA,CACA,CTuoBkE,CAAA,CAAA,CAAA,CAAA,CAAAtG,IAAA,oBAAA,CAAA2C,IAAA,UAAA,CShpBlE,MAAA,CAAAkM,CAAA,CACA,CT+oBkE,CAAA,CAAA,CAAA,CAAAH,CAAA,CAAA,CAAAhJ,WAAA,CAG7C,CS3iBrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,UAAAA,CAAAA,CAAAA,CTwiBA,CSviBAA,OAAAA,OAAAA,CAAAA,CT4sBO,CAlyBP,CAoyBA,eAAA,CUrsBA,cAAA,CACAwJ,GAAAA,WAAAA,CAAAA,gBAAAA,CAAAA,YAAAA,CAAAA,YAAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CACK,CAFLD,CAGA,CAEA,cAAA,CACA,GAAA,IAAAA,GAAAE,MAAA,CACA,GAAAC,EAAAH,EAAA,CADA,CAGAI,KAAAC,EAJA,GAMAL,GAAAA,MAAAA,CAAAA,EANA,CAQAI,EARA,EASAE,EAAAA,EAAAA,CAAAA,EAAAA,CATA,CAWAD,EAXA,CAYAE,EAAAA,EAAAA,CAAAA,EAAAA,CAZA,CAcAvF,QAAAA,KAAAA,CAAAA,mFAAAA,GAAAA,mBAAAA,CAAAA,OAAAA,CAAAA,EAAAA,CAdA,CAgBA,CAEA,iBAAA,CACA,MAAA1E,KAAA0J,GAAAQ,WAAA,CAAA9K,EAAA,CACA,CAEA,iBAAA,CACA,GAAA,IAAAyK,EAAAH,EAAA,CAAAtK,EAAA,CAAA,CAOA,MALA+K,GAKA,CAJAF,EAAAA,EAAAA,CAAAA,EAAAA,CAIA,CAFAvF,QAAAA,KAAAA,CAAAA,mFAAAA,EAAAA,CAAAA,OAAAA,CAAAA,EAAAA,CAEA,CAAAyF,EACA,CAEA,iBAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CADA,CAEAC,EAAAA,EAAAA,CAAAA,EAAAA,CAFA,CAGAC,EAAAA,EAAAA,CAAAA,EAAAA,CACA,CAEA,iBAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CADA,CAEAC,EAAAA,EAAAA,CAAAA,EAAAA,CAFA,CAGAC,EAAAA,EAAAA,CAAAA,EAAAA,CACA,CAEA,iBAAA,CACA,GAAA,IAAAf,GAAAgB,MAAA,CAEA,OAAAA,EAAA,EACA,IAAAC,EAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CADA,CAEA,MACA,IAAAC,EAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CADA,CAEA,MACA,IAAAC,EAAA,CACAC,EAAAA,EAAAA,CAAAA,EAAAA,CADA,CAEA,MACA,QACA,KAAA,IAAAC,MAAA,CAAA,qBAAAC,CAAA,CAAA,KAAA,CAAAR,EAAA,CAAA,GAAA,CAAA,CAXA,CAaA,CAEA,cAAA,CACA,GAAA,IAAAhB,GAAAyB,YAAA,CAEA,GAAAnL,IAAA0J,GAAAQ,WAAA,CAAAhO,EAAA,CAFA,CAIA,GAAA,CAAAkP,EAAA,CACA,KAAA,IAAAH,MAAA,CAAA,kEAAA/O,EAAA,CAAA,GAAA,CAAA,CAGA,GAAA,EAAAkP,aAAAC,gBAAA,CAAA,CACA,KAAA,IAAAJ,MAAA,CAAA,8BAAA/O,EAAA,CAAA,+BAAA,CAAAkP,GAAAE,SAAA,CAAA,GAAA,CAAA,CAGAF,GAAAA,MAAAA,EACA,CAEA,cAAA,CACA,GAAA,IAAA1B,GAAAyB,YAAA,CAEA,GAAAnL,IAAA0J,GAAAQ,WAAA,CAAAhO,EAAA,CAFA,CAIA,GAAA,CAAAqP,EAAA,CACA,KAAA,IAAAN,MAAA,CAAA,4DAAA/O,EAAA,CAAA,GAAA,CAAA,CAGAqP,GAAAA,KAAAA,EACA,CAEA,iBAAA,CACA,GAAA,IAAA7B,GAAAyB,YAAA,CAEA,GAAA,CAAAjP,EAAA,CACA,KAAA,IAAA+O,MAAA,CAAA,mEAAA,CAAA,CAGA/O,GAAA+C,OAAA,CAAA,WAAA,CAPA,EAQAyF,QAAAA,IAAAA,CAAAA,6IAAAA,CAAAA,EAAAA,CARA,CAWAxE,OAAAA,QAAAA,CAAAA,MAAAA,CAAAA,GAAAA,OAAAA,CAAAA,WAAAA,CAAAA,OAAAA,kBAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CACA,CAEA,iBAAA,CACAiK,GAAAA,SAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CACA,CAEA,iBAAA,CACAA,GAAAA,SAAAA,CAAAA,MAAAA,CAAAA,CAAAA,CACA,CAGA,iBAAA,CACA,KAAAA,GAAAqB,KAAA,EAAArB,GAAAsB,WAAA,GAEA,GAAA,MAAA,CAEAtB,GAAAqB,KAAA,EAAArB,GAAAsB,WAJA,CAOKtB,GAAAqB,KAPL,EAQArB,GAAAA,WAAAA,CAAAA,GAAAA,KARA,CASAuB,GAAAA,IAAAA,CAAAA,aAAAA,CATA,GAWAvB,GAAAA,KAAAA,CAAAA,GAAAA,WAXA,CAYAuB,GAAAA,IAAAA,CAAAA,OAAAA,CAZA,GAKAvB,GAAAA,KAAAA,CAAAA,GAAAA,WAAAA,CAAAA,QALA,CAMAuB,GAAAA,IAAAA,CAAAA,OAAAA,CAAAA,aAAAA,CANA,EAeAvB,GAAAA,+BAAAA,CAAAA,EAfA,CAgBA,CAEA,iBAAA,CACA,GAAA,IAAAA,GAAAwB,+BAAA,CACAC,EAFA,GAIAA,GAAAC,QAAA,CAAA,OAAA,CAJA,GAKA1B,GAAAA,KAAAA,CAAAA,IALA,EAOAyB,GAAAC,QAAA,CAAA,aAAA,CAPA,GAQA1B,GAAAA,WAAAA,CAAAA,IARA,EAUA,MAAAA,IAAAwB,+BAVA,CAWA,CAEA,cAAA,CACAjC,GAAAA,UAAAA,CAAAA,aAAAA,CAAAA,gBAAAA,EAAAA,gBAAAA,CAAAA,OAAAA,CAAAA,UAAAA,CAEAA,GAAAA,MAAAA,EACS,CAHTA,CAIA,CAEA,iBAAA,CACA,GAAA,IAAAS,GAAA2B,wBAAA,CAAA,YAAA,CACA,EAAA,MAAAC,OADA,EAEArC,GAAAA,MAAAA,EAEA,CAJA,CAKAS,GAAAA,gBAAAA,CAAAA,UAAAA,CAAAA,EAAAA,IACA,CAEA,iBAAA,CACA,GAAA,IAAAA,GAAA2B,wBAAA,CACAE,EAFA,EAEA7B,GAAA8B,mBAAA,CAAA,UAAA,CAAAD,EAAA,IACA,CAEA,cAAA,CACA,GAAA,IAAAtC,GAAAwC,oBAAA,CAAA,YAAA,CACA,GAAA,IAAAxC,GAAAyC,WAAA,CACA,GAAAlP,EAAA,EACA,GAAA,IAAAiD,OAAAjD,EAAA,CAAA,CACA,GAAA,CAAAmP,EAAA,CACA,KAAA,IAAAnB,MAAA,CAAA,2CAAAhO,EAAA,CAAA,GAAA,CAAA,CAEAmP,GAAAA,IAAAA,CAAAA,EAAAA,CAAAA,EAAAA,CALA,CAMA,CARA,CAUA1C,GAAAA,gBAAAA,CAAAA,EAAAA,CAAAA,EAAAA,IAXA,CAaA,GAAA,IAAAA,GAAA2C,uBAAA,CAAA,YAAA,CACA,GAAA,IAAA3C,GAAA4C,QAAA,CACA,GAAArP,EAAA,EAEA,GAAA,IAAAiD,OAAAjD,EAAA,CAAA,CACA,GAAA,CAAAmP,EAAA,CACA,KAAA,IAAAnB,MAAA,CAAA,2CAAAhO,EAAA,CAAA,GAAA,CAAA,CAEAmP,GAAAA,IAAAA,CAAAA,EAAAA,CAAAA,GAAAA,MAAAA,CAAAA,MAAAA,CAAAA,EAAAA,CANA,CAOA,CATA,CAWA1C,GAAAA,gBAAAA,CAAAA,EAAAA,CAAAA,EAAAA,IACA,CAEA,cAAA,CACAA,GAAAwC,oBADA,EAEAxC,GAAAA,mBAAAA,CAAAA,EAAAA,CAAAA,GAAAA,oBAAAA,IAFA,CAIAA,GAAA2C,uBAJA,EAKA3C,GAAAA,mBAAAA,CAAAA,EAAAA,CAAAA,GAAAA,uBAAAA,IAEA,CAEA,cAAA,OACAgB,GADA,CAEA6B,GAAA7B,EAAA,CAFA,CACA,IAEA,CVifkE,GAAA,EAAA,CAG7C,EAAA9N,EAAA,EAAA,CAH6C,CAIlE,EAAAA,EAAAQ,CAAA,CAAAoP,CAAA,CAJkE,CUx2BlE,EAAA5P,EAAA,CAAA,CVw2BkE,CUn1BlE,EAAA,6BVm1BkE,CUj1BlE,EAAA,UVi1BkE,CUh1BlE,EAAA,aVg1BkE,CU/0BlE,EAAA,uBV+0BkE,CU90BlE,EAAA,QV80BkE,CU70BlE,EAAA,eV60BkE,CU30BlE,EAAA,aV20BkE,CU10BlE,EAAA,OV00BkE,CUz0BlE,EAAA,UVy0BkE,CUp0BlE,GAAA,YVo0BkE,CUl0BlE,IAAA,KAAA6P,EAAAC,CAAA,CAAA/B,CAAA,CALA,MAKA,CAAA,CAAA8B,EAAAC,CAAA,CAAA7B,CAAA,CAJA,wDAIA,CAAA,CAAA6B,CAAA,CVk0BkE,CAAA,GAAA,YAAA,CUxzBlE,aAAA,CAAApN,EAAA,IAAA,CAAAqN,EAAA,CAAA,CAAA,GAAA,IAAAnN,EAAA,IAAA,CAAA,CAAAmN,GAAAhR,SAAA,EAAAlB,OAAAgF,cAAA,CAAAkN,EAAA,CAAA,EAAAvR,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEAwR,IAAAjN,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAAgN,EAGA,CVqzBkE,MAAA/M,GAAA8M,EAAA,CAAAE,EAAA,CAAA,CAAA9M,EAAA4M,EAAA,CAAA,CAAA,CAAApS,IAAA,mBAAA,CAAAI,MAAA,UAAA,CUnzBlE,GAAA,IAAA,IAAA,CACAqF,IAAAA,IAAAA,CAAAA,YAAAA,CAAAA,EAAAA,CAAAA,CAAAA,UAAAA,CACA8M,GAAAC,YAAA,GADA/M,CAGA8M,GAAAlD,MAAA,CAAAoD,EAAAF,EAAA,CAAAA,GAAAG,mBAAA,CAHAjN,CAKAkN,EAAAA,EAAAA,CALAlN,CAMAmN,EAAAA,EAAAA,CANAnN,CAQAoN,EAAAA,EAAAA,CACS,CATTpN,CAUA,CVwyBkE,CAAA,CAAA,CAAAzF,IAAA,sBAAA,CAAAI,MAAA,UAAA,CUryBlE,KAAAiP,MVqyBkE,EUpyBlEI,EAAAA,IAAAA,CAAAA,KAAAA,MAAAA,CVoyBkE,CUjyBlEqD,EAAAA,IAAAA,CAEA,CV+xBkE,CAAA,CAAA,CAAA9S,IAAA,QAAA,CAAAI,MAAA,UAAA,CU5xBlE,GAAA,IAAA,KAAAiP,MAAA,CACA,GAAA,CAAAzK,EAAA,CACA,KAAA,IAAA8L,MAAA,CAAA,sEAAA,KAAAgC,mBAAA,CAAA,iBAAA,CAAA,CAEA,GAAA,IAAA9N,GAAAxE,KAAA,CACA,GAAAA,EAAA,EAEA,GAAA,IAAAqF,IAAAsN,EAAA,CAAA,CAAA5D,OAAA/O,EAAA,CAAA,CAAA,CAEA,GAAA,CAAA,KAAA4S,aAAA,CAAAC,EAAA,CAFA,CAGAC,EALA,EAOA,KAAA/C,MAPA,EAQAgD,EAAAA,IAAAA,CAAAA,EAAAA,CARA,CAUA,CV6wBkE,CAAA,CAAA,CAAAnT,IAAA,0BAAA,CAAAI,MAAA,kBAAA,CUtwBlE,GAAA,KAAAoS,YAAA,OACAjI,GADA,GAEA6I,CAFA,EAGA,KAAA/D,MAHA,EAIAI,EAAAA,IAAAA,CAAAA,KAAAA,MAAAA,CAJA,MAOA,KAAAJ,MAAA,CAAAoD,EAAA,IAAA,CAAAY,EAAA,CAPA,SAYA,CV0vBkE,CAAA,CAAA,CAAArT,IAAA,aAAA,CAAA2C,IAAA,UAAA,CUvvBlE,MAAA,MAAA8J,YAAA,CAAA6G,CAAA,CACA,CVsvBkE,CAAA5G,IAAA,YAAA,CUnvBlE,KAAA5F,YAAA,CAAAwM,CAAA,CAAAlT,EAAA,CACA,CVkvBkE,CAAA,CAAA,CAAAJ,IAAA,UAAA,CAAA2C,IAAA,UAAA,CU/uBlE,MAAA,MAAA8J,YAAA,CAAA8G,CAAA,CACA,CV8uBkE,CAAA7G,IAAA,YAAA,CU3uBlE,KAAA5F,YAAA,CAAAyM,CAAA,CAAAnT,EAAA,CACA,CV0uBkE,CAAA,CAAA,CAAAJ,IAAA,qBAAA,CAAA0M,IAAA,YAAA,CUvuBlE,KAAA5F,YAAA,CAAAsM,CAAA,CAAAhT,EAAA,CACA,CVsuBkE,CAAAuC,IAAA,UAAA,CUnuBlE,MAAA,MAAA8J,YAAA,CAAA2G,CAAA,GAzFA,8CA0FA,CVkuBkE,CAAA,CAAA,CAAApT,IAAA,QAAA,CAAA0M,IAAA,YAAA,CU/tBlE,KAAA5F,YAAA,CAAA6J,CAAA,CAAAvQ,EAAA,CACA,CV8tBkE,CAAAuC,IAAA,UAAA,CU1tBlE,MAAA,MAAA8J,YAAA,CAAAkE,CAAA,CACA,CVytBkE,CAAA,CAAA,CAAA3Q,IAAA,cAAA,CAAA0M,IAAA,YAAA,CUttBlE,KAAA5F,YAAA,CAAA0M,CAAA,CAAApT,EAAA,CACA,CVqtBkE,CAAAuC,IAAA,UAAA,CUjtBlE,MAAA,MAAA8J,YAAA,CAAA+G,CAAA,GAAAC,EAAA,KAAAtD,MAAA,CACA,CVgtBkE,CAAA,CAAA,CAAAnQ,IAAA,aAAA,CAAA2C,IAAA,UAAA,CU7sBlE,MAAA,MAAA0D,UAAA,CAAAC,aAAA,CAAA,SAAA,CACA,CV4sBkE,CAAA,CAAA,CAAA,CAAA,CAAAtG,IAAA,oBAAA,CAAA2C,IAAA,UAAA,CU1wBlE,MAAA,CAAAyQ,CAAA,CACA,CVywBkE,CAAA,CAAA,CAAA,CAAAhB,EAAA,CAAA,CAAA1M,WAAA,CAAA,CUxsBlEC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,YAAAA,CAAAA,EAAAA,CVwsBA,CUvsBAA,OAAAA,SAAAA,CAAAA,EVwkCO,CArqCP,CAuqCA,eAAA,CWzrCA,aAAA,CACA,GAAA,GAAA+N,EAAArL,aAAA,EAAA,CACAe,EAAAA,MAAAA,CAAAA,WAAAA,CAAA,MAAAuK,aAAAjO,YAAA,CAAA0D,EAAAI,MAAAJ,CAAA,WAAA,CAEA,MAAA,CAAAuK,EAAA1C,KAAA,CAFA7H,EAEAJ,OAFAI,CAEA,WAAA,CAEA,GAAA,GAAAwK,EAAAC,CAAA,CAAA,CACAC,CAHA,GAOAD,EAAAA,KAAAA,CAAAA,IAAAA,EAAAA,CAAAA,CAAAA,CAAAA,GAPA,CAQS,CAVTzK,CAWA,CAEA,aAAA,CACA,GAAAkD,EAAA1F,YAAA,CAAA,MAAA,CAAA,CAAA,MAAA0F,GAAAG,YAAA,CAAA,MAAA,CAAA,CACA,IAAA,MAAA,EAAA,CAAA,CAAAlL,EAAAwS,EAAAtS,MAAA,CAAA,GAAA,CAEA,KADAsS,EAAAxS,CAAA,CACA,CAAA+K,EAAAZ,SAAA,CAAAa,QAAA,CAAA/I,CAAA,CAAA,CACA,MAAAA,EAAA,CAGA,MAAA,KACA,CXoqCqB,GAAA,GAAAnB,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAAmR,CAAA,CADqB,CAErB,EAAA3R,EAAA,CAAA,CAFqB,CW1uCrB,wOX0uCqB,CW3tCrB,EAAAnC,OAAA+T,mBAAA,CAAAC,CAAA,CX2tCqB,CAH6C,EAAA,WAAA,CWptClE,YAAA,CAAAnP,EAAA,IAAA,CAAAoP,CAAA,CAAA,CAAA,GAAA,GAAAlP,EAAA,IAAA,CAAA,CAAAkP,EAAA/S,SAAA,EAAAlB,OAAAgF,cAAA,CAAAiP,CAAA,CAAA,EAAAtT,IAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAEAuT,GAAAhP,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAFA,CAAA+O,CAGA,CXitCkE,MAAA9O,GAAA6O,CAAA,CAAAE,CAAA,CAAA,CAAA7O,EAAA2O,CAAA,CAAA,CAAA,CAAAnU,IAAA,mBAAA,CAAAI,MAAA,UAAA,CW/sClE,GAAA,GAAA,IAAA,CACAqF,IAAAA,IAAAA,CAAAA,wBAAAA,CAAAA,EAAAA,CAAAA,CAAAA,UAAAA,CACA,GAAA,GAAA6O,EAAAjO,UAAA,CAAAC,aAAA,CAAA,cAAA,CAAA,CACAiO,EAAAA,CAAAA,CAFA9O,CAIAsO,EAAAA,OAAAA,CAAAA,WAAAA,CACA,GAAA,GAAAO,EAAAjO,UAAA,CAAAC,aAAA,CAAA,sBAAA9C,CAAA,CAAA,CACAgR,CAFAT,GAIAQ,EAAAA,CAAAA,CAJAR,CAMA,CAAA,GAAA1L,aAAA,GAAA5G,MANAsS,EAOA5J,QAAAA,GAAAA,CAAAA,gEAAAA,CAAAA,CAAAA,2BAAAA,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAPA4J,CASa,CATbA,CAUS,CAdTtO,CAeA,CX+rCkE,CAAA,CAAA,CAAA,CAAA0O,CAAA,CAAA,CAAAzO,WAAA,CAG7C,CW/rCrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,wBAAAA,CAAAA,CAAAA,CX4rCA,CW3rCAA,OAAAA,mBAAAA,CAAAA,CX8wCO,CA1vCP,CA4vCA,eAAA,CAGqB,GAAA,GAAAtD,EAAA,EAAA,CAAA,CACrB,EAAAA,EAAAQ,CAAA,CAAA4R,CAAA,CADqB,CYn0CrB,EAAApS,EAAA,CAAA,CZm0CqB,CAH6C,EAAA,WAAA,CYtzClE,YAAA,CAAA0C,EAAA,IAAA,CAAA2P,CAAA,CAAA,CAAA,GAAA,GAAAzP,EAAA,IAAA,CAAA,CAAAyP,EAAAtT,SAAA,EAAAlB,OAAAgF,cAAA,CAAAwP,CAAA,CAAA,EAAA7T,IAAA,CAAA,IAAA,CAAA,CAAA,CAGA,EAAA8T,EAAAvP,YAAA,CAAA,CAAAC,KAAA,MAAA,CAAA,CAHA,CAAA,MAAAsP,EAKA,CZizCkE,MAAArP,GAAAoP,CAAA,CAAAE,CAAA,CAAA,CAAApP,EAAAkP,CAAA,CAAA,CAAA,CAAA1U,IAAA,0BAAA,CAAAI,MAAA,UAAA,CYpyClE,CZoyCkE,CAAA,CAAA,CAAAJ,IAAA,mBAAA,CAAAI,MAAA,UAAA,CYlyClE,GAAA,GAAA,IAAA,CACAqF,IAAAA,IAAAA,CAAAA,eAAAA,CAAAA,EAAAA,CAAAA,CAAAA,UAAAA,CACAoP,EAAA/M,iBAAA,EADArC,CAEAoP,EAAAC,kBAAA,EACU,CAHVrP,CAIA,CZ6xCkE,CAAA,CAAA,CAAAzF,IAAA,mBAAA,CAAAI,MAAA,UAAA,CY3xClE,GAAA,GAAA,IAAA,CAEA,KAAA2U,WAAA,EZyxCkE,CYxxClE,GAAA,GAAA,KAAA1O,UAAA,CAAAC,aAAA,CAAA,YAAA,CAAA,CACA0O,EAAAA,gBAAAA,CAAAA,YAAAA,CAAAA,UAAAA,CACAC,EAAAF,WAAA,EACS,CAFTC,CAGA,CZoxCkE,CAAA,CAAA,CAAAhV,IAAA,aAAA,CAAAI,MAAA,UAAA,CYjxClE,GAAA,GAAA,KAAAiG,UAAA,CAAAC,aAAA,CAAA,YAAA,CAAA,CACA,CAAA,GAAA+B,aAAA,GAAA5G,MZgxCkE,CY/wClE,KAAAqF,YAAA,CAAA,UAAA,CAAA,EAAA,CZ+wCkE,CY5wClE,KAAAC,eAAA,CAAA,UAAA,CAEA,CZ0wCkE,CAAA,CAAA,CAAA/G,IAAA,oBAAA,CAAAI,MAAA,UAAA,CYvwClE,KAAA0G,YAAA,CAAA,MAAA,CAAA,QAAA,CACA,CZswCkE,CAAA,CAAA,CAAA,CAAA,CAAA9G,IAAA,oBAAA,CAAA2C,IAAA,UAAA,CY5yClE,CZ4yCkE,CAAA,CAAA,CAAA,CAAA+R,CAAA,CAAA,CAAAhP,WAAA,CAG7C,CYrwCrBC,OAAAA,cAAAA,CAAAA,MAAAA,CAAAA,eAAAA,CAAAA,CAAAA,CZkwCA,CYjwCAA,OAAAA,WAAAA,CAAAA,CZ00CO,CAr0CP,CAu0CA,WAAA,Ca34CAvD,EAAAA,OAAAA,igBbw6CO,CAp2CP,CAs2CA,eAAA,Cc16CA,GAAA,EAAA,CAAA,CAAA,CAKA,CAAA,aAAA,CAGA,EAAA8S,CAAA,CAAA,EAAA,UAAA,QAAAC,EAAA,CAAAA,EAAAtU,IAAA,CAAAoB,CAAA,CAAAI,CAAA,CAAAJ,CAAA,CAAAG,CAAA,CAAA,CAAA+S,CAAA,GAAAC,aAAAhT,EAAAH,OAAA,CAAAmT,CAAA,CAAA,CAQC,CAXD,EAWC,MAAAzP,MAXD,CAWC,UAAA,CAOD,GAAA,KAAA,CAEA0P,EAAAA,gBAFA,CAKAC,EAAAA,CACAC,mBADAD,CAEAE,gBAFAF,CALA,CAqBA,EAAA,WAAA,OACA,QAAA,QAAAG,EADA,CAEAC,MAAA1U,SAAA,CAAA2U,KAAA,CAAA9U,IAAA,CAAA0D,SAAAE,gBAAA,CAAAgR,CAAA,CAAA,CAFA,CAGS,WAAA,QAAAA,EAAA,EAAAA,YAAAC,MAHT,CAIAD,CAJA,CAMA,CAAAA,CAAA,CAEA,CA7BA,CAsCA,EAAA,WAAA,OACA,QAAA,QAAAG,EADA,CAEAA,EAAAC,WAAA,GAAAnI,KAAA,CAAA,GAAA,CAFA,CAIAkI,CAEA,CA5CA,CAsDA,EAAA,eAAA,CACA,GAAA,GAAA,CAAAhK,EAAA,QAAA,CAAA,KAAA,EAAA,eAAA,CAAA,EAAAkK,EAAAL,CAAA,CAAA,CAAA,EAAAM,EAAAtU,MAAA,CAAA,IAAA,CAOA,IAAA,GAAA,EAAA,GAAA6T,EAAA,CACAU,EAAAA,CAAAA,EAAAA,GAAAA,EAAAA,CAAAA,CAAAA,CAAAA,EAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CATA,KAaA,GAbA,EAcA,IAAA,GAAA,EAAA,GAAAA,EAAA,KACA,GAAA,GAAAA,EAAAC,CAAA,EAAAxU,MADA,CAEA,GAFA,EAGAsU,EAAAA,CAAAA,EAAAA,CAAAA,EAAAA,EAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAIA,CA3EA,CAmFA,EAAA,WAAA,CACAG,EAAAA,MAAAA,CAAAA,EAAAA,aAAAA,CACA,CArFA,CAmKA,MA9DAA,GAAAA,GAAAA,CAAAA,aAAAA,CAEA,MADAC,GAAAA,CAAAA,CAAAA,CAAAA,CACA,CAAAD,CACA,CA2DA,CA/CAA,EAAAA,MAAAA,CAAAA,aAAAA,CAEA,MADAC,GAAAA,CAAAA,CAAAA,CAAAA,IACA,CAAAD,CACA,CA4CA,CAnCAA,EAAAA,SAAAA,CAAAA,WAAAA,CAIA,MAHAJ,GAAAA,CAAAA,EAAAA,OAAAA,CAAAA,WAAAA,CACAxJ,EAAAA,SAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CACS,CAFTwJ,CAGA,CAAAI,CACA,CA8BA,CArBAA,EAAAA,MAAAA,CAAAA,WAAAA,CAIA,MAHAJ,GAAAA,CAAAA,EAAAA,OAAAA,CAAAA,WAAAA,CACAxJ,EAAAA,SAAAA,CAAAA,MAAAA,CAAAA,CAAAA,CACS,CAFTwJ,CAGA,CAAAI,CACA,CAgBA,CAPAA,EAAAA,MAAAA,CAAAA,WAAAA,CAIA,MAHAJ,GAAAA,CAAAA,EAAAA,OAAAA,CAAAA,WAAAA,CACAI,EAAAA,EAAAA,SAAAA,CAAAA,QAAAA,CAAAA,CAAAA,EAAAA,QAAAA,CAAAA,WAAAA,EAAAA,CAAAA,CACS,CAFTJ,CAGA,CAAAI,CACA,CAEA,CAAAA,CACC,CAtLD,CdymDO,CA1iDP,CA4iDA,eAAA,CAGAhW,OAAAA,cAAAA,CAAAA,CAAAA,CAAAA,YAAAA,CAAAA,CAAAA,QAAAA,CAAAA,CAHA,CAIA,GAAA,GAAAmC,EAAA,CAAA,CAAA,CACA,EAAAA,EAAA,CAAA,CADA,CAEA,EAAAA,EAAA,CAAA,CAFA,CAGA,EAAAA,EAAA,EAAA,CAHA,CAIA,EAAAA,EAAA,CAAA,CAJA,CAKA,EAAAA,EAAA,CAAA,CALA,CAMA,EAAAA,EAAA,CAAA,CANA,CAOA,EAAAA,EAAA,CAAA,CAPA,CepnDA,EAAAA,EAAA,EAAA,CfonDA,CepnDA,EAAAA,EAAAQ,CAAA,CAAAuT,CAAA,CfonDA,Ce5lDAjM,QAAAA,GAAAA,CAAAA,iDAAAA,SAAAA,CAAAA,kBAAAA,CfioDO,CArlDP,CAulDA,aAAA,CgB3pDAxG,IAkBA,aAAA,CACA,GAAA,UAAA,QAAAgC,QAAA0Q,WAAA,CACA,MAAA,IAAAA,YAAA,CAAA3T,CAAA,CAAA,CAAA4T,OAAAA,CAAA,CAAAC,aAAA,CAAAC,UAAA,CAAA,CAAA,CAEA,GAAA,GAAAjS,SAAAkS,WAAA,CAAA,aAAA,CAAA,CAEA,MADAC,GAAAA,eAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CACA,CAAAA,CACA,ChBkqDO,CAvnDP,CAynDA,eAAA,CAGiC/S,IiB5qDjC,aAAA,CAIA,IAAA,MAHA,EAAA6Q,EAAAnM,aAAA,CAAA,CAAAsO,UAAA,CAAA,EAAAnN,MAAA,CAAA,WAAA,CACA,MAAA3G,GAAAiJ,QAAA,GAAAC,KAAAC,YAAA,CADA,CAGA,CAAA,EAAA,CAAA,CAAA,EAAA4K,EAAAnV,MAAA,CAAAF,EAAAsV,CAAA,CAAA,GAAA,CAAA,CAEA,KADAD,EAAArV,CAAA,CACA,CAAAc,EAAAd,CAAA,CAAAuV,GAAA,EAAA7N,CAAA,CAAApE,CAAA,CAAA,CACA,MAAAoE,EAAA,CAEA,GAAA,GAAAA,EAAA3C,aAAA,CAAAzB,CAAA,CAAA,CACA,GAAAkS,CAAA,CACA,MAAAA,EAEA,CACA,MAAA,KACA,CjB0pDA,CiB7rDA,GAAA,GAAA1U,EAAA,CAAA,CjByuDO,CArqDP,CAuqDA,eAAA,CkBpsDA,qBAAA,CACA,GAAA,GAAA,iCAAA2U,CAAA,CAAA,GAAA,CAAAC,CAAA,CACA,EAAA1S,SAAA2S,IAAA,CAAA5Q,aAAA,CAAA,YAAA6Q,CAAA,CADA,CASA,GAPAC,CAOA,GANAA,EAAAA,SAAAA,aAAAA,CAAAA,UAAAA,CAMA,CALAA,EAAAA,EAAAA,CAAAA,CAKA,CAJAA,EAAAA,SAAAA,CAAAA,CAIA,CAHA7S,SAAAA,IAAAA,CAAAA,WAAAA,CAAAA,CAAAA,CAGA,CAFA8S,SAAAA,eAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAEA,EAAAA,SAAAC,YAAA,CACAD,SAAAA,YAAAA,CAAAA,CAAAA,CADA,KAEK,IAAAA,SAAAE,UAAA,CACLF,SAAAA,UAAAA,CAAAA,CAAAA,CADK,KAGL,MAAA,IAAA3G,MAAA,CAAA,kEAAA,CAAA,CAfA,IAiBA,GAAA,GAAAnM,SAAAiT,UAAA,CAAAJ,EAAAK,OAAA,IAAA,CACA,EAAAnL,EAAAjG,UAlBA,CAqBAqR,EAAAC,UArBA,EAsBAD,EAAAA,WAAAA,CAAAA,EAAAA,UAAAA,EAEAA,EAAAA,WAAAA,CAAAA,CAAAA,CAxBA,CAyBA1N,WAAAA,UAAAA,CACA4N,EAAAA,CAAAA,CAAAA,CAAAA,CACK,CAFL5N,CAGA,CAEA,iBAAA,CACAsC,EAAAA,UAAAA,CAAAA,SAAAA,CAAAA,CADA,CAEAsL,EAAAA,CAAAA,CAAAA,CAAAA,CACA,CAEA,eAAA,CACAtL,EAAAA,SAAAA,CAAAA,GAAAA,CAAAA,CAAAA,CADA,CAEAuL,CAFA,EAGAA,GAEA,ClB+pDiClU,IkBxtDjC,iBAAA,CACA,GAAA,GAAAmU,IAAAC,CAAA,CAAA,CAEA,EAAAzL,EAAA0L,6BAAA,CAAA1L,EAAA0L,6BAAA,IAFA,CAGAC,EAAAC,YAAA,GAAAjB,CAJA,GAQAgB,EAAAA,YAAAA,CAAAA,CARA,CAUAtS,OAAA0R,QAAA,EAAA,CAAA1R,OAAA0R,QAAA,CAAAc,YAVA,CAWAC,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAXA,CAaAC,EAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAbA,CAeA,ClBssDA,CkB3uDA,GAAA,GAAAhW,EAAA,EAAA,CAAA,CAAA,EAAAA,EAAAQ,CAAA,CAAAyV,CAAA,CAAA,CAoBA,EAAA,wBlBgzDO,CAhwDP,CAkwDA,eAAA,CmBt0DArW,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GnBs0DA,CmBj0DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,muBAAAA,CAAAA,EAAAA,CAAAA,CnB60DO,CA9wDP,CAgxDA,eAAA,CoBp1DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GpBo1DA,CoB/0DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,u7BAAAA,CAAAA,EAAAA,CAAAA,CpB21DO,CA5xDP,CA8xDA,eAAA,CqBl2DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GrBk2DA,CqB71DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,k1DAAAA,CAAAA,EAAAA,CAAAA,CrBy2DO,CA1yDP,CA4yDA,eAAA,CsBh3DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GtBg3DA,CsB32DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,yoRAAAA,CAAAA,EAAAA,CAAAA,CtBu3DO,CAxzDP,CA0zDA,eAAA,CuB93DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GvB83DA,CuBz3DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,0FAAAA,CAAAA,EAAAA,CAAAA,CvBq4DO,CAt0DP,CAw0DA,eAAA,CwB54DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GxB44DA,CwBv4DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,y0JAAAA,CAAAA,EAAAA,CAAAA,CxBm5DO,CAp1DP,CAs1DA,eAAA,CyB15DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,GzB05DA,CyBr5DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,+6DAAAA,CAAAA,EAAAA,CAAAA,CzBi6DO,CAl2DP,CAo2DA,eAAA,C0Bx6DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,G1Bw6DA,C0Bn6DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,ihEAAAA,CAAAA,EAAAA,CAAAA,C1B+6DO,CAh3DP,CAk3DA,eAAA,C2Bt7DAA,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,G3Bs7DA,C2Bj7DAA,EAAAA,IAAAA,CAAAA,CAAAA,EAAAA,CAAAA,CAAAA,m2EAAAA,CAAAA,EAAAA,CAAAA,C3B67DO,CA93DP,CAg4DA,eAAA,C4Bv6DA,aAAA,CACA,MAAA,KAAA,MAAA7B,UACA,CAEA,aAAA,OACAmY,EAAA,EAAA,QAAA,IAAA,WAAA,QAAAA,EAAA,CAAA,WAAA,CAAAC,EAAAD,CAAA,CAAA,CAAA,EAAA,QAAA,QAAAA,GAAA9W,MADA,GAEA,UAAA,QAAA8W,GAAAE,IAAA,EAAA,UAAA,QAAAF,GAAA5C,KAFA,IAKA,CAAA,GAAAlU,MAAA,EAAA,QAAA,QAAA8W,GAAA,CAAA,CALA,OAOA,CAEA,iBAAA,CACA,GAAA,EAAA,CAAA,CAAA,CACA,GAAAG,EAAAxL,CAAA,GAAAwL,EAAAC,CAAA,CAAA,CAAA,SAGA,GAAAzL,EAAAlM,SAAA,GAAA2X,EAAA3X,SAAA,CAAA,SAGA,GAAA4X,EAAA1L,CAAA,CAAA,SACA0L,EAAAD,CAAA,CADA,GAIAzL,EAAAA,EAAAA,IAAAA,CAAAA,CAAAA,CAJA,CAKAyL,EAAAA,EAAAA,IAAAA,CAAAA,CAAAA,CALA,CAMAE,EAAA3L,CAAA,CAAAyL,CAAA,CAAAG,CAAA,CANA,EAQA,GAAAC,EAAA7L,CAAA,CAAA,CAAA,CACA,GAAA,CAAA6L,EAAAJ,CAAA,CAAA,CACA,SAEA,GAAAzL,EAAAzL,MAAA,GAAAkX,EAAAlX,MAAA,CAAA,SACA,IAAA,EAAA,CAAA,CAAAF,EAAA2L,EAAAzL,MAAA,CAAA,GAAA,CACA,GAAAyL,EAAA3L,CAAA,IAAAoX,EAAApX,CAAA,CAAA,CAAA,SAEA,QACA,CACA,GAAA,CACA,GAAA,GAAAyX,EAAA9L,CAAA,CAAA,CAAA,EAAA8L,EAAAL,CAAA,CAEG,CAAA,QAAA,CACH,QACA,CAGA,GAAAM,EAAAxX,MAAA,EAAAyX,EAAAzX,MAAA,CAAA,SAMA,IAHAwX,EAAAA,IAAAA,EAGA,CAFAC,EAAAA,IAAAA,EAEA,CAAA,EAAAD,EAAAxX,MAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,GAAA,CACA,GAAAwX,EAAA1X,CAAA,GAAA2X,EAAA3X,CAAA,CAAA,CAAA,SAKA,IAAA,EAAA0X,EAAAxX,MAAA,CAAA,CAAA,CAAA,CAAA,GAAA,CAAA,GAAA,CAEA,GADAzB,EAAAA,EAAAA,CAAAA,CACA,CAAA,CAAA6Y,EAAA3L,EAAAlN,CAAA,CAAA,CAAA2Y,EAAA3Y,CAAA,CAAA,CAAA8Y,CAAA,CAAA,CAAA,SAEA,MAAA,CAAA,WAAA,QAAA5L,EAAA,CAAA,WAAA,CAAAsL,EAAAtL,CAAA,CAAA,KAAA,WAAA,QAAAyL,EAAA,CAAA,WAAA,CAAAH,EAAAG,CAAA,CAAA,CACA,CA7FA,GAAA,GAAAjD,MAAA1U,SAAA,CAAA2U,KAAA,CACA,EAAAtT,EAAA,EAAA,CADA,CAEA,EAAAA,EAAA,EAAA,CAFA,CAIA,EAAAD,EAAAH,OAAA,CAAA,eAAA,OACA6W,EADA,GACA,IADA,EAGAnU,IAAAwU,CAHA,GAMGxU,YAAAyU,KAAA,EAAAD,YAAAC,KANH,CAOAzU,EAAA0U,OAAA,KAAAF,EAAAE,OAAA,EAPA,CAWG1U,CAAA,EAAAwU,CAAA,GAAA,QAAA,GAAA,WAAA,QAAAxU,EAAA,CAAA,WAAA,CAAA6T,EAAA7T,CAAA,CAAA,GAAA,QAAA,GAAA,WAAA,QAAAwU,EAAA,CAAA,WAAA,CAAAX,EAAAW,CAAA,CAAA,CAAA,CAXH,CAqBAG,EAAA3U,CAAA,CAAAwU,CAAA,CAAAL,CAAA,CArBA,CAYAA,EAAAS,MAAA,CAAA5U,IAAAwU,CAAA,CAAAxU,GAAAwU,CAZA,CAuBA,C5B2gEO,CAl+DP,CAo+DA,aAAA,C6BjiEA,aAAA,CACA,MAAA,oBAAA,SAAAnY,SAAA,CAAAmM,QAAA,CAAAtM,IAAA,CAAAmC,CAAA,CACA,CAGA,aAAA,CACA,MAAAA,IAAA,QAAA,GAAA,WAAA,QAAAA,EAAA,CAAA,WAAA,CAAAwV,EAAAxV,CAAA,CAAA,CAAA,EAAA,QAAA,QAAAA,GAAAvB,MAAA,EAAAvB,OAAAc,SAAA,CAAA+B,cAAA,CAAAlC,IAAA,CAAAmC,CAAA,CAAA,QAAA,CAAA,EAAA,CAAA9C,OAAAc,SAAA,CAAAwY,oBAAA,CAAA3Y,IAAA,CAAAmC,CAAA,CAAA,QAAA,CAAA,IAMA,CAnBA,GAAA,GAEC,oBAFD,YAAA,CACA,MAAA9C,QAAAc,SAAA,CAAAmM,QAAA,CAAAtM,IAAA,CAAAgN,SAAA,CACC,CAFD,EAAA,CAIA5L,EAAAA,EAAAA,OAAAA,CAAAA,EAAAA,CAAAA,CAAAA,C7BoiEA,C6BliEAA,EAAAA,SAAAA,CAAAA,C7BkiEA,C6B7hEAA,EAAAA,WAAAA,CAAAA,C7BqjEO,CA5/DP,CA8/DA,aAAA,C8B9jEA,aAAA,CACA,GAAA,KAAA,CACA,IAAA,GAAA,EAAA,GAAAhC,EAAA,CAAAwZ,EAAAA,IAAAA,CAAAA,CAAAA,EAAA,MAAAA,EAEA,CARAxX,EAAAA,EAAAA,OAAAA,CAAAA,UAAAA,QAAAA,QAAAA,IAAAA,CAAAA,OAAAA,IAAAA,CAAAA,C9BkkEA,C8B/jEAA,EAAAA,IAAAA,CAAAA,C9B4kEO,CA3gEP,CA6gEA,eAAA,C+BjlEAG,EAAAA,OAAAA,CAAAA,aAAAA,CAYA,aAAA,CACA,MAAAsX,GAAAnX,CAAA,GAAAA,CACA,CAZAoX,EAAAA,GAAAA,WAAAA,CACA,MAAA,WAAA,EAAA,CAAA,CAAAC,CAAA,KAAAxM,OAAA,CAAAyM,CAAA,CAAAC,CAAA,CACA,CAJA1X,CAKA,GAAA,8DAAA,CAAA,EAAA,UAAA,CAUA,IAVA,CAUA,EAAA2X,EAAAC,IAAA,CAAA5O,IAAA,CAAA2O,CAAA,CAVA,CA6BA,MAlBAE,GAAAA,WAAAA,CAkBA,CAjBAA,EAAAA,EAAAA,EAAAA,CAAAA,CAiBA,CAhBAA,EAAAA,qZAAAA,CAgBA,CAfAC,EAAAzS,MAeA,EAdAwS,EAAAA,iPAAAA,CAcA,CAZAA,EAAAA,QAAAA,CAYA,CAXAC,EAAAzS,MAWA,EAVAwS,EAAAA,qNAAAA,CAUA,CARAA,EAAAA,yDAAAA,CAQA,CAPAC,EAAAzS,MAOA,EANAwS,EAAAA,+KAAAA,CAMA,CAJAA,EAAAA,gHAAAA,CAIA,CAHAC,EAAAzS,MAGA,EAFAwS,EAAAA,yKAAAA,CAEA,CAAAF,EAAAxW,IAAA,CAAA,EAAA,C/BolEC,CAEM,CApjEP,CAsjEA,WAAA,CgCxnEA,eAAA,MACA4W,EAAA1Y,MAAA,CAAAoV,CADA,EAEAsD,EAAAA,IAAAA,CAAAA,CAEA,MAAAA,EACA,CAEA,eAAA,CACA,GAAA,EAAA,CACA,CADA,CAEA,CAFA,CAGA,GAAA,CAAA,KAAA1Y,MAAA,CACA,MAAA0Y,EAAA,CAEA,IAAA,EAAA,CAAA,CAAA,EAAAC,EAAA3Y,MAAA,CAAAF,EAAAsV,CAAA,CAAA,GAAA,CACAwD,EAAAA,EAAAA,UAAAA,CAAAA,CAAAA,CADA,CAEAF,EAAAA,CAAAA,GAAAA,CAAAA,EAAAA,CAAAA,CAAAA,CAFA,CAGAA,GAAAA,CAHA,CAKA,MAAA,EAAA,GAAA,CAAA,CAAA,EAAA,CAAAA,CACA,CAEA,iBAAA,CACA,MAAAja,QAAAuZ,IAAA,CAAAhX,CAAA,EAAA6X,IAAA,GAAA7Q,MAAA,CACA,aAAA,CACA,MAAA8Q,GAAAJ,CAAA,CAAA1X,EAAAzC,CAAA,CAAA,CAAAA,CAAA,CAAAwa,CAAA,CACA,CAHA,CAAAL,CAAA,CAIA,CAEA,mBAAA,CACA,GAAA,GAAAM,EAAAA,EAAAA,EAAA7K,CAAA,CAAA5P,CAAA,CAAA,CAAAmN,EAAA/M,CAAA,CAAA,CAAA,CAAA,WAAA,QAAAA,EAAA,CAAA,WAAA,CAAAoY,EAAApY,CAAA,CAAA,CAAA,CADA,MAEA,KAAA,IAFA,CAGAqa,EAAAN,CAAA,CAAA,MAAA,CAHA,CAKA,UALA,CAMAM,EAAAN,CAAA,CAAA,WAAA,CANA,CAQA,QAAA,IAAA,WAAA,QAAA/Z,EAAA,CAAA,WAAA,CAAAoY,EAAApY,CAAA,CAAA,CARA,CASA,CAAA,CAAA,KAAAsE,OAAA,CAAAtE,CAAA,CATA,EAYAoa,EAAAA,IAAAA,CAAAA,CAAAA,CAZA,CAaAE,EAAAP,CAAA,CAAA/Z,CAAA,CAAAoa,CAAA,CAbA,EAUAC,EAAAN,CAAA,CAAA,aAAAna,CAAA,CAVA,CAeAya,EAAAN,CAAA,CAAA/Z,EAAA+M,QAAA,EAAA,CACA,CAEA,aAAA,CACA,MAAAjN,QAAAc,SAAA,CAAAmM,QAAA,CAAAtM,IAAA,CAAA4B,CAAA,CACA,CAMAL,EAAAA,OAAAA,CAJA,WAAA,CACA,MAAAuY,GAAAJ,EAAA,CAAA,CAAA9X,CAAA,CAAA,EAAA,KAAA0K,QAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CACA,ChCkoEO,CArnEP,CAunEA,eAAA,CiC3rEA/K,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,2EjC+rEO,CA3nEP,CA6nEA,eAAA,CkCjsEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,iHlCqsEO,CAjoEP,CAmoEA,eAAA,CmCvsEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,mvBnC2sEO,CAvoEP,CAyoEA,eAAA,CoC7sEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,4jBpCitEO,CA7oEP,CA+oEA,eAAA,CqCntEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,0UrCutEO,CAnpEP,CAqpEA,eAAA,CsCztEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,2pBtC6tEO,CAzpEP,CA2pEA,eAAA,CuC/tEAA,EAAAA,OAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA,CAAAA,6fvCmuEO,CA/pEP,CApEA,CDg2EC,CAh2EC,G","file":"components-compat.min.js","sourcesContent":[";(function() {\n\"use strict\";\n\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/******/(function (modules) {\n // webpackBootstrap\n /******/ // The module cache\n /******/var installedModules = {};\n /******/\n /******/ // The require function\n /******/function __webpack_require__(moduleId) {\n /******/\n /******/ // Check if module is in cache\n /******/if (installedModules[moduleId]) {\n /******/return installedModules[moduleId].exports;\n /******/\n }\n /******/ // Create a new module (and put it into the cache)\n /******/var module = installedModules[moduleId] = {\n /******/i: moduleId,\n /******/l: false,\n /******/exports: {}\n /******/ };\n /******/\n /******/ // Execute the module function\n /******/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n /******/\n /******/ // Flag the module as loaded\n /******/module.l = true;\n /******/\n /******/ // Return the exports of the module\n /******/return module.exports;\n /******/\n }\n /******/\n /******/\n /******/ // expose the modules object (__webpack_modules__)\n /******/__webpack_require__.m = modules;\n /******/\n /******/ // expose the module cache\n /******/__webpack_require__.c = installedModules;\n /******/\n /******/ // identity function for calling harmony imports with the correct context\n /******/__webpack_require__.i = function (value) {\n return value;\n };\n /******/\n /******/ // define getter function for harmony exports\n /******/__webpack_require__.d = function (exports, name, getter) {\n /******/if (!__webpack_require__.o(exports, name)) {\n /******/Object.defineProperty(exports, name, {\n /******/configurable: false,\n /******/enumerable: true,\n /******/get: getter\n /******/ });\n /******/\n }\n /******/\n };\n /******/\n /******/ // getDefaultExport function for compatibility with non-harmony modules\n /******/__webpack_require__.n = function (module) {\n /******/var getter = module && module.__esModule ?\n /******/function getDefault() {\n return module['default'];\n } :\n /******/function getModuleExports() {\n return module;\n };\n /******/__webpack_require__.d(getter, 'a', getter);\n /******/return getter;\n /******/\n };\n /******/\n /******/ // Object.prototype.hasOwnProperty.call\n /******/__webpack_require__.o = function (object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n };\n /******/\n /******/ // __webpack_public_path__\n /******/__webpack_require__.p = \"\";\n /******/\n /******/ // Load entry module and return exports\n /******/return __webpack_require__(__webpack_require__.s = 13);\n /******/\n})(\n/************************************************************************/\n/******/[\n/* 0 */\n/***/function (module, exports) {\n\n /*\n \tMIT License http://www.opensource.org/licenses/mit-license.php\n \tAuthor Tobias Koppers @sokra\n */\n // css base code, injected by the css-loader\n module.exports = function () {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n var result = [];\n for (var i = 0; i < this.length; i++) {\n var item = this[i];\n if (item[2]) {\n result.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n } else {\n result.push(item[1]);\n }\n }\n return result.join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function (modules, mediaQuery) {\n if (typeof modules === \"string\") modules = [[null, modules, \"\"]];\n var alreadyImportedModules = {};\n for (var i = 0; i < this.length; i++) {\n var id = this[i][0];\n if (typeof id === \"number\") alreadyImportedModules[id] = true;\n }\n for (i = 0; i < modules.length; i++) {\n var item = modules[i];\n // skip already imported module\n // this implementation is not 100% perfect for weird media query combinations\n // when a module is imported multiple times with different media queries.\n // I hope this will never occur (Hey this way we have smaller bundles)\n if (typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n if (mediaQuery && !item[2]) {\n item[2] = mediaQuery;\n } else if (mediaQuery) {\n item[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n }\n list.push(item);\n }\n }\n };\n return list;\n };\n\n /***/\n},\n/* 1 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"a\", function () {\n return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"];\n });\n /* unused harmony reexport matchesSelector */\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"c\", function () {\n return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"];\n });\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"b\", function () {\n return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"];\n });\n /**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n /***/\n},\n/* 2 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = matchesSelector;\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function matchesSelector(el, selector) {\n var proto = Element.prototype;\n var actual = proto.matches || proto.matchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector || proto.webkitMatchesSelector || function (s) {\n var doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n }\n\n /***/\n},\n/* 3 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var BYUFooterActionButton = function (_HTMLElement) {\n _inherits(BYUFooterActionButton, _HTMLElement);\n\n function BYUFooterActionButton() {\n _classCallCheck(this, BYUFooterActionButton);\n\n var _this = _possibleConstructorReturn(this, (BYUFooterActionButton.__proto__ || Object.getPrototypeOf(BYUFooterActionButton)).call(this));\n\n _this.attachShadow({ mode: 'open' });\n return _this;\n }\n\n _createClass(BYUFooterActionButton, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\n }\n }]);\n\n return BYUFooterActionButton;\n }(HTMLElement);\n\n window.customElements.define('byu-footer-action-button', BYUFooterActionButton);\n window.BYUFooterActionButton = BYUFooterActionButton;\n\n /***/\n},\n/* 4 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var BYUFooterColumn = function (_HTMLElement2) {\n _inherits(BYUFooterColumn, _HTMLElement2);\n\n function BYUFooterColumn() {\n _classCallCheck(this, BYUFooterColumn);\n\n var _this2 = _possibleConstructorReturn(this, (BYUFooterColumn.__proto__ || Object.getPrototypeOf(BYUFooterColumn)).call(this));\n\n _this2.attachShadow({ mode: 'open' });\n return _this2;\n }\n\n _createClass(BYUFooterColumn, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\n }\n }]);\n\n return BYUFooterColumn;\n }(HTMLElement);\n\n window.customElements.define('byu-footer-column', BYUFooterColumn);\n window.BYUFooterColumn = BYUFooterColumn;\n\n /***/\n},\n/* 5 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var ATTR_FULL_WIDTH = 'full-width';\n var ATTR_MAX_WIDTH = 'max-width';\n var DEFAULT_MAX_WIDTH = '1200px';\n\n var BYUFooter = function (_HTMLElement3) {\n _inherits(BYUFooter, _HTMLElement3);\n\n function BYUFooter() {\n _classCallCheck(this, BYUFooter);\n\n var _this3 = _possibleConstructorReturn(this, (BYUFooter.__proto__ || Object.getPrototypeOf(BYUFooter)).call(this));\n\n _this3.attachShadow({ mode: 'open' });\n return _this3;\n }\n\n _createClass(BYUFooter, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var component = this;\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, function () {\n // always show the current year in the copyright message\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\n currentYear.innerHTML = new Date().getFullYear();\n\n var header = document.querySelector('byu-header');\n var observer = new MutationObserver(function (mutations) {\n component.updateWithHeaderAttributes(header);\n });\n\n // configuration of the observer:\n var config = { attributes: true };\n observer.observe(header, config);\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\n });\n }\n }, {\n key: 'updateWithHeaderAttributes',\n value: function updateWithHeaderAttributes(header) {\n\n // check the header for full-width or max-width attributes\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\n this.setAttribute(ATTR_FULL_WIDTH, '');\n } else {\n this.removeAttribute(ATTR_FULL_WIDTH);\n }\n\n var w = DEFAULT_MAX_WIDTH;\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\n w = header.getAttribute(ATTR_MAX_WIDTH);\n }\n this.setAttribute(ATTR_MAX_WIDTH, w);\n\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\n for (var i = 0; i < needsWidthSetting.length; i++) {\n needsWidthSetting[i].style.maxWidth = w;\n needsWidthSetting[i].style.maxWidth = w;\n }\n }\n }]);\n\n return BYUFooter;\n }(HTMLElement);\n\n window.customElements.define('byu-footer', BYUFooter);\n window.BYUFooter = BYUFooter;\n\n /***/\n},\n/* 6 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\n var ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\n var ATTR_FULL_WIDTH = 'full-width';\n var ATTR_MAX_WIDTH = 'max-width';\n var ATTR_MOBILE_VIEW = 'mobile-view';\n var ATTR_MENU_OPEN = 'menu-open';\n var ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\n var ATTR_NO_MENU = 'no-menu';\n var ATTR_HOME_URL = 'home-url';\n\n var DEFAULT_MOBILE_WIDTH = '1023px';\n var DEFAULT_MAX_WIDTH = '1200px';\n var DEFAULT_HOME_URL = 'https://byu.edu/';\n\n var BYUHeader = function (_HTMLElement4) {\n _inherits(BYUHeader, _HTMLElement4);\n\n function BYUHeader() {\n _classCallCheck(this, BYUHeader);\n\n var _this4 = _possibleConstructorReturn(this, (BYUHeader.__proto__ || Object.getPrototypeOf(BYUHeader)).call(this));\n\n _this4.attachShadow({ mode: 'open' });\n return _this4;\n }\n\n _createClass(BYUHeader, [{\n key: '_render',\n value: function _render() {\n var _this5 = this;\n\n var state = {\n mobile: this.inMobileView\n };\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), function () {\n _this5._renderState = state;\n _this5._addSlotListeners();\n _this5._notifyChildrenOfMobileState();\n _this5._addButtonListeners();\n _this5._checkIfMenuIsNeeded();\n _this5._applyHomeUrl();\n _this5._applyMaxWidth();\n _this5._applyMenuTransparencyListeners();\n });\n }\n }\n }, {\n key: '_checkIfMenuIsNeeded',\n value: function _checkIfMenuIsNeeded() {\n // check whether to show the mobile menu button\n var userSlot = this.shadowRoot.querySelector(\"#user\");\n var hasUserInfo = userSlot.assignedNodes().length !== 0;\n\n var menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\n var hasMenu = menuSlot.assignedNodes().length !== 0;\n\n var actionSlot = this.shadowRoot.querySelector('#actions');\n var hasActions = actionSlot.assignedNodes().length !== 0;\n\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\n\n if (menuSlot.assignedNodes().length < 4) {\n this.setAttribute('left-align', '');\n } else {\n this.removeAttribute('left-align');\n }\n }\n }, {\n key: '_addButtonListeners',\n value: function _addButtonListeners() {\n var _this6 = this;\n\n if (!this.inMobileView) {\n this.menuOpen = false;\n return;\n }\n var menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\n menuButton.addEventListener('click', function () {\n return _this6._toggleMenu();\n });\n }\n }, {\n key: '_toggleMenu',\n value: function _toggleMenu() {\n this.menuOpen = !this.menuOpen;\n }\n }, {\n key: '_addSlotListeners',\n value: function _addSlotListeners() {\n var _this7 = this;\n\n this._findAllSlots().forEach(function (each) {\n each.addEventListener('slotchange', function (event) {\n _this7._notifyChildrenOfMobileState();\n _this7._checkIfMenuIsNeeded();\n _this7._applyMenuTransparencyListeners();\n });\n });\n }\n }, {\n key: '_notifyChildrenOfMobileState',\n value: function _notifyChildrenOfMobileState() {\n var kids = this._findAllDistributedChildren();\n if (this.inMobileView) {\n kids.forEach(function (each) {\n each.setAttribute(ATTR_MOBILE_VIEW, '');\n each.classList.add(ATTR_MOBILE_VIEW);\n });\n } else {\n kids.forEach(function (each) {\n each.removeAttribute(ATTR_MOBILE_VIEW);\n each.classList.remove(ATTR_MOBILE_VIEW);\n });\n }\n }\n }, {\n key: '_findAllSlots',\n value: function _findAllSlots() {\n var slots = this.shadowRoot.querySelectorAll('slot');\n var arr = [];\n for (var i = 0; i < slots.length; ++i) {\n arr.push(slots[i]);\n }\n return arr;\n }\n }, {\n key: '_findAllDistributedChildren',\n value: function _findAllDistributedChildren() {\n return this._findAllSlots().map(function (s) {\n return s.assignedNodes().filter(function (n) {\n return n instanceof HTMLElement;\n });\n }).reduce(function (agg, each) {\n return agg.concat(each);\n }, []);\n }\n }, {\n key: 'connectedCallback',\n value: function connectedCallback() {\n //This is a hack to ensure that the right defaults get applied.\n this.mobileMaxWidth = this.mobileMaxWidth;\n this._applyMobileWidth();\n this._render();\n this.maxWidth = this.maxWidth;\n\n var header = this;\n setTimeout(function () {\n var menu = header.shadowRoot.querySelector('#mobileMenu');\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\n console.log(menu.innerHTML);\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\n header.removeAttribute(ATTR_MENU_OPEN);\n }\n });\n }, 0);\n\n if (this.hasAttribute('full-width')) {\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\n }\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n switch (attr) {\n case ATTR_MOBILE_MAX_WIDTH:\n this._applyMobileWidth();\n return;\n case ATTR_MAX_WIDTH:\n this._applyMaxWidth();\n return;\n case ATTR_MOBILE_VIEW:\n this._render();\n return;\n case ATTR_MENU_OPEN:\n this._applyMenuOpen();\n return;\n case ATTR_HOME_URL:\n this._applyHomeUrl();\n return;\n }\n }\n }, {\n key: '_applyMenuOpen',\n value: function _applyMenuOpen() {\n var menu = this.shadowRoot.querySelector('#mobileMenu');\n if (!menu) return;\n if (this.menuOpen) {\n menu.style.maxHeight = menu.scrollHeight + 'px';\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\n } else {\n menu.style.maxHeight = null;\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\n }\n }\n }, {\n key: '_applyHomeUrl',\n value: function _applyHomeUrl() {\n var aTag = this.shadowRoot.querySelector('#home-url');\n if (aTag) {\n //Filter out cases where we haven't fully initialized yet\n aTag.setAttribute('href', this.homeUrl);\n }\n }\n }, {\n key: '_applyMobileWidth',\n value: function _applyMobileWidth() {\n var desiredQuery = this.mobileMediaQuery;\n var q = this._mobileQuery;\n if (q) {\n if (q.media === desiredQuery) {\n //Nothing has changed, bail!\n return;\n } else {\n q.removeListener(this._mobileQueryListener);\n this._mobileQuery = null;\n }\n }\n this._mobileQuery = q = window.matchMedia(desiredQuery);\n this._mobileQueryListener = this._handleMobileChange.bind(this);\n\n q.addListener(this._mobileQueryListener);\n this._mobileQueryListener(q);\n }\n }, {\n key: '_handleMobileChange',\n value: function _handleMobileChange(mql) {\n this.inMobileView = mql.matches;\n }\n }, {\n key: '_applyMaxWidth',\n value: function _applyMaxWidth() {\n\n if (!this.inMobileView) {\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\n for (var i = 0; i < needsWidthSetting.length; i++) {\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\n }\n }\n var desiredQuery = this.maxWidthMediaQuery;\n var q = this._maxWidthQuery;\n if (q) {\n if (q.media === desiredQuery) {\n //Nothing has changed, bail!\n return;\n } else {\n q.removeListener(this._maxWidthQueryListener);\n this._maxWidthQuery = null;\n }\n }\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\n\n q.addListener(this._maxWidthQueryListener);\n this._maxWidthQueryListener(q);\n }\n }, {\n key: '_handleMaxWidthChange',\n value: function _handleMaxWidthChange(mql) {\n if (mql.matches) {\n this.classList.add('below-max-width');\n } else {\n this.classList.remove('below-max-width');\n }\n }\n }, {\n key: '_applyMenuTransparencyListeners',\n value: function _applyMenuTransparencyListeners() {\n var _this8 = this;\n\n var navSlot = this.shadowRoot.querySelector('#navbarMenu');\n var assigned = navSlot.assignedNodes().filter(function (n) {\n return n.nodeType === Node.ELEMENT_NODE;\n });\n if (assigned.length === 0) {\n this._applyMenuTransparency(null);\n return;\n }\n var menu = assigned[0];\n if (!menu.__byu_header_transparency_listener) {\n var obs = new MutationObserver(function (e) {\n _this8._applyMenuTransparency(menu);\n });\n //noinspection JSCheckFunctionSignatures\n obs.observe(menu, { attributes: true, attributeFilter: ['class'] });\n menu.__byu_header_transparency_listener = obs;\n }\n this._applyMenuTransparency(menu);\n }\n }, {\n key: '_applyMenuTransparency',\n value: function _applyMenuTransparency(element) {\n var transparent = element && element.classList.contains('transparent');\n if (transparent) {\n //Can't use .toggle thanks to IE 11. Thanks, IE!\n this.classList.add('menu-transparent');\n } else {\n this.classList.remove('menu-transparent');\n }\n }\n }, {\n key: 'mobileMaxWidth',\n get: function get() {\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\n } else {\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\n }\n }\n }, {\n key: 'maxWidth',\n get: function get() {\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MAX_WIDTH, val);\n } else {\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\n }\n }\n }, {\n key: 'inMobileView',\n get: function get() {\n return this.hasAttribute(ATTR_MOBILE_VIEW);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MOBILE_VIEW, '');\n } else {\n this.removeAttribute(ATTR_MOBILE_VIEW);\n }\n }\n }, {\n key: 'menuOpen',\n get: function get() {\n return this.hasAttribute(ATTR_MENU_OPEN);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MENU_OPEN, '');\n } else {\n this.removeAttribute(ATTR_MENU_OPEN);\n }\n }\n }, {\n key: 'keepMenuOpen',\n get: function get() {\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\n } else {\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\n }\n }\n }, {\n key: 'noMenu',\n get: function get() {\n return this.hasAttribute(ATTR_NO_MENU);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_NO_MENU, '');\n } else {\n this.removeAttribute(ATTR_NO_MENU);\n }\n }\n }, {\n key: 'homeUrl',\n get: function get() {\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\n },\n set: function set(val) {\n this.setAttribute(ATTR_HOME_URL, val);\n }\n }, {\n key: 'mobileMediaQuery',\n get: function get() {\n return '(max-width: ' + this.mobileMaxWidth + ')';\n }\n }, {\n key: 'maxWidthMediaQuery',\n get: function get() {\n return '(max-width: ' + this.maxWidth + ')';\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\n }\n }]);\n\n return BYUHeader;\n }(HTMLElement);\n\n window.customElements.define('byu-header', BYUHeader);\n window.BYUHeader = BYUHeader;\n\n /***/\n},\n/* 7 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\n var ATTR_ACTIVE_SELECTOR = \"active-selector\";\n var DEFAULT_ACTIVE_SELECTOR = \".active\";\n\n var BYUMenu = function (_HTMLElement5) {\n _inherits(BYUMenu, _HTMLElement5);\n\n _createClass(BYUMenu, [{\n key: 'activeSelector',\n get: function get() {\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\n } else {\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\n }\n }\n }, {\n key: 'showMore',\n get: function get() {\n return isShowingMoreMenu(this);\n },\n set: function set(show) {\n var el = this.shadowRoot.querySelector('.byu-menu-more-menu');\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\n toggleClass(el, 'byu-menu-more-expanded', show);\n }\n }]);\n\n function BYUMenu() {\n _classCallCheck(this, BYUMenu);\n\n // always call super first\n var _this9 = _possibleConstructorReturn(this, (BYUMenu.__proto__ || Object.getPrototypeOf(BYUMenu)).call(this));\n\n _this9.attachShadow({ mode: 'open' });\n return _this9;\n }\n\n _createClass(BYUMenu, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n render(this, true);\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n switch (attr) {\n case ATTR_ACTIVE_SELECTOR:\n render(this, false);\n return;\n }\n }\n }, {\n key: '_menuSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#byu-menu-items');\n }\n }, {\n key: '_menuMoreSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_ACTIVE_SELECTOR];\n }\n }]);\n\n return BYUMenu;\n }(HTMLElement);\n\n function render(component, force) {\n var activeSelector = component.activeSelector;\n if (!force && activeSelector === component._renderedActiveSelector) {\n return;\n }\n\n var css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\n var tmpl = '' + __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, function () {\n component._renderedActiveSelector = activeSelector;\n updateMoreMenuState(component);\n addSlotListeners(component);\n // when the more button is clicked then show the more menu\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\n component.showMore = true;\n });\n });\n }\n\n function addSlotListeners(component) {\n component.shadowRoot.querySelector('slot').addEventListener('slotchange', function (e) {\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\n setTimeout(function () {\n return function () {\n updateMoreMenuState(component);\n };\n });\n });\n }\n\n function enableHideClick(component) {\n\n var fn = function fn() {\n document.removeEventListener('click', fn);\n component.showMore = false;\n };\n\n setTimeout(function () {\n document.addEventListener('click', fn);\n });\n }\n\n function hasClass(el, className) {\n var classes = el.className.split(/ +/);\n return classes.indexOf(className) !== -1;\n }\n\n function isShowingMoreMenu(component) {\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\n }\n\n function toggleClass(el, className, value) {\n var classes = el.className.split(/ +/);\n var index = classes.indexOf(className);\n var exists = index !== -1;\n var setTo = arguments.length > 2 ? arguments[2] : !exists;\n if (setTo && !exists) {\n classes.push(className);\n } else if (!setTo && exists) {\n classes.splice(index, 1);\n }\n el.className = classes.join(' ');\n }\n\n function updateMoreMenuState(component) {\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\n var filteredChildren = children.filter(function (node) {\n return node instanceof HTMLElement;\n });\n var filteredMoreChildren = moreChildren.filter(function (node) {\n return node instanceof HTMLElement;\n });\n var length = filteredChildren.length + filteredMoreChildren.length;\n var hasOverflow = length > 6;\n var nav = component.shadowRoot.querySelector('.outer-nav');\n\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\n\n if (hasOverflow) {\n for (var i = 5; i < filteredChildren.length; i++) {\n filteredChildren[i].setAttribute('slot', 'more');\n }\n } else if (length === 6) {\n filteredChildren[5].setAttribute('slot', '');\n }\n\n if (length < 4) {\n console.log(length);\n component.setAttribute('left-align', '');\n } else {\n component.removeAttribute('left-align');\n }\n }\n\n window.customElements.define('byu-menu', BYUMenu);\n window.BYUMenu = BYUMenu;\n\n /***/\n},\n/* 8 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n\n var _DEFAULT_ACTION_TARGE;\n\n var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\n\n var CLASS_SELECTED_INPUT = '__byu-search-selected-input';\n\n var ATTR_OLD_SEARCH_HANDLER = 'onsearch';\n var ATTR_SEARCH_HANDLER = 'onbyusearch';\n var ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\n var ATTR_ACTION = 'action';\n var ATTR_ACTION_TARGET = 'action-target';\n\n var ACTION_SUBMIT_FORM = 'submit-form';\n var ACTION_CLICK = 'click';\n var ACTION_NAVIGATE = 'navigate';\n\n var DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\n var DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\n\n var EVENT_TYPE = 'byu-search';\n\n var DEFAULT_ACTION_TARGET = (_DEFAULT_ACTION_TARGE = {}, _defineProperty(_DEFAULT_ACTION_TARGE, ACTION_SUBMIT_FORM, DEFAULT_ACTION_TARGET_SUBMIT_FORM), _defineProperty(_DEFAULT_ACTION_TARGE, ACTION_CLICK, DEFAULT_ACTION_TARGET_CLICK), _DEFAULT_ACTION_TARGE);\n\n var DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\n\n var ByuSearch = function (_HTMLElement6) {\n _inherits(ByuSearch, _HTMLElement6);\n\n function ByuSearch() {\n _classCallCheck(this, ByuSearch);\n\n // always call super first\n var _this10 = _possibleConstructorReturn(this, (ByuSearch.__proto__ || Object.getPrototypeOf(ByuSearch)).call(this));\n\n _this10.attachShadow({ mode: 'open' });\n return _this10;\n }\n\n _createClass(ByuSearch, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this11 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, function () {\n _this11._initialized = true;\n\n _this11._input = lookupAndConfigureInputElement(_this11, _this11.searchInputSelector);\n\n setupButtonSearchDispatcher(_this11);\n setupSearchListeners(_this11);\n\n setupSlotListener(_this11);\n });\n }\n }, {\n key: 'disconnectedCallback',\n value: function disconnectedCallback() {\n if (this._input) {\n teardownInputElement(this, this._input);\n }\n\n teardownSearchListeners(this);\n }\n }, {\n key: 'search',\n value: function search() {\n var el = this._input;\n if (!el) {\n throw new Error('Unable to perform search; no search element matching the selector \\'' + this.searchInputSelector + '\\' can be found!');\n }\n var value = el.value;\n if (!value) return;\n\n var event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, { search: value });\n\n var cancelled = !this.dispatchEvent(event);\n if (cancelled) return;\n\n if (this.action) {\n runPredefinedAction(this, value);\n }\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n if (!this._initialized) return;\n switch (attr) {\n case ATTR_SEARCH_INPUT_SELECTOR:\n if (this._input) {\n teardownInputElement(this, this._input);\n }\n\n this._input = lookupAndConfigureInputElement(this, newValue);\n\n return;\n //All other attrs are lazily looked up, as needed.\n }\n }\n }, {\n key: 'onbyusearch',\n get: function get() {\n return this.getAttribute(ATTR_SEARCH_HANDLER);\n },\n set: function set(value) {\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\n }\n }, {\n key: 'onsearch',\n get: function get() {\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\n },\n set: function set(value) {\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\n }\n }, {\n key: 'searchInputSelector',\n set: function set(value) {\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\n },\n get: function get() {\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\n }\n }, {\n key: 'action',\n set: function set(value) {\n this.setAttribute(ATTR_ACTION, value);\n },\n get: function get() {\n //Defaults to null\n return this.getAttribute(ATTR_ACTION);\n }\n }, {\n key: 'actionTarget',\n set: function set(value) {\n this.setAttribute(ATTR_ACTION_TARGET, value);\n },\n get: function get() {\n //Default depends on action target value\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\n }\n }, {\n key: '_searchSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#search');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_SEARCH_INPUT_SELECTOR];\n }\n }]);\n\n return ByuSearch;\n }(HTMLElement);\n\n window.customElements.define('byu-search', ByuSearch);\n window.ByuSearch = ByuSearch;\n\n function setupSlotListener(search) {\n search._searchSlot.addEventListener('slotchange', function (e) {\n handleSlotChange(search, e);\n });\n }\n\n function handleSlotChange(search, event) {\n var oldInput = search._input;\n var newInput = lookupSearchInput(search);\n\n if (oldInput === newInput) return;\n\n search._input = newInput;\n\n if (oldInput) {\n teardownInputElement(search, oldInput);\n }\n if (newInput) {\n setupInputElement(search, newInput);\n } else {\n console.error('[byu-search] WARNING! Unable to find a search input element using the selector \\'' + search.searchInputSelector + '\\' on ', search);\n }\n }\n\n function lookupSearchInput(search, selector) {\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector);\n }\n\n function lookupAndConfigureInputElement(search, selector) {\n var input = lookupSearchInput(search, selector);\n\n if (input) {\n setupInputElement(search, input);\n } else {\n console.error('[byu-search] WARNING! Unable to find a search input element using the selector \\'' + selector + '\\' on ', search);\n }\n return input;\n }\n\n function setupInputElement(search, input) {\n applyStyleHelpers(search, input);\n applyA11yHelpers(search, input);\n setupEnterKeySearchDispatcher(search, input);\n }\n\n function teardownInputElement(search, input) {\n removeStyleHelpers(search, input);\n removeA11yHelpers(search, input);\n teardownEnterKeySearchDispatcher(search, input);\n }\n\n function runPredefinedAction(search, value) {\n var action = search.action;\n\n switch (action) {\n case ACTION_SUBMIT_FORM:\n runSubmitFormAction(search, value);\n break;\n case ACTION_CLICK:\n runClickAction(search, value);\n break;\n case ACTION_NAVIGATE:\n runNavigateAction(search, value);\n break;\n default:\n throw new Error('Invalid value for ' + ATTR_ACTION + ': \\'' + action + '\\'');\n }\n }\n\n function runSubmitFormAction(search, value) {\n var target = search.actionTarget;\n\n var form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\n\n if (!form) {\n throw new Error('Unable to find target for \\'submit-form\\' action using selector \\'' + target + '\\'');\n }\n\n if (!(form instanceof HTMLFormElement)) {\n throw new Error('Element found by selector \\'' + target + '\\' must be a , but was \\'' + form.localName + '\\'');\n }\n\n form.submit();\n }\n\n function runClickAction(search, value) {\n var target = search.actionTarget;\n\n var button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\n\n if (!button) {\n throw new Error('Unable to find target for \\'click\\' action using selector \\'' + target + '\\'');\n }\n\n button.click();\n }\n\n function runNavigateAction(search, value) {\n var target = search.actionTarget;\n\n if (!target) {\n throw new Error('When using action=\"navigate\", you must specify an action-target');\n }\n\n if (target.indexOf('${search}')) {\n console.warn('[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain ${search} will not include the search terms in the URL.', search);\n }\n\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\n }\n\n function applyStyleHelpers(search, input) {\n input.classList.add(CLASS_SELECTED_INPUT);\n }\n\n function removeStyleHelpers(search, input) {\n input.classList.remove(CLASS_SELECTED_INPUT);\n }\n\n // For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\n function applyA11yHelpers(search, input) {\n if (input.title && input.placeholder) return;\n\n var helped = [];\n\n if (!input.title && !input.placeholder) {\n input.title = input.placeholder = 'Search';\n helped.push('title', 'placeholder');\n } else if (input.title) {\n input.placeholder = input.title;\n helped.push('placeholder');\n } else {\n input.title = input.placeholder;\n helped.push('title');\n }\n\n input.__byu_search_a11yHelpersApplied = helped;\n }\n\n function removeA11yHelpers(search, input) {\n var helpers = input.__byu_search_a11yHelpersApplied;\n if (!helpers) return;\n\n if (helpers.includes('title')) {\n input.title = null;\n }\n if (helpers.includes('placeholder')) {\n input.placeholder = null;\n }\n delete input.__byu_search_a11yHelpersApplied;\n }\n\n function setupButtonSearchDispatcher(search) {\n search.shadowRoot.querySelector('#search-button').addEventListener('click', function () {\n search.search();\n });\n }\n\n function setupEnterKeySearchDispatcher(search, input) {\n var keypress = input.__byu_search_keyObserver = function (e) {\n if (e.keyCode === 13) {\n search.search();\n }\n };\n input.addEventListener('keypress', keypress, false);\n }\n\n function teardownEnterKeySearchDispatcher(search, input) {\n var keypress = input.__byu_search_keyObserver;\n if (keypress) input.removeEventListener('keypress', keypress, false);\n }\n\n function setupSearchListeners(search) {\n var handler = search.__onbyusearchHandler = function (event) {\n var name = search.onbyusearch;\n if (!name) return;\n var handler = window[name];\n if (!handler) {\n throw new Error('Unable to find a global function named \\'' + name + '\\'');\n }\n handler.call(search, event);\n };\n\n search.addEventListener(EVENT_TYPE, handler, false);\n\n var legacyHandler = search.__onsearchLegacyHandler = function (event) {\n var name = search.onsearch;\n if (!name) return;\n\n var handler = window[name];\n if (!handler) {\n throw new Error('Unable to find a global function named \\'' + name + '\\'');\n }\n handler.call(search, event.detail.search, event);\n };\n\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\n }\n\n function teardownSearchListeners(search) {\n if (search.__onbyusearchHandler) {\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\n }\n if (search.__onsearchLegacyHandler) {\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\n }\n }\n\n function defaultActionTarget(action) {\n if (!action) return null;\n return DEFAULT_ACTION_TARGET[action];\n }\n\n /***/\n},\n/* 9 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var SOCIAL_NAMES = {\n 'facebook': 'Facebook',\n 'twitter': 'Twitter',\n 'instagram': 'Instagram',\n 'youtube': 'YouTube',\n 'pinterest': 'Pinterest',\n 'google-plus': 'Google+',\n 'googleplus': 'Google+',\n 'gplus': 'Google+',\n 'linkedin': 'LinkedIn',\n 'rss': 'RSS',\n 'snapchat': 'Snapchat',\n 'podcast': 'Podcast'\n };\n\n var SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\n\n var BYUSocialMediaLinks = function (_HTMLElement7) {\n _inherits(BYUSocialMediaLinks, _HTMLElement7);\n\n function BYUSocialMediaLinks() {\n _classCallCheck(this, BYUSocialMediaLinks);\n\n var _this12 = _possibleConstructorReturn(this, (BYUSocialMediaLinks.__proto__ || Object.getPrototypeOf(BYUSocialMediaLinks)).call(this));\n\n _this12.attachShadow({ mode: 'open' });\n return _this12;\n }\n\n _createClass(BYUSocialMediaLinks, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this13 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, function () {\n var main = _this13.shadowRoot.querySelector('#social-main');\n applyTitleToChildren(main);\n\n SOCIAL_IDS.forEach(function (id) {\n var slot = _this13.shadowRoot.querySelector('#social-deprecated-' + id);\n if (!slot) return;\n\n applyTitleToChildren(slot);\n //We're still supporting the old way, but it's deprecated and people should move on.\n if (slot.assignedNodes().length > 0) {\n console.log('[WARNING] byu-social-media-links: deprecated usage of slot=\"' + id + '\". Replace with class=\"' + id + '\":', _this13);\n }\n });\n });\n }\n }]);\n\n return BYUSocialMediaLinks;\n }(HTMLElement);\n\n window.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\n window.BYUSocialMediaLinks = BYUSocialMediaLinks;\n\n function applyTitleToChildren(slotElement) {\n var kids = slotElement.assignedNodes();\n kids.filter(function (k) {\n return k instanceof HTMLElement;\n })\n //Only grab the ones that don't already have a title\n .filter(function (k) {\n return !k.title;\n }).forEach(function (kid) {\n var kind = detectSocialKind(kid);\n if (!kind) {\n return;\n }\n //The spaces are a hack to avoid triggering adblockplus.\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\n });\n }\n\n function detectSocialKind(element) {\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\n for (var i = 0; i < SOCIAL_IDS.length; i++) {\n var id = SOCIAL_IDS[i];\n if (element.classList.contains(id)) {\n return id;\n }\n }\n return null;\n }\n\n /***/\n},\n/* 10 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\n\n var ByuUserInfo = function (_HTMLElement8) {\n _inherits(ByuUserInfo, _HTMLElement8);\n\n function ByuUserInfo() {\n _classCallCheck(this, ByuUserInfo);\n\n var _this14 = _possibleConstructorReturn(this, (ByuUserInfo.__proto__ || Object.getPrototypeOf(ByuUserInfo)).call(this));\n\n var shadowRoot = _this14.attachShadow({ mode: 'open' });\n\n return _this14;\n }\n\n _createClass(ByuUserInfo, [{\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n }, {\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this15 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, function () {\n _this15._addSlotListeners();\n _this15._addAriaAttributes();\n });\n }\n }, {\n key: '_addSlotListeners',\n value: function _addSlotListeners() {\n var _this16 = this;\n\n this._setHasUser();\n var userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', function (e) {\n _this16._setHasUser();\n });\n }\n }, {\n key: '_setHasUser',\n value: function _setHasUser() {\n var userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n } else {\n this.removeAttribute('has-user');\n }\n }\n }, {\n key: '_addAriaAttributes',\n value: function _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n // return ['login-url'];\n }\n }]);\n\n return ByuUserInfo;\n }(HTMLElement);\n\n window.customElements.define('byu-user-info', ByuUserInfo);\n window.ByuUserInfo = ByuUserInfo;\n\n /***/\n},\n/* 11 */\n/***/function (module, exports) {\n\n module.exports = {\n \"name\": \"byuweb-components\",\n \"version\": \"1.1.1\",\n \"description\": \"Components to be used for byu web pages and applications.\",\n \"main\": \"\",\n \"scripts\": {\n \"build\": \"gulp build\",\n \"serve\": \"gulp watch\",\n \"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n },\n \"private\": true,\n \"author\": \"\",\n \"license\": \"Apache-2.0\",\n \"dependencies\": {\n \"byu-web-component-utils\": \"^0.4.2\",\n \"deep-equal\": \"^1.0.1\",\n \"sass-loader\": \"^6.0.6\"\n },\n \"devDependencies\": {\n \"browser-sync\": \"^2.18.6\",\n \"byu-web-component-build\": \"^0.2.3\",\n \"git-revision-webpack-plugin\": \"^2.5.1\",\n \"gulp\": \"^3.9.1\",\n \"gulp-rename\": \"^1.2.2\"\n }\n };\n\n /***/\n},\n/* 12 */\n/***/function (module, exports, __webpack_require__) {\n\n \"use strict\";\n\n var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__; /**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\n\n (function (root, factory) {\n if (true) {\n // AMD module\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = factory, __WEBPACK_AMD_DEFINE_RESULT__ = typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? __WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module) : __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if ((typeof exports === 'undefined' ? 'undefined' : _typeof(exports)) === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n })(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var tcon = {},\n // static class\n _transformClass = 'tcon-transform',\n\n\n // const\n DEFAULT_EVENTS = {\n transform: ['click'],\n revert: ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\n var getElementList = function getElementList(elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\n var getEventList = function getEventList(events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\n var setListeners = function setListeners(elements, events, remove) {\n var method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = events && events[prop] ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while (currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while (currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\n var handleEvent = function handleEvent(event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function (element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function (element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function (element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n });\n\n /***/\n},\n/* 13 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n\n Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n /**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\n\n /*\r\n * Header Bits\r\n */\n\n /*\r\n * Footer Bits\r\n */\n\n console.log('--------------- Starting byu-theme-components ' + __WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"] + ' ---------------');\n\n /***/\n},\n/* 14 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = createEvent;\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, { detail: detail, cancelable: true, bubbles: true });\n }\n var evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n }\n\n /***/\n},\n/* 15 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = querySelectorSlot;\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function querySelectorSlot(slot, selector) {\n var roots = slot.assignedNodes({ flatten: true }).filter(function (n) {\n return n.nodeType === Node.ELEMENT_NODE;\n });\n\n for (var i = 0, len = roots.length; i < len; i++) {\n var each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n var child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n }\n\n /***/\n},\n/* 16 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = applyTemplate;\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n var TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\n function applyTemplate(element, elementName, template, callback) {\n var sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n var elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n }\n\n function applyTemplateShady(element, elementName, template, callback, sum) {\n var templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n var templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n var imported = document.importNode(templateElement.content, true);\n var shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function () {\n runAfterStamping(element, callback);\n });\n }\n\n function applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n }\n\n function runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n }\n\n /***/\n},\n/* 17 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 18 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 19 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 20 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 21 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 22 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 23 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 24 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 25 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 26 */\n/***/function (module, exports, __webpack_require__) {\n\n var pSlice = Array.prototype.slice;\n var objectKeys = __webpack_require__(28);\n var isArguments = __webpack_require__(27);\n\n var deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || (typeof actual === 'undefined' ? 'undefined' : _typeof(actual)) != 'object' && (typeof expected === 'undefined' ? 'undefined' : _typeof(expected)) != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n };\n\n function isUndefinedOrNull(value) {\n return value === null || value === undefined;\n }\n\n function isBuffer(x) {\n if (!x || (typeof x === 'undefined' ? 'undefined' : _typeof(x)) !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n }\n\n function objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {\n //happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length) return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i]) return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return (typeof a === 'undefined' ? 'undefined' : _typeof(a)) === (typeof b === 'undefined' ? 'undefined' : _typeof(b));\n }\n\n /***/\n},\n/* 27 */\n/***/function (module, exports) {\n\n var supportsArgumentsClass = function () {\n return Object.prototype.toString.call(arguments);\n }() == '[object Arguments]';\n\n exports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\n exports.supported = supported;\n function supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n };\n\n exports.unsupported = unsupported;\n function unsupported(object) {\n return object && (typeof object === 'undefined' ? 'undefined' : _typeof(object)) == 'object' && typeof object.length == 'number' && Object.prototype.hasOwnProperty.call(object, 'callee') && !Object.prototype.propertyIsEnumerable.call(object, 'callee') || false;\n };\n\n /***/\n},\n/* 28 */\n/***/function (module, exports) {\n\n exports = module.exports = typeof Object.keys === 'function' ? Object.keys : shim;\n\n exports.shim = shim;\n function shim(obj) {\n var keys = [];\n for (var key in obj) {\n keys.push(key);\n }return keys;\n }\n\n /***/\n},\n/* 29 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n\n escapeFn = escapeFn || function (markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n },\n _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [],\n __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n };\n\n /***/\n},\n/* 30 */\n/***/function (module, exports, __webpack_require__) {\n\n \"use strict\";\n\n function pad(hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n }\n\n function fold(hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = (hash << 5) - hash + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n }\n\n function foldObject(hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey(hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n }\n\n function foldValue(input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value === 'undefined' ? 'undefined' : _typeof(value));\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n }\n\n function toString(o) {\n return Object.prototype.toString.call(o);\n }\n\n function sum(o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n }\n\n module.exports = sum;\n\n /***/\n},\n/* 31 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 32 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"

\";\n\n /***/\n},\n/* 33 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n /***/\n},\n/* 34 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \" \";\n\n /***/\n},\n/* 35 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 36 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 37 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
Sign In
Sign Out
\";\n\n /***/\n}]\n/******/);\n}());\n\n\n","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\r\n\r\n\r\n\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\r\n\r\n(function (root, factory) {\r\n if (true) {\r\n // AMD module\r\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\r\n\r\n/*\r\n * Header Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\r\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f34479c4d67cb2a18bae","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\"use strict\";\r\n\r\nimport template from \"./byu-user-info.html\";\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-user-info', template, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\"use strict\";\r\n\r\n(function (root, factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD module\r\n define(factory);\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\"use strict\";\r\n\r\n/*\r\n * Header Bits\r\n */\r\nimport './byu-header/byu-header.js';\r\nimport './byu-menu/byu-menu.js';\r\nimport './byu-search/byu-search.js';\r\nimport './byu-user-info/byu-user-info.js';\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\nimport './byu-footer/byu-footer.js';\r\nimport './byu-footer-column/byu-footer-column.js';\r\nimport './byu-footer-action-button/byu-footer-action-button.js';\r\nimport './byu-social-media-links/byu-social-media-links.js';\r\n\r\nimport {version} from '../package.json';\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file +{"version":3,"sources":["components-compat.js","components.js","webpack:/webpack/bootstrap db575c1616d355860a86","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["key","obj","Object","defineProperty","value","enumerable","configurable","writable","instance","Constructor","TypeError","self","ReferenceError","call","superClass","subClass","prototype","create","constructor","setPrototypeOf","__proto__","Symbol","iterator","i","props","length","descriptor","target","protoProps","defineProperties","staticProps","installedModules","moduleId","exports","l","modules","module","__webpack_require__","m","c","d","o","name","get","getter","n","__esModule","hasOwnProperty","object","property","p","s","list","item","result","join","id","alreadyImportedModules","mediaQuery","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0__lib_templating__","__WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__","__WEBPACK_IMPORTED_MODULE_3__lib_createEvent__","Element","proto","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","document","ownerDocument","querySelectorAll","indexOf","actual","el","selector","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__","_classCallCheck","BYUFooterActionButton","_possibleConstructorReturn","getPrototypeOf","_this","attachShadow","mode","_inherits","_HTMLElement","_createClass","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","HTMLElement","window","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__","BYUFooterColumn","_this2","_HTMLElement2","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__","BYUFooter","_this3","_HTMLElement3","component","shadowRoot","querySelector","currentYear","MutationObserver","observer","attributes","header","hasAttribute","ATTR_FULL_WIDTH","setAttribute","removeAttribute","ATTR_MAX_WIDTH","w","needsWidthSetting","__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__","__WEBPACK_IMPORTED_MODULE_1_deep_equal__","__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__","BYUHeader","_this4","_HTMLElement4","mobile","state","_renderState","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","_this5","_addSlotListeners","_notifyChildrenOfMobileState","_addButtonListeners","_checkIfMenuIsNeeded","_applyHomeUrl","_applyMaxWidth","_applyMenuTransparencyListeners","assignedNodes","noMenu","hasUserInfo","hasMenu","hasActions","inMobileView","menuOpen","menuButton","_this6","_toggleMenu","_findAllSlots","forEach","each","_this7","_findAllDistributedChildren","kids","slots","arr","map","filter","reduce","agg","concat","mobileMaxWidth","_applyMobileWidth","_render","maxWidth","setTimeout","menu","addEventListener","console","ATTR_MOBILE_VIEW","ATTR_MENU_OPEN","ATTR_MENU_KEEP_OPEN","attr","ATTR_MOBILE_MAX_WIDTH","_applyMenuOpen","ATTR_HOME_URL","classList","add","remove","aTag","mobileMediaQuery","_mobileQuery","q","media","desiredQuery","matchMedia","_mobileQueryListener","_handleMobileChange","bind","mql","maxWidthMediaQuery","_maxWidthQuery","_maxWidthQueryListener","_handleMaxWidthChange","navSlot","nodeType","Node","ELEMENT_NODE","_applyMenuTransparency","assigned","__byu_header_transparency_listener","_this8","obs","element","contains","transparent","getAttribute","set","val","DEFAULT_MAX_WIDTH","ATTR_NO_MENU","activeSelector","force","_renderedActiveSelector","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default","a","toString","replace","css","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default","updateMoreMenuState","addSlotListeners","className","split","hasClass","classes","arguments","exists","setTo","children","node","moreChildren","filteredChildren","filteredMoreChildren","nav","toggleClass","hasOverflow","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__","BYUMenu","_this9","_HTMLElement5","ATTR_ACTIVE_SELECTOR","DEFAULT_ACTIVE_SELECTOR","isShowingMoreMenu","show","enableHideClick","render","search","handleSlotChange","_input","lookupSearchInput","oldInput","newInput","teardownInputElement","setupInputElement","_searchSlot","input","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","action","ACTION_SUBMIT_FORM","runSubmitFormAction","ACTION_CLICK","runClickAction","ACTION_NAVIGATE","runNavigateAction","Error","ATTR_ACTION","actionTarget","form","HTMLFormElement","localName","button","title","placeholder","helped","__byu_search_a11yHelpersApplied","helpers","includes","__byu_search_keyObserver","keyCode","keypress","removeEventListener","__onbyusearchHandler","onbyusearch","handler","__onsearchLegacyHandler","onsearch","DEFAULT_ACTION_TARGET","__WEBPACK_IMPORTED_MODULE_0__byu_search_html__","_defineProperty","_DEFAULT_ACTION_TARGE","ByuSearch","_this10","_HTMLElement6","_this11","_initialized","lookupAndConfigureInputElement","searchInputSelector","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","teardownSearchListeners","EVENT_TYPE","dispatchEvent","event","cancelled","runPredefinedAction","ATTR_SEARCH_INPUT_SELECTOR","newValue","ATTR_SEARCH_HANDLER","ATTR_OLD_SEARCH_HANDLER","ATTR_ACTION_TARGET","defaultActionTarget","slotElement","k","detectSocialKind","kid","kind","SOCIAL_IDS","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__","getOwnPropertyNames","SOCIAL_NAMES","BYUSocialMediaLinks","_this12","_HTMLElement7","_this13","applyTitleToChildren","slot","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__","ByuUserInfo","_this14","_HTMLElement8","_this15","_addAriaAttributes","_setHasUser","userSlot","_this16","factory","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","_transformClass","DEFAULT_EVENTS","transform","revert","elements","Array","slice","events","toLowerCase","getElementList","elementList","eventLists","occasion","tcon","setListeners","__WEBPACK_IMPORTED_MODULE_8__package_json__","CustomEvent","detail","cancelable","bubbles","createEvent","evt","flatten","roots","len","__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__","child","elementName","sum","head","templateId","templateElement","ShadyCSS","styleElement","applyStyle","importNode","content","shadow","firstChild","runAfterStamping","callback","__WEBPACK_IMPORTED_MODULE_0_hash_sum___default","template","__byu_webCommunity_components","elSettings","templateHash","nativeShadow","applyTemplateShady","applyTemplateNative","__WEBPACK_IMPORTED_MODULE_0_hash_sum__","x","_typeof","copy","isUndefinedOrNull","b","isArguments","deepEqual","opts","isBuffer","objectKeys","ka","kb","expected","Date","getTime","objEquiv","strict","propertyIsEnumerable","keys","_ENCODE_HTML_RULES","escapeFn","markup","_MATCH_HTML","encode_char","__output","push","__append","locals","hash","text","chr","sort","foldValue","seen","fold","foldObject","pad"],"mappings":"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","file":"components-compat.min.js","sourcesContent":[";(function() {\n\"use strict\";\n\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/******/(function (modules) {\n // webpackBootstrap\n /******/ // The module cache\n /******/var installedModules = {};\n /******/\n /******/ // The require function\n /******/function __webpack_require__(moduleId) {\n /******/\n /******/ // Check if module is in cache\n /******/if (installedModules[moduleId]) {\n /******/return installedModules[moduleId].exports;\n /******/\n }\n /******/ // Create a new module (and put it into the cache)\n /******/var module = installedModules[moduleId] = {\n /******/i: moduleId,\n /******/l: false,\n /******/exports: {}\n /******/ };\n /******/\n /******/ // Execute the module function\n /******/modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n /******/\n /******/ // Flag the module as loaded\n /******/module.l = true;\n /******/\n /******/ // Return the exports of the module\n /******/return module.exports;\n /******/\n }\n /******/\n /******/\n /******/ // expose the modules object (__webpack_modules__)\n /******/__webpack_require__.m = modules;\n /******/\n /******/ // expose the module cache\n /******/__webpack_require__.c = installedModules;\n /******/\n /******/ // identity function for calling harmony imports with the correct context\n /******/__webpack_require__.i = function (value) {\n return value;\n };\n /******/\n /******/ // define getter function for harmony exports\n /******/__webpack_require__.d = function (exports, name, getter) {\n /******/if (!__webpack_require__.o(exports, name)) {\n /******/Object.defineProperty(exports, name, {\n /******/configurable: false,\n /******/enumerable: true,\n /******/get: getter\n /******/ });\n /******/\n }\n /******/\n };\n /******/\n /******/ // getDefaultExport function for compatibility with non-harmony modules\n /******/__webpack_require__.n = function (module) {\n /******/var getter = module && module.__esModule ?\n /******/function getDefault() {\n return module['default'];\n } :\n /******/function getModuleExports() {\n return module;\n };\n /******/__webpack_require__.d(getter, 'a', getter);\n /******/return getter;\n /******/\n };\n /******/\n /******/ // Object.prototype.hasOwnProperty.call\n /******/__webpack_require__.o = function (object, property) {\n return Object.prototype.hasOwnProperty.call(object, property);\n };\n /******/\n /******/ // __webpack_public_path__\n /******/__webpack_require__.p = \"\";\n /******/\n /******/ // Load entry module and return exports\n /******/return __webpack_require__(__webpack_require__.s = 13);\n /******/\n})(\n/************************************************************************/\n/******/[\n/* 0 */\n/***/function (module, exports) {\n\n /*\n \tMIT License http://www.opensource.org/licenses/mit-license.php\n \tAuthor Tobias Koppers @sokra\n */\n // css base code, injected by the css-loader\n module.exports = function () {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n var result = [];\n for (var i = 0; i < this.length; i++) {\n var item = this[i];\n if (item[2]) {\n result.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n } else {\n result.push(item[1]);\n }\n }\n return result.join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function (modules, mediaQuery) {\n if (typeof modules === \"string\") modules = [[null, modules, \"\"]];\n var alreadyImportedModules = {};\n for (var i = 0; i < this.length; i++) {\n var id = this[i][0];\n if (typeof id === \"number\") alreadyImportedModules[id] = true;\n }\n for (i = 0; i < modules.length; i++) {\n var item = modules[i];\n // skip already imported module\n // this implementation is not 100% perfect for weird media query combinations\n // when a module is imported multiple times with different media queries.\n // I hope this will never occur (Hey this way we have smaller bundles)\n if (typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n if (mediaQuery && !item[2]) {\n item[2] = mediaQuery;\n } else if (mediaQuery) {\n item[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n }\n list.push(item);\n }\n }\n };\n return list;\n };\n\n /***/\n},\n/* 1 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"a\", function () {\n return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"];\n });\n /* unused harmony reexport matchesSelector */\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"c\", function () {\n return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"];\n });\n /* harmony reexport (binding) */__webpack_require__.d(__webpack_exports__, \"b\", function () {\n return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"];\n });\n /**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n /***/\n},\n/* 2 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = matchesSelector;\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function matchesSelector(el, selector) {\n var proto = Element.prototype;\n var actual = proto.matches || proto.matchesSelector || proto.mozMatchesSelector || proto.msMatchesSelector || proto.oMatchesSelector || proto.webkitMatchesSelector || function (s) {\n var doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n }\n\n /***/\n},\n/* 3 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var BYUFooterActionButton = function (_HTMLElement) {\n _inherits(BYUFooterActionButton, _HTMLElement);\n\n function BYUFooterActionButton() {\n _classCallCheck(this, BYUFooterActionButton);\n\n var _this = _possibleConstructorReturn(this, (BYUFooterActionButton.__proto__ || Object.getPrototypeOf(BYUFooterActionButton)).call(this));\n\n _this.attachShadow({ mode: 'open' });\n return _this;\n }\n\n _createClass(BYUFooterActionButton, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\n }\n }]);\n\n return BYUFooterActionButton;\n }(HTMLElement);\n\n window.customElements.define('byu-footer-action-button', BYUFooterActionButton);\n window.BYUFooterActionButton = BYUFooterActionButton;\n\n /***/\n},\n/* 4 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var BYUFooterColumn = function (_HTMLElement2) {\n _inherits(BYUFooterColumn, _HTMLElement2);\n\n function BYUFooterColumn() {\n _classCallCheck(this, BYUFooterColumn);\n\n var _this2 = _possibleConstructorReturn(this, (BYUFooterColumn.__proto__ || Object.getPrototypeOf(BYUFooterColumn)).call(this));\n\n _this2.attachShadow({ mode: 'open' });\n return _this2;\n }\n\n _createClass(BYUFooterColumn, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\n }\n }]);\n\n return BYUFooterColumn;\n }(HTMLElement);\n\n window.customElements.define('byu-footer-column', BYUFooterColumn);\n window.BYUFooterColumn = BYUFooterColumn;\n\n /***/\n},\n/* 5 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var ATTR_FULL_WIDTH = 'full-width';\n var ATTR_MAX_WIDTH = 'max-width';\n var DEFAULT_MAX_WIDTH = '1200px';\n\n var BYUFooter = function (_HTMLElement3) {\n _inherits(BYUFooter, _HTMLElement3);\n\n function BYUFooter() {\n _classCallCheck(this, BYUFooter);\n\n var _this3 = _possibleConstructorReturn(this, (BYUFooter.__proto__ || Object.getPrototypeOf(BYUFooter)).call(this));\n\n _this3.attachShadow({ mode: 'open' });\n return _this3;\n }\n\n _createClass(BYUFooter, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var component = this;\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, function () {\n // always show the current year in the copyright message\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\n currentYear.innerHTML = new Date().getFullYear();\n\n var header = document.querySelector('byu-header');\n var observer = new MutationObserver(function (mutations) {\n component.updateWithHeaderAttributes(header);\n });\n\n // configuration of the observer:\n var config = { attributes: true };\n observer.observe(header, config);\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\n });\n }\n }, {\n key: 'updateWithHeaderAttributes',\n value: function updateWithHeaderAttributes(header) {\n\n // check the header for full-width or max-width attributes\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\n this.setAttribute(ATTR_FULL_WIDTH, '');\n } else {\n this.removeAttribute(ATTR_FULL_WIDTH);\n }\n\n var w = DEFAULT_MAX_WIDTH;\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\n w = header.getAttribute(ATTR_MAX_WIDTH);\n }\n this.setAttribute(ATTR_MAX_WIDTH, w);\n\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\n for (var i = 0; i < needsWidthSetting.length; i++) {\n needsWidthSetting[i].style.maxWidth = w;\n needsWidthSetting[i].style.maxWidth = w;\n }\n }\n }]);\n\n return BYUFooter;\n }(HTMLElement);\n\n window.customElements.define('byu-footer', BYUFooter);\n window.BYUFooter = BYUFooter;\n\n /***/\n},\n/* 6 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\n var ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\n var ATTR_FULL_WIDTH = 'full-width';\n var ATTR_MAX_WIDTH = 'max-width';\n var ATTR_MOBILE_VIEW = 'mobile-view';\n var ATTR_MENU_OPEN = 'menu-open';\n var ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\n var ATTR_NO_MENU = 'no-menu';\n var ATTR_HOME_URL = 'home-url';\n\n var DEFAULT_MOBILE_WIDTH = '1023px';\n var DEFAULT_MAX_WIDTH = '1200px';\n var DEFAULT_HOME_URL = 'https://byu.edu/';\n\n var BYUHeader = function (_HTMLElement4) {\n _inherits(BYUHeader, _HTMLElement4);\n\n function BYUHeader() {\n _classCallCheck(this, BYUHeader);\n\n var _this4 = _possibleConstructorReturn(this, (BYUHeader.__proto__ || Object.getPrototypeOf(BYUHeader)).call(this));\n\n _this4.attachShadow({ mode: 'open' });\n return _this4;\n }\n\n _createClass(BYUHeader, [{\n key: '_render',\n value: function _render() {\n var _this5 = this;\n\n var state = {\n mobile: this.inMobileView\n };\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), function () {\n _this5._renderState = state;\n _this5._addSlotListeners();\n _this5._notifyChildrenOfMobileState();\n _this5._addButtonListeners();\n _this5._checkIfMenuIsNeeded();\n _this5._applyHomeUrl();\n _this5._applyMaxWidth();\n _this5._applyMenuTransparencyListeners();\n });\n }\n }\n }, {\n key: '_checkIfMenuIsNeeded',\n value: function _checkIfMenuIsNeeded() {\n // check whether to show the mobile menu button\n var userSlot = this.shadowRoot.querySelector(\"#user\");\n var hasUserInfo = userSlot.assignedNodes().length !== 0;\n\n var menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\n var hasMenu = menuSlot.assignedNodes().length !== 0;\n\n var actionSlot = this.shadowRoot.querySelector('#actions');\n var hasActions = actionSlot.assignedNodes().length !== 0;\n\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\n\n if (menuSlot.assignedNodes().length < 4) {\n this.setAttribute('left-align', '');\n } else {\n this.removeAttribute('left-align');\n }\n }\n }, {\n key: '_addButtonListeners',\n value: function _addButtonListeners() {\n var _this6 = this;\n\n if (!this.inMobileView) {\n this.menuOpen = false;\n return;\n }\n var menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\n menuButton.addEventListener('click', function () {\n return _this6._toggleMenu();\n });\n }\n }, {\n key: '_toggleMenu',\n value: function _toggleMenu() {\n this.menuOpen = !this.menuOpen;\n }\n }, {\n key: '_addSlotListeners',\n value: function _addSlotListeners() {\n var _this7 = this;\n\n this._findAllSlots().forEach(function (each) {\n each.addEventListener('slotchange', function (event) {\n _this7._notifyChildrenOfMobileState();\n _this7._checkIfMenuIsNeeded();\n _this7._applyMenuTransparencyListeners();\n });\n });\n }\n }, {\n key: '_notifyChildrenOfMobileState',\n value: function _notifyChildrenOfMobileState() {\n var kids = this._findAllDistributedChildren();\n if (this.inMobileView) {\n kids.forEach(function (each) {\n each.setAttribute(ATTR_MOBILE_VIEW, '');\n each.classList.add(ATTR_MOBILE_VIEW);\n });\n } else {\n kids.forEach(function (each) {\n each.removeAttribute(ATTR_MOBILE_VIEW);\n each.classList.remove(ATTR_MOBILE_VIEW);\n });\n }\n }\n }, {\n key: '_findAllSlots',\n value: function _findAllSlots() {\n var slots = this.shadowRoot.querySelectorAll('slot');\n var arr = [];\n for (var i = 0; i < slots.length; ++i) {\n arr.push(slots[i]);\n }\n return arr;\n }\n }, {\n key: '_findAllDistributedChildren',\n value: function _findAllDistributedChildren() {\n return this._findAllSlots().map(function (s) {\n return s.assignedNodes().filter(function (n) {\n return n instanceof HTMLElement;\n });\n }).reduce(function (agg, each) {\n return agg.concat(each);\n }, []);\n }\n }, {\n key: 'connectedCallback',\n value: function connectedCallback() {\n //This is a hack to ensure that the right defaults get applied.\n this.mobileMaxWidth = this.mobileMaxWidth;\n this._applyMobileWidth();\n this._render();\n this.maxWidth = this.maxWidth;\n\n var header = this;\n setTimeout(function () {\n var menu = header.shadowRoot.querySelector('#mobileMenu');\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\n console.log(menu.innerHTML);\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\n header.removeAttribute(ATTR_MENU_OPEN);\n }\n });\n }, 0);\n\n if (this.hasAttribute('full-width')) {\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\n }\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n switch (attr) {\n case ATTR_MOBILE_MAX_WIDTH:\n this._applyMobileWidth();\n return;\n case ATTR_MAX_WIDTH:\n this._applyMaxWidth();\n return;\n case ATTR_MOBILE_VIEW:\n this._render();\n return;\n case ATTR_MENU_OPEN:\n this._applyMenuOpen();\n return;\n case ATTR_HOME_URL:\n this._applyHomeUrl();\n return;\n }\n }\n }, {\n key: '_applyMenuOpen',\n value: function _applyMenuOpen() {\n var menu = this.shadowRoot.querySelector('#mobileMenu');\n if (!menu) return;\n if (this.menuOpen) {\n menu.style.maxHeight = menu.scrollHeight + 'px';\n this.classList.add('byu-header-menu-open');\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\n } else {\n menu.style.maxHeight = null;\n this.classList.remove('byu-header-menu-open');\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\n }\n }\n }, {\n key: '_applyHomeUrl',\n value: function _applyHomeUrl() {\n var aTag = this.shadowRoot.querySelector('#home-url');\n if (aTag) {\n //Filter out cases where we haven't fully initialized yet\n aTag.setAttribute('href', this.homeUrl);\n }\n }\n }, {\n key: '_applyMobileWidth',\n value: function _applyMobileWidth() {\n var desiredQuery = this.mobileMediaQuery;\n var q = this._mobileQuery;\n if (q) {\n if (q.media === desiredQuery) {\n //Nothing has changed, bail!\n return;\n } else {\n q.removeListener(this._mobileQueryListener);\n this._mobileQuery = null;\n }\n }\n this._mobileQuery = q = window.matchMedia(desiredQuery);\n this._mobileQueryListener = this._handleMobileChange.bind(this);\n\n q.addListener(this._mobileQueryListener);\n this._mobileQueryListener(q);\n }\n }, {\n key: '_handleMobileChange',\n value: function _handleMobileChange(mql) {\n this.inMobileView = mql.matches;\n }\n }, {\n key: '_applyMaxWidth',\n value: function _applyMaxWidth() {\n\n if (!this.inMobileView) {\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\n for (var i = 0; i < needsWidthSetting.length; i++) {\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\n }\n }\n var desiredQuery = this.maxWidthMediaQuery;\n var q = this._maxWidthQuery;\n if (q) {\n if (q.media === desiredQuery) {\n //Nothing has changed, bail!\n return;\n } else {\n q.removeListener(this._maxWidthQueryListener);\n this._maxWidthQuery = null;\n }\n }\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\n\n q.addListener(this._maxWidthQueryListener);\n this._maxWidthQueryListener(q);\n }\n }, {\n key: '_handleMaxWidthChange',\n value: function _handleMaxWidthChange(mql) {\n if (mql.matches) {\n this.classList.add('below-max-width');\n } else {\n this.classList.remove('below-max-width');\n }\n }\n }, {\n key: '_applyMenuTransparencyListeners',\n value: function _applyMenuTransparencyListeners() {\n var _this8 = this;\n\n var navSlot = this.shadowRoot.querySelector('#navbarMenu');\n var assigned = navSlot.assignedNodes().filter(function (n) {\n return n.nodeType === Node.ELEMENT_NODE;\n });\n if (assigned.length === 0) {\n this._applyMenuTransparency(null);\n return;\n }\n var menu = assigned[0];\n if (!menu.__byu_header_transparency_listener) {\n var obs = new MutationObserver(function (e) {\n _this8._applyMenuTransparency(menu);\n });\n //noinspection JSCheckFunctionSignatures\n obs.observe(menu, { attributes: true, attributeFilter: ['class'] });\n menu.__byu_header_transparency_listener = obs;\n }\n this._applyMenuTransparency(menu);\n }\n }, {\n key: '_applyMenuTransparency',\n value: function _applyMenuTransparency(element) {\n var transparent = element && element.classList.contains('transparent');\n if (transparent) {\n //Can't use .toggle thanks to IE 11. Thanks, IE!\n this.classList.add('menu-transparent');\n } else {\n this.classList.remove('menu-transparent');\n }\n }\n }, {\n key: 'mobileMaxWidth',\n get: function get() {\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\n } else {\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\n }\n }\n }, {\n key: 'maxWidth',\n get: function get() {\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MAX_WIDTH, val);\n } else {\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\n }\n }\n }, {\n key: 'inMobileView',\n get: function get() {\n return this.hasAttribute(ATTR_MOBILE_VIEW);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MOBILE_VIEW, '');\n } else {\n this.removeAttribute(ATTR_MOBILE_VIEW);\n }\n }\n }, {\n key: 'menuOpen',\n get: function get() {\n return this.hasAttribute(ATTR_MENU_OPEN);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MENU_OPEN, '');\n } else {\n this.removeAttribute(ATTR_MENU_OPEN);\n }\n }\n }, {\n key: 'keepMenuOpen',\n get: function get() {\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\n } else {\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\n }\n }\n }, {\n key: 'noMenu',\n get: function get() {\n return this.hasAttribute(ATTR_NO_MENU);\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_NO_MENU, '');\n } else {\n this.removeAttribute(ATTR_NO_MENU);\n }\n }\n }, {\n key: 'homeUrl',\n get: function get() {\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\n },\n set: function set(val) {\n this.setAttribute(ATTR_HOME_URL, val);\n }\n }, {\n key: 'mobileMediaQuery',\n get: function get() {\n return '(max-width: ' + this.mobileMaxWidth + ')';\n }\n }, {\n key: 'maxWidthMediaQuery',\n get: function get() {\n return '(max-width: ' + this.maxWidth + ')';\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\n }\n }]);\n\n return BYUHeader;\n }(HTMLElement);\n\n window.customElements.define('byu-header', BYUHeader);\n window.BYUHeader = BYUHeader;\n\n /***/\n},\n/* 7 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\n var ATTR_ACTIVE_SELECTOR = \"active-selector\";\n var DEFAULT_ACTIVE_SELECTOR = \".active\";\n\n var BYUMenu = function (_HTMLElement5) {\n _inherits(BYUMenu, _HTMLElement5);\n\n _createClass(BYUMenu, [{\n key: 'activeSelector',\n get: function get() {\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\n },\n set: function set(val) {\n if (val) {\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\n } else {\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\n }\n }\n }, {\n key: 'showMore',\n get: function get() {\n return isShowingMoreMenu(this);\n },\n set: function set(show) {\n var el = this.shadowRoot.querySelector('.byu-menu-more-menu');\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\n toggleClass(el, 'byu-menu-more-expanded', show);\n }\n }]);\n\n function BYUMenu() {\n _classCallCheck(this, BYUMenu);\n\n // always call super first\n var _this9 = _possibleConstructorReturn(this, (BYUMenu.__proto__ || Object.getPrototypeOf(BYUMenu)).call(this));\n\n _this9.attachShadow({ mode: 'open' });\n return _this9;\n }\n\n _createClass(BYUMenu, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n render(this, true);\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n switch (attr) {\n case ATTR_ACTIVE_SELECTOR:\n render(this, false);\n return;\n }\n }\n }, {\n key: '_menuSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#byu-menu-items');\n }\n }, {\n key: '_menuMoreSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_ACTIVE_SELECTOR];\n }\n }]);\n\n return BYUMenu;\n }(HTMLElement);\n\n function render(component, force) {\n var activeSelector = component.activeSelector;\n if (!force && activeSelector === component._renderedActiveSelector) {\n return;\n }\n\n var css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\n var tmpl = '' + __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, function () {\n component._renderedActiveSelector = activeSelector;\n updateMoreMenuState(component);\n addSlotListeners(component);\n // when the more button is clicked then show the more menu\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\n component.showMore = true;\n });\n });\n }\n\n function addSlotListeners(component) {\n component.shadowRoot.querySelector('slot').addEventListener('slotchange', function (e) {\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\n setTimeout(function () {\n return function () {\n updateMoreMenuState(component);\n };\n });\n });\n }\n\n function enableHideClick(component) {\n\n var fn = function fn() {\n document.removeEventListener('click', fn);\n component.showMore = false;\n };\n\n setTimeout(function () {\n document.addEventListener('click', fn);\n });\n }\n\n function hasClass(el, className) {\n var classes = el.className.split(/ +/);\n return classes.indexOf(className) !== -1;\n }\n\n function isShowingMoreMenu(component) {\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\n }\n\n function toggleClass(el, className, value) {\n var classes = el.className.split(/ +/);\n var index = classes.indexOf(className);\n var exists = index !== -1;\n var setTo = arguments.length > 2 ? arguments[2] : !exists;\n if (setTo && !exists) {\n classes.push(className);\n } else if (!setTo && exists) {\n classes.splice(index, 1);\n }\n el.className = classes.join(' ');\n }\n\n function updateMoreMenuState(component) {\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\n var filteredChildren = children.filter(function (node) {\n return node instanceof HTMLElement;\n });\n var filteredMoreChildren = moreChildren.filter(function (node) {\n return node instanceof HTMLElement;\n });\n var length = filteredChildren.length + filteredMoreChildren.length;\n var hasOverflow = length > 6;\n var nav = component.shadowRoot.querySelector('.outer-nav');\n\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\n\n if (hasOverflow) {\n for (var i = 5; i < filteredChildren.length; i++) {\n filteredChildren[i].setAttribute('slot', 'more');\n }\n } else if (length === 6) {\n filteredChildren[5].setAttribute('slot', '');\n }\n\n if (length < 4) {\n console.log(length);\n component.setAttribute('left-align', '');\n } else {\n component.removeAttribute('left-align');\n }\n }\n\n window.customElements.define('byu-menu', BYUMenu);\n window.BYUMenu = BYUMenu;\n\n /***/\n},\n/* 8 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n\n var _DEFAULT_ACTION_TARGE;\n\n var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\n\n var CLASS_SELECTED_INPUT = '__byu-search-selected-input';\n\n var ATTR_OLD_SEARCH_HANDLER = 'onsearch';\n var ATTR_SEARCH_HANDLER = 'onbyusearch';\n var ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\n var ATTR_ACTION = 'action';\n var ATTR_ACTION_TARGET = 'action-target';\n\n var ACTION_SUBMIT_FORM = 'submit-form';\n var ACTION_CLICK = 'click';\n var ACTION_NAVIGATE = 'navigate';\n\n var DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\n var DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\n\n var EVENT_TYPE = 'byu-search';\n\n var DEFAULT_ACTION_TARGET = (_DEFAULT_ACTION_TARGE = {}, _defineProperty(_DEFAULT_ACTION_TARGE, ACTION_SUBMIT_FORM, DEFAULT_ACTION_TARGET_SUBMIT_FORM), _defineProperty(_DEFAULT_ACTION_TARGE, ACTION_CLICK, DEFAULT_ACTION_TARGET_CLICK), _DEFAULT_ACTION_TARGE);\n\n var DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\n\n var ByuSearch = function (_HTMLElement6) {\n _inherits(ByuSearch, _HTMLElement6);\n\n function ByuSearch() {\n _classCallCheck(this, ByuSearch);\n\n // always call super first\n var _this10 = _possibleConstructorReturn(this, (ByuSearch.__proto__ || Object.getPrototypeOf(ByuSearch)).call(this));\n\n _this10.attachShadow({ mode: 'open' });\n return _this10;\n }\n\n _createClass(ByuSearch, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this11 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, function () {\n _this11._initialized = true;\n\n _this11._input = lookupAndConfigureInputElement(_this11, _this11.searchInputSelector);\n\n setupButtonSearchDispatcher(_this11);\n setupSearchListeners(_this11);\n\n setupSlotListener(_this11);\n });\n }\n }, {\n key: 'disconnectedCallback',\n value: function disconnectedCallback() {\n if (this._input) {\n teardownInputElement(this, this._input);\n }\n\n teardownSearchListeners(this);\n }\n }, {\n key: 'search',\n value: function search() {\n var el = this._input;\n if (!el) {\n throw new Error('Unable to perform search; no search element matching the selector \\'' + this.searchInputSelector + '\\' can be found!');\n }\n var value = el.value;\n if (!value) return;\n\n var event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, { search: value });\n\n var cancelled = !this.dispatchEvent(event);\n if (cancelled) return;\n\n if (this.action) {\n runPredefinedAction(this, value);\n }\n }\n }, {\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldValue, newValue) {\n if (!this._initialized) return;\n switch (attr) {\n case ATTR_SEARCH_INPUT_SELECTOR:\n if (this._input) {\n teardownInputElement(this, this._input);\n }\n\n this._input = lookupAndConfigureInputElement(this, newValue);\n\n return;\n //All other attrs are lazily looked up, as needed.\n }\n }\n }, {\n key: 'onbyusearch',\n get: function get() {\n return this.getAttribute(ATTR_SEARCH_HANDLER);\n },\n set: function set(value) {\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\n }\n }, {\n key: 'onsearch',\n get: function get() {\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\n },\n set: function set(value) {\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\n }\n }, {\n key: 'searchInputSelector',\n set: function set(value) {\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\n },\n get: function get() {\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\n }\n }, {\n key: 'action',\n set: function set(value) {\n this.setAttribute(ATTR_ACTION, value);\n },\n get: function get() {\n //Defaults to null\n return this.getAttribute(ATTR_ACTION);\n }\n }, {\n key: 'actionTarget',\n set: function set(value) {\n this.setAttribute(ATTR_ACTION_TARGET, value);\n },\n get: function get() {\n //Default depends on action target value\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\n }\n }, {\n key: '_searchSlot',\n get: function get() {\n return this.shadowRoot.querySelector('#search');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n return [ATTR_SEARCH_INPUT_SELECTOR];\n }\n }]);\n\n return ByuSearch;\n }(HTMLElement);\n\n window.customElements.define('byu-search', ByuSearch);\n window.ByuSearch = ByuSearch;\n\n function setupSlotListener(search) {\n search._searchSlot.addEventListener('slotchange', function (e) {\n handleSlotChange(search, e);\n });\n }\n\n function handleSlotChange(search, event) {\n var oldInput = search._input;\n var newInput = lookupSearchInput(search);\n\n if (oldInput === newInput) return;\n\n search._input = newInput;\n\n if (oldInput) {\n teardownInputElement(search, oldInput);\n }\n if (newInput) {\n setupInputElement(search, newInput);\n } else {\n console.error('[byu-search] WARNING! Unable to find a search input element using the selector \\'' + search.searchInputSelector + '\\' on ', search);\n }\n }\n\n function lookupSearchInput(search, selector) {\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector);\n }\n\n function lookupAndConfigureInputElement(search, selector) {\n var input = lookupSearchInput(search, selector);\n\n if (input) {\n setupInputElement(search, input);\n } else {\n console.error('[byu-search] WARNING! Unable to find a search input element using the selector \\'' + selector + '\\' on ', search);\n }\n return input;\n }\n\n function setupInputElement(search, input) {\n applyStyleHelpers(search, input);\n applyA11yHelpers(search, input);\n setupEnterKeySearchDispatcher(search, input);\n }\n\n function teardownInputElement(search, input) {\n removeStyleHelpers(search, input);\n removeA11yHelpers(search, input);\n teardownEnterKeySearchDispatcher(search, input);\n }\n\n function runPredefinedAction(search, value) {\n var action = search.action;\n\n switch (action) {\n case ACTION_SUBMIT_FORM:\n runSubmitFormAction(search, value);\n break;\n case ACTION_CLICK:\n runClickAction(search, value);\n break;\n case ACTION_NAVIGATE:\n runNavigateAction(search, value);\n break;\n default:\n throw new Error('Invalid value for ' + ATTR_ACTION + ': \\'' + action + '\\'');\n }\n }\n\n function runSubmitFormAction(search, value) {\n var target = search.actionTarget;\n\n var form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\n\n if (!form) {\n throw new Error('Unable to find target for \\'submit-form\\' action using selector \\'' + target + '\\'');\n }\n\n if (!(form instanceof HTMLFormElement)) {\n throw new Error('Element found by selector \\'' + target + '\\' must be a , but was \\'' + form.localName + '\\'');\n }\n\n form.submit();\n }\n\n function runClickAction(search, value) {\n var target = search.actionTarget;\n\n var button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\n\n if (!button) {\n throw new Error('Unable to find target for \\'click\\' action using selector \\'' + target + '\\'');\n }\n\n button.click();\n }\n\n function runNavigateAction(search, value) {\n var target = search.actionTarget;\n\n if (!target) {\n throw new Error('When using action=\"navigate\", you must specify an action-target');\n }\n\n if (target.indexOf('${search}')) {\n console.warn('[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain ${search} will not include the search terms in the URL.', search);\n }\n\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\n }\n\n function applyStyleHelpers(search, input) {\n input.classList.add(CLASS_SELECTED_INPUT);\n }\n\n function removeStyleHelpers(search, input) {\n input.classList.remove(CLASS_SELECTED_INPUT);\n }\n\n // For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\n function applyA11yHelpers(search, input) {\n if (input.title && input.placeholder) return;\n\n var helped = [];\n\n if (!input.title && !input.placeholder) {\n input.title = input.placeholder = 'Search';\n helped.push('title', 'placeholder');\n } else if (input.title) {\n input.placeholder = input.title;\n helped.push('placeholder');\n } else {\n input.title = input.placeholder;\n helped.push('title');\n }\n\n input.__byu_search_a11yHelpersApplied = helped;\n }\n\n function removeA11yHelpers(search, input) {\n var helpers = input.__byu_search_a11yHelpersApplied;\n if (!helpers) return;\n\n if (helpers.includes('title')) {\n input.title = null;\n }\n if (helpers.includes('placeholder')) {\n input.placeholder = null;\n }\n delete input.__byu_search_a11yHelpersApplied;\n }\n\n function setupButtonSearchDispatcher(search) {\n search.shadowRoot.querySelector('#search-button').addEventListener('click', function () {\n search.search();\n });\n }\n\n function setupEnterKeySearchDispatcher(search, input) {\n var keypress = input.__byu_search_keyObserver = function (e) {\n if (e.keyCode === 13) {\n search.search();\n }\n };\n input.addEventListener('keypress', keypress, false);\n }\n\n function teardownEnterKeySearchDispatcher(search, input) {\n var keypress = input.__byu_search_keyObserver;\n if (keypress) input.removeEventListener('keypress', keypress, false);\n }\n\n function setupSearchListeners(search) {\n var handler = search.__onbyusearchHandler = function (event) {\n var name = search.onbyusearch;\n if (!name) return;\n var handler = window[name];\n if (!handler) {\n throw new Error('Unable to find a global function named \\'' + name + '\\'');\n }\n handler.call(search, event);\n };\n\n search.addEventListener(EVENT_TYPE, handler, false);\n\n var legacyHandler = search.__onsearchLegacyHandler = function (event) {\n var name = search.onsearch;\n if (!name) return;\n\n var handler = window[name];\n if (!handler) {\n throw new Error('Unable to find a global function named \\'' + name + '\\'');\n }\n handler.call(search, event.detail.search, event);\n };\n\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\n }\n\n function teardownSearchListeners(search) {\n if (search.__onbyusearchHandler) {\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\n }\n if (search.__onsearchLegacyHandler) {\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\n }\n }\n\n function defaultActionTarget(action) {\n if (!action) return null;\n return DEFAULT_ACTION_TARGET[action];\n }\n\n /***/\n},\n/* 9 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\n var SOCIAL_NAMES = {\n 'facebook': 'Facebook',\n 'twitter': 'Twitter',\n 'instagram': 'Instagram',\n 'youtube': 'YouTube',\n 'pinterest': 'Pinterest',\n 'google-plus': 'Google+',\n 'googleplus': 'Google+',\n 'gplus': 'Google+',\n 'linkedin': 'LinkedIn',\n 'rss': 'RSS',\n 'snapchat': 'Snapchat',\n 'podcast': 'Podcast'\n };\n\n var SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\n\n var BYUSocialMediaLinks = function (_HTMLElement7) {\n _inherits(BYUSocialMediaLinks, _HTMLElement7);\n\n function BYUSocialMediaLinks() {\n _classCallCheck(this, BYUSocialMediaLinks);\n\n var _this12 = _possibleConstructorReturn(this, (BYUSocialMediaLinks.__proto__ || Object.getPrototypeOf(BYUSocialMediaLinks)).call(this));\n\n _this12.attachShadow({ mode: 'open' });\n return _this12;\n }\n\n _createClass(BYUSocialMediaLinks, [{\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this13 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, function () {\n var main = _this13.shadowRoot.querySelector('#social-main');\n applyTitleToChildren(main);\n\n SOCIAL_IDS.forEach(function (id) {\n var slot = _this13.shadowRoot.querySelector('#social-deprecated-' + id);\n if (!slot) return;\n\n applyTitleToChildren(slot);\n //We're still supporting the old way, but it's deprecated and people should move on.\n if (slot.assignedNodes().length > 0) {\n console.log('[WARNING] byu-social-media-links: deprecated usage of slot=\"' + id + '\". Replace with class=\"' + id + '\":', _this13);\n }\n });\n });\n }\n }]);\n\n return BYUSocialMediaLinks;\n }(HTMLElement);\n\n window.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\n window.BYUSocialMediaLinks = BYUSocialMediaLinks;\n\n function applyTitleToChildren(slotElement) {\n var kids = slotElement.assignedNodes();\n kids.filter(function (k) {\n return k instanceof HTMLElement;\n })\n //Only grab the ones that don't already have a title\n .filter(function (k) {\n return !k.title;\n }).forEach(function (kid) {\n var kind = detectSocialKind(kid);\n if (!kind) {\n return;\n }\n //The spaces are a hack to avoid triggering adblockplus.\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\n });\n }\n\n function detectSocialKind(element) {\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\n for (var i = 0; i < SOCIAL_IDS.length; i++) {\n var id = SOCIAL_IDS[i];\n if (element.classList.contains(id)) {\n return id;\n }\n }\n return null;\n }\n\n /***/\n},\n/* 10 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony import */\n var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n /**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\n var ByuUserInfo = function (_HTMLElement8) {\n _inherits(ByuUserInfo, _HTMLElement8);\n\n function ByuUserInfo() {\n _classCallCheck(this, ByuUserInfo);\n\n var _this14 = _possibleConstructorReturn(this, (ByuUserInfo.__proto__ || Object.getPrototypeOf(ByuUserInfo)).call(this));\n\n var shadowRoot = _this14.attachShadow({ mode: 'open' });\n\n return _this14;\n }\n\n _createClass(ByuUserInfo, [{\n key: 'attributeChangedCallback',\n value: function attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n }, {\n key: 'connectedCallback',\n value: function connectedCallback() {\n var _this15 = this;\n\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, function () {\n _this15._addSlotListeners();\n _this15._addAriaAttributes();\n });\n }\n }, {\n key: '_addSlotListeners',\n value: function _addSlotListeners() {\n var _this16 = this;\n\n this._setHasUser();\n var userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', function (e) {\n _this16._setHasUser();\n });\n }\n }, {\n key: '_setHasUser',\n value: function _setHasUser() {\n var userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n } else {\n this.removeAttribute('has-user');\n }\n }\n }, {\n key: '_addAriaAttributes',\n value: function _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n }], [{\n key: 'observedAttributes',\n get: function get() {\n // return ['login-url'];\n }\n }]);\n\n return ByuUserInfo;\n }(HTMLElement);\n\n window.customElements.define('byu-user-info', ByuUserInfo);\n window.ByuUserInfo = ByuUserInfo;\n\n /***/\n},\n/* 11 */\n/***/function (module, exports) {\n\n module.exports = {\n \"name\": \"byuweb-components\",\n \"version\": \"1.1.1\",\n \"description\": \"Components to be used for byu web pages and applications.\",\n \"main\": \"\",\n \"scripts\": {\n \"build\": \"gulp build\",\n \"serve\": \"gulp watch\",\n \"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n },\n \"private\": true,\n \"author\": \"\",\n \"license\": \"Apache-2.0\",\n \"dependencies\": {\n \"byu-web-component-utils\": \"^0.4.2\",\n \"deep-equal\": \"^1.0.1\",\n \"sass-loader\": \"^6.0.6\"\n },\n \"devDependencies\": {\n \"browser-sync\": \"^2.18.6\",\n \"byu-web-component-build\": \"^0.2.3\",\n \"git-revision-webpack-plugin\": \"^2.5.1\",\n \"gulp\": \"^3.9.1\",\n \"gulp-rename\": \"^1.2.2\"\n }\n };\n\n /***/\n},\n/* 12 */\n/***/function (module, exports, __webpack_require__) {\n\n \"use strict\";\n\n var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__; /**\n * Created by ThatJoeMoore on 2/24/17\n */\n\n (function (root, factory) {\n if (true) {\n // AMD module\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = factory, __WEBPACK_AMD_DEFINE_RESULT__ = typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? __WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module) : __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if ((typeof exports === 'undefined' ? 'undefined' : _typeof(exports)) === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n })(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var tcon = {},\n // static class\n _transformClass = 'tcon-transform',\n\n\n // const\n DEFAULT_EVENTS = {\n transform: ['click'],\n revert: ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function getElementList(elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function getEventList(events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function setListeners(elements, events, remove) {\n var method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = events && events[prop] ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while (currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while (currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function handleEvent(event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function (element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function (element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function (element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n });\n\n /***/\n},\n/* 13 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n\n Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n /**\n * Created by ThatJoeMoore on 2/18/17\n */\n\n /*\n * Header Bits\n */\n\n /*\n * Footer Bits\n */\n\n console.log('--------------- Starting byu-theme-components ' + __WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"] + ' ---------------');\n\n /***/\n},\n/* 14 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = createEvent;\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, { detail: detail, cancelable: true, bubbles: true });\n }\n var evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n }\n\n /***/\n},\n/* 15 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = querySelectorSlot;\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n function querySelectorSlot(slot, selector) {\n var roots = slot.assignedNodes({ flatten: true }).filter(function (n) {\n return n.nodeType === Node.ELEMENT_NODE;\n });\n\n for (var i = 0, len = roots.length; i < len; i++) {\n var each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n var child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n }\n\n /***/\n},\n/* 16 */\n/***/function (module, __webpack_exports__, __webpack_require__) {\n\n \"use strict\";\n /* harmony export (immutable) */\n __webpack_exports__[\"a\"] = applyTemplate;\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n /* harmony import */var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n /*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n var TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\n function applyTemplate(element, elementName, template, callback) {\n var sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n var elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n }\n\n function applyTemplateShady(element, elementName, template, callback, sum) {\n var templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n var templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n var imported = document.importNode(templateElement.content, true);\n var shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function () {\n runAfterStamping(element, callback);\n });\n }\n\n function applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n }\n\n function runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n }\n\n /***/\n},\n/* 17 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 18 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 19 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 20 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 21 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 22 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 23 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 24 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 25 */\n/***/function (module, exports, __webpack_require__) {\n\n exports = module.exports = __webpack_require__(0)();\n // imports\n\n\n // module\n exports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n // exports\n\n\n /***/\n},\n/* 26 */\n/***/function (module, exports, __webpack_require__) {\n\n var pSlice = Array.prototype.slice;\n var objectKeys = __webpack_require__(28);\n var isArguments = __webpack_require__(27);\n\n var deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || (typeof actual === 'undefined' ? 'undefined' : _typeof(actual)) != 'object' && (typeof expected === 'undefined' ? 'undefined' : _typeof(expected)) != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n };\n\n function isUndefinedOrNull(value) {\n return value === null || value === undefined;\n }\n\n function isBuffer(x) {\n if (!x || (typeof x === 'undefined' ? 'undefined' : _typeof(x)) !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n }\n\n function objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {\n //happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length) return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i]) return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return (typeof a === 'undefined' ? 'undefined' : _typeof(a)) === (typeof b === 'undefined' ? 'undefined' : _typeof(b));\n }\n\n /***/\n},\n/* 27 */\n/***/function (module, exports) {\n\n var supportsArgumentsClass = function () {\n return Object.prototype.toString.call(arguments);\n }() == '[object Arguments]';\n\n exports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\n exports.supported = supported;\n function supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n };\n\n exports.unsupported = unsupported;\n function unsupported(object) {\n return object && (typeof object === 'undefined' ? 'undefined' : _typeof(object)) == 'object' && typeof object.length == 'number' && Object.prototype.hasOwnProperty.call(object, 'callee') && !Object.prototype.propertyIsEnumerable.call(object, 'callee') || false;\n };\n\n /***/\n},\n/* 28 */\n/***/function (module, exports) {\n\n exports = module.exports = typeof Object.keys === 'function' ? Object.keys : shim;\n\n exports.shim = shim;\n function shim(obj) {\n var keys = [];\n for (var key in obj) {\n keys.push(key);\n }return keys;\n }\n\n /***/\n},\n/* 29 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n\n escapeFn = escapeFn || function (markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n },\n _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [],\n __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n };\n\n /***/\n},\n/* 30 */\n/***/function (module, exports, __webpack_require__) {\n\n \"use strict\";\n\n function pad(hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n }\n\n function fold(hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = (hash << 5) - hash + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n }\n\n function foldObject(hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey(hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n }\n\n function foldValue(input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value === 'undefined' ? 'undefined' : _typeof(value));\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n }\n\n function toString(o) {\n return Object.prototype.toString.call(o);\n }\n\n function sum(o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n }\n\n module.exports = sum;\n\n /***/\n},\n/* 31 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 32 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"

\";\n\n /***/\n},\n/* 33 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n /***/\n},\n/* 34 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \" \";\n\n /***/\n},\n/* 35 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 36 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
\";\n\n /***/\n},\n/* 37 */\n/***/function (module, exports, __webpack_require__) {\n\n module.exports = \"
Sign In
Sign Out
\";\n\n /***/\n}]\n/******/);\n}());\n\n\n","/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\n\n\n\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\n\n(function (root, factory) {\n if (true) {\n // AMD module\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\n\n/*\n * Header Bits\n */\n\n\n\n\n\n/*\n * Footer Bits\n */\n\n\n\n\n\n\n\n\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap db575c1616d355860a86","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\"use strict\";\n\nimport template from \"./byu-user-info.html\";\nimport * as util from 'byu-web-component-utils';\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n util.applyTemplate(this, 'byu-user-info', template, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\"use strict\";\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD module\n define(factory);\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\"use strict\";\n\n/*\n * Header Bits\n */\nimport './byu-header/byu-header.js';\nimport './byu-menu/byu-menu.js';\nimport './byu-search/byu-search.js';\nimport './byu-user-info/byu-user-info.js';\n\n/*\n * Footer Bits\n */\n\nimport './byu-footer/byu-footer.js';\nimport './byu-footer-column/byu-footer-column.js';\nimport './byu-footer-action-button/byu-footer-action-button.js';\nimport './byu-social-media-links/byu-social-media-links.js';\n\nimport {version} from '../package.json';\n\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file diff --git a/dist/components.js b/dist/components.js index c8fb2e49..2bffff04 100644 --- a/dist/components.js +++ b/dist/components.js @@ -506,9 +506,11 @@ class BYUHeader extends HTMLElement { if (!menu) return; if (this.menuOpen) { menu.style.maxHeight = menu.scrollHeight + 'px'; + this.classList.add('byu-header-menu-open'); __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__["transform"])(this.shadowRoot.querySelector('.mobile-menu-button')); } else { menu.style.maxHeight = null; + this.classList.remove('byu-header-menu-open'); __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__["revert"])(this.shadowRoot.querySelector('.mobile-menu-button')); } } @@ -1348,71 +1350,71 @@ function detectSocialKind(element) { /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1); -/** - * Created by ThatJoeMoore on 11/7/16. - */ - - - - - -class ByuUserInfo extends HTMLElement { - - constructor() { - super(); - - let shadowRoot = this.attachShadow({mode: 'open'}); - - } - - - static get observedAttributes() { - // return ['login-url']; - } - - attributeChangedCallback(attr, oldval, newval) { - // switch (attr) { - // case 'login-url': - // this.loginUrl = newval; - // break; - // } - } - - connectedCallback() { - __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__["a" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => { - this._addSlotListeners(); - this._addAriaAttributes(); - }); - } - - _addSlotListeners() { - - this._setHasUser(); - const userSlot = this.shadowRoot.querySelector('#user-name'); - userSlot.addEventListener('slotchange', e => { - this._setHasUser(); - }); - } - - _setHasUser() { - const userSlot = this.shadowRoot.querySelector('#user-name'); - if (userSlot.assignedNodes().length > 0) { - this.setAttribute('has-user', ''); - } - else { - this.removeAttribute('has-user'); - } - } - - _addAriaAttributes() { - this.setAttribute('role', 'button'); - } - -} - -window.customElements.define('byu-user-info', ByuUserInfo); -window.ByuUserInfo = ByuUserInfo; - +/** + * Created by ThatJoeMoore on 11/7/16. + */ + + + + + +class ByuUserInfo extends HTMLElement { + + constructor() { + super(); + + let shadowRoot = this.attachShadow({mode: 'open'}); + + } + + + static get observedAttributes() { + // return ['login-url']; + } + + attributeChangedCallback(attr, oldval, newval) { + // switch (attr) { + // case 'login-url': + // this.loginUrl = newval; + // break; + // } + } + + connectedCallback() { + __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__["a" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => { + this._addSlotListeners(); + this._addAriaAttributes(); + }); + } + + _addSlotListeners() { + + this._setHasUser(); + const userSlot = this.shadowRoot.querySelector('#user-name'); + userSlot.addEventListener('slotchange', e => { + this._setHasUser(); + }); + } + + _setHasUser() { + const userSlot = this.shadowRoot.querySelector('#user-name'); + if (userSlot.assignedNodes().length > 0) { + this.setAttribute('has-user', ''); + } + else { + this.removeAttribute('has-user'); + } + } + + _addAriaAttributes() { + this.setAttribute('role', 'button'); + } + +} + +window.customElements.define('byu-user-info', ByuUserInfo); +window.ByuUserInfo = ByuUserInfo; + /***/ }), @@ -1451,197 +1453,197 @@ module.exports = { /***/ (function(module, exports, __webpack_require__) { "use strict"; -var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/** - * Created by ThatJoeMoore on 2/24/17 - */ - - -(function (root, factory) { - if (true) { - // AMD module +var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/** + * Created by ThatJoeMoore on 2/24/17 + */ + + +(function (root, factory) { + if (true) { + // AMD module !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) : __WEBPACK_AMD_DEFINE_FACTORY__), - __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); - } else if (typeof exports === 'object') { - // CommonJS-like environment (i.e. Node) - module.exports = factory(); - } else { - // Browser global - root.transformicons = factory(); - } -}(this || window, function () { - - // #################### - // MODULE TRANSFORMICON - // #################### - 'use strict'; - - var - tcon = {}, // static class - _transformClass = 'tcon-transform', - - // const - DEFAULT_EVENTS = { - transform : ['click'], - revert : ['click'] - }; - - // ############## - // private methods - // ############## - - /** - * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements. - * @private - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements - * @returns {array} Array of DOM elements - */ - var getElementList = function (elements) { - if (typeof elements === 'string') { - return Array.prototype.slice.call(document.querySelectorAll(elements)); - } else if (typeof elements === 'undefined' || elements instanceof Array) { - return elements; - } else { - return [elements]; - } - }; - - /** - * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames. - * @private - * - * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames - * @returns {array} Array of eventnames - */ - var getEventList = function (events) { - if (typeof events === 'string') { - return events.toLowerCase().split(' '); - } else { - return events; - } - }; - - /** - * Attach or remove transformicon events to one or more elements. - * @private - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed. - */ - var setListeners = function (elements, events, remove) { - var - method = (remove ? 'remove' : 'add') + 'EventListener', - elementList = getElementList(elements), - currentElement = elementList.length, - eventLists = {}; - - // get events or use defaults - for (var prop in DEFAULT_EVENTS) { - eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop]; - } - - // add or remove all events for all occasions to all elements - while(currentElement--) { - for (var occasion in eventLists) { - var currentEvent = eventLists[occasion].length; - while(currentEvent--) { - elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent); - } - } - } - }; - - /** - * Event handler for transform events. - * @private - * - * @param {object} event - event object - */ - var handleEvent = function (event) { - tcon.toggle(event.currentTarget); - }; - - // ############## - // public methods - // ############## - - /** - * Add transformicon behavior to one or more elements. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. - * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. - * @returns {transformicon} transformicon instance for chaining - */ - tcon.add = function (elements, events) { - setListeners(elements, events); - return tcon; - }; - - /** - * Remove transformicon behavior from one or more elements. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @param {object} [events] - An Object containing one or more special event definitions - * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. - * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. - * @returns {transformicon} transformicon instance for chaining - */ - tcon.remove = function (elements, events) { - setListeners(elements, events, true); - return tcon; - }; - - /** - * Put one or more elements in the transformed state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed - * @returns {transformicon} transformicon instance for chaining - */ - tcon.transform = function (elements) { - getElementList(elements).forEach(function(element) { - element.classList.add(_transformClass); - }); - return tcon; - }; - - /** - * Revert one or more elements to the original state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted - * @returns {transformicon} transformicon instance for chaining - */ - tcon.revert = function (elements) { - getElementList(elements).forEach(function(element) { - element.classList.remove(_transformClass); - }); - return tcon; - }; - - /** - * Toggles one or more elements between transformed and original state. - * @public - * - * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled - * @returns {transformicon} transformicon instance for chaining - */ - tcon.toggle = function (elements) { - getElementList(elements).forEach(function(element) { - tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element); - }); - return tcon; - }; - - return tcon; + __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); + } else if (typeof exports === 'object') { + // CommonJS-like environment (i.e. Node) + module.exports = factory(); + } else { + // Browser global + root.transformicons = factory(); + } +}(this || window, function () { + + // #################### + // MODULE TRANSFORMICON + // #################### + 'use strict'; + + var + tcon = {}, // static class + _transformClass = 'tcon-transform', + + // const + DEFAULT_EVENTS = { + transform : ['click'], + revert : ['click'] + }; + + // ############## + // private methods + // ############## + + /** + * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements. + * @private + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements + * @returns {array} Array of DOM elements + */ + var getElementList = function (elements) { + if (typeof elements === 'string') { + return Array.prototype.slice.call(document.querySelectorAll(elements)); + } else if (typeof elements === 'undefined' || elements instanceof Array) { + return elements; + } else { + return [elements]; + } + }; + + /** + * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames. + * @private + * + * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames + * @returns {array} Array of eventnames + */ + var getEventList = function (events) { + if (typeof events === 'string') { + return events.toLowerCase().split(' '); + } else { + return events; + } + }; + + /** + * Attach or remove transformicon events to one or more elements. + * @private + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed. + */ + var setListeners = function (elements, events, remove) { + var + method = (remove ? 'remove' : 'add') + 'EventListener', + elementList = getElementList(elements), + currentElement = elementList.length, + eventLists = {}; + + // get events or use defaults + for (var prop in DEFAULT_EVENTS) { + eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop]; + } + + // add or remove all events for all occasions to all elements + while(currentElement--) { + for (var occasion in eventLists) { + var currentEvent = eventLists[occasion].length; + while(currentEvent--) { + elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent); + } + } + } + }; + + /** + * Event handler for transform events. + * @private + * + * @param {object} event - event object + */ + var handleEvent = function (event) { + tcon.toggle(event.currentTarget); + }; + + // ############## + // public methods + // ############## + + /** + * Add transformicon behavior to one or more elements. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. + * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. + * @returns {transformicon} transformicon instance for chaining + */ + tcon.add = function (elements, events) { + setListeners(elements, events); + return tcon; + }; + + /** + * Remove transformicon behavior from one or more elements. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @param {object} [events] - An Object containing one or more special event definitions + * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space. + * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space. + * @returns {transformicon} transformicon instance for chaining + */ + tcon.remove = function (elements, events) { + setListeners(elements, events, true); + return tcon; + }; + + /** + * Put one or more elements in the transformed state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed + * @returns {transformicon} transformicon instance for chaining + */ + tcon.transform = function (elements) { + getElementList(elements).forEach(function(element) { + element.classList.add(_transformClass); + }); + return tcon; + }; + + /** + * Revert one or more elements to the original state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted + * @returns {transformicon} transformicon instance for chaining + */ + tcon.revert = function (elements) { + getElementList(elements).forEach(function(element) { + element.classList.remove(_transformClass); + }); + return tcon; + }; + + /** + * Toggles one or more elements between transformed and original state. + * @public + * + * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled + * @returns {transformicon} transformicon instance for chaining + */ + tcon.toggle = function (elements) { + getElementList(elements).forEach(function(element) { + tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element); + }); + return tcon; + }; + + return tcon; })); /***/ }), @@ -1660,31 +1662,31 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__); -/** - * Created by ThatJoeMoore on 2/18/17 - */ - - -/* - * Header Bits - */ - - - - - -/* - * Footer Bits - */ - - - - - - - - -console.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__["version"]} ---------------`); +/** + * Created by ThatJoeMoore on 2/18/17 + */ + + +/* + * Header Bits + */ + + + + + +/* + * Footer Bits + */ + + + + + + + + +console.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__["version"]} ---------------`); /***/ }), @@ -1909,7 +1911,7 @@ exports = module.exports = __webpack_require__(0)(); // module -exports.push([module.i, ".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}", ""]); +exports.push([module.i, ".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\"\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}", ""]); // exports diff --git a/dist/components.js.map b/dist/components.js.map index 46639563..fbf5e5df 100644 --- a/dist/components.js.map +++ b/dist/components.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap f34479c4d67cb2a18bae","webpack:///./~/css-loader/lib/css-base.js","webpack:///./~/byu-web-component-utils/index.js","webpack:///./~/byu-web-component-utils/lib/matchesSelector.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.js","webpack:///./components/byu-footer-column/byu-footer-column.js","webpack:///./components/byu-footer/byu-footer.js","webpack:///./components/byu-header/byu-header.js","webpack:///./components/byu-menu/byu-menu.js","webpack:///./components/byu-search/byu-search.js","webpack:///./components/byu-social-media-links/byu-social-media-links.js","webpack:///./components/byu-user-info/byu-user-info.js","webpack:///./package.json","webpack:///./components/byu-header/icons/transformicons.js","webpack:///./components/byu-theme-components.js","webpack:///./~/byu-web-component-utils/lib/createEvent.js","webpack:///./~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///./~/byu-web-component-utils/lib/templating.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///./components/byu-footer-column/byu-footer-column.scss","webpack:///./components/byu-footer/byu-footer.scss","webpack:///./components/byu-header/byu-header.scss","webpack:///./components/byu-menu/active-styles.scss","webpack:///./components/byu-menu/byu-menu.scss","webpack:///./components/byu-search/byu-search.scss","webpack:///./components/byu-social-media-links/byu-social-media-links.scss","webpack:///./components/byu-user-info/byu-user-info.scss","webpack:///./~/deep-equal/index.js","webpack:///./~/deep-equal/lib/is_arguments.js","webpack:///./~/deep-equal/lib/keys.js","webpack:///./components/byu-header/byu-header.ejs.html","webpack:///./~/hash-sum/hash-sum.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.html","webpack:///./components/byu-footer-column/byu-footer-column.html","webpack:///./components/byu-footer/byu-footer.html","webpack:///./components/byu-menu/byu-menu.html","webpack:///./components/byu-search/byu-search.html","webpack:///./components/byu-social-media-links/byu-social-media-links.html","webpack:///./components/byu-user-info/byu-user-info.html"],"names":[],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA,mDAA2C,cAAc;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA,wCAAwC,gBAAgB;AACxD,IAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACjDA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAOA;;;;;;;;ACfA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACjCA;;AAEA;AACA;;;AAGA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACnBA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;AClBA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa;;AAEb;AACA,0BAA0B;AAC1B;AACA,yDAAyD;AACzD,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,uBAAuB,8BAA8B;AACrD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;AC9DA;;AAEA;;AAEA;AACA;AAC2D;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;;AAET;AACA;AACA;AACA,K;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,8BAA8B,oBAAoB;AAClD;;AAEA;;AAEA;AACA;AACA,2BAA2B,8BAA8B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B,cAAc;AAC5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,+BAA+B,6CAA6C;AAC5E;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;;;;;;AC3WA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB;AAChB,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB,IAAI,UAAU,uDAAS;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4DAA4D,qCAAqC;AACjG,oEAAoE,qCAAqC;AACzG;AACA;AACA;;AAEA;;AAEA;AACA,uBAAuB,6BAA6B;AACpD;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;AC1JA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA,gBAAgB;AAChB,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,sDAAsD,4CAA4C,yBAAyB;AAC3H;AACA;AACA;;AAEA,8GAAkD,cAAc;;AAEhE;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,yGAAyG,2BAA2B;AACpI;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL,yGAAyG,SAAS;AAClH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,YAAY,KAAK,OAAO;AACzE;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,0FAA0F,OAAO;AACjG;;AAEA;AACA,sDAAsD,OAAO,+BAA+B,eAAe;AAC3G;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,oFAAoF,OAAO;AAC3F;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,0BAA0B,OAAO;AACjC,2GAA2G,OAAO;AAClH;;AAEA,6CAA6C,OAAO;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE,KAAK;AAC5E;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uEAAuE,KAAK;AAC5E;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACvXA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,+FAA+F,GAAG,yBAAyB,GAAG;AAC9H;AACA,aAAa;AACb,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC1EA;AAAA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,4CAA4C,aAAa;;AAEzD;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU,E;AACV;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;ACzBA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,MAAM;AACvB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,eAAe;AAC9B,iBAAiB,MAAM;AACvB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,eAAe;AAC9B,eAAe,eAAe;AAC9B,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,eAAe;AAC9B,eAAe,eAAe;AAC9B,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA,CAAC,G;;;;;;;;;;;;;;;;AC3LD;AAAA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEgB;;AAEhB,6DAA6D,uDAAQ;;;;;;;;ACxBrE;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sCAAsC,wCAAwC;AAC9E;AACA;AACA;AACA;AACA;;;;;;;;;ACzBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA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A+B,yBAAyB,mCAAmC,qBAAqB,6DAA6D,0BAA0B,wBAAwB,sBAAsB,qBAAqB,4BAA4B,wBAAwB,2BAA2B,6BAA6B,0BAA0B,iCAAiC,0BAA0B,cAAc,sBAAsB,4BAA4B,iBAAiB,0BAA0B,sBAAsB,gCAAgC,4BAA4B,gCAAgC,2BAA2B,2BAA2B,6BAA6B,0DAA0D,6BAA6B,iCAAiC,aAAa,gDAAgD,wBAAwB,uCAAuC,QAAQ,qCAAqC,QAAQ,OAAO,kDAAkD,oCAAoC,wBAAwB,sCAAsC,qGAAqG,6DAA6D,aAAa;;AAE33E;;;;;;;ACPA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,cAAc;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;;;;;;;AC7FA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,kBAAkB;AAClB,kBAAkB;AAClB,mBAAmB;AACnB,mBAAmB;AACnB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;ACnCA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;ACzDA,mI;;;;;;ACAA,yK;;;;;;ACAA,okBAAykB,uO;;;;;;ACAzkB,onB;;;;;;ACAA,kY;;;;;;ACAA,mtB;;;;;;ACAA,qjB","file":"components.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f34479c4d67cb2a18bae","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\"use strict\";\r\n\r\nimport template from \"./byu-user-info.html\";\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-user-info', template, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\"use strict\";\r\n\r\n(function (root, factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD module\r\n define(factory);\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\"use strict\";\r\n\r\n/*\r\n * Header Bits\r\n */\r\nimport './byu-header/byu-header.js';\r\nimport './byu-menu/byu-menu.js';\r\nimport './byu-search/byu-search.js';\r\nimport './byu-user-info/byu-user-info.js';\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\nimport './byu-footer/byu-footer.js';\r\nimport './byu-footer-column/byu-footer-column.js';\r\nimport './byu-footer-action-button/byu-footer-action-button.js';\r\nimport './byu-social-media-links/byu-social-media-links.js';\r\n\r\nimport {version} from '../package.json';\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap 78bd2a1ce070c96e9f9a","webpack:///./~/css-loader/lib/css-base.js","webpack:///./~/byu-web-component-utils/index.js","webpack:///./~/byu-web-component-utils/lib/matchesSelector.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.js","webpack:///./components/byu-footer-column/byu-footer-column.js","webpack:///./components/byu-footer/byu-footer.js","webpack:///./components/byu-header/byu-header.js","webpack:///./components/byu-menu/byu-menu.js","webpack:///./components/byu-search/byu-search.js","webpack:///./components/byu-social-media-links/byu-social-media-links.js","webpack:///./components/byu-user-info/byu-user-info.js","webpack:///./package.json","webpack:///./components/byu-header/icons/transformicons.js","webpack:///./components/byu-theme-components.js","webpack:///./~/byu-web-component-utils/lib/createEvent.js","webpack:///./~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///./~/byu-web-component-utils/lib/templating.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///./components/byu-footer-column/byu-footer-column.scss","webpack:///./components/byu-footer/byu-footer.scss","webpack:///./components/byu-header/byu-header.scss","webpack:///./components/byu-menu/active-styles.scss","webpack:///./components/byu-menu/byu-menu.scss","webpack:///./components/byu-search/byu-search.scss","webpack:///./components/byu-social-media-links/byu-social-media-links.scss","webpack:///./components/byu-user-info/byu-user-info.scss","webpack:///./~/deep-equal/index.js","webpack:///./~/deep-equal/lib/is_arguments.js","webpack:///./~/deep-equal/lib/keys.js","webpack:///./components/byu-header/byu-header.ejs.html","webpack:///./~/hash-sum/hash-sum.js","webpack:///./components/byu-footer-action-button/byu-footer-action-button.html","webpack:///./components/byu-footer-column/byu-footer-column.html","webpack:///./components/byu-footer/byu-footer.html","webpack:///./components/byu-menu/byu-menu.html","webpack:///./components/byu-search/byu-search.html","webpack:///./components/byu-social-media-links/byu-social-media-links.html","webpack:///./components/byu-user-info/byu-user-info.html"],"names":[],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA,mDAA2C,cAAc;;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;AChEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA,wCAAwC,gBAAgB;AACxD,IAAI;AACJ;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iBAAiB;AACjC;AACA;AACA;AACA;AACA,YAAY,oBAAoB;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;ACjDA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAOA;;;;;;;;ACfA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACjCA;;AAEA;AACA;;;AAGA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;ACnBA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;AClBA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa;;AAEb;AACA,0BAA0B;AAC1B;AACA,yDAAyD;AACzD,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,uBAAuB,8BAA8B;AACrD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;AC9DA;;AAEA;;AAEA;AACA;AAC2D;;AAE3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;;AAET;AACA;AACA;AACA,K;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,8BAA8B,oBAAoB;AAClD;;AAEA;;AAEA;AACA;AACA,2BAA2B,8BAA8B;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,8BAA8B,cAAc;AAC5C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,+BAA+B,6CAA6C;AAC5E;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;;;;;;AC7WA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,gBAAgB;AAChB,2BAA2B,eAAe;AAC1C;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB,IAAI,UAAU,uDAAS;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4DAA4D,qCAAqC;AACjG,oEAAoE,qCAAqC;AACzG;AACA;AACA;;AAEA;;AAEA;AACA,uBAAuB,6BAA6B;AACpD;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;AC1JA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA,gBAAgB;AAChB,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,sDAAsD,4CAA4C,yBAAyB;AAC3H;AACA;AACA;;AAEA,8GAAkD,cAAc;;AAEhE;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,yGAAyG,2BAA2B;AACpI;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,KAAK;AACL,yGAAyG,SAAS;AAClH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,YAAY,KAAK,OAAO;AACzE;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,0FAA0F,OAAO;AACjG;;AAEA;AACA,sDAAsD,OAAO,+BAA+B,eAAe;AAC3G;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,oFAAoF,OAAO;AAC3F;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,0BAA0B,OAAO;AACjC,2GAA2G,OAAO;AAClH;;AAEA,6CAA6C,OAAO;AACpD;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE,KAAK;AAC5E;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uEAAuE,KAAK;AAC5E;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACvXA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,2BAA2B,aAAa;AACxC;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,+FAA+F,GAAG,yBAAyB,GAAG;AAC9H;AACA,aAAa;AACb,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;AC1EA;AAAA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA,4CAA4C,aAAa;;AAEzD;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU,E;AACV;;AAEA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;;;;;;;AC/DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;ACzBA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,MAAM;AACvB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,eAAe;AAC9B,iBAAiB,MAAM;AACvB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,QAAQ;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,eAAe;AAC9B,eAAe,eAAe;AAC9B,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,eAAe,OAAO;AACtB,eAAe,eAAe;AAC9B,eAAe,eAAe;AAC9B,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,uBAAuB;AACtC,iBAAiB,cAAc;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA,CAAC,G;;;;;;;;;;;;;;;;AC3LD;AAAA;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEgB;;AAEhB,6DAA6D,uDAAQ;;;;;;;;ACxBrE;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sCAAsC,wCAAwC;AAC9E;AACA;AACA;AACA;AACA;;;;;;;;;ACzBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA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4CAA4C,WAAW,sGAAsG,qBAAqB,+BAA+B,yBAAyB,mCAAmC,qBAAqB,6DAA6D,0BAA0B,wBAAwB,sBAAsB,qBAAqB,4BAA4B,wBAAwB,2BAA2B,6BAA6B,0BAA0B,iCAAiC,0BAA0B,cAAc,sBAAsB,4BAA4B,iBAAiB,0BAA0B,sBAAsB,gCAAgC,4BAA4B,gCAAgC,2BAA2B,2BAA2B,6BAA6B,0DAA0D,6BAA6B,iCAAiC,aAAa,gDAAgD,wBAAwB,uCAAuC,QAAQ,qCAAqC,QAAQ,OAAO,kDAAkD,oCAAoC,wBAAwB,sCAAsC,qGAAqG,6DAA6D,aAAa;;AAE33E;;;;;;;ACPA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,cAAc;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,YAAY;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;;;;;;;AC7FA;AACA;AACA,CAAC;;AAED;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACnBA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;ACRA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,kBAAkB;AAClB,kBAAkB;AAClB,mBAAmB;AACnB,mBAAmB;AACnB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;ACnCA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;;;;;;ACzDA,mI;;;;;;ACAA,yK;;;;;;ACAA,okBAAykB,uO;;;;;;ACAzkB,onB;;;;;;ACAA,kY;;;;;;ACAA,mtB;;;;;;ACAA,qjB","file":"components.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 78bd2a1ce070c96e9f9a","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\"use strict\";\n\nimport template from \"./byu-user-info.html\";\nimport * as util from 'byu-web-component-utils';\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n util.applyTemplate(this, 'byu-user-info', template, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\"use strict\";\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD module\n define(factory);\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\"use strict\";\n\n/*\n * Header Bits\n */\nimport './byu-header/byu-header.js';\nimport './byu-menu/byu-menu.js';\nimport './byu-search/byu-search.js';\nimport './byu-user-info/byu-user-info.js';\n\n/*\n * Footer Bits\n */\n\nimport './byu-footer/byu-footer.js';\nimport './byu-footer-column/byu-footer-column.js';\nimport './byu-footer-action-button/byu-footer-action-button.js';\nimport './byu-social-media-links/byu-social-media-links.js';\n\nimport {version} from '../package.json';\n\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/components.min.js b/dist/components.min.js index edacc26a..db6930e9 100644 --- a/dist/components.min.js +++ b/dist/components.min.js @@ -1,2 +1,2 @@ -(function(t){function r(d){if(l[d])return l[d].exports;var p=l[d]={i:d,l:!1,exports:{}};return t[d].call(p.exports,p,p.exports,r),p.l=!0,p.exports}var l={};return r.m=t,r.c=l,r.i=function(d){return d},r.d=function(d,p,u){r.o(d,p)||Object.defineProperty(d,p,{configurable:!1,enumerable:!0,get:u})},r.n=function(d){var p=d&&d.__esModule?function(){return d['default']}:function(){return d};return r.d(p,'a',p),p},r.o=function(d,p){return Object.prototype.hasOwnProperty.call(d,p)},r.p='',r(r.s=13)})([function(t){t.exports=function(){var l=[];return l.toString=function(){for(var m,p=[],u=0;u{var v=g.shadowRoot.querySelector('#currentYear');v.innerHTML=new Date().getFullYear();var _=document.querySelector('byu-header'),A=new MutationObserver(function(){g.updateWithHeaderAttributes(_)});A.observe(_,{attributes:!0}),g.updateWithHeaderAttributes(_)})}updateWithHeaderAttributes(g){g.hasAttribute(m)?this.setAttribute(m,''):this.removeAttribute(m);var v='1200px';g.hasAttribute(h)&&(v=g.getAttribute(h)),this.setAttribute(h,v);for(var _=this.shadowRoot.querySelectorAll('.needs-width-setting'),A=0;A<_.length;A++)_[A].style.maxWidth=v,_[A].style.maxWidth=v}}window.customElements.define('byu-footer',y),window.BYUFooter=y},function(t,r,l){'use strict';var d=l(29),p=l.n(d),u=l(26),m=l.n(u),h=l(1),f=l(12),y=l.n(f);const g='mobile-max-width',_='max-width',A='mobile-view',S='menu-open',L='menu-keep-open',M='no-menu',z='home-url',H='1200px';class G extends HTMLElement{constructor(){super(),this.attachShadow({mode:'open'})}_render(){let B={mobile:this.inMobileView};u(B,this._renderState)||h.a(this,'byu-header',d(B),()=>{this._renderState=B,this._addSlotListeners(),this._notifyChildrenOfMobileState(),this._addButtonListeners(),this._checkIfMenuIsNeeded(),this._applyHomeUrl(),this._applyMaxWidth(),this._applyMenuTransparencyListeners()})}_checkIfMenuIsNeeded(){let B=this.shadowRoot.querySelector('#user'),C=0!==B.assignedNodes().length,T=this.shadowRoot.querySelector('#navbarMenu'),W=0!==T.assignedNodes().length,N=this.shadowRoot.querySelector('#actions'),I=0!==N.assignedNodes().length;this.noMenu=!(C||W||I),4>T.assignedNodes().length?this.setAttribute('left-align',''):this.removeAttribute('left-align')}_addButtonListeners(){if(!this.inMobileView)return void(this.menuOpen=!1);let B=this.shadowRoot.querySelector('.mobile-menu-button');B.addEventListener('click',()=>this._toggleMenu())}_toggleMenu(){this.menuOpen=!this.menuOpen}_addSlotListeners(){this._findAllSlots().forEach((B)=>{B.addEventListener('slotchange',()=>{this._notifyChildrenOfMobileState(),this._checkIfMenuIsNeeded(),this._applyMenuTransparencyListeners()})})}_notifyChildrenOfMobileState(){let B=this._findAllDistributedChildren();this.inMobileView?B.forEach((C)=>{C.setAttribute(A,''),C.classList.add(A)}):B.forEach((C)=>{C.removeAttribute(A),C.classList.remove(A)})}_findAllSlots(){let B=this.shadowRoot.querySelectorAll('slot'),C=[];for(let T=0;TB.assignedNodes().filter((C)=>C instanceof HTMLElement)).reduce((B,C)=>B.concat(C),[])}connectedCallback(){this.mobileMaxWidth=this.mobileMaxWidth,this._applyMobileWidth(),this._render(),this.maxWidth=this.maxWidth;const B=this;setTimeout(function(){const C=B.shadowRoot.querySelector('#mobileMenu');C&&C.addEventListener('click',function(){console.log(C.innerHTML),B.hasAttribute(A)&&B.hasAttribute(S)&&!B.hasAttribute(L)&&B.removeAttribute(S)})},0),this.hasAttribute('full-width')&&console.log('[byu-header] The \'full-width\' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended')}static get observedAttributes(){return[g,A,S,z,_]}attributeChangedCallback(B){return B===g?void this._applyMobileWidth():B===_?void this._applyMaxWidth():B===A?void this._render():B===S?void this._applyMenuOpen():B===z?void this._applyHomeUrl():void 0}_applyMenuOpen(){let B=this.shadowRoot.querySelector('#mobileMenu');B&&(this.menuOpen?(B.style.maxHeight=B.scrollHeight+'px',l.i(f.transform)(this.shadowRoot.querySelector('.mobile-menu-button'))):(B.style.maxHeight=null,l.i(f.revert)(this.shadowRoot.querySelector('.mobile-menu-button'))))}_applyHomeUrl(){let B=this.shadowRoot.querySelector('#home-url');B&&B.setAttribute('href',this.homeUrl)}get mobileMaxWidth(){return this.getAttribute(g)}set mobileMaxWidth(B){B?this.setAttribute(g,B):this.setAttribute(g,'1023px')}get maxWidth(){return this.getAttribute(_)||H}set maxWidth(B){B?this.setAttribute(_,B):this.setAttribute(_,H)}get inMobileView(){return this.hasAttribute(A)}set inMobileView(B){B?this.setAttribute(A,''):this.removeAttribute(A)}get menuOpen(){return this.hasAttribute(S)}set menuOpen(B){B?this.setAttribute(S,''):this.removeAttribute(S)}get keepMenuOpen(){return this.hasAttribute(L)}set keepMenuOpen(B){B?this.setAttribute(L,''):this.removeAttribute(L)}get noMenu(){return this.hasAttribute(M)}set noMenu(B){B?this.setAttribute(M,''):this.removeAttribute(M)}get homeUrl(){return this.getAttribute(z)||'https://byu.edu/'}set homeUrl(B){this.setAttribute(z,B)}_applyMobileWidth(){let B=this.mobileMediaQuery,C=this._mobileQuery;if(C){if(C.media===B)return;C.removeListener(this._mobileQueryListener),this._mobileQuery=null}this._mobileQuery=C=window.matchMedia(B),this._mobileQueryListener=this._handleMobileChange.bind(this),C.addListener(this._mobileQueryListener),this._mobileQueryListener(C)}_handleMobileChange(B){this.inMobileView=B.matches}get mobileMediaQuery(){return`(max-width: ${this.mobileMaxWidth})`}_applyMaxWidth(){if(!this.inMobileView)for(var B=this.shadowRoot.querySelectorAll('.needs-width-setting'),C=0;CW.nodeType===Node.ELEMENT_NODE);if(0===C.length)return void this._applyMenuTransparency(null);let T=C[0];if(!T.__byu_header_transparency_listener){let W=new MutationObserver(()=>{this._applyMenuTransparency(T)});W.observe(T,{attributes:!0,attributeFilter:['class']}),T.__byu_header_transparency_listener=W}this._applyMenuTransparency(T)}_applyMenuTransparency(B){let C=B&&B.classList.contains('transparent');C?this.classList.add('menu-transparent'):this.classList.remove('menu-transparent')}}window.customElements.define('byu-header',G),window.BYUHeader=G},function(t,r,l){'use strict';function d(E,H){let R=E.activeSelector;if(H||R!==E._renderedActiveSelector){let G=S.a.toString().replace('__byu-menu-active-placeholder__',R),B=`${v.a}`;_.a(E,'byu-menu',B,()=>{E._renderedActiveSelector=R,y(E),p(E),E.shadowRoot.querySelector('.byu-menu-more').addEventListener('click',function(){E.showMore=!0})})}}function p(E){E.shadowRoot.querySelector('slot').addEventListener('slotchange',()=>{setTimeout(()=>function(){y(E)})})}function u(E){const H=function(){document.removeEventListener('click',H),E.showMore=!1};setTimeout(function(){document.addEventListener('click',H)})}function m(E,H){const R=E.className.split(/ +/);return-1!==R.indexOf(H)}function h(E){return m(E.shadowRoot.querySelector('.byu-menu-more-menu'),'byu-menu-more-expanded')}function f(E,H){const G=E.className.split(/ +/),B=G.indexOf(H),C=-1!==B,T=2C?(console.log(C),E.setAttribute('left-align','')):E.removeAttribute('left-align')}var g=l(34),v=l.n(g),_=l(1),A=l(21),S=l.n(A);const L='active-selector',M='.active';class z extends HTMLElement{get activeSelector(){return this.getAttribute(L)||M}set activeSelector(E){E?this.setAttribute(L,E):this.setAttribute(L,M)}get showMore(){return h(this)}set showMore(E){const H=this.shadowRoot.querySelector('.byu-menu-more-menu');E&&!h(this)&&u(this),f(H,'byu-menu-more-expanded',E)}constructor(){super(),this.attachShadow({mode:'open'})}connectedCallback(){d(this,!0)}attributeChangedCallback(E){return E===L?void d(this,!1):void 0}static get observedAttributes(){return[L]}get _menuSlot(){return this.shadowRoot.querySelector('#byu-menu-items')}get _menuMoreSlot(){return this.shadowRoot.querySelector('#byu-menu-more-slot')}}window.customElements.define('byu-menu',z),window.BYUMenu=z},function(t,r,l){'use strict';function d(Z){Z._searchSlot.addEventListener('slotchange',(ee)=>{p(Z,ee)})}function p(Z){let te=Z._input,oe=u(Z);te===oe||(Z._input=oe,te&&f(Z,te),oe?h(Z,oe):console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${Z.searchInputSelector}' on `,Z))}function u(Z,ee){return W.c(Z._searchSlot,ee)}function m(Z,ee){let te=u(Z,ee);return te?h(Z,te):console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${ee}' on `,Z),te}function h(Z,ee){A(Z,ee),L(Z,ee),E(Z,ee)}function f(Z,ee){S(Z,ee),M(Z,ee),H(Z,ee)}function y(Z,ee){let te=Z.action;switch(te){case V:g(Z,ee);break;case Y:v(Z,ee);break;case P:_(Z,ee);break;default:throw new Error(`Invalid value for ${U}: '${te}'`);}}function g(Z){let te=Z.actionTarget,oe=W.c(Z._searchSlot,te);if(!oe)throw new Error(`Unable to find target for 'submit-form' action using selector '${te}'`);if(!(oe instanceof HTMLFormElement))throw new Error(`Element found by selector '${te}' must be a , but was '${oe.localName}'`);oe.submit()}function v(Z){let te=Z.actionTarget,oe=W.c(Z._searchSlot,te);if(!oe)throw new Error(`Unable to find target for 'click' action using selector '${te}'`);oe.click()}function _(Z,ee){let te=Z.actionTarget;if(!te)throw new Error('When using action="navigate", you must specify an action-target');te.indexOf('${search}')&&console.warn(`[byu-search] WARNING: Using action="navigate" with a target that does not contain \${search} will not include the search terms in the URL.`,Z),window.location.assign(te.replace('${search}',window.encodeURIComponent(ee)))}function A(Z,ee){ee.classList.add(N)}function S(Z,ee){ee.classList.remove(N)}function L(Z,ee){if(!(ee.title&&ee.placeholder)){let te=[];ee.title||ee.placeholder?ee.title?(ee.placeholder=ee.title,te.push('placeholder')):(ee.title=ee.placeholder,te.push('title')):(ee.title=ee.placeholder='Search',te.push('title','placeholder')),ee.__byu_search_a11yHelpersApplied=te}}function M(Z,ee){let te=ee.__byu_search_a11yHelpersApplied;te&&(te.includes('title')&&(ee.title=null),te.includes('placeholder')&&(ee.placeholder=null),delete ee.__byu_search_a11yHelpersApplied)}function z(Z){Z.shadowRoot.querySelector('#search-button').addEventListener('click',function(){Z.search()})}function E(Z,ee){let te=ee.__byu_search_keyObserver=function(oe){13===oe.keyCode&&Z.search()};ee.addEventListener('keypress',te,!1)}function H(Z,ee){let te=ee.__byu_search_keyObserver;te&&ee.removeEventListener('keypress',te,!1)}function R(Z){let ee=Z.__onbyusearchHandler=function(oe){let ie=Z.onbyusearch;if(ie){let re=window[ie];if(!re)throw new Error(`Unable to find a global function named '${ie}'`);re.call(Z,oe)}};Z.addEventListener($,ee,!1);let te=Z.__onsearchLegacyHandler=function(oe){let ie=Z.onsearch;if(ie){let re=window[ie];if(!re)throw new Error(`Unable to find a global function named '${ie}'`);re.call(Z,oe.detail.search,oe)}};Z.addEventListener($,te,!1)}function G(Z){Z.__onbyusearchHandler&&Z.removeEventListener($,Z.__onbyusearchHandler,!1),Z.__onsearchLegacyHandler&&Z.removeEventListener($,Z.__onsearchLegacyHandler,!1)}function B(Z){return Z?K[Z]:null}var C=l(35),T=l.n(C),W=l(1);const N='__byu-search-selected-input',I='onsearch',O='onbyusearch',j='search-input-selector',U='action',Q='action-target',V='submit-form',Y='click',P='navigate',$='byu-search',K={[V]:'form',[Y]:'button, input[type="submit"], input[type="button"]'};class X extends HTMLElement{constructor(){super(),this.attachShadow({mode:'open'})}connectedCallback(){W.a(this,'byu-search',T.a,()=>{this._initialized=!0,this._input=m(this,this.searchInputSelector),z(this),R(this),d(this)})}disconnectedCallback(){this._input&&f(this,this._input),G(this)}search(){let Z=this._input;if(!Z)throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);let ee=Z.value;if(ee){let te=W.b($,{search:ee}),oe=!this.dispatchEvent(te);oe||this.action&&y(this,ee)}}static get observedAttributes(){return[j]}attributeChangedCallback(Z,ee,te){if(this._initialized)return Z===j?(this._input&&f(this,this._input),void(this._input=m(this,te))):void 0}get onbyusearch(){return this.getAttribute(O)}set onbyusearch(Z){this.setAttribute(O,Z)}get onsearch(){return this.getAttribute(I)}set onsearch(Z){this.setAttribute(I,Z)}set searchInputSelector(Z){this.setAttribute(j,Z)}get searchInputSelector(){return this.getAttribute(j)||'input[type="search"], input[type="text"]'}set action(Z){this.setAttribute(U,Z)}get action(){return this.getAttribute(U)}set actionTarget(Z){this.setAttribute(Q,Z)}get actionTarget(){return this.getAttribute(Q)||B(this.action)}get _searchSlot(){return this.shadowRoot.querySelector('#search')}}window.customElements.define('byu-search',X),window.ByuSearch=X},function(t,r,l){'use strict';function d(v){let _=v.assignedNodes();_.filter((A)=>A instanceof HTMLElement).filter((A)=>!A.title).forEach((A)=>{let S=p(A);S&&(A.title=' '+f[S]+' ')})}function p(v){if(v.hasAttribute('slot'))return v.getAttribute('slot');for(let A,_=0;_{let v=this.shadowRoot.querySelector('#social-main');d(v),y.forEach((_)=>{const A=this.shadowRoot.querySelector('#social-deprecated-'+_);A&&(d(A),0{this._addSlotListeners(),this._addAriaAttributes()})}_addSlotListeners(){this._setHasUser();const h=this.shadowRoot.querySelector('#user-name');h.addEventListener('slotchange',()=>{this._setHasUser()})}_setHasUser(){const h=this.shadowRoot.querySelector('#user-name');0f.nodeType===Node.ELEMENT_NODE);for(let g,f=0,y=h.length;f:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:"|";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:"";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,':host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,':host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg")}.slot-wrapper ::slotted(.podcast){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg")}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}',''])},function(t,r,l){function d(g){return null===g||g===void 0}function p(g){return g&&'object'==typeof g&&'number'==typeof g.length&&('function'!=typeof g.copy||'function'!=typeof g.slice?!1:0":'>','"':'"',"'":'''},g=/[&<>'"]/g,v=[],_=v.push.bind(v);return _('\n'),p.mobile||_('\n'),v.join('')}},function(t){'use strict';function d(y,g){for(;y.lengthy?-2*y:y}function u(y,g,v){return Object.keys(g).sort().reduce(function(A,S){return m(A,g[S],S,v)},y)}function m(y,g,v,_){var A=p(p(p(y,v),h(g)),typeof g);return null===g?p(A,'null'):void 0===g?p(A,'undefined'):'object'==typeof g?-1===_.indexOf(g)?(_.push(g),u(A,g,_)):p(A,'[Circular]'+v):p(A,g.toString())}function h(y){return Object.prototype.toString.call(y)}t.exports=function(y){return d(m(0,y,'',[]).toString(16),8)}},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='

'},function(t,r,l){t.exports=' '},function(t,r,l){t.exports=' '},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='
Sign In
Sign Out
'}]); +(function(t){function r(d){if(l[d])return l[d].exports;var p=l[d]={i:d,l:!1,exports:{}};return t[d].call(p.exports,p,p.exports,r),p.l=!0,p.exports}var l={};return r.m=t,r.c=l,r.i=function(d){return d},r.d=function(d,p,u){r.o(d,p)||Object.defineProperty(d,p,{configurable:!1,enumerable:!0,get:u})},r.n=function(d){var p=d&&d.__esModule?function(){return d['default']}:function(){return d};return r.d(p,'a',p),p},r.o=function(d,p){return Object.prototype.hasOwnProperty.call(d,p)},r.p='',r(r.s=13)})([function(t){t.exports=function(){var l=[];return l.toString=function(){for(var m,p=[],u=0;u{var v=g.shadowRoot.querySelector('#currentYear');v.innerHTML=new Date().getFullYear();var _=document.querySelector('byu-header'),A=new MutationObserver(function(){g.updateWithHeaderAttributes(_)});A.observe(_,{attributes:!0}),g.updateWithHeaderAttributes(_)})}updateWithHeaderAttributes(g){g.hasAttribute(m)?this.setAttribute(m,''):this.removeAttribute(m);var v='1200px';g.hasAttribute(h)&&(v=g.getAttribute(h)),this.setAttribute(h,v);for(var _=this.shadowRoot.querySelectorAll('.needs-width-setting'),A=0;A<_.length;A++)_[A].style.maxWidth=v,_[A].style.maxWidth=v}}window.customElements.define('byu-footer',y),window.BYUFooter=y},function(t,r,l){'use strict';var d=l(29),p=l.n(d),u=l(26),m=l.n(u),h=l(1),f=l(12),y=l.n(f);const g='mobile-max-width',_='max-width',A='mobile-view',S='menu-open',L='menu-keep-open',z='no-menu',M='home-url',H='1200px';class G extends HTMLElement{constructor(){super(),this.attachShadow({mode:'open'})}_render(){let B={mobile:this.inMobileView};u(B,this._renderState)||h.a(this,'byu-header',d(B),()=>{this._renderState=B,this._addSlotListeners(),this._notifyChildrenOfMobileState(),this._addButtonListeners(),this._checkIfMenuIsNeeded(),this._applyHomeUrl(),this._applyMaxWidth(),this._applyMenuTransparencyListeners()})}_checkIfMenuIsNeeded(){let B=this.shadowRoot.querySelector('#user'),C=0!==B.assignedNodes().length,T=this.shadowRoot.querySelector('#navbarMenu'),W=0!==T.assignedNodes().length,N=this.shadowRoot.querySelector('#actions'),I=0!==N.assignedNodes().length;this.noMenu=!(C||W||I),4>T.assignedNodes().length?this.setAttribute('left-align',''):this.removeAttribute('left-align')}_addButtonListeners(){if(!this.inMobileView)return void(this.menuOpen=!1);let B=this.shadowRoot.querySelector('.mobile-menu-button');B.addEventListener('click',()=>this._toggleMenu())}_toggleMenu(){this.menuOpen=!this.menuOpen}_addSlotListeners(){this._findAllSlots().forEach((B)=>{B.addEventListener('slotchange',()=>{this._notifyChildrenOfMobileState(),this._checkIfMenuIsNeeded(),this._applyMenuTransparencyListeners()})})}_notifyChildrenOfMobileState(){let B=this._findAllDistributedChildren();this.inMobileView?B.forEach((C)=>{C.setAttribute(A,''),C.classList.add(A)}):B.forEach((C)=>{C.removeAttribute(A),C.classList.remove(A)})}_findAllSlots(){let B=this.shadowRoot.querySelectorAll('slot'),C=[];for(let T=0;TB.assignedNodes().filter((C)=>C instanceof HTMLElement)).reduce((B,C)=>B.concat(C),[])}connectedCallback(){this.mobileMaxWidth=this.mobileMaxWidth,this._applyMobileWidth(),this._render(),this.maxWidth=this.maxWidth;const B=this;setTimeout(function(){const C=B.shadowRoot.querySelector('#mobileMenu');C&&C.addEventListener('click',function(){console.log(C.innerHTML),B.hasAttribute(A)&&B.hasAttribute(S)&&!B.hasAttribute(L)&&B.removeAttribute(S)})},0),this.hasAttribute('full-width')&&console.log('[byu-header] The \'full-width\' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended')}static get observedAttributes(){return[g,A,S,M,_]}attributeChangedCallback(B){return B===g?void this._applyMobileWidth():B===_?void this._applyMaxWidth():B===A?void this._render():B===S?void this._applyMenuOpen():B===M?void this._applyHomeUrl():void 0}_applyMenuOpen(){let B=this.shadowRoot.querySelector('#mobileMenu');B&&(this.menuOpen?(B.style.maxHeight=B.scrollHeight+'px',this.classList.add('byu-header-menu-open'),l.i(f.transform)(this.shadowRoot.querySelector('.mobile-menu-button'))):(B.style.maxHeight=null,this.classList.remove('byu-header-menu-open'),l.i(f.revert)(this.shadowRoot.querySelector('.mobile-menu-button'))))}_applyHomeUrl(){let B=this.shadowRoot.querySelector('#home-url');B&&B.setAttribute('href',this.homeUrl)}get mobileMaxWidth(){return this.getAttribute(g)}set mobileMaxWidth(B){B?this.setAttribute(g,B):this.setAttribute(g,'1023px')}get maxWidth(){return this.getAttribute(_)||H}set maxWidth(B){B?this.setAttribute(_,B):this.setAttribute(_,H)}get inMobileView(){return this.hasAttribute(A)}set inMobileView(B){B?this.setAttribute(A,''):this.removeAttribute(A)}get menuOpen(){return this.hasAttribute(S)}set menuOpen(B){B?this.setAttribute(S,''):this.removeAttribute(S)}get keepMenuOpen(){return this.hasAttribute(L)}set keepMenuOpen(B){B?this.setAttribute(L,''):this.removeAttribute(L)}get noMenu(){return this.hasAttribute(z)}set noMenu(B){B?this.setAttribute(z,''):this.removeAttribute(z)}get homeUrl(){return this.getAttribute(M)||'https://byu.edu/'}set homeUrl(B){this.setAttribute(M,B)}_applyMobileWidth(){let B=this.mobileMediaQuery,C=this._mobileQuery;if(C){if(C.media===B)return;C.removeListener(this._mobileQueryListener),this._mobileQuery=null}this._mobileQuery=C=window.matchMedia(B),this._mobileQueryListener=this._handleMobileChange.bind(this),C.addListener(this._mobileQueryListener),this._mobileQueryListener(C)}_handleMobileChange(B){this.inMobileView=B.matches}get mobileMediaQuery(){return`(max-width: ${this.mobileMaxWidth})`}_applyMaxWidth(){if(!this.inMobileView)for(var B=this.shadowRoot.querySelectorAll('.needs-width-setting'),C=0;CW.nodeType===Node.ELEMENT_NODE);if(0===C.length)return void this._applyMenuTransparency(null);let T=C[0];if(!T.__byu_header_transparency_listener){let W=new MutationObserver(()=>{this._applyMenuTransparency(T)});W.observe(T,{attributes:!0,attributeFilter:['class']}),T.__byu_header_transparency_listener=W}this._applyMenuTransparency(T)}_applyMenuTransparency(B){let C=B&&B.classList.contains('transparent');C?this.classList.add('menu-transparent'):this.classList.remove('menu-transparent')}}window.customElements.define('byu-header',G),window.BYUHeader=G},function(t,r,l){'use strict';function d(E,H){let R=E.activeSelector;if(H||R!==E._renderedActiveSelector){let G=S.a.toString().replace('__byu-menu-active-placeholder__',R),B=`${v.a}`;_.a(E,'byu-menu',B,()=>{E._renderedActiveSelector=R,y(E),p(E),E.shadowRoot.querySelector('.byu-menu-more').addEventListener('click',function(){E.showMore=!0})})}}function p(E){E.shadowRoot.querySelector('slot').addEventListener('slotchange',()=>{setTimeout(()=>function(){y(E)})})}function u(E){const H=function(){document.removeEventListener('click',H),E.showMore=!1};setTimeout(function(){document.addEventListener('click',H)})}function m(E,H){const R=E.className.split(/ +/);return-1!==R.indexOf(H)}function h(E){return m(E.shadowRoot.querySelector('.byu-menu-more-menu'),'byu-menu-more-expanded')}function f(E,H){const G=E.className.split(/ +/),B=G.indexOf(H),C=-1!==B,T=2C?(console.log(C),E.setAttribute('left-align','')):E.removeAttribute('left-align')}var g=l(34),v=l.n(g),_=l(1),A=l(21),S=l.n(A);const L='active-selector',z='.active';class M extends HTMLElement{get activeSelector(){return this.getAttribute(L)||z}set activeSelector(E){E?this.setAttribute(L,E):this.setAttribute(L,z)}get showMore(){return h(this)}set showMore(E){const H=this.shadowRoot.querySelector('.byu-menu-more-menu');E&&!h(this)&&u(this),f(H,'byu-menu-more-expanded',E)}constructor(){super(),this.attachShadow({mode:'open'})}connectedCallback(){d(this,!0)}attributeChangedCallback(E){return E===L?void d(this,!1):void 0}static get observedAttributes(){return[L]}get _menuSlot(){return this.shadowRoot.querySelector('#byu-menu-items')}get _menuMoreSlot(){return this.shadowRoot.querySelector('#byu-menu-more-slot')}}window.customElements.define('byu-menu',M),window.BYUMenu=M},function(t,r,l){'use strict';function d(Z){Z._searchSlot.addEventListener('slotchange',(ee)=>{p(Z,ee)})}function p(Z){let te=Z._input,oe=u(Z);te===oe||(Z._input=oe,te&&f(Z,te),oe?h(Z,oe):console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${Z.searchInputSelector}' on `,Z))}function u(Z,ee){return W.c(Z._searchSlot,ee)}function m(Z,ee){let te=u(Z,ee);return te?h(Z,te):console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${ee}' on `,Z),te}function h(Z,ee){A(Z,ee),L(Z,ee),E(Z,ee)}function f(Z,ee){S(Z,ee),z(Z,ee),H(Z,ee)}function y(Z,ee){let te=Z.action;switch(te){case V:g(Z,ee);break;case Y:v(Z,ee);break;case P:_(Z,ee);break;default:throw new Error(`Invalid value for ${U}: '${te}'`);}}function g(Z){let te=Z.actionTarget,oe=W.c(Z._searchSlot,te);if(!oe)throw new Error(`Unable to find target for 'submit-form' action using selector '${te}'`);if(!(oe instanceof HTMLFormElement))throw new Error(`Element found by selector '${te}' must be a , but was '${oe.localName}'`);oe.submit()}function v(Z){let te=Z.actionTarget,oe=W.c(Z._searchSlot,te);if(!oe)throw new Error(`Unable to find target for 'click' action using selector '${te}'`);oe.click()}function _(Z,ee){let te=Z.actionTarget;if(!te)throw new Error('When using action="navigate", you must specify an action-target');te.indexOf('${search}')&&console.warn(`[byu-search] WARNING: Using action="navigate" with a target that does not contain \${search} will not include the search terms in the URL.`,Z),window.location.assign(te.replace('${search}',window.encodeURIComponent(ee)))}function A(Z,ee){ee.classList.add(N)}function S(Z,ee){ee.classList.remove(N)}function L(Z,ee){if(!(ee.title&&ee.placeholder)){let te=[];ee.title||ee.placeholder?ee.title?(ee.placeholder=ee.title,te.push('placeholder')):(ee.title=ee.placeholder,te.push('title')):(ee.title=ee.placeholder='Search',te.push('title','placeholder')),ee.__byu_search_a11yHelpersApplied=te}}function z(Z,ee){let te=ee.__byu_search_a11yHelpersApplied;te&&(te.includes('title')&&(ee.title=null),te.includes('placeholder')&&(ee.placeholder=null),delete ee.__byu_search_a11yHelpersApplied)}function M(Z){Z.shadowRoot.querySelector('#search-button').addEventListener('click',function(){Z.search()})}function E(Z,ee){let te=ee.__byu_search_keyObserver=function(oe){13===oe.keyCode&&Z.search()};ee.addEventListener('keypress',te,!1)}function H(Z,ee){let te=ee.__byu_search_keyObserver;te&&ee.removeEventListener('keypress',te,!1)}function R(Z){let ee=Z.__onbyusearchHandler=function(oe){let ie=Z.onbyusearch;if(ie){let re=window[ie];if(!re)throw new Error(`Unable to find a global function named '${ie}'`);re.call(Z,oe)}};Z.addEventListener($,ee,!1);let te=Z.__onsearchLegacyHandler=function(oe){let ie=Z.onsearch;if(ie){let re=window[ie];if(!re)throw new Error(`Unable to find a global function named '${ie}'`);re.call(Z,oe.detail.search,oe)}};Z.addEventListener($,te,!1)}function G(Z){Z.__onbyusearchHandler&&Z.removeEventListener($,Z.__onbyusearchHandler,!1),Z.__onsearchLegacyHandler&&Z.removeEventListener($,Z.__onsearchLegacyHandler,!1)}function B(Z){return Z?K[Z]:null}var C=l(35),T=l.n(C),W=l(1);const N='__byu-search-selected-input',I='onsearch',O='onbyusearch',j='search-input-selector',U='action',Q='action-target',V='submit-form',Y='click',P='navigate',$='byu-search',K={[V]:'form',[Y]:'button, input[type="submit"], input[type="button"]'};class X extends HTMLElement{constructor(){super(),this.attachShadow({mode:'open'})}connectedCallback(){W.a(this,'byu-search',T.a,()=>{this._initialized=!0,this._input=m(this,this.searchInputSelector),M(this),R(this),d(this)})}disconnectedCallback(){this._input&&f(this,this._input),G(this)}search(){let Z=this._input;if(!Z)throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);let ee=Z.value;if(ee){let te=W.b($,{search:ee}),oe=!this.dispatchEvent(te);oe||this.action&&y(this,ee)}}static get observedAttributes(){return[j]}attributeChangedCallback(Z,ee,te){if(this._initialized)return Z===j?(this._input&&f(this,this._input),void(this._input=m(this,te))):void 0}get onbyusearch(){return this.getAttribute(O)}set onbyusearch(Z){this.setAttribute(O,Z)}get onsearch(){return this.getAttribute(I)}set onsearch(Z){this.setAttribute(I,Z)}set searchInputSelector(Z){this.setAttribute(j,Z)}get searchInputSelector(){return this.getAttribute(j)||'input[type="search"], input[type="text"]'}set action(Z){this.setAttribute(U,Z)}get action(){return this.getAttribute(U)}set actionTarget(Z){this.setAttribute(Q,Z)}get actionTarget(){return this.getAttribute(Q)||B(this.action)}get _searchSlot(){return this.shadowRoot.querySelector('#search')}}window.customElements.define('byu-search',X),window.ByuSearch=X},function(t,r,l){'use strict';function d(v){let _=v.assignedNodes();_.filter((A)=>A instanceof HTMLElement).filter((A)=>!A.title).forEach((A)=>{let S=p(A);S&&(A.title=' '+f[S]+' ')})}function p(v){if(v.hasAttribute('slot'))return v.getAttribute('slot');for(let A,_=0;_{let v=this.shadowRoot.querySelector('#social-main');d(v),y.forEach((_)=>{const A=this.shadowRoot.querySelector('#social-deprecated-'+_);A&&(d(A),0{this._addSlotListeners(),this._addAriaAttributes()})}_addSlotListeners(){this._setHasUser();const h=this.shadowRoot.querySelector('#user-name');h.addEventListener('slotchange',()=>{this._setHasUser()})}_setHasUser(){const h=this.shadowRoot.querySelector('#user-name');0f.nodeType===Node.ELEMENT_NODE);for(let g,f=0,y=h.length;f:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:"|";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:"";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,':host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,':host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg")}.slot-wrapper ::slotted(.podcast){background-image:url("https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg")}',''])},function(t,r,l){r=t.exports=l(0)(),r.push([t.i,'.slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url("https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}',''])},function(t,r,l){function d(g){return null===g||g===void 0}function p(g){return g&&'object'==typeof g&&'number'==typeof g.length&&('function'!=typeof g.copy||'function'!=typeof g.slice?!1:0":'>','"':'"',"'":'''},g=/[&<>'"]/g,v=[],_=v.push.bind(v);return _('\n'),p.mobile||_('\n'),v.join('')}},function(t){'use strict';function d(y,g){for(;y.lengthy?-2*y:y}function u(y,g,v){return Object.keys(g).sort().reduce(function(A,S){return m(A,g[S],S,v)},y)}function m(y,g,v,_){var A=p(p(p(y,v),h(g)),typeof g);return null===g?p(A,'null'):void 0===g?p(A,'undefined'):'object'==typeof g?-1===_.indexOf(g)?(_.push(g),u(A,g,_)):p(A,'[Circular]'+v):p(A,g.toString())}function h(y){return Object.prototype.toString.call(y)}t.exports=function(y){return d(m(0,y,'',[]).toString(16),8)}},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='

'},function(t,r,l){t.exports=' '},function(t,r,l){t.exports=' '},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='
'},function(t,r,l){t.exports='
Sign In
Sign Out
'}]); //# sourceMappingURL=components.min.js.map diff --git a/dist/components.min.js.map b/dist/components.min.js.map index 182c8c2f..eb7276db 100644 --- a/dist/components.min.js.map +++ b/dist/components.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["components.js","webpack:/webpack/bootstrap f34479c4d67cb2a18bae","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["installedModules","moduleId","exports","i","l","modules","call","module","__webpack_require__","m","c","value","d","o","name","Object","defineProperty","configurable","enumerable","get","getter","n","__esModule","prototype","hasOwnProperty","object","property","p","s","list","toString","length","item","result","push","join","id","alreadyImportedModules","mediaQuery","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0__lib_templating__","__WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__","__WEBPACK_IMPORTED_MODULE_3__lib_createEvent__","Element","proto","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","document","ownerDocument","querySelectorAll","indexOf","actual","el","selector","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__","HTMLElement","constructor","attachShadow","mode","connectedCallback","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default","a","window","customElements","define","BYUFooterActionButton","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default","BYUFooterColumn","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__","component","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default","shadowRoot","querySelector","currentYear","innerHTML","Date","getFullYear","MutationObserver","updateWithHeaderAttributes","header","observer","observe","attributes","hasAttribute","ATTR_FULL_WIDTH","setAttribute","removeAttribute","ATTR_MAX_WIDTH","getAttribute","w","needsWidthSetting","style","maxWidth","BYUFooter","__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__","__WEBPACK_IMPORTED_MODULE_1_deep_equal__","__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__","_render","mobile","inMobileView","state","_renderState","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","_addSlotListeners","_notifyChildrenOfMobileState","_addButtonListeners","_checkIfMenuIsNeeded","_applyHomeUrl","_applyMaxWidth","_applyMenuTransparencyListeners","assignedNodes","noMenu","hasUserInfo","hasMenu","hasActions","menuOpen","menuButton","addEventListener","_toggleMenu","_findAllSlots","forEach","each","_findAllDistributedChildren","kids","ATTR_MOBILE_VIEW","classList","add","remove","slots","arr","map","filter","reduce","agg","concat","mobileMaxWidth","_applyMobileWidth","setTimeout","menu","console","log","ATTR_MENU_OPEN","ATTR_MENU_KEEP_OPEN","observedAttributes","ATTR_MOBILE_MAX_WIDTH","ATTR_HOME_URL","attributeChangedCallback","attr","_applyMenuOpen","maxHeight","scrollHeight","aTag","homeUrl","val","DEFAULT_MAX_WIDTH","keepMenuOpen","ATTR_NO_MENU","mobileMediaQuery","_mobileQuery","q","media","desiredQuery","removeListener","_mobileQueryListener","matchMedia","_handleMobileChange","bind","addListener","mql","maxWidthMediaQuery","_maxWidthQuery","_maxWidthQueryListener","_handleMaxWidthChange","navSlot","nodeType","Node","ELEMENT_NODE","_applyMenuTransparency","assigned","__byu_header_transparency_listener","obs","attributeFilter","element","contains","transparent","BYUHeader","activeSelector","force","_renderedActiveSelector","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default","replace","css","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default","tmpl","updateMoreMenuState","addSlotListeners","showMore","removeEventListener","fn","className","split","hasClass","classes","arguments","exists","setTo","splice","index","children","node","moreChildren","filteredChildren","filteredMoreChildren","nav","toggleClass","hasOverflow","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__","ATTR_ACTIVE_SELECTOR","DEFAULT_ACTIVE_SELECTOR","isShowingMoreMenu","show","enableHideClick","render","_menuSlot","_menuMoreSlot","BYUMenu","search","_searchSlot","handleSlotChange","e","_input","lookupSearchInput","oldInput","newInput","teardownInputElement","setupInputElement","error","searchInputSelector","input","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","action","ACTION_SUBMIT_FORM","runSubmitFormAction","ACTION_CLICK","runClickAction","ACTION_NAVIGATE","runNavigateAction","Error","ATTR_ACTION","actionTarget","target","form","HTMLFormElement","localName","submit","button","click","warn","location","assign","encodeURIComponent","CLASS_SELECTED_INPUT","title","placeholder","helped","__byu_search_a11yHelpersApplied","helpers","includes","__byu_search_keyObserver","keyCode","keypress","__onbyusearchHandler","onbyusearch","handler","event","EVENT_TYPE","__onsearchLegacyHandler","onsearch","detail","legacyHandler","DEFAULT_ACTION_TARGET","__WEBPACK_IMPORTED_MODULE_0__byu_search_html__","__WEBPACK_IMPORTED_MODULE_0__byu_search_html___default","_initialized","lookupAndConfigureInputElement","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","disconnectedCallback","teardownSearchListeners","dispatchEvent","cancelled","runPredefinedAction","ATTR_SEARCH_INPUT_SELECTOR","newValue","ATTR_SEARCH_HANDLER","ATTR_OLD_SEARCH_HANDLER","ATTR_ACTION_TARGET","defaultActionTarget","ByuSearch","slotElement","k","detectSocialKind","kid","kind","SOCIAL_NAMES","SOCIAL_IDS","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__","getOwnPropertyNames","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default","applyTitleToChildren","main","slot","BYUSocialMediaLinks","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default","_addAriaAttributes","_setHasUser","userSlot","ByuUserInfo","factory","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","transform","revert","elements","Array","slice","events","toLowerCase","getElementList","elementList","DEFAULT_EVENTS","eventLists","prop","getEventList","occasion","currentElement","method","currentEvent","handleEvent","tcon","toggle","currentTarget","setListeners","_transformClass","__WEBPACK_IMPORTED_MODULE_8__package_json__","CustomEvent","cancelable","bubbles","createEvent","evt","initCustomEvent","flatten","roots","len","__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__","child","elementName","sum","head","templateId","templateElement","createElement","template","appendChild","ShadyCSS","prepareTemplate","styleElement","applyStyle","importNode","content","shadow","firstChild","removeChild","imported","runAfterStamping","callback","TEMPLATE_RENDERED_CLASS","__WEBPACK_IMPORTED_MODULE_0_hash_sum___default","__byu_webCommunity_components","elSettings","templateHash","nativeShadow","applyTemplateShady","applyTemplateNative","__WEBPACK_IMPORTED_MODULE_0_hash_sum__","x","copy","isUndefinedOrNull","b","isArguments","pSlice","deepEqual","opts","isBuffer","objectKeys","ka","kb","sort","key","expected","getTime","objEquiv","strict","propertyIsEnumerable","supportsArgumentsClass","supported","unsupported","obj","keys","shim","_ENCODE_HTML_RULES","escapeFn","markup","_MATCH_HTML","encode_char","__output","__append","locals","hash","text","charCodeAt","chr","foldValue","seen","fold","foldObject","pad"],"mappings":"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","file":"components.min.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\r\n\r\n\r\n\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\r\n\r\n(function (root, factory) {\r\n if (true) {\r\n // AMD module\r\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\r\n\r\n/*\r\n * Header Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\r\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap f34479c4d67cb2a18bae","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 11/7/16.\r\n */\r\n\"use strict\";\r\n\r\nimport template from \"./byu-user-info.html\";\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nclass ByuUserInfo extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n\r\n let shadowRoot = this.attachShadow({mode: 'open'});\r\n \r\n }\r\n\r\n\r\n static get observedAttributes() {\r\n // return ['login-url'];\r\n }\r\n\r\n attributeChangedCallback(attr, oldval, newval) {\r\n // switch (attr) {\r\n // case 'login-url':\r\n // this.loginUrl = newval;\r\n // break;\r\n // }\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-user-info', template, () => {\r\n this._addSlotListeners();\r\n this._addAriaAttributes();\r\n }); \r\n }\r\n\r\n _addSlotListeners() {\r\n\r\n this._setHasUser();\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n userSlot.addEventListener('slotchange', e => {\r\n this._setHasUser();\r\n });\r\n }\r\n\r\n _setHasUser() {\r\n const userSlot = this.shadowRoot.querySelector('#user-name');\r\n if (userSlot.assignedNodes().length > 0) {\r\n this.setAttribute('has-user', '');\r\n }\r\n else {\r\n this.removeAttribute('has-user');\r\n }\r\n }\r\n\r\n _addAriaAttributes() {\r\n this.setAttribute('role', 'button');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-user-info', ByuUserInfo);\r\nwindow.ByuUserInfo = ByuUserInfo;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/24/17\r\n */\r\n\"use strict\";\r\n\r\n(function (root, factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD module\r\n define(factory);\r\n } else if (typeof exports === 'object') {\r\n // CommonJS-like environment (i.e. Node)\r\n module.exports = factory();\r\n } else {\r\n // Browser global\r\n root.transformicons = factory();\r\n }\r\n}(this || window, function () {\r\n\r\n // ####################\r\n // MODULE TRANSFORMICON\r\n // ####################\r\n 'use strict';\r\n\r\n var\r\n tcon = {}, // static class\r\n _transformClass = 'tcon-transform',\r\n\r\n // const\r\n DEFAULT_EVENTS = {\r\n transform : ['click'],\r\n revert : ['click']\r\n };\r\n\r\n // ##############\r\n // private methods\r\n // ##############\r\n\r\n /**\r\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\r\n * @returns {array} Array of DOM elements\r\n */\r\n var getElementList = function (elements) {\r\n if (typeof elements === 'string') {\r\n return Array.prototype.slice.call(document.querySelectorAll(elements));\r\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\r\n return elements;\r\n } else {\r\n return [elements];\r\n }\r\n };\r\n\r\n /**\r\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\r\n * @private\r\n *\r\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\r\n * @returns {array} Array of eventnames\r\n */\r\n var getEventList = function (events) {\r\n if (typeof events === 'string') {\r\n return events.toLowerCase().split(' ');\r\n } else {\r\n return events;\r\n }\r\n };\r\n\r\n /**\r\n * Attach or remove transformicon events to one or more elements.\r\n * @private\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\r\n */\r\n var setListeners = function (elements, events, remove) {\r\n var\r\n method = (remove ? 'remove' : 'add') + 'EventListener',\r\n elementList = getElementList(elements),\r\n currentElement = elementList.length,\r\n eventLists = {};\r\n\r\n // get events or use defaults\r\n for (var prop in DEFAULT_EVENTS) {\r\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\r\n }\r\n\r\n // add or remove all events for all occasions to all elements\r\n while(currentElement--) {\r\n for (var occasion in eventLists) {\r\n var currentEvent = eventLists[occasion].length;\r\n while(currentEvent--) {\r\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n /**\r\n * Event handler for transform events.\r\n * @private\r\n *\r\n * @param {object} event - event object\r\n */\r\n var handleEvent = function (event) {\r\n tcon.toggle(event.currentTarget);\r\n };\r\n\r\n // ##############\r\n // public methods\r\n // ##############\r\n\r\n /**\r\n * Add transformicon behavior to one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.add = function (elements, events) {\r\n setListeners(elements, events);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Remove transformicon behavior from one or more elements.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @param {object} [events] - An Object containing one or more special event definitions\r\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\r\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.remove = function (elements, events) {\r\n setListeners(elements, events, true);\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Put one or more elements in the transformed state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.transform = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.add(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Revert one or more elements to the original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.revert = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n element.classList.remove(_transformClass);\r\n });\r\n return tcon;\r\n };\r\n\r\n /**\r\n * Toggles one or more elements between transformed and original state.\r\n * @public\r\n *\r\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\r\n * @returns {transformicon} transformicon instance for chaining\r\n */\r\n tcon.toggle = function (elements) {\r\n getElementList(elements).forEach(function(element) {\r\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\r\n });\r\n return tcon;\r\n };\r\n\r\n return tcon;\r\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\r\n * Created by ThatJoeMoore on 2/18/17\r\n */\r\n\"use strict\";\r\n\r\n/*\r\n * Header Bits\r\n */\r\nimport './byu-header/byu-header.js';\r\nimport './byu-menu/byu-menu.js';\r\nimport './byu-search/byu-search.js';\r\nimport './byu-user-info/byu-user-info.js';\r\n\r\n/*\r\n * Footer Bits\r\n */\r\n\r\nimport './byu-footer/byu-footer.js';\r\nimport './byu-footer-column/byu-footer-column.js';\r\nimport './byu-footer-action-button/byu-footer-action-button.js';\r\nimport './byu-social-media-links/byu-social-media-links.js';\r\n\r\nimport {version} from '../package.json';\r\n\r\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:.5s cubic-bezier(.4,0,.2,1);overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{transform:scaleY(1);transition:height .1s ease-in-out;height:35px!important;transform-origin:top}:host([menu-open][mobile-view]) .byu-header-search{transform:scaleY(0);height:0!important}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file +{"version":3,"sources":["components.js","webpack:/webpack/bootstrap 78bd2a1ce070c96e9f9a","webpack:///~/css-loader/lib/css-base.js","webpack:///~/byu-web-component-utils/index.js","webpack:///~/byu-web-component-utils/lib/matchesSelector.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.js","webpack:///components/byu-footer-column/byu-footer-column.js","webpack:///components/byu-footer/byu-footer.js","webpack:///components/byu-header/byu-header.js","webpack:///components/byu-menu/byu-menu.js","webpack:///components/byu-search/byu-search.js","webpack:///components/byu-social-media-links/byu-social-media-links.js","webpack:///components/byu-user-info/byu-user-info.js","webpack:///package.json","webpack:///components/byu-header/icons/transformicons.js","webpack:///components/byu-theme-components.js","webpack:///~/byu-web-component-utils/lib/createEvent.js","webpack:///~/byu-web-component-utils/lib/querySelectorSlot.js","webpack:///~/byu-web-component-utils/lib/templating.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.scss","webpack:///components/byu-footer-column/byu-footer-column.scss","webpack:///components/byu-footer/byu-footer.scss","webpack:///components/byu-header/byu-header.scss","webpack:///components/byu-menu/active-styles.scss","webpack:///components/byu-menu/byu-menu.scss","webpack:///components/byu-search/byu-search.scss","webpack:///components/byu-social-media-links/byu-social-media-links.scss","webpack:///components/byu-user-info/byu-user-info.scss","webpack:///~/deep-equal/index.js","webpack:///~/deep-equal/lib/is_arguments.js","webpack:///~/deep-equal/lib/keys.js","webpack:///components/byu-header/byu-header.ejs.html","webpack:///~/hash-sum/hash-sum.js","webpack:///components/byu-footer-action-button/byu-footer-action-button.html","webpack:///components/byu-footer-column/byu-footer-column.html","webpack:///components/byu-footer/byu-footer.html","webpack:///components/byu-menu/byu-menu.html","webpack:///components/byu-search/byu-search.html","webpack:///components/byu-social-media-links/byu-social-media-links.html","webpack:///components/byu-user-info/byu-user-info.html"],"names":["installedModules","moduleId","exports","i","l","modules","call","module","__webpack_require__","m","c","value","d","o","name","Object","defineProperty","configurable","enumerable","get","getter","n","__esModule","prototype","hasOwnProperty","object","property","p","s","list","toString","length","item","result","push","join","id","alreadyImportedModules","mediaQuery","__webpack_exports__","__WEBPACK_IMPORTED_MODULE_0__lib_templating__","__WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__","__WEBPACK_IMPORTED_MODULE_3__lib_createEvent__","Element","proto","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","document","ownerDocument","querySelectorAll","indexOf","actual","el","selector","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__","HTMLElement","constructor","attachShadow","mode","connectedCallback","__WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__","__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default","a","window","customElements","define","BYUFooterActionButton","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__","__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default","BYUFooterColumn","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__","component","__WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default","shadowRoot","querySelector","currentYear","innerHTML","Date","getFullYear","MutationObserver","updateWithHeaderAttributes","header","observer","observe","attributes","hasAttribute","ATTR_FULL_WIDTH","setAttribute","removeAttribute","ATTR_MAX_WIDTH","getAttribute","w","needsWidthSetting","style","maxWidth","BYUFooter","__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__","__WEBPACK_IMPORTED_MODULE_1_deep_equal__","__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__","_render","mobile","inMobileView","state","_renderState","__WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__","_addSlotListeners","_notifyChildrenOfMobileState","_addButtonListeners","_checkIfMenuIsNeeded","_applyHomeUrl","_applyMaxWidth","_applyMenuTransparencyListeners","assignedNodes","noMenu","hasUserInfo","hasMenu","hasActions","menuOpen","menuButton","addEventListener","_toggleMenu","_findAllSlots","forEach","each","_findAllDistributedChildren","kids","ATTR_MOBILE_VIEW","classList","add","remove","slots","arr","map","filter","reduce","agg","concat","mobileMaxWidth","_applyMobileWidth","setTimeout","menu","console","log","ATTR_MENU_OPEN","ATTR_MENU_KEEP_OPEN","observedAttributes","ATTR_MOBILE_MAX_WIDTH","ATTR_HOME_URL","attributeChangedCallback","attr","_applyMenuOpen","maxHeight","scrollHeight","aTag","homeUrl","val","DEFAULT_MAX_WIDTH","keepMenuOpen","ATTR_NO_MENU","mobileMediaQuery","_mobileQuery","q","media","desiredQuery","removeListener","_mobileQueryListener","matchMedia","_handleMobileChange","bind","addListener","mql","maxWidthMediaQuery","_maxWidthQuery","_maxWidthQueryListener","_handleMaxWidthChange","navSlot","nodeType","Node","ELEMENT_NODE","_applyMenuTransparency","assigned","__byu_header_transparency_listener","obs","attributeFilter","element","contains","transparent","BYUHeader","activeSelector","force","_renderedActiveSelector","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default","replace","css","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default","tmpl","updateMoreMenuState","addSlotListeners","showMore","removeEventListener","fn","className","split","hasClass","classes","arguments","exists","setTo","splice","index","children","node","moreChildren","filteredChildren","filteredMoreChildren","nav","toggleClass","hasOverflow","__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__","__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__","ATTR_ACTIVE_SELECTOR","DEFAULT_ACTIVE_SELECTOR","isShowingMoreMenu","show","enableHideClick","render","_menuSlot","_menuMoreSlot","BYUMenu","search","_searchSlot","handleSlotChange","e","_input","lookupSearchInput","oldInput","newInput","teardownInputElement","setupInputElement","error","searchInputSelector","input","applyStyleHelpers","applyA11yHelpers","setupEnterKeySearchDispatcher","removeStyleHelpers","removeA11yHelpers","teardownEnterKeySearchDispatcher","action","ACTION_SUBMIT_FORM","runSubmitFormAction","ACTION_CLICK","runClickAction","ACTION_NAVIGATE","runNavigateAction","Error","ATTR_ACTION","actionTarget","target","form","HTMLFormElement","localName","submit","button","click","warn","location","assign","encodeURIComponent","CLASS_SELECTED_INPUT","title","placeholder","helped","__byu_search_a11yHelpersApplied","helpers","includes","__byu_search_keyObserver","keyCode","keypress","__onbyusearchHandler","onbyusearch","handler","event","EVENT_TYPE","__onsearchLegacyHandler","onsearch","detail","legacyHandler","DEFAULT_ACTION_TARGET","__WEBPACK_IMPORTED_MODULE_0__byu_search_html__","__WEBPACK_IMPORTED_MODULE_0__byu_search_html___default","_initialized","lookupAndConfigureInputElement","setupButtonSearchDispatcher","setupSearchListeners","setupSlotListener","disconnectedCallback","teardownSearchListeners","dispatchEvent","cancelled","runPredefinedAction","ATTR_SEARCH_INPUT_SELECTOR","newValue","ATTR_SEARCH_HANDLER","ATTR_OLD_SEARCH_HANDLER","ATTR_ACTION_TARGET","defaultActionTarget","ByuSearch","slotElement","k","detectSocialKind","kid","kind","SOCIAL_NAMES","SOCIAL_IDS","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__","getOwnPropertyNames","__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default","applyTitleToChildren","main","slot","BYUSocialMediaLinks","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__","__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default","_addAriaAttributes","_setHasUser","userSlot","ByuUserInfo","factory","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","transform","revert","elements","Array","slice","events","toLowerCase","getElementList","elementList","DEFAULT_EVENTS","eventLists","prop","getEventList","occasion","currentElement","method","currentEvent","handleEvent","tcon","toggle","currentTarget","setListeners","_transformClass","__WEBPACK_IMPORTED_MODULE_8__package_json__","CustomEvent","cancelable","bubbles","createEvent","evt","initCustomEvent","flatten","roots","len","__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__","child","elementName","sum","head","templateId","templateElement","createElement","template","appendChild","ShadyCSS","prepareTemplate","styleElement","applyStyle","importNode","content","shadow","firstChild","removeChild","imported","runAfterStamping","callback","TEMPLATE_RENDERED_CLASS","__WEBPACK_IMPORTED_MODULE_0_hash_sum___default","__byu_webCommunity_components","elSettings","templateHash","nativeShadow","applyTemplateShady","applyTemplateNative","__WEBPACK_IMPORTED_MODULE_0_hash_sum__","x","copy","isUndefinedOrNull","b","isArguments","pSlice","deepEqual","opts","isBuffer","objectKeys","ka","kb","sort","key","expected","getTime","objEquiv","strict","propertyIsEnumerable","supportsArgumentsClass","supported","unsupported","obj","keys","shim","_ENCODE_HTML_RULES","escapeFn","markup","_MATCH_HTML","encode_char","__output","__append","locals","hash","text","charCodeAt","chr","foldValue","seen","fold","foldObject","pad"],"mappings":"AAAS,CAAC,WAAkB,CCI5B,aAAA,CAGA,GAAAA,EAAAC,CAAA,CAAA,CACA,MAAAD,GAAAC,CAAA,EAAAC,OAAA,CAGA,GAAA,GAAAF,EAAAC,CAAA,EAAA,CACAE,EAAAF,CADA,CAEAG,IAFA,CAGAF,UAHA,CAAA,CAaA,MANAG,GAAAJ,CAAA,EAAAK,IAAA,CAAAC,EAAAL,OAAA,CAAAK,CAAA,CAAAA,EAAAL,OAAA,CAAAM,CAAA,CAMA,CAHAD,EAAAH,CAAA,GAGA,CAAAG,EAAAL,OACA,CAxBA,GAAA,KAAA,CA+DA,MAnCAM,GAAAC,CAAA,CAAAJ,CAmCA,CAhCAG,EAAAE,CAAA,CAAAV,CAgCA,CA7BAQ,EAAAL,CAAA,CAAA,WAAA,CAA2C,MAAAQ,EAAc,CA6BzD,CA1BAH,EAAAI,CAAA,CAAA,eAAA,CACAJ,EAAAK,CAAA,CAAAX,CAAA,CAAAY,CAAA,CADA,EAEAC,OAAAC,cAAA,CAAAd,CAAA,CAAAY,CAAA,CAAA,CACAG,eADA,CAEAC,aAFA,CAGAC,IAAAC,CAHA,CAAA,CAMA,CAkBA,CAfAZ,EAAAa,CAAA,CAAA,WAAA,CACA,GAAA,GAAAd,GAAAA,EAAAe,UAAA,CACA,UAAA,CAA2B,MAAAf,GAAA,SAAA,CAA4B,CADvD,CAEA,UAAA,CAAiC,MAAAA,EAAe,CAFhD,CAIA,MADAC,GAAAI,CAAA,CAAAQ,CAAA,CAAA,GAAA,CAAAA,CAAA,CACA,CAAAA,CACA,CASA,CANAZ,EAAAK,CAAA,CAAA,aAAA,CAAsD,MAAAE,QAAAQ,SAAA,CAAAC,cAAA,CAAAlB,IAAA,CAAAmB,CAAA,CAAAC,CAAA,CAA+D,CAMrH,CAHAlB,EAAAmB,CAAA,CAAA,EAGA,CAAAnB,EAAAA,EAAAoB,CAAA,CAAA,EAAA,CDEU,CAlED,EAoEC,CAEH,WAA0B,CEjEjCrB,EAAAL,OAAA,CAAA,UAAA,CACA,GAAA,KAAA,CA0CA,MAvCA2B,GAAAC,QAAA,CAAA,UAAA,CAEA,IAAA,MADA,IACA,CAAA,EAAA,CAAA,CAAgB3B,EAAA,KAAA4B,MAAhB,CAAiC,GAAjC,GACA,KAAA5B,CAAA,CADA,CAEA6B,EAAA,CAAA,CAFA,CAGAC,EAAAC,IAAA,CAAA,UAAAF,EAAA,CAAA,CAAA,CAAA,GAAA,CAAwCA,EAAA,CAAA,CAAxC,CAAwC,GAAxC,CAHA,CAKAC,EAAAC,IAAA,CAAAF,EAAA,CAAA,CAAA,CALA,CAQA,MAAAC,GAAAE,IAAA,CAAA,EAAA,CACA,CA4BA,CAzBAN,EAAA1B,CAAA,CAAA,aAAA,CACA,QAAA,QAAAE,EADA,GAEA,EAAA,CAAA,CAAA,IAAA,CAAAA,CAAA,CAAA,EAAA,CAAA,CAFA,EAIA,IAAA,MADA,IACA,CAAA,EAAA,CAAA,CAAgBF,EAAA,KAAA4B,MAAhB,CAAiC,GAAjC,GACA,KAAA5B,CAAA,EAAA,CAAA,CADA,CAEA,QAAA,QAAAiC,EAFA,GAGAC,EAAAD,CAAA,IAHA,EAKA,IAAA,EAAA,CAAA,CAAYjC,EAAAE,EAAA0B,MAAZ,CAAgC,GAAhC,CAAgC,CAChC,GAAA,GAAA1B,EAAAF,CAAA,CAAA,CAKA,QAAA,QAAA6B,GAAA,CAAA,CAAA,EAAAK,EAAAL,EAAA,CAAA,CAAA,CANgC,GAOhCM,GAAA,CAAAN,EAAA,CAAA,CAPgC,CAQhCA,EAAA,CAAA,EAAAM,CARgC,CAS3BA,CAT2B,GAUhCN,EAAA,CAAA,EAAA,IAAAA,EAAA,CAAA,CAAA,CAAA,SAAA,CAAAM,CAAA,CAAA,GAVgC,EAYhCT,EAAAK,IAAA,CAAAF,CAAA,CAZgC,CAchC,CACA,CACA,CAAAH,CACA,CF2EO,CAxDG,CA0DH,eAA2D,CAElE,aACqB,GAAI,GAAgDrB,EAAoB,EAApB,CAApD,CACI,EAAqDA,EAAoB,CAApB,CADzD,CAEI,EAAuDA,EAAoB,EAApB,CAF3D,CAGI,EAAiDA,EAAoB,EAApB,CAHrD,CAIYA,EAAoBI,CAApB,CAAsB2B,CAAtB,CAA2C,GAA3C,CAAgD,UAAW,CAAE,MAAOC,IAAqD,CAAzH,CAPiC,CASjChC,EAAoBI,CAApB,CAAsB2B,CAAtB,CAA2C,GAA3C,CAAgD,UAAW,CAAE,MAAOE,IAA4D,CAAhI,CATiC,CG9HlEjC,EAAAI,CAAA,CAAA2B,CAAA,CAAA,GAAA,CAAA,UAAA,CAAA,MAAAG,IAAA,CAAA,CHsJO,CAlFG,CAoFH,aAA2D,CAElE,aI1JAH,IAkBA,aAAA,CACA,GAAA,GAAAI,QAAApB,SAAA,CACA,EACAqB,EAAAC,OAAA,EACAD,EAAAE,eADA,EAEAF,EAAAG,kBAFA,EAGAH,EAAAI,iBAHA,EAIAJ,EAAAK,gBAJA,EAKAL,EAAAM,qBALA,EAMA,WAAA,CACA,GAAA,GAAA,KAAAC,QAAA,EAAA,KAAAC,aAAA,CACA,MAAA,CAAA,CAAA,KAAAC,gBAAA,CAAAzB,CAAA,EAAA0B,OAAA,CAAA,IAAA,CACA,CAXA,CAaA,MAAAC,GAAAjD,IAAA,CAAAkD,CAAA,CAAAC,CAAA,CACA,CJ+JO,CA5HG,CA8HH,eAA2D,CAElE,aACqB,GAAI,GAA+DjD,EAAoB,EAApB,CAAnE,CACI,EAAuEA,EAAoBa,CAApB,CAAsBqC,CAAtB,CAD3E,CAEI,EAAwDlD,EAAoB,CAApB,CAF5D,CK/LrB,eAAAmD,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACAC,IAAA,IAAA,CAAA,0BAAA,CAAAC,EAAAC,CAAA,CACA,CATA,CAYAC,OAAAC,cAAA,CAAAC,MAAA,CAAA,0BAAA,CAAAC,CAAA,CLgLkE,CK/KlEH,OAAAG,qBAAA,CAAAA,CL4MO,CA3JG,CA6JH,eAA2D,CAElE,aACqB,GAAI,GAAwD9D,EAAoB,EAApB,CAA5D,CACI,EAAgEA,EAAoBa,CAApB,CAAsBkD,CAAtB,CADpE,CAEI,EAAwD/D,EAAoB,CAApB,CAF5D,CM/NrB,eAAAmD,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACAC,IAAA,IAAA,CAAA,mBAAA,CAAAQ,EAAAN,CAAA,CACA,CATA,CAYAC,OAAAC,cAAA,CAAAC,MAAA,CAAA,mBAAA,CAAAI,CAAA,CNgNkE,CM/MlEN,OAAAM,eAAA,CAAAA,CN0OO,CAxLG,CA0LH,eAA2D,CAElE,aACqB,GAAI,GAAiDjE,EAAoB,EAApB,CAArD,CACI,EAAyDA,EAAoBa,CAApB,CAAsBqD,CAAtB,CAD7D,CAEI,EAAwDlE,EAAoB,CAApB,CAF5D,CO5PrB,KAAA,GAAA,YAAA,CACA,EAAA,WADA,CAIA,eAAAmD,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACA,KAAA,GAAA,IAAA,CACAC,IAAAW,CAAA,CAAA,YAAA,CAAAC,EAAAV,CAAA,CAAA,IAAA,CAEA,GAAA,GAAAS,EAAAE,UAAA,CAAAC,aAAA,CAAA,cAAA,CAAA,CACAC,EAAAC,SAAA,CAAA,GAAAC,KAAA,GAAAC,WAAA,EAHA,CAKA,GAAA,GAAA/B,SAAA2B,aAAA,CAAA,YAAA,CAAA,CACA,EAAA,GAAAK,iBAAA,CAAA,UAAA,CACAR,EAAAS,0BAAA,CAAAC,CAAA,CACa,CAFb,CADA,CAOAC,EAAAC,OAAA,CAAAF,CAAA,CADA,CAA0BG,aAA1B,CACA,CAZA,CAaAb,EAAAS,0BAAA,CAAAC,CAAA,CACS,CAdT,CAeA,CAEAD,6BAAA,CAGAC,EAAAI,YAAA,CAAAC,CAAA,CAHA,CAIA,KAAAC,YAAA,CAAAD,CAAA,CAAA,EAAA,CAJA,CAQA,KAAAE,eAAA,CAAAF,CAAA,CARA,CAWA,GAAA,GAvCA,QAuCA,CACAL,EAAAI,YAAA,CAAAI,CAAA,CAZA,GAaA,EAAAR,EAAAS,YAAA,CAAAD,CAAA,CAbA,EAeA,KAAAF,YAAA,CAAAE,CAAA,CAAAE,CAAA,CAfA,CAkBA,IAAA,GADA,GAAA,KAAAlB,UAAA,CAAAxB,gBAAA,CAAA,sBAAA,CACA,CAAA,EAAA,CAAA,CAAuBlD,EAAA6F,EAAAjE,MAAvB,CAAqD,GAArD,CAEAiE,EAAA7F,CAAA,EAAA8F,KAAA,CAAAC,QAAA,CAAAH,CAFA,CAGAC,EAAA7F,CAAA,EAAA8F,KAAA,CAAAC,QAAA,CAAAH,CAEA,CAjDA,CAoDA5B,OAAAC,cAAA,CAAAC,MAAA,CAAA,YAAA,CAAA8B,CAAA,CPiMkE,COhMlEhC,OAAAgC,SAAA,CAAAA,CPuQO,CAjQG,CAmQH,eAA2D,CAElE,aACqB,GAAI,GAAqD3F,EAAoB,EAApB,CAAzD,CACI,EAA6DA,EAAoBa,CAApB,CAAsB+E,CAAtB,CADjE,CAEI,EAA2C5F,EAAoB,EAApB,CAF/C,CAGI,EAAmDA,EAAoBa,CAApB,CAAsBgF,CAAtB,CAHvD,CAII,EAAwD7F,EAAoB,CAApB,CAJ5D,CAKI,EAAsDA,EAAoB,EAApB,CAL1D,CAMI,EAA8DA,EAAoBa,CAApB,CAAsBiF,CAAtB,CANlE,CQlUrB,KAAA,GAAA,kBAAA,CAEA,EAAA,WAFA,CAGA,EAAA,aAHA,CAIA,EAAA,WAJA,CAKA,EAAA,gBALA,CAMA,EAAA,SANA,CAOA,EAAA,UAPA,CAUA,EAAA,QAVA,CAaA,eAAA3C,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAyC,SAAA,CACA,GAAA,GAAA,CACAC,OAAA,KAAAC,YADA,CAAA,CAGAJ,EAAAK,CAAA,CAAA,KAAAC,YAAA,CAJA,EAKAC,IAAA,IAAA,CAAA,YAAA,CAAAR,EAAAM,CAAA,CAAA,CAAA,IAAA,CACA,KAAAC,YAAA,CAAAD,CADA,CAEA,KAAAG,iBAAA,EAFA,CAGA,KAAAC,4BAAA,EAHA,CAIA,KAAAC,mBAAA,EAJA,CAKA,KAAAC,oBAAA,EALA,CAMA,KAAAC,aAAA,EANA,CAOA,KAAAC,cAAA,EAPA,CAQA,KAAAC,+BAAA,EACa,CATb,CAWA,CAEAH,sBAAA,CAEA,GAAA,GAAA,KAAAnC,UAAA,CAAAC,aAAA,CAAA,OAAA,CAAA,CACA,EAAA,CAAA,KAAAsC,aAAA,GAAArF,MADA,CAGA,EAAA,KAAA8C,UAAA,CAAAC,aAAA,CAAA,aAAA,CAHA,CAIA,EAAA,CAAA,KAAAsC,aAAA,GAAArF,MAJA,CAMA,EAAA,KAAA8C,UAAA,CAAAC,aAAA,CAAA,UAAA,CANA,CAOA,EAAA,CAAA,KAAAsC,aAAA,GAAArF,MAPA,CASA,KAAAsF,MAAA,CAAA,EAAAC,GAAAC,CAAA,EAAAC,CAAA,CAXA,CAaA,CAAA,GAAAJ,aAAA,GAAArF,MAbA,CAcA,KAAA4D,YAAA,CAAA,YAAA,CAAA,EAAA,CAdA,CAiBA,KAAAC,eAAA,CAAA,YAAA,CAEA,CAEAmB,qBAAA,CACA,GAAA,CAAA,KAAAN,YAAA,CAEA,YADA,KAAAgB,QAAA,GACA,EAEA,GAAA,GAAA,KAAA5C,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CACA4C,EAAAC,gBAAA,CAAA,OAAA,CAAA,IAAA,KAAAC,WAAA,EAAA,CACA,CAEAA,aAAA,CACA,KAAAH,QAAA,CAAA,CAAA,KAAAA,QACA,CAEAZ,mBAAA,CACA,KAAAgB,aAAA,GAAAC,OAAA,CAAA,KAAA,CACAC,EAAAJ,gBAAA,CAAA,YAAA,CAAA,IAAA,CACA,KAAAb,4BAAA,EADA,CAEA,KAAAE,oBAAA,EAFA,CAGA,KAAAG,+BAAA,EACa,CAJb,CAKS,CANT,CAOA,CAEAL,8BAAA,CACA,GAAA,GAAA,KAAAkB,2BAAA,EAAA,CACA,KAAAvB,YAFA,CAGAwB,EAAAH,OAAA,CAAA,KAAA,CACAC,EAAApC,YAAA,CAAAuC,CAAA,CAAA,EAAA,CADA,CAEAH,EAAAI,SAAA,CAAAC,GAAA,CAAAF,CAAA,CACa,CAHb,CAHA,CAQAD,EAAAH,OAAA,CAAA,KAAA,CACAC,EAAAnC,eAAA,CAAAsC,CAAA,CADA,CAEAH,EAAAI,SAAA,CAAAE,MAAA,CAAAH,CAAA,CACa,CAHb,CAKA,CAEAL,eAAA,CACA,GAAA,GAAA,KAAAhD,UAAA,CAAAxB,gBAAA,CAAA,MAAA,CAAA,CACA,IADA,CAEA,IAAA,GAAA,GAAA,CAAA,CAAuBlD,EAAAmI,EAAAvG,MAAvB,CAAyC,GAAzC,CACAwG,EAAArG,IAAA,CAAAoG,EAAAnI,CAAA,CAAA,EAEA,MAAAoI,EACA,CAEAP,6BAAA,CACA,MAAA,MAAAH,aAAA,GAAAW,GAAA,CAAA,KAAA5G,EAAAwF,aAAA,GAAAqB,MAAA,CAAA,KAAApH,YAAAsC,YAAA,CAAA,EACA+E,MADA,CACA,OAAAC,EAAAC,MAAA,CAAAb,CAAA,CADA,IAEA,CAEAhE,mBAAA,CAEA,KAAA8E,cAAA,CAAA,KAAAA,cAFA,CAGA,KAAAC,iBAAA,EAHA,CAIA,KAAAvC,OAAA,EAJA,CAKA,KAAAL,QAAA,CAAA,KAAAA,QALA,CAOA,KAAA,GAAA,IAAA,CACA6C,WAAA,UAAA,CACA,KAAA,GAAA1D,EAAAR,UAAA,CAAAC,aAAA,CAAA,aAAA,CAAA,CACAkE,CAFA,EAEAA,EAAArB,gBAAA,CAAA,OAAA,CAAA,UAAA,CACAsB,QAAAC,GAAA,CAAAF,EAAAhE,SAAA,CADA,CAEAK,EAAAI,YAAA,CAAAyC,CAAA,GAAA7C,EAAAI,YAAA,CAAA0D,CAAA,CAAA,EAAA,CAAA9D,EAAAI,YAAA,CAAA2D,CAAA,CAFA,EAGA/D,EAAAO,eAAA,CAAAuD,CAAA,CAEa,CALb,CAMS,CART,CAQS,CART,CARA,CAkBA,KAAA1D,YAAA,CAAA,YAAA,CAlBA,EAmBAwD,QAAAC,GAAA,CAAA,sIAAA,CRmVK,CQ/UL,UAAAG,mBAAA,EAAA,CACA,MAAA,CAAAC,CAAA,CAAApB,CAAA,CAAAiB,CAAA,CAAAI,CAAA,CAAA1D,CAAA,CACA,CAEA2D,2BAAA,OACAC,EADA,GAEAH,CAFA,KAGA,MAAAR,iBAAA,EAHA,CACAW,CADA,GAKA5D,CALA,KAMA,MAAAqB,cAAA,EANA,CACAuC,CADA,GAQAvB,CARA,KASA,MAAA3B,OAAA,EATA,CACAkD,CADA,GAWAN,CAXA,KAYA,MAAAO,cAAA,EAZA,CACAD,CADA,GAcAF,CAdA,KAeA,MAAAtC,aAAA,EAfA,OAkBA,CAEAyC,gBAAA,CACA,GAAA,GAAA,KAAA7E,UAAA,CAAAC,aAAA,CAAA,aAAA,CAAA,CACAkE,CAFA,GAGA,KAAAvB,QAHA,EAIAuB,EAAA/C,KAAA,CAAA0D,SAAA,CAAAX,EAAAY,YAAA,CAAA,IAJA,CAKA,KAAAzB,SAAA,CAAAC,GAAA,CAAA,sBAAA,CALA,CAMA5H,EAAAL,CAAA,CAAAmG,WAAA,EAAA,KAAAzB,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CANA,GAQAkE,EAAA/C,KAAA,CAAA0D,SAAA,CAAA,IARA,CASA,KAAAxB,SAAA,CAAAE,MAAA,CAAA,sBAAA,CATA,CAUA7H,EAAAL,CAAA,CAAAmG,QAAA,EAAA,KAAAzB,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CAVA,EAYA,CAEAmC,eAAA,CACA,GAAA,GAAA,KAAApC,UAAA,CAAAC,aAAA,CAAA,WAAA,CAAA,CACA+E,CAFA,EAGAA,EAAAlE,YAAA,CAAA,MAAA,CAAA,KAAAmE,OAAA,CAEA,CAEA,GAAAjB,eAAA,EAAA,CACA,MAAA,MAAA/C,YAAA,CAAAwD,CAAA,CACA,CAEA,GAAAT,eAAA,GAAA,CACAkB,CADA,CAEA,KAAApE,YAAA,CAAA2D,CAAA,CAAAS,CAAA,CAFA,CAIA,KAAApE,YAAA,CAAA2D,CAAA,CAlLA,QAkLA,CAEA,CAEA,GAAApD,SAAA,EAAA,CACA,MAAA,MAAAJ,YAAA,CAAAD,CAAA,GAAAmE,CACA,CAEA,GAAA9D,SAAA,GAAA,CACA6D,CADA,CAEA,KAAApE,YAAA,CAAAE,CAAA,CAAAkE,CAAA,CAFA,CAIA,KAAApE,YAAA,CAAAE,CAAA,CAAAmE,CAAA,CAEA,CAEA,GAAAvD,aAAA,EAAA,CACA,MAAA,MAAAhB,YAAA,CAAAyC,CAAA,CACA,CAEA,GAAAzB,aAAA,GAAA,CACAsD,CADA,CAEA,KAAApE,YAAA,CAAAuC,CAAA,CAAA,EAAA,CAFA,CAIA,KAAAtC,eAAA,CAAAsC,CAAA,CAEA,CAEA,GAAAT,SAAA,EAAA,CACA,MAAA,MAAAhC,YAAA,CAAA0D,CAAA,CACA,CAEA,GAAA1B,SAAA,GAAA,CACAsC,CADA,CAEA,KAAApE,YAAA,CAAAwD,CAAA,CAAA,EAAA,CAFA,CAIA,KAAAvD,eAAA,CAAAuD,CAAA,CAEA,CAEA,GAAAc,aAAA,EAAA,CACA,MAAA,MAAAxE,YAAA,CAAA2D,CAAA,CACA,CAEA,GAAAa,aAAA,GAAA,CACAF,CADA,CAEA,KAAApE,YAAA,CAAAyD,CAAA,CAAA,EAAA,CAFA,CAIA,KAAAxD,eAAA,CAAAwD,CAAA,CAEA,CAEA,GAAA/B,OAAA,EAAA,CACA,MAAA,MAAA5B,YAAA,CAAAyE,CAAA,CACA,CAEA,GAAA7C,OAAA,GAAA,CACA0C,CADA,CAEA,KAAApE,YAAA,CAAAuE,CAAA,CAAA,EAAA,CAFA,CAIA,KAAAtE,eAAA,CAAAsE,CAAA,CAEA,CAEA,GAAAJ,QAAA,EAAA,CACA,MAAA,MAAAhE,YAAA,CAAAyD,CAAA,GAjPA,kBAkPA,CAEA,GAAAO,QAAA,GAAA,CACA,KAAAnE,YAAA,CAAA4D,CAAA,CAAAQ,CAAA,CACA,CAEAjB,mBAAA,CACA,GAAA,GAAA,KAAAqB,gBAAA,CACA,EAAA,KAAAC,YADA,CAEA,GAAAC,CAAA,CAAA,CACA,GAAAA,EAAAC,KAAA,GAAAC,CAAA,CAEA,OAEAF,EAAAG,cAAA,CAAA,KAAAC,oBAAA,CALA,CAMA,KAAAL,YAAA,CAAA,IAEA,CACA,KAAAA,YAAA,CAAA,EAAAjG,OAAAuG,UAAA,CAAAH,CAAA,CAZA,CAaA,KAAAE,oBAAA,CAAA,KAAAE,mBAAA,CAAAC,IAAA,CAAA,IAAA,CAbA,CAeAP,EAAAQ,WAAA,CAAA,KAAAJ,oBAAA,CAfA,CAgBA,KAAAA,oBAAA,CAAAJ,CAAA,CACA,CAEAM,sBAAA,CACA,KAAAlE,YAAA,CAAAqE,EAAAjI,OACA,CAEA,GAAAsH,iBAAA,EAAA,CACA,MAAA,eAA8B,KAAAtB,cAAoB,GAClD,CAEA3B,gBAAA,CAEA,GAAA,CAAA,KAAAT,YAAA,CAEA,IAAA,GADA,GAAA,KAAA5B,UAAA,CAAAxB,gBAAA,CAAA,sBAAA,CACA,CAAA,EAAA,CAAA,CAA2BlD,EAAA6F,EAAAjE,MAA3B,CAAyD,GAAzD,CACAiE,EAAA7F,CAAA,EAAA8F,KAAA,CAAAC,QAAA,CAAA,KAAAA,QAAA,CAGA,GAAA,GAAA,KAAA6E,kBAAA,CACA,EAAA,KAAAC,cADA,CAEA,GAAAX,CAAA,CAAA,CACA,GAAAA,EAAAC,KAAA,GAAAC,CAAA,CAEA,OAEAF,EAAAG,cAAA,CAAA,KAAAS,sBAAA,CALA,CAMA,KAAAD,cAAA,CAAA,IAEA,CACA,KAAAA,cAAA,CAAA,EAAA7G,OAAAuG,UAAA,CAAAH,CAAA,CAnBA,CAoBA,KAAAU,sBAAA,CAAA,KAAAC,qBAAA,CAAAN,IAAA,CAAA,IAAA,CApBA,CAsBAP,EAAAQ,WAAA,CAAA,KAAAI,sBAAA,CAtBA,CAuBA,KAAAA,sBAAA,CAAAZ,CAAA,CACA,CAEAa,wBAAA,CACAJ,EAAAjI,OADA,CAEA,KAAAsF,SAAA,CAAAC,GAAA,CAAA,iBAAA,CAFA,CAKA,KAAAD,SAAA,CAAAE,MAAA,CAAA,iBAAA,CAEA,CAEA,GAAA0C,mBAAA,EAAA,CACA,MAAA,eAA8B,KAAA7E,QAAc,GAC5C,CAEAiB,iCAAA,CACA,GAAA,GAAA,KAAAtC,UAAA,CAAAC,aAAA,CAAA,aAAA,CAAA,CACA,EAAAqG,EAAA/D,aAAA,GAAAqB,MAAA,CAAA,KAAApH,EAAA+J,QAAA,GAAAC,KAAAC,YAAA,CADA,CAEA,GAAA,CAAA,KAAAvJ,MAAA,CAEA,WADA,MAAAwJ,sBAAA,CAAA,IAAA,CACA,CAEA,GAAA,GAAAC,EAAA,CAAA,CAAA,CACA,GAAA,CAAAxC,EAAAyC,kCAAA,CAAA,CACA,GAAA,GAAA,GAAAtG,iBAAA,CAAA,IAAA,CACA,KAAAoG,sBAAA,CAAAvC,CAAA,CACa,CAFb,CAAA,CAIA0C,EAAAnG,OAAA,CAAAyD,CAAA,CAAA,CAA+BxD,aAA/B,CAA+BmG,yBAA/B,CAAA,CALA,CAMA3C,EAAAyC,kCAAA,CAAAC,CACA,CACA,KAAAH,sBAAA,CAAAvC,CAAA,CACA,CAEAuC,yBAAA,CACA,GAAA,GAAAK,GAAAA,EAAAzD,SAAA,CAAA0D,QAAA,CAAA,aAAA,CAAA,CACAC,CAFA,CAIA,KAAA3D,SAAA,CAAAC,GAAA,CAAA,kBAAA,CAJA,CAMA,KAAAD,SAAA,CAAAE,MAAA,CAAA,kBAAA,CAEA,CAnVA,CAuVAlE,OAAAC,cAAA,CAAAC,MAAA,CAAA,YAAA,CAAA0H,CAAA,CRrCkE,CQsClE5H,OAAA4H,SAAA,CAAAA,CRoVO,CA7nBG,CA+nBH,eAA2D,CAElE,aSxoBA,eAAA,CACA,GAAA,GAAApH,EAAAqH,cAAA,CACA,GAAAC,CAAA,EAAAD,IAAArH,EAAAuH,uBAAA,EAIA,GAAA,GAAAC,EAAAjI,CAAA,CAAApC,QAAA,GAAAsK,OAAA,CAAA,iCAAA,CAAAJ,CAAA,CAAA,CACA,EAAA,UAAyBK,CAAI,WAAUC,EAAApI,CAAS,EADhD,CAGAF,IAAAW,CAAA,CAAA,UAAA,CAAA4H,CAAA,CAAA,IAAA,CACA5H,EAAAuH,uBAAA,CAAAF,CADA,CAEAQ,EAAA7H,CAAA,CAFA,CAGA8H,EAAA9H,CAAA,CAHA,CAKAA,EAAAE,UAAA,CAAAC,aAAA,CAAA,gBAAA,EAAA6C,gBAAA,CAAA,OAAA,CAAA,UAAA,CACAhD,EAAA+H,QAAA,GACS,CAFT,CAGK,CARL,CAPA,CAgBA,CAEA,aAAA,CACA/H,EAAAE,UAAA,CAAAC,aAAA,CAAA,MAAA,EACA6C,gBADA,CACA,YADA,CACA,IAAA,CAEAoB,WAAA,IAAA,UAAA,CACAyD,EAAA7H,CAAA,CACa,CAFb,CAGS,CANT,CAOA,CAEA,aAAA,CAEA,KAAA,GAAA,UAAA,CACAxB,SAAAwJ,mBAAA,CAAA,OAAA,CAAAC,CAAA,CADA,CAEAjI,EAAA+H,QAAA,GACA,CAHA,CAKA3D,WAAA,UAAA,CACA5F,SAAAwE,gBAAA,CAAA,OAAA,CAAAiF,CAAA,CACK,CAFL,CAGA,CAEA,eAAA,CACA,KAAA,GAAApJ,EAAAqJ,SAAA,CAAAC,KAAA,CAAA,IAAA,CAAA,CACA,MAAA,CAAA,CAAA,KAAAxJ,OAAA,CAAAuJ,CAAA,CACA,CAEA,aAAA,CACA,MAAAE,GAAApI,EAAAE,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CAAA,wBAAA,CACA,CAEA,eAAA,CACA,KAAA,GAAAtB,EAAAqJ,SAAA,CAAAC,KAAA,CAAA,IAAA,CAAA,CACA,EAAAE,EAAA1J,OAAA,CAAAuJ,CAAA,CADA,CAEA,EAAA,CAAA,CAAA,IAFA,CAGA,EAAA,CAAA,WAAA9K,MAAA,CAAAkL,UAAA,CAAA,CAAA,CAAA,CAAAC,CAHA,CAIAC,GAAA,CAAAD,CALA,CAMAF,EAAA9K,IAAA,CAAA2K,CAAA,CANA,CAOK,CAAAM,CAAA,EAAAD,CAPL,EAQAF,EAAAI,MAAA,CAAAC,CAAA,CAAA,CAAA,CARA,CAUA7J,EAAAqJ,SAAA,CAAAG,EAAA7K,IAAA,CAAA,GAAA,CACA,CAEA,aAAA,CACA,GAAA,GAAAwC,EAAAE,UAAA,CAAAC,aAAA,CAAA,iBAAA,EAAAsC,aAAA,EAAA,CACA,EAAAzC,EAAAE,UAAA,CAAAC,aAAA,CAAA,qBAAA,EAAAsC,aAAA,EADA,CAEA,EAAAkG,EAAA7E,MAAA,CAAA,WAAA,CAA4D,MAAA8E,aAAA5J,YAAqC,CAAjG,CAFA,CAGA,EAAA6J,EAAA/E,MAAA,CAAA,WAAA,CAAoE,MAAA8E,aAAA5J,YAAqC,CAAzG,CAHA,CAIA,KAAA,GAAA8J,EAAA1L,MAAA,CAAA2L,EAAA3L,MAAA,CACA,EAAA,CAAA,EADA,CAEA,EAAA4C,EAAAE,UAAA,CAAAC,aAAA,CAAA,YAAA,CAFA,CAMA,GAFA6I,CAEA,EAFAC,EAAAD,CAAA,CAAA,uBAAA,CAAAE,CAAA,CAEA,CAAAA,CAAA,CACA,IAAA,GAAA,GAAA,CAAA,CAAuB1N,EAAAsN,EAAA1L,MAAvB,CAAoD,GAApD,CACA0L,EAAAtN,CAAA,EAAAwF,YAAA,CAAA,MAAA,CAAA,MAAA,EAFA,IAIK,EAAA,IAJL,EAKA8H,EAAA,CAAA,EAAA9H,YAAA,CAAA,MAAA,CAAA,EAAA,CALA,CAQA,CAAA,EAnBA,EAoBAsD,QAAAC,GAAA,CAAAnH,CAAA,CApBA,CAqBA4C,EAAAgB,YAAA,CAAA,YAAA,CAAA,EAAA,CArBA,EAwBAhB,EAAAiB,eAAA,CAAA,YAAA,CAEA,CT+iBqB,GAAI,GAA+CpF,EAAoB,EAApB,CAAnD,CACI,EAAuDA,EAAoBa,CAApB,CAAsByM,CAAtB,CAD3D,CAEI,EAAwDtN,EAAoB,CAApB,CAF5D,CAGI,EAAoDA,EAAoB,EAApB,CAHxD,CAII,EAA4DA,EAAoBa,CAApB,CAAsB0M,CAAtB,CAJhE,CSjsBrB,KAAA,GAAA,iBAAA,CACA,EAAA,SADA,CAEA,eAAApK,YAAA,CAEA,GAAAqI,eAAA,EAAA,CACA,MAAA,MAAAlG,YAAA,CAAAkI,CAAA,GAAAC,CACA,CAEA,GAAAjC,eAAA,GAAA,CACAjC,CADA,CAEA,KAAApE,YAAA,CAAAqI,CAAA,CAAAjE,CAAA,CAFA,CAIA,KAAApE,YAAA,CAAAqI,CAAA,CAAAC,CAAA,CAEA,CAEA,GAAAvB,SAAA,EAAA,CACA,MAAAwB,GAAA,IAAA,CACA,CAEA,GAAAxB,SAAA,GAAA,CACA,KAAA,GAAA,KAAA7H,UAAA,CAAAC,aAAA,CAAA,qBAAA,CAAA,CACAqJ,GAAA,CAAAD,EAAA,IAAA,CAFA,EAEAE,EAAA,IAAA,CAFA,CAGAR,EAAApK,CAAA,CAAA,wBAAA,CAAA2K,CAAA,CACA,CAEAvK,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACAsK,EAAA,IAAA,IACA,CAEA7E,2BAAA,OACAC,EADA,GAEAuE,CAFA,KAGAK,GAAA,IAAA,IAHA,OAMA,CAEA,UAAAhF,mBAAA,EAAA,CACA,MAAA,CAAA2E,CAAA,CACA,CAEA,GAAAM,UAAA,EAAA,CACA,MAAA,MAAAzJ,UAAA,CAAAC,aAAA,CAAA,iBAAA,CACA,CAEA,GAAAyJ,cAAA,EAAA,CACA,MAAA,MAAA1J,UAAA,CAAAC,aAAA,CAAA,qBAAA,CACA,CAnDA,CAkJAX,OAAAC,cAAA,CAAAC,MAAA,CAAA,UAAA,CAAAmK,CAAA,CT0iBkE,CSziBlErK,OAAAqK,OAAA,CAAAA,CT8sBO,CApyBG,CAsyBH,eAA2D,CAElE,aUzsBA,aAAA,CACAC,EAAAC,WAAA,CAAA/G,gBAAA,CAAA,YAAA,CAAA,MAAA,CACAgH,EAAAF,CAAA,CAAAG,EAAA,CACK,CAFL,CAGA,CAEA,aAAA,CACA,GAAA,IAAAH,EAAAI,MAAA,CACA,GAAAC,EAAAL,CAAA,CADA,CAGAM,KAAAC,EAJA,GAMAP,EAAAI,MAAA,CAAAG,EANA,CAQAD,EARA,EASAE,EAAAR,CAAA,CAAAM,EAAA,CATA,CAWAC,EAXA,CAYAE,EAAAT,CAAA,CAAAO,EAAA,CAZA,CAcA/F,QAAAkG,KAAA,CAAA,mFAAyGV,EAAAW,mBAA2B,OAApI,CAAoIX,CAApI,CAdA,CAgBA,CAEA,gBAAA,CACA,MAAAzK,KAAAyK,EAAAC,WAAA,CAAAjL,EAAA,CACA,CAEA,gBAAA,CACA,GAAA,IAAAqL,EAAAL,CAAA,CAAAhL,EAAA,CAAA,CAOA,MALA4L,GAKA,CAJAH,EAAAT,CAAA,CAAAY,EAAA,CAIA,CAFApG,QAAAkG,KAAA,CAAA,mFAAyG1L,EAAS,OAAlH,CAAkHgL,CAAlH,CAEA,CAAAY,EACA,CAEA,gBAAA,CACAC,EAAAb,CAAA,CAAAY,EAAA,CADA,CAEAE,EAAAd,CAAA,CAAAY,EAAA,CAFA,CAGAG,EAAAf,CAAA,CAAAY,EAAA,CACA,CAEA,gBAAA,CACAI,EAAAhB,CAAA,CAAAY,EAAA,CADA,CAEAK,EAAAjB,CAAA,CAAAY,EAAA,CAFA,CAGAM,EAAAlB,CAAA,CAAAY,EAAA,CACA,CAEA,gBAAA,CACA,GAAA,IAAAZ,EAAAmB,MAAA,CAEA,OAAAA,EAAA,EACA,IAAAC,EAAA,CACAC,EAAArB,CAAA,CAAA9N,EAAA,CADA,CAEA,MACA,IAAAoP,EAAA,CACAC,EAAAvB,CAAA,CAAA9N,EAAA,CADA,CAEA,MACA,IAAAsP,EAAA,CACAC,EAAAzB,CAAA,CAAA9N,EAAA,CADA,CAEA,MACA,QACA,KAAA,IAAAwP,MAAA,CAAA,qBAAiDC,CAAY,MAAKR,EAAO,GAAzE,CAAA,CAXA,CAaA,CAEA,aAAA,CACA,GAAA,IAAAnB,EAAA4B,YAAA,CAEA,GAAArM,IAAAyK,EAAAC,WAAA,CAAA4B,EAAA,CAFA,CAIA,GAAA,CAAAC,EAAA,CACA,KAAA,IAAAJ,MAAA,CAAA,kEAA0FG,EAAO,GAAjG,CAAA,CAGA,GAAA,EAAAC,aAAAC,gBAAA,CAAA,CACA,KAAA,IAAAL,MAAA,CAAA,8BAAsDG,EAAO,gCAA+BC,GAAAE,SAAe,GAA3G,CAAA,CAGAF,GAAAG,MAAA,EACA,CAEA,aAAA,CACA,GAAA,IAAAjC,EAAA4B,YAAA,CAEA,GAAArM,IAAAyK,EAAAC,WAAA,CAAA4B,EAAA,CAFA,CAIA,GAAA,CAAAK,EAAA,CACA,KAAA,IAAAR,MAAA,CAAA,4DAAoFG,EAAO,GAA3F,CAAA,CAGAK,GAAAC,KAAA,EACA,CAEA,gBAAA,CACA,GAAA,IAAAnC,EAAA4B,YAAA,CAEA,GAAA,CAAAC,EAAA,CACA,KAAA,IAAAH,MAAA,CAAA,iEAAA,CAAA,CAGAG,GAAAhN,OAAA,CAAA,WAAA,CAPA,EAQA2F,QAAA4H,IAAA,CAAA,4IAAA,CAAkHpC,CAAlH,CARA,CAWAtK,OAAA2M,QAAA,CAAAC,MAAA,CAAAT,GAAAlE,OAAA,CAAA,WAAA,CAAoDjI,OAAA6M,kBAAA,CAAArQ,EAAA,CAApD,CAAA,CACA,CAEA,gBAAA,CACA0O,GAAAlH,SAAA,CAAAC,GAAA,CAAA6I,CAAA,CACA,CAEA,gBAAA,CACA5B,GAAAlH,SAAA,CAAAE,MAAA,CAAA4I,CAAA,CACA,CAGA,gBAAA,CACA,KAAA5B,GAAA6B,KAAA,EAAA7B,GAAA8B,WAAA,GAEA,GAAA,MAAA,CAEA9B,GAAA6B,KAAA,EAAA7B,GAAA8B,WAJA,CAOK9B,GAAA6B,KAPL,EAQA7B,GAAA8B,WAAA,CAAA9B,GAAA6B,KARA,CASAE,GAAAlP,IAAA,CAAA,aAAA,CATA,GAWAmN,GAAA6B,KAAA,CAAA7B,GAAA8B,WAXA,CAYAC,GAAAlP,IAAA,CAAA,OAAA,CAZA,GAKAmN,GAAA6B,KAAA,CAAA7B,GAAA8B,WAAA,CAAA,QALA,CAMAC,GAAAlP,IAAA,CAAA,OAAA,CAAA,aAAA,CANA,EAeAmN,GAAAgC,+BAAA,CAAAD,EAfA,CAgBA,CAEA,gBAAA,CACA,GAAA,IAAA/B,GAAAgC,+BAAA,CACAC,EAFA,GAIAA,GAAAC,QAAA,CAAA,OAAA,CAJA,GAKAlC,GAAA6B,KAAA,CAAA,IALA,EAOAI,GAAAC,QAAA,CAAA,aAAA,CAPA,GAQAlC,GAAA8B,WAAA,CAAA,IARA,EAUA,MAAA9B,IAAAgC,+BAVA,CAWA,CAEA,aAAA,CACA5C,EAAA5J,UAAA,CAAAC,aAAA,CAAA,gBAAA,EACA6C,gBADA,CACA,OADA,CACA,UAAA,CACA8G,EAAAA,MAAA,EACS,CAHT,CAIA,CAEA,gBAAA,CACA,GAAA,IAAAY,GAAAmC,wBAAA,CAAA,YAAA,CACA,EAAA,MAAAC,OADA,EAEAhD,EAAAA,MAAA,EAEA,CAJA,CAKAY,GAAA1H,gBAAA,CAAA,UAAA,CAAA+J,EAAA,IACA,CAEA,gBAAA,CACA,GAAA,IAAArC,GAAAmC,wBAAA,CACAE,EAFA,EAEArC,GAAA1C,mBAAA,CAAA,UAAA,CAAA+E,EAAA,IACA,CAEA,aAAA,CACA,GAAA,IAAAjD,EAAAkD,oBAAA,CAAA,YAAA,CACA,GAAA,IAAAlD,EAAAmD,WAAA,CACA,GAAA9Q,EAAA,EACA,GAAA,IAAAqD,OAAArD,EAAA,CAAA,CACA,GAAA,CAAA+Q,EAAA,CACA,KAAA,IAAA1B,MAAA,CAAA,2CAAuErP,EAAK,GAA5E,CAAA,CAEA+Q,GAAAvR,IAAA,CAAAmO,CAAA,CAAAqD,EAAA,CALA,CAMA,CARA,CAUArD,EAAA9G,gBAAA,CAAAoK,CAAA,CAAAF,EAAA,IAXA,CAaA,GAAA,IAAApD,EAAAuD,uBAAA,CAAA,YAAA,CACA,GAAA,IAAAvD,EAAAwD,QAAA,CACA,GAAAnR,EAAA,EAEA,GAAA,IAAAqD,OAAArD,EAAA,CAAA,CACA,GAAA,CAAA+Q,EAAA,CACA,KAAA,IAAA1B,MAAA,CAAA,2CAAuErP,EAAK,GAA5E,CAAA,CAEA+Q,GAAAvR,IAAA,CAAAmO,CAAA,CAAAqD,GAAAI,MAAA,CAAAzD,MAAA,CAAAqD,EAAA,CANA,CAOA,CATA,CAWArD,EAAA9G,gBAAA,CAAAoK,CAAA,CAAAI,EAAA,IACA,CAEA,aAAA,CACA1D,EAAAkD,oBADA,EAEAlD,EAAA9B,mBAAA,CAAAoF,CAAA,CAAAtD,EAAAkD,oBAAA,IAFA,CAIAlD,EAAAuD,uBAJA,EAKAvD,EAAA9B,mBAAA,CAAAoF,CAAA,CAAAtD,EAAAuD,uBAAA,IAEA,CAEA,aAAA,OACApC,EADA,CAEAwC,EAAAxC,CAAA,CAFA,CACA,IAEA,CVsfqB,GAAI,GAAiDpP,EAAoB,EAApB,CAArD,CACI,EAAyDA,EAAoBa,CAApB,CAAsBgR,CAAtB,CAD7D,CU72BrB,EAAA7R,EAAA,CAAA,CV62BqB,CUx1BrB,KAAA,GAAA,6BAAA,CAEA,EAAA,UAFA,CAGA,EAAA,aAHA,CAIA,EAAA,uBAJA,CAKA,EAAA,QALA,CAMA,EAAA,eANA,CAQA,EAAA,aARA,CASA,EAAA,OATA,CAUA,EAAA,UAVA,CAeA,EAAA,YAfA,CAiBA,EAAA,CAEA,CAAAqP,CAAA,EAPA,MAKA,CAGA,CAAAE,CAAA,EAPA,oDAIA,CAjBA,CAyBA,eAAApM,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACAC,IAAA,IAAA,CAAA,YAAA,CAAAsO,EAAApO,CAAA,CAAA,IAAA,CACA,KAAAqO,YAAA,GADA,CAGA,KAAA1D,MAAA,CAAA2D,EAAA,IAAA,CAAA,KAAApD,mBAAA,CAHA,CAKAqD,EAAA,IAAA,CALA,CAMAC,EAAA,IAAA,CANA,CAQAC,EAAA,IAAA,CACS,CATT,CAUA,CAEAC,sBAAA,CACA,KAAA/D,MADA,EAEAI,EAAA,IAAA,CAAA,KAAAJ,MAAA,CAFA,CAKAgE,EAAA,IAAA,CAEA,CAEApE,QAAA,CACA,GAAA,GAAA,KAAAI,MAAA,CACA,GAAA,CAAArL,CAAA,CACA,KAAA,IAAA2M,MAAA,CAAA,sEAAkG,KAAAf,mBAAyB,iBAA3H,CAAA,CAEA,GAAA,IAAA5L,EAAA7C,KAAA,CACA,GAAAA,EAAA,EAEA,GAAA,IAAAqD,IAAA+N,CAAA,CAAA,CAAkDtD,OAAA9N,EAAlD,CAAA,CAAA,CAEA,GAAA,CAAA,KAAAmS,aAAA,CAAAhB,EAAA,CAFA,CAGAiB,EALA,EAOA,KAAAnD,MAPA,EAQAoD,EAAA,IAAA,CAAArS,EAAA,CARA,CAUA,CAEA,UAAA0I,mBAAA,EAAA,CACA,MAAA,CAAA4J,CAAA,CACA,CAEAzJ,iCAAA,CACA,GAAA,KAAA+I,YAAA,OACA9I,EADA,GAEAwJ,CAFA,EAGA,KAAApE,MAHA,EAIAI,EAAA,IAAA,CAAA,KAAAJ,MAAA,CAJA,MAOA,KAAAA,MAAA,CAAA2D,EAAA,IAAA,CAAAU,EAAA,CAPA,SAYA,CAEA,GAAAtB,YAAA,EAAA,CACA,MAAA,MAAA9L,YAAA,CAAAqN,CAAA,CACA,CAEA,GAAAvB,YAAA,GAAA,CACA,KAAAjM,YAAA,CAAAwN,CAAA,CAAAxS,CAAA,CACA,CAEA,GAAAsR,SAAA,EAAA,CACA,MAAA,MAAAnM,YAAA,CAAAsN,CAAA,CACA,CAEA,GAAAnB,SAAA,GAAA,CACA,KAAAtM,YAAA,CAAAyN,CAAA,CAAAzS,CAAA,CACA,CAEA,GAAAyO,oBAAA,GAAA,CACA,KAAAzJ,YAAA,CAAAsN,CAAA,CAAAtS,CAAA,CACA,CAEA,GAAAyO,oBAAA,EAAA,CACA,MAAA,MAAAtJ,YAAA,CAAAmN,CAAA,GAzFA,0CA0FA,CAEA,GAAArD,OAAA,GAAA,CACA,KAAAjK,YAAA,CAAAyK,CAAA,CAAAzP,CAAA,CACA,CAEA,GAAAiP,OAAA,EAAA,CAEA,MAAA,MAAA9J,YAAA,CAAAsK,CAAA,CACA,CAEA,GAAAC,aAAA,GAAA,CACA,KAAA1K,YAAA,CAAA0N,CAAA,CAAA1S,CAAA,CACA,CAEA,GAAA0P,aAAA,EAAA,CAEA,MAAA,MAAAvK,YAAA,CAAAuN,CAAA,GAAAC,EAAA,KAAA1D,MAAA,CACA,CAEA,GAAAlB,YAAA,EAAA,CACA,MAAA,MAAA7J,UAAA,CAAAC,aAAA,CAAA,SAAA,CACA,CA9GA,CAkHAX,OAAAC,cAAA,CAAAC,MAAA,CAAA,YAAA,CAAAkP,CAAA,CV0sBkE,CUzsBlEpP,OAAAoP,SAAA,CAAAA,CV0kCO,CAvqCG,CAyqCH,eAA2D,CAElE,aW7rCA,aAAA,CACA,GAAA,GAAAC,EAAApM,aAAA,EAAA,CACAa,EAAAQ,MAAA,CAAA,KAAAgL,YAAA9P,YAAA,EAEA8E,MAFA,CAEA,KAAA,CAAAgL,EAAAvC,KAFA,EAGApJ,OAHA,CAGA,KAAA,CACA,GAAA,GAAA4L,EAAAC,CAAA,CAAA,CACAC,CAFA,GAMAD,EAAAzC,KAAA,CAAA,IAAA2C,EAAAD,CAAA,CAAA,CAAA,GANA,CAOS,CAVT,CAWA,CAEA,aAAA,CACA,GAAAhI,EAAAnG,YAAA,CAAA,MAAA,CAAA,CAAA,MAAAmG,GAAA9F,YAAA,CAAA,MAAA,CAAA,CACA,IAAA,MAAA,EAAA,CAAA,CAAmB3F,EAAA2T,EAAA/R,MAAnB,CAA0C,GAA1C,CAEA,KADA+R,EAAA3T,CAAA,CACA,CAAAyL,EAAAzD,SAAA,CAAA0D,QAAA,CAAAzJ,CAAA,CAAA,CACA,MAAAA,EAAA,CAGA,MAAA,KACA,CXsqCqB,GAAI,GAA6D5B,EAAoB,EAApB,CAAjE,CACI,EAAqEA,EAAoBa,CAApB,CAAsB0S,CAAtB,CADzE,CAEI,EAAwDvT,EAAoB,CAApB,CAF5D,CW5uCrB,KAAA,yOAAA,CAeA,EAAAO,OAAAiT,mBAAA,CAAAH,CAAA,CAfA,CAiBA,eAAAlQ,YAAA,CAEAC,aAAA,CACA,OADA,CAEA,KAAAC,YAAA,CAAA,CAA2BC,KAAA,MAA3B,CAAA,CACA,CAEAC,mBAAA,CACAC,IAAA,IAAA,CAAA,wBAAA,CAAAiQ,EAAA/P,CAAA,CAAA,IAAA,CACA,GAAA,GAAA,KAAAW,UAAA,CAAAC,aAAA,CAAA,cAAA,CAAA,CACAoP,EAAAC,CAAA,CAFA,CAIAL,EAAAhM,OAAA,CAAA,KAAA,CACA,KAAA,GAAA,KAAAjD,UAAA,CAAAC,aAAA,CAAA,sBAAA1C,CAAA,CAAA,CACAgS,CAFA,GAIAF,EAAAE,CAAA,CAJA,CAMA,CAAA,GAAAhN,aAAA,GAAArF,MANA,EAOAkH,QAAAC,GAAA,CAAA,+DAA+F9G,CAAG,0BAAyBA,CAAG,IAA9H,CAA8H,IAA9H,CAPA,CASa,CATb,CAUS,CAdT,CAeA,CAvBA,CA0BA+B,OAAAC,cAAA,CAAAC,MAAA,CAAA,wBAAA,CAAAgQ,CAAA,CX8rCkE,CW7rClElQ,OAAAkQ,mBAAA,CAAAA,CXgxCO,CA5vCG,CA8vCH,eAA2D,CAElE,aACqB,GAAI,GAAoD7T,EAAoB,EAApB,CAAxD,CACI,EAA4DA,EAAoBa,CAApB,CAAsBiT,CAAtB,CADhE,CYr0CrB,EAAA9T,EAAA,CAAA,CZq0CqB,CY7zCrB,eAAAmD,YAAA,CAEAC,aAAA,CACA,OADA,CAGA,KAAAC,YAAA,CAAA,CAA4CC,KAAA,MAA5C,CAAA,CAEA,CAGA,UAAAuF,mBAAA,EAAA,CAEA,CAEAG,0BAAA,CAMA,CAEAzF,mBAAA,CACAC,IAAA,IAAA,CAAA,eAAA,CAAAuQ,EAAArQ,CAAA,CAAA,IAAA,CACA,KAAA2C,iBAAA,EADA,CAEA,KAAA2N,kBAAA,EACU,CAHV,CAIA,CAEA3N,mBAAA,CAEA,KAAA4N,WAAA,EAFA,CAGA,KAAA,GAAA,KAAA5P,UAAA,CAAAC,aAAA,CAAA,YAAA,CAAA,CACA4P,EAAA/M,gBAAA,CAAA,YAAA,CAAA,IAAA,CACA,KAAA8M,WAAA,EACS,CAFT,CAGA,CAEAA,aAAA,CACA,KAAA,GAAA,KAAA5P,UAAA,CAAAC,aAAA,CAAA,YAAA,CAAA,CACA,CAAA,GAAAsC,aAAA,GAAArF,MAFA,CAGA,KAAA4D,YAAA,CAAA,UAAA,CAAA,EAAA,CAHA,CAMA,KAAAC,eAAA,CAAA,UAAA,CAEA,CAEA4O,oBAAA,CACA,KAAA7O,YAAA,CAAA,MAAA,CAAA,QAAA,CACA,CAlDA,CAsDAxB,OAAAC,cAAA,CAAAC,MAAA,CAAA,eAAA,CAAAsQ,CAAA,CZowCkE,CYnwClExQ,OAAAwQ,WAAA,CAAAA,CZ40CO,CAv0CG,CAy0CH,WAA0B,Ca74CjCpU,EAAAL,OAAA,+fb06CO,CAt2CG,CAw2CH,eAA+C,CAEtD,ac96CA,GAAA,EAAA,CAAA,CAAA,CAKA,cAAA,CAGA,EAAA0U,CAAA,CAAA,EAAA,UAAA,QAAAC,EAAA,CAAAA,EAAAvU,IAAA,CAAAJ,CAAA,CAAAM,CAAA,CAAAN,CAAA,CAAAK,CAAA,CAAA,CAAAsU,CAAA,GAAAC,aAAAvU,EAAAL,OAAA,CAAA4U,CAAA,CAAA,CAQC,CAXD,EAWC,MAAA3Q,MAXD,CAWC,UAAA,CAOD,GACA,KADA,CAEA,EAAA,gBAFA,CAKA,EAAA,CACA4Q,mBADA,CAEAC,gBAFA,CALA,CAqBA,EAAA,WAAA,OACA,QAAA,QAAAC,EADA,CAEAC,MAAA3T,SAAA,CAAA4T,KAAA,CAAA7U,IAAA,CAAA6C,SAAAE,gBAAA,CAAA4R,CAAA,CAAA,CAFA,CAGS,WAAA,QAAAA,EAAA,EAAAA,YAAAC,MAHT,CAIAD,CAJA,CAMA,CAAAA,CAAA,CAEA,CA7BA,CAsCA,EAAA,WAAA,OACA,QAAA,QAAAG,EADA,CAEAA,EAAAC,WAAA,GAAAvI,KAAA,CAAA,GAAA,CAFA,CAIAsI,CAEA,CA5CA,CAsDA,EAAA,eAAA,CACA,GACA,GAAA,CAAA/M,EAAA,QAAA,CAAA,KAAA,EAAA,eADA,CAEA,EAAAiN,EAAAL,CAAA,CAFA,CAGA,EAAAM,EAAAxT,MAHA,CAIA,IAJA,CAOA,IAAA,GAAA,EAAA,GAAAyT,EAAA,CACAC,EAAAC,CAAA,EAAAN,GAAAA,EAAAM,CAAA,CAAA,CAAAC,EAAAP,EAAAM,CAAA,CAAA,CAAA,CAAAF,EAAAE,CAAA,CAAA,CATA,KAaA,GAbA,EAcA,IAAA,GAAA,EAAA,GAAAD,EAAA,KACA,GAAA,GAAAA,EAAAG,CAAA,EAAA7T,MADA,CAEA,GAFA,EAGAwT,EAAAM,CAAA,EAAAC,CAAA,EAAAL,EAAAG,CAAA,EAAAG,CAAA,CAAA,CAAAC,CAAA,CAIA,CA3EA,CAmFA,EAAA,WAAA,CACAC,EAAAC,MAAA,CAAApE,EAAAqE,aAAA,CACA,CArFA,CAmKA,MA9DAF,GAAA7N,GAAA,CAAA,aAAA,CAEA,MADAgO,GAAAnB,CAAA,CAAAG,CAAA,CACA,CAAAa,CACA,CA2DA,CA/CAA,EAAA5N,MAAA,CAAA,aAAA,CAEA,MADA+N,GAAAnB,CAAA,CAAAG,CAAA,IACA,CAAAa,CACA,CA4CA,CAnCAA,EAAAlB,SAAA,CAAA,WAAA,CAIA,MAHAO,GAAAL,CAAA,EAAAnN,OAAA,CAAA,WAAA,CACA8D,EAAAzD,SAAA,CAAAC,GAAA,CAAAiO,CAAA,CACS,CAFT,CAGA,CAAAJ,CACA,CA8BA,CArBAA,EAAAjB,MAAA,CAAA,WAAA,CAIA,MAHAM,GAAAL,CAAA,EAAAnN,OAAA,CAAA,WAAA,CACA8D,EAAAzD,SAAA,CAAAE,MAAA,CAAAgO,CAAA,CACS,CAFT,CAGA,CAAAJ,CACA,CAgBA,CAPAA,EAAAC,MAAA,CAAA,WAAA,CAIA,MAHAZ,GAAAL,CAAA,EAAAnN,OAAA,CAAA,WAAA,CACAmO,EAAArK,EAAAzD,SAAA,CAAA0D,QAAA,CAAAwK,CAAA,EAAA,QAAA,CAAA,WAAA,EAAAzK,CAAA,CACS,CAFT,CAGA,CAAAqK,CACA,CAEA,CAAAA,CACC,CAtLD,Cd2mDO,CA5iDG,CA8iDH,eAA2D,CAElE,aACAlV,OAAOC,cAAP,CAAsBuB,CAAtB,CAA2C,YAA3C,CAAyD,CAAE5B,QAAF,CAAzD,CAHkE,CAI7C,GAAI,GAA0DH,EAAoB,CAApB,CAA9D,CACI,EAAsDA,EAAoB,CAApB,CAD1D,CAEI,EAA0DA,EAAoB,CAApB,CAF9D,CAGI,EAAgEA,EAAoB,EAApB,CAHpE,CAII,EAA0DA,EAAoB,CAApB,CAJ9D,CAKI,EAAwEA,EAAoB,CAApB,CAL5E,CAMI,EAAsFA,EAAoB,CAApB,CAN1F,CAOI,EAAkFA,EAAoB,CAApB,CAPtF,CetnDrB,EAAAA,EAAA,EAAA,CfsnDqB,CetnDrB,EAAAA,EAAAa,CAAA,CAAAiV,CAAA,CfsnDqB,Ce9lDrBrN,QAAAC,GAAA,CAAA,iDAA6DoN,SAAQ,kBAArE,CfmoDO,CAvlDG,CAylDH,aAA2D,CAElE,agB/pDA/T,IAkBA,aAAA,CACA,GAAA,UAAA,QAAA4B,QAAAoS,WAAA,CACA,MAAA,IAAAA,YAAA,CAAAzV,CAAA,CAAA,CAAsCoR,QAAtC,CAAsCsE,aAAtC,CAAsCC,UAAtC,CAAA,CAAA,CAEA,GAAA,GAAAtT,SAAAuT,WAAA,CAAA,aAAA,CAAA,CAEA,MADAC,GAAAC,eAAA,CAAA9V,CAAA,OAAAoR,CAAA,CACA,CAAAyE,CACA,ChBoqDO,CAznDG,CA2nDH,eAA2D,CAElE,aACiCpU,IiB9qDjC,aAAA,CACA,GAAA,GAAA6R,EAAAhN,aAAA,CAAA,CAAoCyP,UAApC,CAAA,EACApO,MADA,CACA,KAAApH,EAAA+J,QAAA,GAAAC,KAAAC,YADA,CAAA,CAGA,IAAA,MAAA,EAAA,CAAA,CAAA,EAAAwL,EAAA/U,MAAA,CAAuC5B,EAAA4W,CAAvC,CAAgD,GAAhD,CAAgD,CAEhD,KADAD,EAAA3W,CAAA,CACA,CAAAK,EAAAL,CAAA,CAAA6W,GAAA,EAAAjP,CAAA,CAAAtE,CAAA,CAAA,CACA,MAAAsE,EAAA,CAEA,GAAA,GAAAA,EAAAjD,aAAA,CAAArB,CAAA,CAAA,CACA,GAAAwT,CAAA,CACA,MAAAA,EAEA,CACA,MAAA,KACA,CjB4pDkE,CiB/rDlE,GAAA,GAAAzW,EAAA,CAAA,CjB2uDO,CAvqDG,CAyqDH,eAA2D,CAElE,akBxsDA,qBAAA,CACA,GAAA,GAAA,iCAAA0W,CAAA,CAAA,GAAA,CAAAC,CAAA,CACA,EAAAhU,SAAAiU,IAAA,CAAAtS,aAAA,CAAA,YAAAuS,CAAA,CADA,CASA,GAPAC,CAOA,GANA,EAAAnU,SAAAoU,aAAA,CAAA,UAAA,CAMA,CALAD,EAAAlV,EAAA,CAAAiV,CAKA,CAJAC,EAAAtS,SAAA,CAAAwS,CAIA,CAHArU,SAAAiU,IAAA,CAAAK,WAAA,CAAAH,CAAA,CAGA,CAFAI,SAAAC,eAAA,CAAAL,CAAA,CAAAJ,CAAA,CAEA,EAAAQ,SAAAE,YAAA,CACAF,SAAAE,YAAA,CAAAhM,CAAA,CADA,KAEK,IAAA8L,SAAAG,UAAA,CACLH,SAAAG,UAAA,CAAAjM,CAAA,CADK,KAGL,MAAA,IAAAuE,MAAA,CAAA,kEAAA,CAAA,CAEA,GAAA,GAAAhN,SAAA2U,UAAA,CAAAR,EAAAS,OAAA,IAAA,CACA,EAAAnM,EAAA/G,UADA,CAjBA,KAqBAmT,EAAAC,UArBA,EAsBAD,EAAAE,WAAA,CAAAF,EAAAC,UAAA,EAEAD,EAAAP,WAAA,CAAAU,CAAA,CAxBA,CAyBApP,WAAA,UAAA,CACAqP,EAAAxM,CAAA,CAAAyM,CAAA,CACK,CAFL,CAGA,CAEA,iBAAA,CACAzM,EAAA/G,UAAA,CAAAG,SAAA,CAAAwS,CADA,CAEAY,EAAAxM,CAAA,CAAAyM,CAAA,CACA,CAEA,eAAA,CACAzM,EAAAzD,SAAA,CAAAC,GAAA,CAAAkQ,CAAA,CADA,CAEAD,CAFA,EAGAA,GAEA,ClBiqDiC9V,IkB1tDjC,iBAAA,CACA,GAAA,GAAAgW,IAAAf,CAAA,CAAA,CAEA,EAAA5L,EAAA4M,6BAAA,CAAA5M,EAAA4M,6BAAA,IAFA,CAGAC,EAAAC,YAAA,GAAAvB,CAJA,GAQAsB,EAAAC,YAAA,CAAAvB,CARA,CAUAhT,OAAAuT,QAAA,EAAA,CAAAvT,OAAAuT,QAAA,CAAAiB,YAVA,CAWAC,EAAAhN,CAAA,CAAAsL,CAAA,CAAAM,CAAA,CAAAa,CAAA,CAAAlB,CAAA,CAXA,CAaA0B,EAAAjN,CAAA,CAAA4L,CAAA,CAAAa,CAAA,CAbA,CAeA,ClBwsDkE,CkB7uDlE,GAAA,GAAA7X,EAAA,EAAA,CAAA,CAAA,EAAAA,EAAAa,CAAA,CAAAyX,CAAA,CAAA,CAoBA,KAAA,GAAA,wBlBkzDO,CAlwDG,CAowDH,eAA+C,CmBx0DtD,EAAAvY,EAAAL,OAAA,CAAAM,EAAA,CAAA,GnBw0DsD,CmBn0DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,muBAAA,CAA2vB,EAA3vB,CAAA,CnB+0DO,CAhxDG,CAkxDH,eAA+C,CoBt1DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GpBs1DsD,CoBj1DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,u7BAAA,CAA+8B,EAA/8B,CAAA,CpB61DO,CA9xDG,CAgyDH,eAA+C,CqBp2DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GrBo2DsD,CqB/1DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,g1DAAA,CAA02D,EAA12D,CAAA,CrB22DO,CA5yDG,CA8yDH,eAA+C,CsBl3DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GtBk3DsD,CsB72DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,6wRAAA,CAAuyR,EAAvyR,CAAA,CtBy3DO,CA1zDG,CA4zDH,eAA+C,CuBh4DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GvBg4DsD,CuB33DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,0FAAA,CAAkH,EAAlH,CAAA,CvBu4DO,CAx0DG,CA00DH,eAA+C,CwB94DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GxB84DsD,CwBz4DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,u0JAAA,CAAi2J,EAAj2J,CAAA,CxBq5DO,CAt1DG,CAw1DH,eAA+C,CyB55DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,GzB45DsD,CyBv5DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,+6DAAA,CAAu8D,EAAv8D,CAAA,CzBm6DO,CAp2DG,CAs2DH,eAA+C,C0B16DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,G1B06DsD,C0Br6DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,6/DAAA,CAAyiE,EAAziE,CAAA,C1Bi7DO,CAl3DG,CAo3DH,eAA+C,C2Bx7DtD,EAAAI,EAAAL,OAAA,CAAAM,EAAA,CAAA,G3Bw7DsD,C2Bn7DtDN,EAAAgC,IAAA,CAAA,CAAA3B,EAAAJ,CAAA,CAAA,+1EAAA,CAA23E,EAA33E,CAAA,C3B+7DO,CAh4DG,CAk4DH,eAA+C,C4Bz6DtD,aAAA,CACA,MAAA,KAAA,MAAAQ,UACA,CAEA,aAAA,OACAoY,EAAA,EAAA,QAAA,QAAAA,EAAA,EAAA,QAAA,QAAAA,GAAAhX,MADA,GAEA,UAAA,QAAAgX,GAAAC,IAAA,EAAA,UAAA,QAAAD,GAAA5D,KAFA,IAKA,CAAA,GAAApT,MAAA,EAAA,QAAA,QAAAgX,GAAA,CAAA,CALA,OAOA,CAEA,iBAAA,CACA,GAAA,EAAA,CAAA,CAAA,CACA,GAAAE,EAAA/U,CAAA,GAAA+U,EAAAC,CAAA,CAAA,CACA,SAEA,GAAAhV,EAAA3C,SAAA,GAAA2X,EAAA3X,SAAA,CAAA,SAGA,GAAA4X,EAAAjV,CAAA,CAAA,SACAiV,EAAAD,CAAA,CADA,GAIA,EAAAE,EAAA9Y,IAAA,CAAA4D,CAAA,CAJA,CAKA,EAAAkV,EAAA9Y,IAAA,CAAA4Y,CAAA,CALA,CAMAG,EAAAnV,CAAA,CAAAgV,CAAA,CAAAI,CAAA,CANA,EAQA,GAAAC,EAAArV,CAAA,CAAA,CAAA,CACA,GAAA,CAAAqV,EAAAL,CAAA,CAAA,CACA,SAEA,GAAAhV,EAAAnC,MAAA,GAAAmX,EAAAnX,MAAA,CAAA,SACA,IAAA,EAAA,CAAA,CAAe5B,EAAA+D,EAAAnC,MAAf,CAA6B,GAA7B,CACA,GAAAmC,EAAA/D,CAAA,IAAA+Y,EAAA/Y,CAAA,CAAA,CAAA,SAEA,QACA,CACA,GAAA,CACA,GAAA,GAAAqZ,EAAAtV,CAAA,CAAA,CACA,EAAAsV,EAAAN,CAAA,CACG,CAAA,QAAA,CACH,QACA,CAGA,GAAAO,EAAA1X,MAAA,EAAA2X,EAAA3X,MAAA,CACA,SAKA,IAHA0X,EAAAE,IAAA,EAGA,CAFAD,EAAAC,IAAA,EAEA,CAAA,EAAAF,EAAA1X,MAAA,CAAA,CAAA,CAAyB,CAAA,GAAzB,CAAiC,GAAjC,CACA,GAAA0X,EAAAtZ,CAAA,GAAAuZ,EAAAvZ,CAAA,CAAA,CACA,SAIA,IAAA,EAAAsZ,EAAA1X,MAAA,CAAA,CAAA,CAAyB,CAAA,GAAzB,CAAiC,GAAjC,CAEA,GADA,EAAA0X,EAAAtZ,CAAA,CACA,CAAA,CAAAkZ,EAAAnV,EAAA0V,CAAA,CAAA,CAAAV,EAAAU,CAAA,CAAA,CAAAN,CAAA,CAAA,CAAA,SAEA,MAAA,OAAApV,EAAA,EAAA,MAAAgV,EACA,CA7FA,GAAA,GAAAhE,MAAA3T,SAAA,CAAA4T,KAAA,CACA,EAAA3U,EAAA,EAAA,CADA,CAEA,EAAAA,EAAA,EAAA,CAFA,CAIA,EAAAD,EAAAL,OAAA,CAAA,eAAA,OACAoZ,EADA,GACA,IADA,EAGA/V,IAAAsW,CAHA,GAMGtW,YAAA0B,KAAA,EAAA4U,YAAA5U,KANH,CAOA1B,EAAAuW,OAAA,KAAAD,EAAAC,OAAA,EAPA,CAWGvW,CAAA,EAAAsW,CAAA,GAAA,QAAA,QAAAtW,EAAA,EAAA,QAAA,QAAAsW,EAAA,CAXH,CAqBAE,EAAAxW,CAAA,CAAAsW,CAAA,CAAAP,CAAA,CArBA,CAYAA,EAAAU,MAAA,CAAAzW,IAAAsW,CAAA,CAAAtW,GAAAsW,CAZA,CAuBA,C5B6gEO,CAp+DG,CAs+DH,aAA0B,C6BniEjC,aAAA,CACA,MAAA,oBAAA,SAAAtY,SAAA,CAAAO,QAAA,CAAAxB,IAAA,CAAAmB,CAAA,CACA,CAGA,aAAA,CACA,MAAAA,IACA,QAAA,QAAAA,EADA,EAEA,QAAA,QAAAA,GAAAM,MAFA,EAGAhB,OAAAQ,SAAA,CAAAC,cAAA,CAAAlB,IAAA,CAAAmB,CAAA,CAAA,QAAA,CAHA,EAIA,CAAAV,OAAAQ,SAAA,CAAA0Y,oBAAA,CAAA3Z,IAAA,CAAAmB,CAAA,CAAA,QAAA,CAJA,IAMA,CAnBA,GAAA,GAEC,oBAFD,EAAA,UAAA,CACA,MAAAV,QAAAQ,SAAA,CAAAO,QAAA,CAAAxB,IAAA,CAAA2M,SAAA,CACC,CAFD,EAAA,CAIA,EAAA1M,EAAAL,OAAA,CAAAga,EAAAC,CAAA,CAAAC,C7BsiEiC,C6BpiEjCla,EAAAia,SAAA,CAAAA,C7BoiEiC,C6B/hEjCja,EAAAka,WAAA,CAAAA,C7BujEO,CA9/DG,CAggEH,aAA0B,C8BhkEjC,aAAA,CACA,GAAA,KAAA,CACA,IAAA,GAAA,EAAA,GAAAC,EAAA,CAAAC,EAAApY,IAAA,CAAA0X,CAAA,EACA,MAAAU,EACA,CARA,EAAA/Z,EAAAL,OAAA,CAAA,UAAA,QAAAa,QAAAuZ,IAAA,CACAvZ,OAAAuZ,IADA,CACAC,C9BmkEiC,C8BjkEjCra,EAAAqa,IAAA,CAAAA,C9B8kEO,CA7gEG,CA+gEH,eAA+C,C+BnlEtDha,EAAAL,OAAA,CAAA,aAAA,CACA,aAWA,aAAA,CACA,MAAAsa,GAAA9Z,CAAA,GAAAA,CACA,CAZA,EAAA+Z,GAAA,WAAA,CACA,MAAA,WAAA,EAAA,CAAA,CAAAC,CAAA,KAAAtO,OAAA,CAAAuO,CAAA,CAAAC,CAAA,CACA,CAJA,CAKA,GAAA,8DAAA,CAMK,EAAA,UANL,CAUA,IAVA,CAUA,EAAAC,EAAA3Y,IAAA,CAAA0I,IAAA,CAAAiQ,CAAA,CAVA,CA6BA,MAlBAC,GAAA,WAAA,CAkBA,CAjBAA,EAAAta,EAAA,EAAA,CAAA,CAiBA,CAhBAsa,EAAA,yXAAA,CAgBA,CAfAC,EAAAvU,MAeA,EAdAsU,EAAA,qOAAA,CAcA,CAZAA,EAAA,QAAA,CAYA,CAXAC,EAAAvU,MAWA,EAVAsU,EAAA,qMAAA,CAUA,CARAA,EAAA,qDAAA,CAQA,CAPAC,EAAAvU,MAOA,EANAsU,EAAA,mKAAA,CAMA,CAJAA,EAAA,0GAAA,CAIA,CAHAC,EAAAvU,MAGA,EAFAsU,EAAA,iKAAA,CAEA,CAAAD,EAAA1Y,IAAA,CAAA,EAAA,C/BslEC,CAEM,CAtjEG,CAwjEH,WAA+C,CAEtD,agC5nEA,eAAA,MACA6Y,EAAAjZ,MAAA,CAAAgV,CADA,EAEA,EAAA,IAAAiE,CAAA,CAEA,MAAAA,EACA,CAEA,eAAA,CACA,GAAA,EAAA,CACA,CADA,CAEA,CAFA,CAGA,GAAA,CAAA,KAAAjZ,MAAA,CACA,MAAAiZ,EAAA,CAEA,IAAA,EAAA,CAAA,CAAA,EAAAC,EAAAlZ,MAAA,CAAgC5B,EAAA4W,CAAhC,CAAyC,GAAzC,CACA,EAAAkE,EAAAC,UAAA,CAAA/a,CAAA,CADA,CAEA,EAAA,CAAA6a,GAAA,CAAA,EAAAA,CAAA,CAAAG,CAFA,CAGA,GAAA,CAHA,CAKA,MAAA,EAAA,GAAA,CAAA,CAAA,EAAA,CAAAH,CACA,CAEA,iBAAA,CACA,MAAAja,QAAAuZ,IAAA,CAAAzZ,CAAA,EAAA8Y,IAAA,GAAAjR,MAAA,CACA,aAAA,CACA,MAAA0S,GAAAJ,CAAA,CAAAna,EAAA+Y,CAAA,CAAA,CAAAA,CAAA,CAAAyB,CAAA,CACA,CAHA,CAAAL,CAAA,CAIA,CAEA,mBAAA,CACA,GAAA,GAAAM,EAAAA,EAAAA,EAAAjM,CAAA,CAAAuK,CAAA,CAAA,CAAA9X,EAAAnB,CAAA,CAAA,CAAA,CAAA,MAAAA,EAAA,CAAA,CADA,MAEA,KAAA,IAFA,CAGA2a,EAAAN,CAAA,CAAA,MAAA,CAHA,CAKA,UALA,CAMAM,EAAAN,CAAA,CAAA,WAAA,CANA,CAQA,QAAA,QAAAra,EARA,CASA,CAAA,CAAA,KAAA2C,OAAA,CAAA3C,CAAA,CATA,EAYA0a,EAAAnZ,IAAA,CAAAvB,CAAA,CAZA,CAaA4a,EAAAP,CAAA,CAAAra,CAAA,CAAA0a,CAAA,CAbA,EAUAC,EAAAN,CAAA,CAAA,aAAApB,CAAA,CAVA,CAeA0B,EAAAN,CAAA,CAAAra,EAAAmB,QAAA,EAAA,CACA,CAEA,aAAA,CACA,MAAAf,QAAAQ,SAAA,CAAAO,QAAA,CAAAxB,IAAA,CAAAO,CAAA,CACA,CAMAN,EAAAL,OAAA,CAJA,WAAA,CACA,MAAAsb,GAAAJ,EAAA,CAAA,CAAAva,CAAA,CAAA,EAAA,KAAAiB,QAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CACA,ChCooEO,CAvnEG,CAynEH,eAA+C,CiC7rEtDvB,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,uEjCisEO,CA7nEG,CA+nEH,eAA+C,CkCnsEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,2GlCusEO,CAnoEG,CAqoEH,eAA+C,CmCzsEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,itBnC6sEO,CAzoEG,CA2oEH,eAA+C,CoC/sEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,4hBpCmtEO,CA/oEG,CAipEH,eAA+C,CqCrtEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,sTrCytEO,CArpEG,CAupEH,eAA+C,CsC3tEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,mnBtC+tEO,CA3pEG,CA6pEH,eAA+C,CuCjuEtDD,EAAAL,OAAA,CAAA,UAAAM,EAAA,EAAA,CAAA,CAAA,ievCquEO,CAjqEG,CApED,C","file":"components.min.js","sourcesContent":["/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\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, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\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 = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 13);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lib_templating__ = __webpack_require__(16);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__lib_matchesSelector__ = __webpack_require__(2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__ = __webpack_require__(15);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__ = __webpack_require__(14);\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return __WEBPACK_IMPORTED_MODULE_0__lib_templating__[\"a\"]; });\n/* unused harmony reexport matchesSelector */\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"c\", function() { return __WEBPACK_IMPORTED_MODULE_2__lib_querySelectorSlot__[\"a\"]; });\n/* harmony reexport (binding) */ __webpack_require__.d(__webpack_exports__, \"b\", function() { return __WEBPACK_IMPORTED_MODULE_3__lib_createEvent__[\"a\"]; });\n/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = matchesSelector;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__ = __webpack_require__(31);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-action-button', __WEBPACK_IMPORTED_MODULE_0__byu_footer_action_button_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__ = __webpack_require__(32);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-footer-column', __WEBPACK_IMPORTED_MODULE_0__byu_footer_column_html___default.a);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html__ = __webpack_require__(33);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_footer_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-footer', __WEBPACK_IMPORTED_MODULE_0__byu_footer_html___default.a, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__ = __webpack_require__(29);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal__ = __webpack_require__(26);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_deep_equal___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_deep_equal__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons__ = __webpack_require__(12);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__icons_transformicons___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__);\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!__WEBPACK_IMPORTED_MODULE_1_deep_equal__(state, this._renderState)) {\r\n __WEBPACK_IMPORTED_MODULE_2_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-header', __WEBPACK_IMPORTED_MODULE_0__byu_header_ejs_html__(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"transform\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__icons_transformicons__[\"revert\"])(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html__ = __webpack_require__(34);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_menu_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss__ = __webpack_require__(21);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2__active_styles_scss__);\n\r\n\r\n\r\n\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = __WEBPACK_IMPORTED_MODULE_2__active_styles_scss___default.a.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${__WEBPACK_IMPORTED_MODULE_0__byu_menu_html___default.a}`;\r\n\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html__ = __webpack_require__(35);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_search_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n\r\n\r\n\r\n\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-search', __WEBPACK_IMPORTED_MODULE_0__byu_search_html___default.a, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"b\" /* createEvent */](EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"c\" /* querySelectorSlot */](search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__ = __webpack_require__(36);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n\r\n\r\n\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-social-media-links', __WEBPACK_IMPORTED_MODULE_0__byu_social_media_links_html___default.a, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__ = __webpack_require__(37);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__byu_user_info_html__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__ = __webpack_require__(1);\n/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\n\n\n\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n __WEBPACK_IMPORTED_MODULE_1_byu_web_component_utils__[\"a\" /* applyTemplate */](this, 'byu-user-info', __WEBPACK_IMPORTED_MODULE_0__byu_user_info_html___default.a, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\n\n(function (root, factory) {\n if (true) {\n // AMD module\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n/***/ }),\n/* 13 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\nObject.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__byu_header_byu_header_js__ = __webpack_require__(6);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__byu_menu_byu_menu_js__ = __webpack_require__(7);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__byu_search_byu_search_js__ = __webpack_require__(8);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__byu_user_info_byu_user_info_js__ = __webpack_require__(10);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__byu_footer_byu_footer_js__ = __webpack_require__(5);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__byu_footer_column_byu_footer_column_js__ = __webpack_require__(4);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__byu_footer_action_button_byu_footer_action_button_js__ = __webpack_require__(3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__byu_social_media_links_byu_social_media_links_js__ = __webpack_require__(9);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json__ = __webpack_require__(11);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__package_json___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8__package_json__);\n/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\n\n/*\n * Header Bits\n */\n\n\n\n\n\n/*\n * Footer Bits\n */\n\n\n\n\n\n\n\n\nconsole.log(`--------------- Starting byu-theme-components ${__WEBPACK_IMPORTED_MODULE_8__package_json__[\"version\"]} ---------------`);\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = createEvent;\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\nfunction createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = querySelectorSlot;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__ = __webpack_require__(2);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nfunction querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__matchesSelector_js__[\"a\" /* default */])(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony export (immutable) */ __webpack_exports__[\"a\"] = applyTemplate;\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum__ = __webpack_require__(30);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_hash_sum___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_hash_sum__);\n/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\n\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nfunction applyTemplate(element, elementName, template, callback) {\n let sum = __WEBPACK_IMPORTED_MODULE_0_hash_sum___default()(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports = module.exports = __webpack_require__(0)();\n// imports\n\n\n// module\nexports.push([module.i, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pSlice = Array.prototype.slice;\nvar objectKeys = __webpack_require__(28);\nvar isArguments = __webpack_require__(27);\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\nvar supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\nexports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"

\";\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \" \";\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
\";\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = \"
Sign In
Sign Out
\";\n\n/***/ })\n/******/ ]);\n"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 13);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 78bd2a1ce070c96e9f9a","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 0\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/14/17\n */\n\"use strict\";\n\nimport applyTemplate from './lib/templating';\nimport matchesSelector from './lib/matchesSelector';\nimport querySelectorSlot from './lib/querySelectorSlot';\nimport createEvent from './lib/createEvent';\n\nexport {\n applyTemplate,\n matchesSelector,\n querySelectorSlot,\n createEvent\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/index.js\n// module id = 1\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function matchesSelector(el, selector) {\n let proto = Element.prototype;\n let actual =\n proto.matches ||\n proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector ||\n function (s) {\n let doc = this.document || this.ownerDocument;\n return doc.querySelectorAll(s).indexOf(this) !== -1;\n };\n\n return actual.call(el, selector);\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/matchesSelector.js\n// module id = 2\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-action-button.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\n\r\nclass BYUFooterActionButton extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-action-button', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-action-button', BYUFooterActionButton);\r\nwindow.BYUFooterActionButton = BYUFooterActionButton;\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.js\n// module id = 3\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer-column.html';\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nclass BYUFooterColumn extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-footer-column', template);\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer-column', BYUFooterColumn);\r\nwindow.BYUFooterColumn = BYUFooterColumn;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.js\n// module id = 4\n// module chunks = 0","'use strict';\r\n\r\nimport template from './byu-footer.html';\r\nimport * as util from 'byu-web-component-utils';\r\n\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\n\r\nclass BYUFooter extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n const component = this;\r\n util.applyTemplate(component, 'byu-footer', template, () => {\r\n // always show the current year in the copyright message\r\n var currentYear = component.shadowRoot.querySelector(\"#currentYear\");\r\n currentYear.innerHTML = new Date().getFullYear();\r\n\r\n var header = document.querySelector('byu-header');\r\n var observer = new MutationObserver(function (mutations) {\r\n component.updateWithHeaderAttributes(header);\r\n });\r\n\r\n // configuration of the observer:\r\n var config = { attributes: true };\r\n observer.observe(header, config);\r\n component.updateWithHeaderAttributes(header); // run it once to get the initial values\r\n });\r\n }\r\n\r\n updateWithHeaderAttributes(header) {\r\n \r\n // check the header for full-width or max-width attributes\r\n if (header.hasAttribute(ATTR_FULL_WIDTH)) {\r\n this.setAttribute(ATTR_FULL_WIDTH, '');\r\n }\r\n else\r\n {\r\n this.removeAttribute(ATTR_FULL_WIDTH);\r\n }\r\n\r\n var w = DEFAULT_MAX_WIDTH;\r\n if (header.hasAttribute(ATTR_MAX_WIDTH)) {\r\n w = header.getAttribute(ATTR_MAX_WIDTH);\r\n }\r\n this.setAttribute(ATTR_MAX_WIDTH, w);\r\n \r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++)\r\n {\r\n needsWidthSetting[i].style.maxWidth = w;\r\n needsWidthSetting[i].style.maxWidth = w;\r\n }\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-footer', BYUFooter);\r\nwindow.BYUFooter = BYUFooter;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.js\n// module id = 5\n// module chunks = 0","'use strict';\r\n\r\nimport * as templateFn from \"./byu-header.ejs.html\";\r\n\r\nimport * as equal from \"deep-equal\";\r\nimport * as util from \"byu-web-component-utils\";\r\nimport { revert as revertIcon, transform as transformIcon } from \"./icons/transformicons\";\r\n\r\nconst ATTR_MOBILE_MAX_WIDTH = 'mobile-max-width';\r\nconst ATTR_FULL_WIDTH = 'full-width';\r\nconst ATTR_MAX_WIDTH = 'max-width';\r\nconst ATTR_MOBILE_VIEW = 'mobile-view';\r\nconst ATTR_MENU_OPEN = 'menu-open';\r\nconst ATTR_MENU_KEEP_OPEN = 'menu-keep-open';\r\nconst ATTR_NO_MENU = 'no-menu';\r\nconst ATTR_HOME_URL = 'home-url';\r\n\r\nconst DEFAULT_MOBILE_WIDTH = '1023px';\r\nconst DEFAULT_MAX_WIDTH = '1200px';\r\nconst DEFAULT_HOME_URL = 'https://byu.edu/';\r\n\r\nclass BYUHeader extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n _render() {\r\n let state = {\r\n mobile: this.inMobileView,\r\n };\r\n if (!equal(state, this._renderState)) {\r\n util.applyTemplate(this, 'byu-header', templateFn(state), () => {\r\n this._renderState = state;\r\n this._addSlotListeners();\r\n this._notifyChildrenOfMobileState();\r\n this._addButtonListeners();\r\n this._checkIfMenuIsNeeded();\r\n this._applyHomeUrl();\r\n this._applyMaxWidth();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n }\r\n }\r\n\r\n _checkIfMenuIsNeeded() {\r\n // check whether to show the mobile menu button\r\n let userSlot = this.shadowRoot.querySelector(\"#user\");\r\n let hasUserInfo = userSlot.assignedNodes().length !== 0;\r\n\r\n let menuSlot = this.shadowRoot.querySelector(\"#navbarMenu\");\r\n let hasMenu = menuSlot.assignedNodes().length !== 0;\r\n\r\n let actionSlot = this.shadowRoot.querySelector('#actions');\r\n let hasActions = actionSlot.assignedNodes().length !== 0;\r\n\r\n this.noMenu = !(hasUserInfo || hasMenu || hasActions);\r\n\r\n if (menuSlot.assignedNodes().length < 4) {\r\n this.setAttribute('left-align', '');\r\n }\r\n else {\r\n this.removeAttribute('left-align');\r\n }\r\n }\r\n\r\n _addButtonListeners() {\r\n if (!this.inMobileView) {\r\n this.menuOpen = false;\r\n return;\r\n }\r\n let menuButton = this.shadowRoot.querySelector('.mobile-menu-button');\r\n menuButton.addEventListener('click', () => this._toggleMenu())\r\n }\r\n\r\n _toggleMenu() {\r\n this.menuOpen = !this.menuOpen;\r\n }\r\n\r\n _addSlotListeners() {\r\n this._findAllSlots().forEach(each => {\r\n each.addEventListener('slotchange', event => {\r\n this._notifyChildrenOfMobileState();\r\n this._checkIfMenuIsNeeded();\r\n this._applyMenuTransparencyListeners();\r\n });\r\n })\r\n }\r\n\r\n _notifyChildrenOfMobileState() {\r\n let kids = this._findAllDistributedChildren();\r\n if (this.inMobileView) {\r\n kids.forEach(each => {\r\n each.setAttribute(ATTR_MOBILE_VIEW, '');\r\n each.classList.add(ATTR_MOBILE_VIEW);\r\n });\r\n } else {\r\n kids.forEach(each => {\r\n each.removeAttribute(ATTR_MOBILE_VIEW);\r\n each.classList.remove(ATTR_MOBILE_VIEW);\r\n });\r\n }\r\n }\r\n\r\n _findAllSlots() {\r\n let slots = this.shadowRoot.querySelectorAll('slot');\r\n let arr = [];\r\n for (let i = 0; i < slots.length; ++i) {\r\n arr.push(slots[i]);\r\n }\r\n return arr;\r\n }\r\n\r\n _findAllDistributedChildren() {\r\n return this._findAllSlots().map(s => s.assignedNodes().filter(n => n instanceof HTMLElement))\r\n .reduce((agg, each) => agg.concat(each), []);\r\n }\r\n\r\n connectedCallback() {\r\n //This is a hack to ensure that the right defaults get applied.\r\n this.mobileMaxWidth = this.mobileMaxWidth;\r\n this._applyMobileWidth();\r\n this._render();\r\n this.maxWidth = this.maxWidth;\r\n\r\n const header = this;\r\n setTimeout(function() {\r\n const menu = header.shadowRoot.querySelector('#mobileMenu');\r\n if (menu) menu.addEventListener('click', function openMenuClickHandler() {\r\n console.log(menu.innerHTML);\r\n if (header.hasAttribute(ATTR_MOBILE_VIEW) && header.hasAttribute(ATTR_MENU_OPEN) && !header.hasAttribute(ATTR_MENU_KEEP_OPEN)) {\r\n header.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n });\r\n }, 0);\r\n\r\n if (this.hasAttribute('full-width')) {\r\n console.log(\"[byu-header] The 'full-width' attribute has been deprecated as of version 1.2.0 of the BYU Theme Components and is not recommended\");\r\n }\r\n } \r\n\r\n static get observedAttributes() {\r\n return [ATTR_MOBILE_MAX_WIDTH, ATTR_MOBILE_VIEW, ATTR_MENU_OPEN, ATTR_HOME_URL, ATTR_MAX_WIDTH];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_MOBILE_MAX_WIDTH:\r\n this._applyMobileWidth();\r\n return;\r\n case ATTR_MAX_WIDTH:\r\n this._applyMaxWidth();\r\n return;\r\n case ATTR_MOBILE_VIEW:\r\n this._render();\r\n return;\r\n case ATTR_MENU_OPEN:\r\n this._applyMenuOpen();\r\n return;\r\n case ATTR_HOME_URL:\r\n this._applyHomeUrl();\r\n return;\r\n }\r\n }\r\n\r\n _applyMenuOpen() {\r\n let menu = this.shadowRoot.querySelector('#mobileMenu');\r\n if (!menu) return;\r\n if (this.menuOpen) {\r\n menu.style.maxHeight = menu.scrollHeight + 'px';\r\n this.classList.add('byu-header-menu-open');\r\n transformIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n } else {\r\n menu.style.maxHeight = null;\r\n this.classList.remove('byu-header-menu-open');\r\n revertIcon(this.shadowRoot.querySelector('.mobile-menu-button'));\r\n }\r\n }\r\n\r\n _applyHomeUrl() {\r\n let aTag = this.shadowRoot.querySelector('#home-url');\r\n if (aTag) {//Filter out cases where we haven't fully initialized yet\r\n aTag.setAttribute('href', this.homeUrl);\r\n }\r\n }\r\n\r\n get mobileMaxWidth() {\r\n return this.getAttribute(ATTR_MOBILE_MAX_WIDTH);\r\n }\r\n\r\n set mobileMaxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MOBILE_MAX_WIDTH, DEFAULT_MOBILE_WIDTH);\r\n }\r\n }\r\n\r\n get maxWidth() {\r\n return this.getAttribute(ATTR_MAX_WIDTH) || DEFAULT_MAX_WIDTH;\r\n }\r\n\r\n set maxWidth(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MAX_WIDTH, val);\r\n } else {\r\n this.setAttribute(ATTR_MAX_WIDTH, DEFAULT_MAX_WIDTH);\r\n }\r\n }\r\n\r\n get inMobileView() {\r\n return this.hasAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n\r\n set inMobileView(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MOBILE_VIEW, '');\r\n } else {\r\n this.removeAttribute(ATTR_MOBILE_VIEW);\r\n }\r\n }\r\n\r\n get menuOpen() {\r\n return this.hasAttribute(ATTR_MENU_OPEN);\r\n }\r\n\r\n set menuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_OPEN);\r\n }\r\n }\r\n\r\n get keepMenuOpen() {\r\n return this.hasAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n\r\n set keepMenuOpen(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_MENU_KEEP_OPEN, '');\r\n } else {\r\n this.removeAttribute(ATTR_MENU_KEEP_OPEN);\r\n }\r\n }\r\n\r\n get noMenu() {\r\n return this.hasAttribute(ATTR_NO_MENU);\r\n }\r\n\r\n set noMenu(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_NO_MENU, '');\r\n } else {\r\n this.removeAttribute(ATTR_NO_MENU);\r\n }\r\n }\r\n\r\n get homeUrl() {\r\n return this.getAttribute(ATTR_HOME_URL) || DEFAULT_HOME_URL;\r\n }\r\n\r\n set homeUrl(val) {\r\n this.setAttribute(ATTR_HOME_URL, val);\r\n }\r\n\r\n _applyMobileWidth() {\r\n let desiredQuery = this.mobileMediaQuery;\r\n let q = this._mobileQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._mobileQueryListener);\r\n this._mobileQuery = null;\r\n }\r\n }\r\n this._mobileQuery = q = window.matchMedia(desiredQuery);\r\n this._mobileQueryListener = this._handleMobileChange.bind(this);\r\n\r\n q.addListener(this._mobileQueryListener);\r\n this._mobileQueryListener(q);\r\n }\r\n\r\n _handleMobileChange(mql) {\r\n this.inMobileView = mql.matches;\r\n }\r\n\r\n get mobileMediaQuery() {\r\n return `(max-width: ${this.mobileMaxWidth})`;\r\n }\r\n\r\n _applyMaxWidth() {\r\n\r\n if (!this.inMobileView) {\r\n var needsWidthSetting = this.shadowRoot.querySelectorAll('.needs-width-setting');\r\n for (var i = 0; i < needsWidthSetting.length; i++) {\r\n needsWidthSetting[i].style.maxWidth = this.maxWidth;\r\n }\r\n }\r\n let desiredQuery = this.maxWidthMediaQuery;\r\n let q = this._maxWidthQuery;\r\n if (q) {\r\n if (q.media === desiredQuery) {\r\n //Nothing has changed, bail!\r\n return;\r\n } else {\r\n q.removeListener(this._maxWidthQueryListener);\r\n this._maxWidthQuery = null;\r\n }\r\n }\r\n this._maxWidthQuery = q = window.matchMedia(desiredQuery);\r\n this._maxWidthQueryListener = this._handleMaxWidthChange.bind(this);\r\n\r\n q.addListener(this._maxWidthQueryListener);\r\n this._maxWidthQueryListener(q);\r\n }\r\n\r\n _handleMaxWidthChange(mql) {\r\n if (mql.matches) {\r\n this.classList.add('below-max-width');\r\n }\r\n else {\r\n this.classList.remove('below-max-width');\r\n }\r\n }\r\n\r\n get maxWidthMediaQuery() {\r\n return `(max-width: ${this.maxWidth})`;\r\n }\r\n\r\n _applyMenuTransparencyListeners() {\r\n let navSlot = this.shadowRoot.querySelector('#navbarMenu');\r\n let assigned = navSlot.assignedNodes().filter(n => n.nodeType === Node.ELEMENT_NODE);\r\n if (assigned.length === 0) {\r\n this._applyMenuTransparency(null);\r\n return\r\n }\r\n let menu = assigned[0];\r\n if (!menu.__byu_header_transparency_listener) {\r\n let obs = new MutationObserver((e) => {\r\n this._applyMenuTransparency(menu);\r\n });\r\n //noinspection JSCheckFunctionSignatures\r\n obs.observe(menu, {attributes: true, attributeFilter: ['class']});\r\n menu.__byu_header_transparency_listener = obs;\r\n }\r\n this._applyMenuTransparency(menu);\r\n }\r\n\r\n _applyMenuTransparency(element) {\r\n let transparent = element && element.classList.contains('transparent');\r\n if (transparent) {\r\n //Can't use .toggle thanks to IE 11. Thanks, IE!\r\n this.classList.add('menu-transparent');\r\n } else {\r\n this.classList.remove('menu-transparent');\r\n }\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-header', BYUHeader);\r\nwindow.BYUHeader = BYUHeader;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.js\n// module id = 6\n// module chunks = 0","\"use strict\";\r\nimport template from \"./byu-menu.html\";\r\nimport * as util from 'byu-web-component-utils';\r\nimport activeCss from './active-styles.scss';\r\n\r\nconst ATTR_ACTIVE_SELECTOR = \"active-selector\";\r\nconst DEFAULT_ACTIVE_SELECTOR = \".active\";\r\nclass BYUMenu extends HTMLElement {\r\n\r\n get activeSelector() {\r\n return this.getAttribute(ATTR_ACTIVE_SELECTOR) || DEFAULT_ACTIVE_SELECTOR;\r\n }\r\n\r\n set activeSelector(val) {\r\n if (val) {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, val);\r\n } else {\r\n this.setAttribute(ATTR_ACTIVE_SELECTOR, DEFAULT_ACTIVE_SELECTOR);\r\n }\r\n }\r\n\r\n get showMore() {\r\n return isShowingMoreMenu(this);\r\n }\r\n\r\n set showMore(show) {\r\n const el = this.shadowRoot.querySelector('.byu-menu-more-menu');\r\n if (show && !isShowingMoreMenu(this)) enableHideClick(this);\r\n toggleClass(el, 'byu-menu-more-expanded', show);\r\n }\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({ mode: 'open' });\r\n }\r\n\r\n connectedCallback() {\r\n render(this, true);\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n switch (attr) {\r\n case ATTR_ACTIVE_SELECTOR:\r\n render(this, false);\r\n return;\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_ACTIVE_SELECTOR];\r\n }\r\n\r\n get _menuSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-items');\r\n }\r\n\r\n get _menuMoreSlot() {\r\n return this.shadowRoot.querySelector('#byu-menu-more-slot');\r\n }\r\n}\r\n\r\nfunction render(component, force) {\r\n let activeSelector = component.activeSelector;\r\n if (!force && activeSelector === component._renderedActiveSelector) {\r\n return;\r\n }\r\n\r\n let css = activeCss.toString().replace('__byu-menu-active-placeholder__', activeSelector);\r\n let tmpl = `${template}`;\r\n\r\n util.applyTemplate(component, 'byu-menu', tmpl, () => {\r\n component._renderedActiveSelector = activeSelector;\r\n updateMoreMenuState(component);\r\n addSlotListeners(component);\r\n // when the more button is clicked then show the more menu\r\n component.shadowRoot.querySelector('.byu-menu-more').addEventListener('click', function () {\r\n component.showMore = true;\r\n });\r\n });\r\n}\r\n\r\nfunction addSlotListeners(component) {\r\n component.shadowRoot.querySelector('slot')\r\n .addEventListener('slotchange', e => {\r\n //Run on microtask timing to let polyfilled shadow DOM changes to propagate\r\n setTimeout(() => function() {\r\n updateMoreMenuState(component);\r\n });\r\n });\r\n}\r\n\r\nfunction enableHideClick(component) {\r\n\r\n const fn = function () {\r\n document.removeEventListener('click', fn);\r\n component.showMore = false;\r\n };\r\n\r\n setTimeout(function () {\r\n document.addEventListener('click', fn);\r\n });\r\n}\r\n\r\nfunction hasClass(el, className) {\r\n const classes = el.className.split(/ +/);\r\n return classes.indexOf(className) !== -1;\r\n}\r\n\r\nfunction isShowingMoreMenu(component) {\r\n return hasClass(component.shadowRoot.querySelector('.byu-menu-more-menu'), 'byu-menu-more-expanded');\r\n}\r\n\r\nfunction toggleClass(el, className, value) {\r\n const classes = el.className.split(/ +/);\r\n const index = classes.indexOf(className);\r\n const exists = index !== -1;\r\n const setTo = arguments.length > 2 ? arguments[2] : !exists;\r\n if (setTo && !exists) {\r\n classes.push(className);\r\n } else if (!setTo && exists) {\r\n classes.splice(index, 1);\r\n }\r\n el.className = classes.join(' ');\r\n}\r\n\r\nfunction updateMoreMenuState(component) {\r\n var children = component.shadowRoot.querySelector('.byu-menu-items').assignedNodes();\r\n var moreChildren = component.shadowRoot.querySelector('.byu-menu-more-slot').assignedNodes();\r\n var filteredChildren = children.filter(function (node) { return node instanceof HTMLElement });\r\n var filteredMoreChildren = moreChildren.filter(function (node) { return node instanceof HTMLElement });\r\n const length = filteredChildren.length + filteredMoreChildren.length;\r\n const hasOverflow = length > 6;\r\n const nav = component.shadowRoot.querySelector('.outer-nav');\r\n\r\n if (nav) toggleClass(nav, 'byu-menu-more-visible', hasOverflow);\r\n\r\n if (hasOverflow) {\r\n for (let i = 5; i < filteredChildren.length; i++) {\r\n filteredChildren[i].setAttribute('slot', 'more');\r\n }\r\n } else if (length === 6) {\r\n filteredChildren[5].setAttribute('slot', '');\r\n }\r\n\r\n if (length < 4) {\r\n console.log(length);\r\n component.setAttribute('left-align', '');\r\n }\r\n else {\r\n component.removeAttribute('left-align');\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-menu', BYUMenu);\r\nwindow.BYUMenu = BYUMenu;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.js\n// module id = 7\n// module chunks = 0","/**\r\n * @license\r\n * Copyright 2016 Brigham Young University\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n * http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n **/\r\n'use strict';\r\n\r\nimport template from \"./byu-search.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst CLASS_SELECTED_INPUT = '__byu-search-selected-input';\r\n\r\nconst ATTR_OLD_SEARCH_HANDLER = 'onsearch';\r\nconst ATTR_SEARCH_HANDLER = 'onbyusearch';\r\nconst ATTR_SEARCH_INPUT_SELECTOR = 'search-input-selector';\r\nconst ATTR_ACTION = 'action';\r\nconst ATTR_ACTION_TARGET = 'action-target';\r\n\r\nconst ACTION_SUBMIT_FORM = 'submit-form';\r\nconst ACTION_CLICK = 'click';\r\nconst ACTION_NAVIGATE = 'navigate';\r\n\r\nconst DEFAULT_ACTION_TARGET_SUBMIT_FORM = 'form';\r\nconst DEFAULT_ACTION_TARGET_CLICK = 'button, input[type=\"submit\"], input[type=\"button\"]';\r\n\r\nconst EVENT_TYPE = 'byu-search';\r\n\r\nconst DEFAULT_ACTION_TARGET = {\r\n //If you're not familiar with this syntax (computed property names), see https://github.com/lukehoban/es6features#enhanced-object-literals\r\n [ACTION_SUBMIT_FORM]: DEFAULT_ACTION_TARGET_SUBMIT_FORM,\r\n [ACTION_CLICK]: DEFAULT_ACTION_TARGET_CLICK\r\n};\r\n\r\nconst DEFAULT_SEARCH_INPUT_SELECTOR = 'input[type=\"search\"], input[type=\"text\"]';\r\n\r\nclass ByuSearch extends HTMLElement {\r\n\r\n constructor() {\r\n super(); // always call super first\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-search', template, () => {\r\n this._initialized = true;\r\n\r\n this._input = lookupAndConfigureInputElement(this, this.searchInputSelector);\r\n\r\n setupButtonSearchDispatcher(this);\r\n setupSearchListeners(this);\r\n\r\n setupSlotListener(this);\r\n });\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n teardownSearchListeners(this);\r\n\r\n }\r\n\r\n search() {\r\n let el = this._input;\r\n if (!el) {\r\n throw new Error(`Unable to perform search; no search element matching the selector '${this.searchInputSelector}' can be found!`);\r\n }\r\n let value = el.value;\r\n if (!value) return;\r\n\r\n let event = util.createEvent(EVENT_TYPE, {search: value});\r\n\r\n let cancelled = !this.dispatchEvent(event);\r\n if (cancelled) return;\r\n\r\n if (this.action) {\r\n runPredefinedAction(this, value);\r\n }\r\n }\r\n\r\n static get observedAttributes() {\r\n return [ATTR_SEARCH_INPUT_SELECTOR];\r\n }\r\n\r\n attributeChangedCallback(attr, oldValue, newValue) {\r\n if (!this._initialized) return;\r\n switch (attr) {\r\n case ATTR_SEARCH_INPUT_SELECTOR:\r\n if (this._input) {\r\n teardownInputElement(this, this._input);\r\n }\r\n\r\n this._input = lookupAndConfigureInputElement(this, newValue);\r\n\r\n return;\r\n //All other attrs are lazily looked up, as needed.\r\n }\r\n }\r\n\r\n get onbyusearch() {\r\n return this.getAttribute(ATTR_SEARCH_HANDLER);\r\n }\r\n\r\n set onbyusearch(value) {\r\n this.setAttribute(ATTR_SEARCH_HANDLER, value);\r\n }\r\n\r\n get onsearch() {\r\n return this.getAttribute(ATTR_OLD_SEARCH_HANDLER);\r\n }\r\n\r\n set onsearch(value) {\r\n this.setAttribute(ATTR_OLD_SEARCH_HANDLER, value);\r\n }\r\n\r\n set searchInputSelector(value) {\r\n this.setAttribute(ATTR_SEARCH_INPUT_SELECTOR, value);\r\n }\r\n\r\n get searchInputSelector() {\r\n return this.getAttribute(ATTR_SEARCH_INPUT_SELECTOR) || DEFAULT_SEARCH_INPUT_SELECTOR;\r\n }\r\n\r\n set action(value) {\r\n this.setAttribute(ATTR_ACTION, value);\r\n }\r\n\r\n get action() {\r\n //Defaults to null\r\n return this.getAttribute(ATTR_ACTION);\r\n }\r\n\r\n set actionTarget(value) {\r\n this.setAttribute(ATTR_ACTION_TARGET, value);\r\n }\r\n\r\n get actionTarget() {\r\n //Default depends on action target value\r\n return this.getAttribute(ATTR_ACTION_TARGET) || defaultActionTarget(this.action);\r\n }\r\n\r\n get _searchSlot() {\r\n return this.shadowRoot.querySelector('#search');\r\n }\r\n\r\n}\r\n\r\nwindow.customElements.define('byu-search', ByuSearch);\r\nwindow.ByuSearch = ByuSearch;\r\n\r\nfunction setupSlotListener(search) {\r\n search._searchSlot.addEventListener('slotchange', e => {\r\n handleSlotChange(search, e);\r\n });\r\n}\r\n\r\nfunction handleSlotChange(search, event) {\r\n let oldInput = search._input;\r\n let newInput = lookupSearchInput(search);\r\n\r\n if (oldInput === newInput) return;\r\n\r\n search._input = newInput;\r\n\r\n if (oldInput) {\r\n teardownInputElement(search, oldInput);\r\n }\r\n if (newInput) {\r\n setupInputElement(search, newInput);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${search.searchInputSelector}' on `, search);\r\n }\r\n}\r\n\r\nfunction lookupSearchInput(search, selector) {\r\n return util.querySelectorSlot(search._searchSlot, selector)\r\n}\r\n\r\nfunction lookupAndConfigureInputElement(search, selector) {\r\n let input = lookupSearchInput(search, selector);\r\n\r\n if (input) {\r\n setupInputElement(search, input);\r\n } else {\r\n console.error(`[byu-search] WARNING! Unable to find a search input element using the selector '${selector}' on `, search);\r\n }\r\n return input;\r\n}\r\n\r\nfunction setupInputElement(search, input) {\r\n applyStyleHelpers(search, input);\r\n applyA11yHelpers(search, input);\r\n setupEnterKeySearchDispatcher(search, input);\r\n}\r\n\r\nfunction teardownInputElement(search, input) {\r\n removeStyleHelpers(search, input);\r\n removeA11yHelpers(search, input);\r\n teardownEnterKeySearchDispatcher(search, input)\r\n}\r\n\r\nfunction runPredefinedAction(search, value) {\r\n let action = search.action;\r\n\r\n switch (action) {\r\n case ACTION_SUBMIT_FORM:\r\n runSubmitFormAction(search, value);\r\n break;\r\n case ACTION_CLICK:\r\n runClickAction(search, value);\r\n break;\r\n case ACTION_NAVIGATE:\r\n runNavigateAction(search, value);\r\n break;\r\n default:\r\n throw new Error(`Invalid value for ${ATTR_ACTION}: '${action}'`);\r\n }\r\n}\r\n\r\nfunction runSubmitFormAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let form = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!form) {\r\n throw new Error(`Unable to find target for 'submit-form' action using selector '${target}'`);\r\n }\r\n\r\n if (!(form instanceof HTMLFormElement)) {\r\n throw new Error(`Element found by selector '${target}' must be a , but was '${form.localName}'`);\r\n }\r\n\r\n form.submit();\r\n}\r\n\r\nfunction runClickAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n let button = util.querySelectorSlot(search._searchSlot, target);\r\n\r\n if (!button) {\r\n throw new Error(`Unable to find target for 'click' action using selector '${target}'`);\r\n }\r\n\r\n button.click();\r\n}\r\n\r\nfunction runNavigateAction(search, value) {\r\n let target = search.actionTarget;\r\n\r\n if (!target) {\r\n throw new Error('When using action=\"navigate\", you must specify an action-target');\r\n }\r\n\r\n if (target.indexOf('${search}')) {\r\n console.warn(`[byu-search] WARNING: Using action=\"navigate\" with a target that does not contain \\${search} will not include the search terms in the URL.`, search);\r\n }\r\n\r\n window.location.assign(target.replace('${search}', window.encodeURIComponent(value)));\r\n}\r\n\r\nfunction applyStyleHelpers(search, input) {\r\n input.classList.add(CLASS_SELECTED_INPUT);\r\n}\r\n\r\nfunction removeStyleHelpers(search, input) {\r\n input.classList.remove(CLASS_SELECTED_INPUT);\r\n}\r\n\r\n// For Accessibility, it's good for us to have a title and placeholder set. So, if there isn't one, we'll set it.\r\nfunction applyA11yHelpers(search, input) {\r\n if (input.title && input.placeholder) return;\r\n\r\n let helped = [];\r\n\r\n if (!input.title && !input.placeholder) {\r\n input.title = input.placeholder = 'Search';\r\n helped.push('title', 'placeholder');\r\n } else if (input.title) {\r\n input.placeholder = input.title;\r\n helped.push('placeholder');\r\n } else {\r\n input.title = input.placeholder;\r\n helped.push('title');\r\n }\r\n\r\n input.__byu_search_a11yHelpersApplied = helped;\r\n}\r\n\r\nfunction removeA11yHelpers(search, input) {\r\n let helpers = input.__byu_search_a11yHelpersApplied;\r\n if (!helpers) return;\r\n\r\n if (helpers.includes('title')) {\r\n input.title = null;\r\n }\r\n if (helpers.includes('placeholder')) {\r\n input.placeholder = null;\r\n }\r\n delete input.__byu_search_a11yHelpersApplied;\r\n}\r\n\r\nfunction setupButtonSearchDispatcher(search) {\r\n search.shadowRoot.querySelector('#search-button')\r\n .addEventListener('click', function () {\r\n search.search();\r\n });\r\n}\r\n\r\nfunction setupEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver = function (e) {\r\n if (e.keyCode === 13) {\r\n search.search();\r\n }\r\n };\r\n input.addEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction teardownEnterKeySearchDispatcher(search, input) {\r\n let keypress = input.__byu_search_keyObserver;\r\n if (keypress) input.removeEventListener('keypress', keypress, false);\r\n}\r\n\r\nfunction setupSearchListeners(search) {\r\n let handler = search.__onbyusearchHandler = function (event) {\r\n let name = search.onbyusearch;\r\n if (!name) return;\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, handler, false);\r\n\r\n let legacyHandler = search.__onsearchLegacyHandler = function (event) {\r\n let name = search.onsearch;\r\n if (!name) return;\r\n\r\n let handler = window[name];\r\n if (!handler) {\r\n throw new Error(`Unable to find a global function named '${name}'`);\r\n }\r\n handler.call(search, event.detail.search, event);\r\n };\r\n\r\n search.addEventListener(EVENT_TYPE, legacyHandler, false);\r\n}\r\n\r\nfunction teardownSearchListeners(search) {\r\n if (search.__onbyusearchHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onbyusearchHandler, false);\r\n }\r\n if (search.__onsearchLegacyHandler) {\r\n search.removeEventListener(EVENT_TYPE, search.__onsearchLegacyHandler, false);\r\n }\r\n}\r\n\r\nfunction defaultActionTarget(action) {\r\n if (!action) return null;\r\n return DEFAULT_ACTION_TARGET[action];\r\n}\r\n\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.js\n// module id = 8\n// module chunks = 0","'use strict';\r\nimport template from \"./byu-social-media-links.html\";\r\nimport * as util from \"byu-web-component-utils\";\r\n\r\nconst SOCIAL_NAMES = {\r\n 'facebook': 'Facebook',\r\n 'twitter': 'Twitter',\r\n 'instagram': 'Instagram',\r\n 'youtube': 'YouTube',\r\n 'pinterest': 'Pinterest',\r\n 'google-plus': 'Google+',\r\n 'googleplus': 'Google+',\r\n 'gplus': 'Google+',\r\n 'linkedin': 'LinkedIn',\r\n 'rss': 'RSS',\r\n 'snapchat': 'Snapchat',\r\n 'podcast': 'Podcast'\r\n};\r\n\r\nconst SOCIAL_IDS = Object.getOwnPropertyNames(SOCIAL_NAMES);\r\n\r\nclass BYUSocialMediaLinks extends HTMLElement {\r\n\r\n constructor() {\r\n super();\r\n this.attachShadow({mode: 'open'});\r\n }\r\n\r\n connectedCallback() {\r\n util.applyTemplate(this, 'byu-social-media-links', template, () => {\r\n let main = this.shadowRoot.querySelector('#social-main');\r\n applyTitleToChildren(main);\r\n\r\n SOCIAL_IDS.forEach(id => {\r\n const slot = this.shadowRoot.querySelector('#social-deprecated-' + id);\r\n if (!slot) return;\r\n\r\n applyTitleToChildren(slot);\r\n //We're still supporting the old way, but it's deprecated and people should move on.\r\n if (slot.assignedNodes().length > 0) {\r\n console.log(`[WARNING] byu-social-media-links: deprecated usage of slot=\"${id}\". Replace with class=\"${id}\":`, this);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n\r\nwindow.customElements.define('byu-social-media-links', BYUSocialMediaLinks);\r\nwindow.BYUSocialMediaLinks = BYUSocialMediaLinks;\r\n\r\nfunction applyTitleToChildren(slotElement) {\r\n let kids = slotElement.assignedNodes();\r\n kids.filter(k => k instanceof HTMLElement)\r\n //Only grab the ones that don't already have a title\r\n .filter(k => !k.title)\r\n .forEach(kid => {\r\n let kind = detectSocialKind(kid);\r\n if (!kind) {\r\n return;\r\n }\r\n //The spaces are a hack to avoid triggering adblockplus.\r\n kid.title = ' ' + SOCIAL_NAMES[kind] + ' ';\r\n });\r\n}\r\n\r\nfunction detectSocialKind(element) {\r\n if (element.hasAttribute('slot')) return element.getAttribute('slot');\r\n for (let i = 0; i < SOCIAL_IDS.length; i++) {\r\n let id = SOCIAL_IDS[i];\r\n if (element.classList.contains(id)) {\r\n return id;\r\n }\r\n }\r\n return null;\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.js\n// module id = 9\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 11/7/16.\n */\n\"use strict\";\n\nimport template from \"./byu-user-info.html\";\nimport * as util from 'byu-web-component-utils';\n\nclass ByuUserInfo extends HTMLElement {\n\n constructor() {\n super();\n\n let shadowRoot = this.attachShadow({mode: 'open'});\n \n }\n\n\n static get observedAttributes() {\n // return ['login-url'];\n }\n\n attributeChangedCallback(attr, oldval, newval) {\n // switch (attr) {\n // case 'login-url':\n // this.loginUrl = newval;\n // break;\n // }\n }\n\n connectedCallback() {\n util.applyTemplate(this, 'byu-user-info', template, () => {\n this._addSlotListeners();\n this._addAriaAttributes();\n }); \n }\n\n _addSlotListeners() {\n\n this._setHasUser();\n const userSlot = this.shadowRoot.querySelector('#user-name');\n userSlot.addEventListener('slotchange', e => {\n this._setHasUser();\n });\n }\n\n _setHasUser() {\n const userSlot = this.shadowRoot.querySelector('#user-name');\n if (userSlot.assignedNodes().length > 0) {\n this.setAttribute('has-user', '');\n }\n else {\n this.removeAttribute('has-user');\n }\n }\n\n _addAriaAttributes() {\n this.setAttribute('role', 'button');\n }\n\n}\n\nwindow.customElements.define('byu-user-info', ByuUserInfo);\nwindow.ByuUserInfo = ByuUserInfo;\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.js\n// module id = 10\n// module chunks = 0","module.exports = {\n\t\"name\": \"byuweb-components\",\n\t\"version\": \"1.1.1\",\n\t\"description\": \"Components to be used for byu web pages and applications.\",\n\t\"main\": \"\",\n\t\"scripts\": {\n\t\t\"build\": \"gulp build\",\n\t\t\"serve\": \"gulp watch\",\n\t\t\"test\": \"echo \\\"Error: no test specified\\\" && exit 1\"\n\t},\n\t\"private\": true,\n\t\"author\": \"\",\n\t\"license\": \"Apache-2.0\",\n\t\"dependencies\": {\n\t\t\"byu-web-component-utils\": \"^0.4.2\",\n\t\t\"deep-equal\": \"^1.0.1\",\n\t\t\"sass-loader\": \"^6.0.6\"\n\t},\n\t\"devDependencies\": {\n\t\t\"browser-sync\": \"^2.18.6\",\n\t\t\"byu-web-component-build\": \"^0.2.3\",\n\t\t\"git-revision-webpack-plugin\": \"^2.5.1\",\n\t\t\"gulp\": \"^3.9.1\",\n\t\t\"gulp-rename\": \"^1.2.2\"\n\t}\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 11\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/24/17\n */\n\"use strict\";\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD module\n define(factory);\n } else if (typeof exports === 'object') {\n // CommonJS-like environment (i.e. Node)\n module.exports = factory();\n } else {\n // Browser global\n root.transformicons = factory();\n }\n}(this || window, function () {\n\n // ####################\n // MODULE TRANSFORMICON\n // ####################\n 'use strict';\n\n var\n tcon = {}, // static class\n _transformClass = 'tcon-transform',\n\n // const\n DEFAULT_EVENTS = {\n transform : ['click'],\n revert : ['click']\n };\n\n // ##############\n // private methods\n // ##############\n\n /**\n * Normalize a selector string, a single DOM element or an array of elements into an array of DOM elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements\n * @returns {array} Array of DOM elements\n */\n var getElementList = function (elements) {\n if (typeof elements === 'string') {\n return Array.prototype.slice.call(document.querySelectorAll(elements));\n } else if (typeof elements === 'undefined' || elements instanceof Array) {\n return elements;\n } else {\n return [elements];\n }\n };\n\n /**\n * Normalize a string with eventnames separated by spaces or an array of eventnames into an array of eventnames.\n * @private\n *\n * @param {(string|array)} elements - String with eventnames separated by spaces or array of eventnames\n * @returns {array} Array of eventnames\n */\n var getEventList = function (events) {\n if (typeof events === 'string') {\n return events.toLowerCase().split(' ');\n } else {\n return events;\n }\n };\n\n /**\n * Attach or remove transformicon events to one or more elements.\n * @private\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {boolean} [remove=false] - Defines wether the listeners should be added (default) or removed.\n */\n var setListeners = function (elements, events, remove) {\n var\n method = (remove ? 'remove' : 'add') + 'EventListener',\n elementList = getElementList(elements),\n currentElement = elementList.length,\n eventLists = {};\n\n // get events or use defaults\n for (var prop in DEFAULT_EVENTS) {\n eventLists[prop] = (events && events[prop]) ? getEventList(events[prop]) : DEFAULT_EVENTS[prop];\n }\n\n // add or remove all events for all occasions to all elements\n while(currentElement--) {\n for (var occasion in eventLists) {\n var currentEvent = eventLists[occasion].length;\n while(currentEvent--) {\n elementList[currentElement][method](eventLists[occasion][currentEvent], handleEvent);\n }\n }\n }\n };\n\n /**\n * Event handler for transform events.\n * @private\n *\n * @param {object} event - event object\n */\n var handleEvent = function (event) {\n tcon.toggle(event.currentTarget);\n };\n\n // ##############\n // public methods\n // ##############\n\n /**\n * Add transformicon behavior to one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.add = function (elements, events) {\n setListeners(elements, events);\n return tcon;\n };\n\n /**\n * Remove transformicon behavior from one or more elements.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @param {object} [events] - An Object containing one or more special event definitions\n * @param {(string|array)} [events.transform] - One or more events that trigger the transform. Can be an Array or string with events seperated by space.\n * @param {(string|array)} [events.revert] - One or more events that trigger the reversion. Can be an Array or string with events seperated by space.\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.remove = function (elements, events) {\n setListeners(elements, events, true);\n return tcon;\n };\n\n /**\n * Put one or more elements in the transformed state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be transformed\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.transform = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.add(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Revert one or more elements to the original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be reverted\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.revert = function (elements) {\n getElementList(elements).forEach(function(element) {\n element.classList.remove(_transformClass);\n });\n return tcon;\n };\n\n /**\n * Toggles one or more elements between transformed and original state.\n * @public\n *\n * @param {(string|element|array)} elements - Selector, DOM element or Array of DOM elements to be toggled\n * @returns {transformicon} transformicon instance for chaining\n */\n tcon.toggle = function (elements) {\n getElementList(elements).forEach(function(element) {\n tcon[element.classList.contains(_transformClass) ? 'revert' : 'transform'](element);\n });\n return tcon;\n };\n\n return tcon;\n}));\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/icons/transformicons.js\n// module id = 12\n// module chunks = 0","/**\n * Created by ThatJoeMoore on 2/18/17\n */\n\"use strict\";\n\n/*\n * Header Bits\n */\nimport './byu-header/byu-header.js';\nimport './byu-menu/byu-menu.js';\nimport './byu-search/byu-search.js';\nimport './byu-user-info/byu-user-info.js';\n\n/*\n * Footer Bits\n */\n\nimport './byu-footer/byu-footer.js';\nimport './byu-footer-column/byu-footer-column.js';\nimport './byu-footer-action-button/byu-footer-action-button.js';\nimport './byu-social-media-links/byu-social-media-links.js';\n\nimport {version} from '../package.json';\n\nconsole.log(`--------------- Starting byu-theme-components ${version} ---------------`);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-theme-components.js\n// module id = 13\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nexport default function createEvent(name, detail) {\n if (typeof window.CustomEvent === 'function') {\n return new CustomEvent(name, {detail, cancelable: true, bubbles: true})\n }\n let evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(name, true, true, detail);\n return evt;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/createEvent.js\n// module id = 14\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport matches from './matchesSelector.js';\n\nexport default function querySelectorSlot(slot, selector) {\n let roots = slot.assignedNodes({flatten: true})\n .filter(n => n.nodeType === Node.ELEMENT_NODE);\n\n for (let i = 0, len = roots.length; i < len; i++) {\n let each = roots[i];\n if (matches(each, selector)) {\n return each;\n }\n let child = each.querySelector(selector);\n if (child) {\n return child;\n }\n }\n return null;\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/querySelectorSlot.js\n// module id = 15\n// module chunks = 0","/*\n * @license\n * Copyright 2017 Brigham Young University\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\"use strict\";\n\nimport hash from 'hash-sum';\n\nconst TEMPLATE_RENDERED_CLASS = 'byu-component-rendered';\n\nexport default function applyTemplate(element, elementName, template, callback) {\n let sum = hash(template);\n\n let elSettings = element.__byu_webCommunity_components = element.__byu_webCommunity_components || {};\n if (elSettings.templateHash === sum) {\n //Nothing has changed in the element. Don't replace the DOM, don't fire the callback.\n return;\n }\n elSettings.templateHash = sum;\n\n if (window.ShadyCSS && !window.ShadyCSS.nativeShadow) {\n applyTemplateShady(element, elementName, template, callback, sum);\n } else {\n applyTemplateNative(element, template, callback);\n }\n}\n\nfunction applyTemplateShady(element, elementName, template, callback, sum) {\n let templateId = '__byu-custom-element-template_' + elementName + '_' + sum;\n let templateElement = document.head.querySelector('template#' + templateId);\n if (!templateElement) {\n templateElement = document.createElement('template');\n templateElement.id = templateId;\n templateElement.innerHTML = template;\n document.head.appendChild(templateElement);\n ShadyCSS.prepareTemplate(templateElement, elementName);\n }\n if (ShadyCSS.styleElement) {\n ShadyCSS.styleElement(element);\n } else if (ShadyCSS.applyStyle) {\n ShadyCSS.applyStyle(element);\n } else {\n throw new Error('ShadyCSS is not properly defined: no styleElement or applyStyle!');\n }\n let imported = document.importNode(templateElement.content, true);\n let shadow = element.shadowRoot;\n //It'd be nice if we could just diff the DOM and replace what changed between templates, but that might lead to\n // event listeners getting applied twice. Easier to just clear out the shadow DOM and replace it.\n while (shadow.firstChild) {\n shadow.removeChild(shadow.firstChild);\n }\n shadow.appendChild(imported);\n setTimeout(function() {\n runAfterStamping(element, callback);\n });\n}\n\nfunction applyTemplateNative(element, template, callback) {\n element.shadowRoot.innerHTML = template;\n runAfterStamping(element, callback);\n}\n\nfunction runAfterStamping(element, callback) {\n element.classList.add(TEMPLATE_RENDERED_CLASS);\n if (callback) {\n callback();\n }\n}\n\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/byu-web-component-utils/lib/templating.js\n// module id = 16\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{background-color:#666;font-family:Vitesse A,Vitesse B,Georgia,serif;font-size:20px!important;color:#fff;display:inline-block;text-align:center;line-height:2.1em;height:45px;width:auto;min-width:125px;margin:10px 0 20px;-webkit-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);-moz-box-shadow:0 3px 5px 0 rgba(0,0,0,.35);box-shadow:0 3px 5px 0 rgba(0,0,0,.35)}.wrapper ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400!important;color:#fff!important;display:inline-block!important;position:relative!important;height:100%!important;width:100%!important;margin:0 20px!important;left:-20px!important;cursor:pointer!important;vertical-align:middle!important}.wrapper ::slotted(a){text-decoration:none!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.scss\n// module id = 17\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".header{width:100%;margin:0 0 8px}.header ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;text-transform:uppercase!important;color:#002e5d!important;font-size:20px!important;border-bottom:1px solid #c5c5c5!important;padding-bottom:3px!important;font-weight:400!important;width:100%;display:inline-block}.header ::slotted(br){display:none}.content ::slotted(:not(byu-footer-action-button)){font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;color:#666!important;display:block;padding:11px 0}.content ::slotted(*){margin:0}.content ::slotted(a){text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content ::slotted(a:hover){cursor:pointer;color:#002e5d!important;font-size:14px}.content a{text-decoration:none!important;outline:none!important;color:#666;font-size:14px}.content a:hover{cursor:pointer;color:#002e5d!important;font-size:14px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.scss\n// module id = 18\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".university-footer{background-color:#002e5d;text-align:center;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:400;font-size:12px;color:#fff;width:100%;padding:21px 0;display:flex;justify-content:center;align-items:center;flex-direction:column}.university-footer a{color:#fff;text-decoration:none}.university-footer a:hover{text-decoration:underline}.university-logo-wrapper{max-width:1200px;width:100%;padding:0 8px;box-sizing:border-box}.university-logo{max-width:100%;width:450px;height:40px;margin:-10px 0}.university-info{display:flex;flex-direction:column;align-items:center}.university-info>:not(:first-of-type){margin-top:.25em}@media (min-width:425px){.university-info{flex-direction:row}.university-info>:not(:first-of-type){margin-top:0}.university-info>:not(:first-of-type):before{display:inline-block;color:#fff;content:\\\"|\\\";text-align:center;width:1em}}.site-footer-wrapper{background-color:#e5e5e5}.site-footer{margin:0 auto;height:auto;box-sizing:border-box;padding:0 8px;display:flex;flex-direction:column;flex-wrap:wrap}.site-footer ::slotted(*){flex-grow:1;margin:16px 8px 0}.site-footer ::slotted(.double-wide){flex-grow:2}.site-footer ::slotted(.triple-wide){flex-grow:3}@media (min-width:600px){.site-footer{flex-direction:row}.site-footer ::slotted(*){width:calc(50% - 16px)}.site-footer ::slotted(.double-wide),.site-footer ::slotted(.triple-wide){width:calc(100% - 16px)}}@media (min-width:1024px){.site-footer{flex-wrap:nowrap;justify-content:center}.site-footer ::slotted(*){width:calc(20% - 16px);margin:30px 8px 40px;max-width:calc(30% - 16px)}.site-footer ::slotted(.double-wide){width:calc(40% - 16px);max-width:calc(60% - 16px)}.site-footer ::slotted(.triple-wide){width:calc(60% - 16px);max-width:calc(100% - 30% - 16px)}.site-footer ::slotted(:first-child){margin-left:0}.site-footer ::slotted(:last-child){margin-right:0}}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.scss\n// module id = 19\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".tcon{appearance:none;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;height:24px;transition:.15s;user-select:none;width:17px;background:transparent;outline:none;-webkit-tap-highlight-color:transparent;padding:0!important}.tcon>*{display:block}.tcon:focus,.tcon:hover{outline:none}.tcon::-moz-focus-inner{border:0}.tcon-menu__lines{width:24px;position:relative}.tcon-menu__lines,.tcon-menu__lines:after,.tcon-menu__lines:before{display:inline-block;border-radius:1px;height:3px;transition:.15s;background:#fff}.tcon-menu__lines:after,.tcon-menu__lines:before{width:24px;content:\\\"\\\";position:absolute;left:0;transform-origin:1.71429px center;width:100%}.tcon-menu__lines:before{top:6px}.tcon-menu__lines:after{top:-6px}.tcon-transform .tcon-menu__lines{transform:scale3d(.8,.8,.8)}.tcon-menu--xbutterfly{width:auto}.tcon-menu--xbutterfly .tcon-menu__lines:after,.tcon-menu--xbutterfly .tcon-menu__lines:before{transform-origin:50% 50%;transition:top .3s ease .6s,transform .3s ease}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines{background:transparent}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after,.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{top:0;transition:top .3s ease,transform .3s ease .5s;width:24px}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:before{transform:rotate(45deg)}.tcon-menu--xbutterfly.tcon-transform .tcon-menu__lines:after{transform:rotate(-45deg)}.tcon-visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.tcon-visuallyhidden:active,.tcon-visuallyhidden:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.byu-header-actions{display:flex;align-items:center;height:34px}.byu-header-actions ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.byu-header-root{width:100%;font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-size:18px}.byu-header-root .byu-header-content{display:flex;justify-content:center;flex:1;flex-basis:100%;box-sizing:border-box}.byu-header-root img.byu-logo{margin-right:16px}.byu-header-root button{background-color:#666;color:#fff;border:none;cursor:pointer}.byu-header-root .byu-header-primary{background-color:#002e5d;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;flex:1;min-height:55px;box-sizing:border-box;padding-left:16px}.byu-header-root .byu-header-primary .byu-header-title{overflow:hidden;-ms-text-overflow:ellipsis;text-overflow:ellipsis;flex:1;display:flex;flex-direction:column;font-size:22px;font-family:Vitesse A,Vitesse B,Georgia,serif!important;color:#fff!important;text-decoration:none}.byu-header-root .byu-header-primary .byu-header-title ::slotted(*){font-family:Vitesse A,Vitesse B,Georgia,serif!important;font-weight:400;font-size:22px;line-height:normal}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle){font-size:14px;line-height:14px;margin:0;margin-top:-1px;margin-bottom:3px}.byu-header-root .byu-header-primary .byu-header-title ::slotted(.subtitle:first-child){font-size:14px;line-height:14px;margin-bottom:-1px;margin-top:2px}.byu-header-root .byu-header-primary .byu-header-user button{background-color:transparent;position:relative}.byu-header-root .byu-header-primary .byu-header-user button .icon{width:20px;height:20px;font-size:20px;vertical-align:middle}.byu-header-root .byu-header-primary .byu-header-user button .label{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;text-transform:uppercase}.byu-header-root .byu-header-primary .byu-header-search #search-input{font-family:Gotham A,Gotham B,Helvetica,sans-serif;font-weight:500;font-size:13px;color:#002e5d}.byu-header-root .byu-header-primary .byu-header-search #search-input::-webkit-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-ms-input-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-header-search #search-input::-moz-placeholder{color:#c5c5c5;opacity:1}.byu-header-root .byu-header-primary .byu-logo,.byu-header-root .byu-header-primary .byu-logo-link{height:34px}.menu-outer-wrapper{border-bottom:1px solid #ccc;background-color:#fff}.menu-inner-wrapper{margin:0 auto;padding:0 16px;box-sizing:border-box}:host(.menu-transparent) .menu-outer-wrapper{opacity:.88}:host(.below-max-width) .menu-inner-wrapper{padding:0}#mobileMenu{max-height:0;transition:max-height .5s cubic-bezier(.4,0,.2,1);will-change:max-height;overflow:hidden}:host([mobile-view]) .byu-header-root .byu-header-content{display:block;margin:0;padding:0}:host([mobile-view]) .byu-header-root .byu-logo{align-self:flex-start}:host([mobile-view]) .byu-header-root .byu-header-primary{padding-top:10.5px;padding-bottom:10.5px;min-height:34px;padding-right:16px!important;align-items:baseline}:host([mobile-view]) .byu-header-root .byu-header-actions{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;padding:0!important;background-color:#e6e6e6;color:#002e5d!important;border-top:1px solid #c5c5c5;width:100%;display:flex;flex-direction:column;align-items:flex-start;line-height:12px!important}:host([mobile-view]) .byu-header-root .byu-header-actions:hover{background:#c5c5c5!important}:host([mobile-view]) .byu-header-root .byu-header-actions.active,:host([mobile-view]) .byu-header-root .byu-header-actions.selected{background:#e5e5e5!important}:host([mobile-view]) .byu-header-root #actions a{color:#002e5d!important;font-weight:500!important}:host([mobile-view]) .byu-header-root #actions p{margin:0!important}:host([mobile-view]) .byu-header-root .byu-header-actions ::slotted(*){color:#002e5d!important;padding:18px 50px!important}:host([mobile-view]) .byu-header-root>div>:not(.byu-logo){margin-right:0}:host([mobile-view]) .byu-header-root .byu-header-title{align-items:flex-start;align-self:center;font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(*){font-size:16px!important}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle){font-size:12px!important;margin-top:3px}:host([mobile-view]) .byu-header-root .byu-header-title ::slotted(.subtitle:first-child){margin-top:0!important;margin-bottom:4px}:host([mobile-view]) .byu-header-root button.mobile-menu-button{background-color:transparent;margin-top:5px;margin-bottom:5px;margin-left:5px}:host([no-menu]) .mobile-menu-button{display:none}:host([mobile-view]) .byu-header-search{max-height:35px;transition:max-height .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);will-change:max-height,transform;overflow:hidden;transform:scale(1);transform-origin:top}:host(.byu-header-menu-open[mobile-view]) .byu-header-search{max-height:0;transform:scaleY(0)}:host(:not([mobile-view])) .byu-header-root{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;background-color:#002e5d}:host(:not([mobile-view])) .byu-header-root .byu-header-actions ::slotted(*){margin-left:4px;margin-right:4px}:host(:not([mobile-view])) .byu-header-root .byu-header-actions a{color:#fff!important}:host(:not([mobile-view])) .byu-header-root.no-nav{height:48px}:host(:not([mobile-view])) .byu-header-root .nav-expand{display:none}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary{background-color:#002e5d;color:#fff;height:55px;padding-right:16px}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary,:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search input{border:1px solid #002e5d;border-right:none;height:20px;padding:4px 6px;flex:1;width:217px;box-sizing:content-box}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-search button{height:28px;width:30px;text-align:center}:host(:not([mobile-view])) .byu-header-root .byu-header-secondary .byu-header-menu-button{display:none}:host([full-width]) .byu-header-content,:host([full-width]) .menu-inner-wrapper{max-width:100%!important;width:100%!important}:host([full-width]) .menu-inner-wrapper{padding:0}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.scss\n// module id = 20\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-container ::slotted(__byu-menu-active-placeholder__){background:#e5e5e5!important}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/active-styles.scss\n// module id = 21\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{display:flex;justify-content:center;width:100%;height:auto;background:#fff}:host(.transparent){opacity:.88}.outer-nav{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;box-sizing:border-box;height:35px;position:relative;flex:1;flex-basis:100%}.slot-container ::slotted(*){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;flex:1;flex-basis:auto}.slot-container ::slotted(*):hover{background:#c5c5c5!important}.slot-container ::slotted(*).active,.slot-container ::slotted(*).selected{background:#e5e5e5!important}.slot-container ::slotted(:hover){background:#c5c5c5!important}.slot-container ::slotted(.active),.slot-container ::slotted(.selected){background:#e5e5e5!important}.byu-menu-more-menu{display:none;position:relative;height:35px;width:16.66%;overflow:visible!important}.byu-menu-more-menu .byu-menu-more{text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;position:relative;flex:1;display:block}.byu-menu-more-menu .byu-menu-more:hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more.active,.byu-menu-more-menu .byu-menu-more.selected{background:#e5e5e5!important}.byu-menu-more-menu .byu-menu-more .more-open-button{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/down-open-navy.svg\\\");height:13px;width:13px;display:inline-block;background-size:100%}.byu-menu-more-menu .byu-menu-more-items{display:none;position:absolute;top:35px;right:0;min-width:100%;max-width:250px;z-index:2;background:#fff;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-menu .byu-menu-more-items ::slotted(*){width:100%;text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;box-sizing:border-box;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;text-align:left!important;padding-left:12px!important;padding-right:12px!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*):hover{background:#c5c5c5!important}.byu-menu-more-menu .byu-menu-more-items ::slotted(*).active,.byu-menu-more-menu .byu-menu-more-items ::slotted(*).selected{background:#e5e5e5!important}.byu-menu-more-visible .byu-menu-more-menu{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded{background:#e5e5e5;box-shadow:0 0 2px 0 rgba(0,0,0,.75)}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-more-items{display:block}.byu-menu-more-visible .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1}:host(.mobile-view) .outer-nav{display:block;height:auto}:host(.mobile-view) .byu-menu-more{display:none!important}:host(.mobile-view) .slot-container ::slotted(*){display:block!important;text-align:left!important;padding:18px 18px 18px 50px!important;height:auto!important;width:100%;max-width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .slot-container ::slotted(*).byu-menu-more-menu{padding:0!important}:host(.mobile-view) .byu-menu-more-menu{display:block;width:100%;box-shadow:none;position:static;height:auto}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items{display:block;box-shadow:none;padding:0;position:static!important}:host(.mobile-view) .byu-menu-more-menu .byu-menu-more-items ::slotted(*){display:block!important;text-align:left!important;padding:18px 50px!important;height:auto!important;width:100%;position:static;box-sizing:border-box;line-height:12px!important}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded{box-shadow:none}:host(.mobile-view) .byu-menu-more-menu.byu-menu-more-expanded .byu-menu-fixed-overlay{display:none!important}:host([left-align]) .outer-nav ::slotted(*){min-width:200px;flex:0;padding:0 16px;flex-basis:auto}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.scss\n// module id = 22\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \":host{margin-left:20px}#search-icon{width:17px;height:17px}button{background-color:var(--byu-search-color,#666);border:1px solid var(--byu-search-color,#666);color:#fff;width:30px;height:30px;display:flex;align-items:center;box-sizing:border-box}#search-form{display:flex;align-items:stretch;align-content:center;width:216px}#search-form #search-container{flex:1}#search-form #search-container input{padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container input::placeholder{color:#666}#search-form #search-container input::-webkit-input-placeholder{color:#666}#search-form #search-container input:-ms-input-placeholder,#search-form #search-container input::-ms-input-placeholder{color:#666}#search-form #search-container ::slotted(input){padding:5px 10px;border:none;height:30px;-webkit-appearance:none;border-radius:0;margin:0;box-sizing:border-box;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-size:13px!important;font-weight:500!important;color:#002e5d!important;width:100%}#search-form #search-container ::slotted(input::placeholder){color:#666}#search-form #search-container ::slotted(input:-ms-input-placeholder),#search-form #search-container ::slotted(input::-ms-input-placeholder){color:#666}#search-form #search-container ::slotted(input::-webkit-input-placeholder){color:#666}:host(.mobile-view){width:100%;height:35px;margin:0}:host(.mobile-view) #search-form{width:auto}:host(.mobile-view) #search-form #search-container ::slotted(input),:host(.mobile-view) #search-form #search-container input{padding-left:16px;width:100%;height:35px;border-bottom:1px solid #c5c5c5}:host(.mobile-view) #search-button{width:53px;height:35px;padding:0 16px}:host(.mobile-view) #search-icon{width:20px;height:20px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.scss\n// module id = 23\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper{display:flex;flex-direction:row}.slot-wrapper ::slotted(*){height:28px;width:28px;display:block;color:transparent!important;overflow:hidden;background-size:contain;background-repeat:no-repeat;background-clip:content-box;background-position:50%;margin:8px 8px 8px 0!important}.slot-wrapper ::slotted(.facebook),.slot-wrapper ::slotted([slot=facebook]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/fa.svg\\\")}.slot-wrapper ::slotted(.twitter),.slot-wrapper ::slotted([slot=twitter]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/tw.svg\\\")}.slot-wrapper ::slotted(.instagram),.slot-wrapper ::slotted([slot=instagram]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/in.svg\\\")}.slot-wrapper ::slotted(.youtube),.slot-wrapper ::slotted([slot=youtube]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/yo.svg\\\")}.slot-wrapper ::slotted(.pinterest),.slot-wrapper ::slotted([slot=pinterest]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/pi.svg\\\")}.slot-wrapper ::slotted(.google-plus),.slot-wrapper ::slotted(.googleplus),.slot-wrapper ::slotted(.gplus),.slot-wrapper ::slotted([slot=google-plus]),.slot-wrapper ::slotted([slot=googleplus]),.slot-wrapper ::slotted([slot=gplus]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/gp.svg\\\")}.slot-wrapper ::slotted(.linkedin),.slot-wrapper ::slotted([slot=linkedin]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/li.svg\\\")}.slot-wrapper ::slotted(.rss),.slot-wrapper ::slotted([slot=rss]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/rs.svg\\\")}.slot-wrapper ::slotted(.snapchat),.slot-wrapper ::slotted([slot=snapchat]){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/sn.svg\\\")}.slot-wrapper ::slotted(.podcast){background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/social/obfuscated/po.svg\\\")}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.scss\n// module id = 24\n// module chunks = 0","exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".slot-wrapper ::slotted(*){text-decoration:none!important;font-size:13px!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;text-transform:uppercase!important;color:#fff!important}.has-user,.no-user{display:flex;flex-direction:row;align-items:center}.user-info-image{height:20px;width:20px;margin:5px;margin-right:11px;background-size:contain}:host(:not([mobile-view])){color:#fff}:host(:not([mobile-view])) .mobile{display:none}:host(:not([mobile-view])) .slot-wrapper{display:flex;align-items:center}:host(:not([mobile-view])) .slot-wrapper ::slotted(a:hover){text-decoration:underline!important}:host(:not([mobile-view])) .has-user .name ::slotted(*){color:#c3ddf9!important;text-transform:uppercase!important;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host(:not([mobile-view])) .user-info-image{margin:7px;background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-white.svg\\\")}:host([mobile-view]){text-decoration:none!important;font-size:13px!important;text-transform:uppercase!important;color:#fff!important;font-family:Gotham A,Gotham B,Helvetica,sans-serif!important;font-weight:500!important;color:#002e5d!important;height:35px!important;display:inline-block;text-align:center!important;padding:0 6px!important;line-height:35px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:background .3s;display:block;box-sizing:border-box;padding:18px 33px!important;line-height:12px;text-align:left!important;height:auto!important;border-bottom:1px solid #c5c5c5;padding:10px 14px!important;background-color:#fff!important;line-height:12px!important}:host([mobile-view]):hover{background:#c5c5c5!important}:host([mobile-view]).active,:host([mobile-view]).selected{background:#e5e5e5!important}:host([mobile-view]) .not-mobile{display:none}:host([mobile-view]) .slot-wrapper ::slotted(*){color:#002e5d!important}:host([mobile-view]) .has-user .logout{order:3}:host([mobile-view]) .has-user .name{order:2;flex:1}:host([mobile-view]) .has-user .name ::slotted(*){text-transform:capitalize!important;color:#0057b8!important}:host([mobile-view]) .user-info-image{background-image:url(\\\"https://cdn.byu.edu/shared-icons/latest/fontawesome/user-circle-o-navy.svg\\\")}:host(:not([has-user])) .has-user,:host([has-user]) .no-user{display:none}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.scss\n// module id = 25\n// module chunks = 0","var pSlice = Array.prototype.slice;\nvar objectKeys = require('./lib/keys.js');\nvar isArguments = require('./lib/is_arguments.js');\n\nvar deepEqual = module.exports = function (actual, expected, opts) {\n if (!opts) opts = {};\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n\n } else if (actual instanceof Date && expected instanceof Date) {\n return actual.getTime() === expected.getTime();\n\n // 7.3. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if (!actual || !expected || typeof actual != 'object' && typeof expected != 'object') {\n return opts.strict ? actual === expected : actual == expected;\n\n // 7.4. For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else {\n return objEquiv(actual, expected, opts);\n }\n}\n\nfunction isUndefinedOrNull(value) {\n return value === null || value === undefined;\n}\n\nfunction isBuffer (x) {\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') return false;\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\n return false;\n }\n if (x.length > 0 && typeof x[0] !== 'number') return false;\n return true;\n}\n\nfunction objEquiv(a, b, opts) {\n var i, key;\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b))\n return false;\n // an identical 'prototype' property.\n if (a.prototype !== b.prototype) return false;\n //~~~I've managed to break Object.keys through screwy arguments passing.\n // Converting to array solves the problem.\n if (isArguments(a)) {\n if (!isArguments(b)) {\n return false;\n }\n a = pSlice.call(a);\n b = pSlice.call(b);\n return deepEqual(a, b, opts);\n }\n if (isBuffer(a)) {\n if (!isBuffer(b)) {\n return false;\n }\n if (a.length !== b.length) return false;\n for (i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n }\n try {\n var ka = objectKeys(a),\n kb = objectKeys(b);\n } catch (e) {//happens when one is a string literal and the other isn't\n return false;\n }\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length != kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] != kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!deepEqual(a[key], b[key], opts)) return false;\n }\n return typeof a === typeof b;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/index.js\n// module id = 26\n// module chunks = 0","var supportsArgumentsClass = (function(){\n return Object.prototype.toString.call(arguments)\n})() == '[object Arguments]';\n\nexports = module.exports = supportsArgumentsClass ? supported : unsupported;\n\nexports.supported = supported;\nfunction supported(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n};\n\nexports.unsupported = unsupported;\nfunction unsupported(object){\n return object &&\n typeof object == 'object' &&\n typeof object.length == 'number' &&\n Object.prototype.hasOwnProperty.call(object, 'callee') &&\n !Object.prototype.propertyIsEnumerable.call(object, 'callee') ||\n false;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/is_arguments.js\n// module id = 27\n// module chunks = 0","exports = module.exports = typeof Object.keys === 'function'\n ? Object.keys : shim;\n\nexports.shim = shim;\nfunction shim (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/deep-equal/lib/keys.js\n// module id = 28\n// module chunks = 0","module.exports = function anonymous(locals, escapeFn, include, rethrow) {\n \"use strict\";\n escapeFn = escapeFn || function(markup) {\n return markup == undefined ? \"\" : String(markup).replace(_MATCH_HTML, encode_char);\n };\n var _ENCODE_HTML_RULES = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\"\n }, _MATCH_HTML = /[&<>'\"]/g;\n function encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n }\n var __output = [], __append = __output.push.bind(__output);\n __append(\"
\\n
\\n\\n\"BYU\"\\n
\\n\\n
\\n');\n if (locals.mobile) {\n __append('\\n');\n }\n __append(\"
\");\n if (locals.mobile) {\n __append('
\\n\\n\\n
\\n\\n
\\n
\\n');\n }\n __append('
\\n');\n if (!locals.mobile) {\n __append('
\\n\\n
\\n
\\n\\n
\\n');\n }\n __append('
\\n\\n
\\n
\\n
\\n');\n if (!locals.mobile) {\n __append('
\\n
\\n\\n
\\n
\\n');\n }\n return __output.join(\"\");\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-header/byu-header.ejs.html\n// module id = 29\n// module chunks = 0","'use strict';\n\nfunction pad (hash, len) {\n while (hash.length < len) {\n hash = '0' + hash;\n }\n return hash;\n}\n\nfunction fold (hash, text) {\n var i;\n var chr;\n var len;\n if (text.length === 0) {\n return hash;\n }\n for (i = 0, len = text.length; i < len; i++) {\n chr = text.charCodeAt(i);\n hash = ((hash << 5) - hash) + chr;\n hash |= 0;\n }\n return hash < 0 ? hash * -2 : hash;\n}\n\nfunction foldObject (hash, o, seen) {\n return Object.keys(o).sort().reduce(foldKey, hash);\n function foldKey (hash, key) {\n return foldValue(hash, o[key], key, seen);\n }\n}\n\nfunction foldValue (input, value, key, seen) {\n var hash = fold(fold(fold(input, key), toString(value)), typeof value);\n if (value === null) {\n return fold(hash, 'null');\n }\n if (value === undefined) {\n return fold(hash, 'undefined');\n }\n if (typeof value === 'object') {\n if (seen.indexOf(value) !== -1) {\n return fold(hash, '[Circular]' + key);\n }\n seen.push(value);\n return foldObject(hash, value, seen);\n }\n return fold(hash, value.toString());\n}\n\nfunction toString (o) {\n return Object.prototype.toString.call(o);\n}\n\nfunction sum (o) {\n return pad(foldValue(0, o, '', []).toString(16), 8);\n}\n\nmodule.exports = sum;\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/hash-sum/hash-sum.js\n// module id = 30\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-action-button/byu-footer-action-button.html\n// module id = 31\n// module chunks = 0","module.exports = \"

\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer-column/byu-footer-column.html\n// module id = 32\n// module chunks = 0","module.exports = \"
© All Rights Reserved Provo, UT 84602, USA 801-422-4636
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-footer/byu-footer.html\n// module id = 33\n// module chunks = 0","module.exports = \" \";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-menu/byu-menu.html\n// module id = 34\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-search/byu-search.html\n// module id = 35\n// module chunks = 0","module.exports = \"
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-social-media-links/byu-social-media-links.html\n// module id = 36\n// module chunks = 0","module.exports = \"
Sign In
Sign Out
\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./components/byu-user-info/byu-user-info.html\n// module id = 37\n// module chunks = 0"]} \ No newline at end of file