{"version":3,"sources":["components/Button.module.css","components/HeaderCarousel.module.css","components/Accordion.module.css","assets/research-posters sync nonrecursive /^/.//.*$","assets/research-posters/Biology.tsv","assets/research-posters/Environment.tsv","assets/research-posters/Health.tsv","assets/research-posters/Other.tsv","assets/research-posters/Technology-Engineering.tsv","assets/logos/UNLV.png","assets/logos/CSN.png","assets/logos/lsamp-logo.png","assets/logos/CCCprimary-horizontal-white.png","assets/logos/NAU.png","hooks/useResize.js","hooks/useIsMobile.js","components/Navbar.js","components/ScrollToTopBtn.js","components/HeaderCarousel.js","assets/logos/NSF_logo.png","components/Footer.js","components/Button.js","components/Accordion.js","assets/decorative-pictures/Louis-Stokes.jpg","assets/student-pictures/One STEM Community (3).jpg","assets/student-pictures/homeImage.JPG","assets/student-pictures/D72339_069.jpg","assets/student-pictures/D72339_028.jpg","assets/student-pictures/D72339_051.jpg","assets/student-pictures/DSC00572.JPG","pages/Home.js","components/Header.js","assets/student-pictures/Leadershippic.jpg","pages/Leadership.js","assets/student-pictures/LSAMPActivity1.png","pages/ProgramBenefits.js","assets/student-pictures/D72339_061.jpg","pages/ResearchSpotlight.js","assets/student-pictures/Newsletterpic2.png","pages/Newsletter.js","assets/student-pictures/D72339_063.jpg","pages/Apply.js","assets/fonts/Spinnaker/Spinnaker-Regular.ttf","assets/decorative-pictures/hoover-dam-bridge.jpg","pages/Connect.js","App.js","reportWebVitals.js","assets/fonts/Roboto/Roboto-Italic.ttf","assets/fonts/Roboto/Roboto-Bold.ttf","index.js","components/Header.module.css","pages/Leadership.module.css"],"names":["module","exports","map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","useResize","useState","width","window","innerWidth","height","innerHeight","dimensions","setDimensions","history","useHistory","useEffect","handleResize","addEventListener","removeEventListener","listen","location","useIsMobile","setWidth","Navbar","forwardRef","props","ref","scrollY","setScrollY","navIsOpen","setNavIsOpen","logosHeight","setLogosHeight","isMobile","logosContainer","useRef","current","clientHeight","currentTarget","className","style","transform","onClick","pointerEvents","href","src","unlvLogo","alt","csnLogo","activeClassName","to","exact","lsampLogo","cccLogo","nauLogo","display","size","color","ScrollToTopBtn","scrollTo","top","behavior","HeaderCarousel","headerStyle","subheaderStyle","backgroundImages","title","subheader","pageHasMounted","setPageHasMounted","styles","sliderContainer","headerContent","arrows","dots","draggable","swipe","touchMove","pauseOnHover","autoplay","autoplaySpeed","speed","image","index","background","fadeInMoveDown","invisible","header","subheaderContainer","fadeIn","Footer","nsfLogo","Button","text","variant","blue","yellow","backgroundColor","border","button","Accordion","content","accordionWrapper","message","AccordionItem","accordionSize","length","isActive","setIsActive","contentHeight","setContentHeight","contentDiv","scrollHeight","borderBottom","accordionItemContainer","opened","accordionHeader","headerText","arrow","arrowOpened","accordionContent","contentOpened","contentClosed","maxHeight","Home","headerImages","background1","background2","background3","background4","background5","background6","FAQContent","tabIndex","margin","backgroundPosition","louisStokes","allow","frameBorder","allowFullScreen","url","newWindow","open","opener","openInNewTab","Header","backgroundImage","headerContainer","Leadership","ProgramBenefits","checkmarkColor","checkmarkSize","Carousel","data","quote","name","school","carousel","setIndex","dotsDisabled","setDotsDisabled","primaryColor","slickPrev","appendDots","item","i","slickGoTo","beforeChange","oldIndex","newIndex","afterChange","d","slickNext","ResearchSpotlight","posterData","setPosterData","setAccordionContent","extractData","file","a","fetch","response","split","element","poster","replace","thumbnail","pdfLink","subjects","r","imports","default","dynamicallyImport","require","compiledData","other","Other","subject","subjectArr","ResearchTile","push","formatAccordionContent","target","rel","Newsletter","link","previousIssues","newsletter","Apply","class","Connect","App","navHeight","setNavHeight","insertedComment","setInsertedComment","nav","refocus","comment","document","createComment","body","insertBefore","firstChild","navResize","ResizeObserver","contentRect","navRef","observe","unobserve","focus","path","component","flexDirection","justifyContent","alignItems","padding","fontSize","reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode","getElementById"],"mappings":"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","file":"static/js/main.d59f72b7.chunk.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"Button_button__2Ce79\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"invisible\":\"HeaderCarousel_invisible__UycL6\",\"fadeInMoveDown\":\"HeaderCarousel_fadeInMoveDown__1uY18\",\"fadeIn\":\"HeaderCarousel_fadeIn__3Lx_y\",\"moveDown\":\"HeaderCarousel_moveDown__2ZQXL\",\"sliderContainer\":\"HeaderCarousel_sliderContainer__2qTJ-\",\"headerContent\":\"HeaderCarousel_headerContent__18gLb\",\"header\":\"HeaderCarousel_header__29SF2\",\"background\":\"HeaderCarousel_background__2OsdG\",\"subheaderContainer\":\"HeaderCarousel_subheaderContainer__z9dWx\",\"subheader\":\"HeaderCarousel_subheader__F_mzt\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"accordionWrapper\":\"Accordion_accordionWrapper__3nJMJ\",\"accordionItemContainer\":\"Accordion_accordionItemContainer__2WcW2\",\"accordionHeader\":\"Accordion_accordionHeader__11e_D\",\"headerText\":\"Accordion_headerText__3Hnuw\",\"arrow\":\"Accordion_arrow__2lZkm\",\"arrowOpened\":\"Accordion_arrowOpened__16Cwo\",\"accordionContent\":\"Accordion_accordionContent__3BJiR\",\"contentClosed\":\"Accordion_contentClosed__3ZC9g\",\"contentOpened\":\"Accordion_contentOpened__20Tm0\",\"opened\":\"Accordion_opened__3lFyb\"};","var map = {\n\t\"./Biology.tsv\": 461,\n\t\"./Environment.tsv\": 462,\n\t\"./Health.tsv\": 463,\n\t\"./Other.tsv\": 464,\n\t\"./Technology-Engineering.tsv\": 465\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 460;","export default __webpack_public_path__ + \"static/media/Biology.d82ef3c2.tsv\";","export default __webpack_public_path__ + \"static/media/Environment.9a4ecf51.tsv\";","export default __webpack_public_path__ + \"static/media/Health.2653da9e.tsv\";","export default __webpack_public_path__ + \"static/media/Other.7419eed9.tsv\";","export default __webpack_public_path__ + \"static/media/Technology-Engineering.66b936d6.tsv\";","export default __webpack_public_path__ + \"static/media/UNLV.cf73bd72.png\";","export default __webpack_public_path__ + \"static/media/CSN.2d19ae4d.png\";","export default __webpack_public_path__ + \"static/media/lsamp-logo.0cd421f0.png\";","export default __webpack_public_path__ + \"static/media/CCCprimary-horizontal-white.e0040da2.png\";","export default __webpack_public_path__ + \"static/media/NAU.e142df25.png\";","import { useState, useEffect } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\n\r\n/**\r\n * Keeps track of when the window is resized.\r\n * @returns The current width and height of the screen.\r\n */\r\nexport default function useResize() {\r\n const [dimensions, setDimensions] = useState({\r\n width: window.innerWidth,\r\n height: window.innerHeight,\r\n });\r\n const history = useHistory();\r\n\r\n useEffect(() => {\r\n // Whenever the screen is resized, update the dimensions state.\r\n function handleResize() {\r\n setDimensions({\r\n height: window.innerHeight,\r\n width: window.innerWidth,\r\n });\r\n }\r\n\r\n // Listen for when the user resizes their screen.\r\n window.addEventListener(\"resize\", handleResize);\r\n\r\n // Event listener clean-up.\r\n return () => {\r\n window.removeEventListener(\"resize\", handleResize);\r\n history.listen((location) => {\r\n handleResize();\r\n });\r\n };\r\n }, [dimensions, history]);\r\n\r\n return dimensions;\r\n}\r\n","import { useState, useEffect } from \"react\";\r\n\r\n/**\r\n * A hook that keeps track of the user's device width and returns whether it is small enough to be considered a mobile device.\r\n * @returns Whether the user's device is a mobile device.\r\n */\r\nexport default function useIsMobile() {\r\n const [width, setWidth] = useState(window.innerWidth); // Keeps track of the width of the screen.\r\n\r\n /**\r\n * Whenever the screen is resized, update the width state.\r\n */\r\n useEffect(() => {\r\n function handleResize() {\r\n setWidth(window.innerWidth);\r\n }\r\n\r\n // Listen for when the user resizes their screen.\r\n window.addEventListener(\"resize\", handleResize);\r\n // Event listener clean-up.\r\n return () => window.removeEventListener(\"resize\", handleResize);\r\n }, [width]);\r\n\r\n return width <= 768; // A width lower than 768px is considered a mobile device.\r\n}\r\n","// Components\r\nimport React, { useEffect, useState, useRef, forwardRef } from \"react\";\r\nimport { NavLink, useHistory } from \"react-router-dom\";\r\n// Stylesheets\r\nimport \"./Navbar.css\";\r\n// Images (logos)\r\nimport unlvLogo from \"../assets/logos/UNLV.png\";\r\nimport csnLogo from \"../assets/logos/CSN.png\";\r\nimport lsampLogo from \"../assets/logos/lsamp-logo.png\";\r\nimport cccLogo from \"../assets/logos/CCCprimary-horizontal-white.png\";\r\nimport nauLogo from \"../assets/logos/NAU.png\";\r\n// Icons\r\nimport { FiMenu, FiX } from \"react-icons/fi\";\r\n// Hooks\r\nimport useResize from \"../hooks/useResize\";\r\nimport useIsMobile from \"../hooks/useIsMobile\";\r\n\r\n/**\r\n * The component at the top of every page that provides links to all the different pages and\r\n * the logos of the universities that host the LSAMP program.\r\n */\r\nconst Navbar = forwardRef((props, ref) => {\r\n const [scrollY, setScrollY] = useState(window.scrollY); // Keeps track of how far up or down the user has scrolled.\r\n const [navIsOpen, setNavIsOpen] = useState(false); // On mobile, determines whether the navigation drawer is open or not.\r\n const [logosHeight, setLogosHeight] = useState(); // Offset value used to move the logo images out of site on scroll.\r\n const dimensions = useResize(); // Keeps track of the screen's height and width, even as the user resizes it.\r\n const isMobile = useIsMobile(); // Indicates whether the user is using a mobile device.\r\n const history = useHistory(); // Used for listening to route changes.\r\n const logosContainer = useRef(); // Used to get the height of the logo div.\r\n\r\n /**\r\n * When the component first mounts and whenever the user changes the size of their window, update the logosHeight\r\n * value accordingly so all the pages are rendered perfectly after the navbar; not too far away and not directly underneath it.\r\n * Also make sure to close the navbar if the user scales their window from a mobile proportion to a desktop one instantly.\r\n */\r\n useEffect(() => {\r\n setLogosHeight(logosContainer.current.clientHeight + 15);\r\n if (!isMobile) {\r\n setNavIsOpen(false);\r\n }\r\n }, [isMobile, dimensions]);\r\n\r\n /**\r\n * On mobile, whenever the user navigates to a different page, close the navigation drawer.\r\n */\r\n useEffect(() => {\r\n return history.listen((location) => {\r\n setNavIsOpen(false);\r\n });\r\n }, [history]);\r\n\r\n /**\r\n * Whenever the user scrolls, update the scrollY state to reflect their new position.\r\n * This will be used to determine when to collapse the navbar to a smaller view.\r\n */\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", (e) =>\r\n setScrollY(e.currentTarget.scrollY)\r\n );\r\n\r\n // Event listener cleanup. Return this so the window isn't constantly listening for scrolls.\r\n return () => {\r\n window.removeEventListener(\"scroll\", (e) =>\r\n setScrollY(e.currentTarget.scrollY)\r\n );\r\n };\r\n }, [scrollY]);\r\n\r\n return (\r\n = 300 && !isMobile ? `${-logosHeight}px` : 0\r\n })`,\r\n }}\r\n >\r\n {/* Makes the background slightly dark when the navbar is opened (mobile only) */}\r\n setNavIsOpen(false)}\r\n style={{ pointerEvents: isMobile && navIsOpen ? \"auto\" : \"none\" }} // Dictates when the user should be able to click it to dismiss the nav drawer.\r\n className={`dim-background ${!navIsOpen ? \"light-background\" : \"\"}`}\r\n />\r\n {/**\r\n * Button used for skipping to the main content of any given page (accessibility feature).\r\n * For every page in this website, you must give an element id='main-content' so this button\r\n * knows to jump to it. If this id is not supplied to an element, the button will not do anything,\r\n * which would be horrible for accessibility.\r\n */}\r\n \r\n
Skip to Content
\r\n
\r\n
\r\n {/*-------------------- Logo Container --------------------*/}\r\n
\r\n
\r\n\r\n {/*------------------ Only visible on mobile platforms ------------------*/}\r\n \r\n \r\n \r\n {/* Hamburger Menu Icon (only visible whne the nav drawer is closed.) */}\r\n setNavIsOpen(true)} // Open the drawer when tapped on.\r\n />\r\n {/* X Icon (only visible when the nav drawer is opened) */}\r\n setNavIsOpen(false)} // Close the drawer when tapped on.\r\n />\r\n {/*---------------------------------------------------------------------*/}\r\n\r\n {/*-------------------- Pages List --------------------*/}\r\n \r\n
    \r\n
  • \r\n \r\n Home\r\n \r\n
  • \r\n
  • \r\n \r\n Leadership\r\n \r\n
  • \r\n
  • \r\n \r\n Activities and Services\r\n \r\n
  • \r\n
  • \r\n \r\n Newsletter\r\n \r\n
  • \r\n
  • \r\n \r\n Research Spotlight\r\n \r\n
  • \r\n
  • \r\n \r\n Apply\r\n \r\n
  • \r\n
  • \r\n \r\n Connect\r\n \r\n
  • \r\n
\r\n
\r\n \r\n \r\n );\r\n});\r\n\r\nexport default Navbar;\r\n","// Modules\r\nimport React, { useState, useEffect } from \"react\";\r\nimport { BsFillArrowUpCircleFill, BsArrowUpCircle } from \"react-icons/bs\";\r\nimport useIsMobile from \"../hooks/useIsMobile\";\r\n// Stylesheet\r\nimport \"./ScrollToTopBtn.css\";\r\n\r\n/**\r\n * A button that appears after the user has scrolled down the page a certain amount that allows them to scroll\r\n * back to the very top.\r\n */\r\nexport default function ScrollToTopBtn() {\r\n const [scrollY, setScrollY] = useState(window.scrollY); // Keeps track of how far down the user has scrolled.\r\n const isMobile = useIsMobile();\r\n\r\n /**\r\n * Whenever the user scrolls, update the scrollY state to reflect their new position.\r\n * This will be used to determine when to collapse the navbar to a smaller view.\r\n */\r\n useEffect(() => {\r\n window.addEventListener(\"scroll\", (e) =>\r\n setScrollY(e.currentTarget.scrollY)\r\n );\r\n\r\n // Event listener cleanup. Return this so the window isn't constantly listening for scrolls.\r\n return () => {\r\n window.removeEventListener(\"scroll\", (e) =>\r\n setScrollY(e.currentTarget.scrollY)\r\n );\r\n };\r\n }, [scrollY]);\r\n\r\n /**\r\n * When the button is pressed, scroll the page back to the very top.\r\n * Unfortunately, the smooth scrolling behavior only works on desktop, not mobile.\r\n */\r\n function handleScrollToTop() {\r\n window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n }\r\n\r\n return (\r\n = 600 ? \"visible\" : \"\"}`}\r\n onClick={handleScrollToTop}\r\n >\r\n \r\n \r\n \r\n );\r\n}\r\n","// Modules\r\nimport React, { useEffect, useState } from \"react\";\r\nimport Slider from \"react-slick\";\r\nimport PropTypes from \"prop-types\";\r\n// Stylesheets\r\nimport styles from \"./HeaderCarousel.module.css\";\r\nimport \"slick-carousel/slick/slick.css\";\r\nimport \"slick-carousel/slick/slick-theme.css\";\r\n\r\n/**\r\n * Displays a container of revolving images with some text for the header and a blue bar of additional text for the subheader.\r\n * @param {Object} headerStyle Style object used to inject additional styles to the header component.\r\n * @param {Object} subheaderStyle Style object used to inject additional styles to the subheader component.\r\n * @param {Array} backgroundImages URLs to the images that will be used as the background for the header\r\n * @param {string} title Actual text for the header content.\r\n * @param {string} subheader Actual text for the subheader content.\r\n */\r\nexport default function HeaderCarousel({\r\n headerStyle,\r\n subheaderStyle,\r\n backgroundImages,\r\n title,\r\n subheader,\r\n}) {\r\n const [pageHasMounted, setPageHasMounted] = useState(false); // Used for fading in and moving down animations.\r\n\r\n /**\r\n * Deals with graphical glitches that are prone to occur on the live site.\r\n */\r\n useEffect(() => {\r\n setPageHasMounted(true);\r\n }, []);\r\n\r\n return (\r\n <>\r\n {/*----- Header -----*/}\r\n
\r\n \r\n {backgroundImages.map((image, index) => {\r\n return (\r\n \r\n \r\n
\r\n );\r\n })}\r\n \r\n \r\n {title}\r\n \r\n \r\n\r\n {/*----- Subheader -----*/}\r\n
\r\n \r\n {subheader}\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nHeaderCarousel.propTypes = {\r\n /**Style object used to inject additional styles to the header component.*/\r\n headerStyle: PropTypes.object,\r\n /**Style object used to inject additional styles to the subheader component.*/\r\n subheaderStyle: PropTypes.object,\r\n /**URLs to the images that will be used as the background for the header.*/\r\n backgroundImages: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n /**Actual text for the header content.*/\r\n title: PropTypes.string.isRequired,\r\n /**Actual text for the subheader content.*/\r\n subheader: PropTypes.string.isRequired,\r\n};\r\n","export default __webpack_public_path__ + \"static/media/NSF_logo.fb7efe92.png\";","// Stylesheet\r\nimport \"./Footer.css\";\r\n// Assets\r\nimport nsfLogo from \"../assets/logos/NSF_logo.png\";\r\n\r\n/**\r\n * The component that rests at the end of every page that displays information about CAEO\r\n * and a disclaimer about the NFS's involvement with LSAMP.\r\n */\r\nexport default function Footer() {\r\n return (\r\n
\r\n {/*-------------------- CAEO/LSAMP Info Container --------------------*/}\r\n
\r\n

\r\n SNNA-LSAMP\r\n
\r\n University of Nevada, Las Vegas\r\n
\r\n 4505 S. Maryland Parkway,\r\n
\r\n Las Vegas, NV 89154-2006\r\n
\r\n

\r\n\r\n
\r\n\r\n {/*-------------------- NSF Disclaimer Container --------------------*/}\r\n

\r\n

\r\n
\r\n
\r\n );\r\n}\r\n","// Modules\r\nimport PropTypes from \"prop-types\";\r\n// CSS\r\nimport styles from \"./Button.module.css\";\r\n// Icons\r\nimport { FaExternalLinkAlt } from \"react-icons/fa\";\r\n\r\n/**\r\n * A simple button that executes a supplied function.\r\n * Can be used anywhere throughout the website.\r\n * @param {string} text The text that will be displayed in the button.\r\n * @param {Function} onClick Function that will execute upon clicking the button.\r\n * @param {string} variant Changes the background color and overall theme of the button.\r\n * Must be either `\"blue\"` or `\"yellow\"`.\r\n */\r\nexport default function Button({ text, onClick, variant = \"yellow\" }) {\r\n const blue = \"#255ba8\"; // Global color for blue.\r\n const yellow = \"#e4be37\"; // Global color for yellow.\r\n\r\n return (\r\n \r\n {text} \r\n \r\n );\r\n}\r\n\r\nButton.propTypes = {\r\n /** The text that will be displayed in the button. */\r\n text: PropTypes.string.isRequired,\r\n /** Function that will execute upon clicking the button. */\r\n onClick: PropTypes.func.isRequired,\r\n /**\r\n * Changes the background color and overall theme of the button.\r\n * Must be either `\"blue\"` or `\"yellow\"`.\r\n */\r\n variant: PropTypes.oneOf([\"blue\", \"yellow\"]),\r\n};\r\n","// Modules\r\nimport React, { useState, useRef, useEffect } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// Styles\r\nimport styles from \"./Accordion.module.css\";\r\n// Icons\r\nimport { FaChevronDown } from \"react-icons/fa\";\r\n// Hooks\r\nimport useResize from \"../hooks/useResize\";\r\n\r\n/**\r\n * This is a type of dropdown menu where clicking on a header reveals a chunk of text underneath it in a smooth, animated fashion.\r\n * This is primarily used in the Home page, but it is flexible enough to be used anywhere throughout the site.\r\n * @param {Array} content Provides text to the different parts of the accordion. Each element in the array represents a new section of the accordion.\r\n * The array must follow the following shape:\r\n * {\r\n * title: \"Example Header\"\r\n * message: \"Text that appears under the header after it has been clicked.\"\r\n * }\r\n */\r\nexport default function Accordion({ content }) {\r\n return (\r\n
\r\n {\r\n // For each element in content, create an accordion item that will combine to create the larger accordion component.\r\n content.map(({ title, message }, index) => {\r\n return (\r\n \r\n );\r\n })\r\n }\r\n
\r\n );\r\n}\r\n\r\n/**\r\n * This is an individual accordion section. The overall Accordion component is comprised of many of these items to create a full\r\n * accordion. This is done to abstract some of the complexity and to make the styling more consistent.\r\n * This component is not available outside of this file; only to the Accordion component.\r\n * @param {Number} accordionSize Number of AccordionItems that will be created in the Accordion component.\r\n * @param {Number} index The order of this item in relation to all the others in the Accordion component.\r\n * @param {String} title The header text.\r\n * @param {String} message The text of the content section that gets revealed when the title is clicked.\r\n */\r\nfunction AccordionItem({ accordionSize, index, title, message }) {\r\n const [isActive, setIsActive] = useState(false); // Dictates whether the content section of this item should be opened or closed.\r\n const [contentHeight, setContentHeight] = useState(); // Height of the item's content (based on the amount of text it contains).\r\n const dimensions = useResize(); // Keeps track of the screen's height and width, even as the user resizes it.\r\n const arrowSize = \"28px\"; // Size of the arrow icon that displayed near the header.\r\n const contentDiv = useRef(); // Used to get the scrollHeight of the content section's text.\r\n\r\n /**\r\n * The collapsing feature of this component is based on the maxHeight of the content section. When an item is closed, its maxHeight is\r\n * set to zero, that way the content section isn't being displayed. When an item is opened, the max height must increase so the content\r\n * section can be revealed. In order to make this animation from closed to opened as smooth as possible, the maxHeight is set to the\r\n * scrollHeight of the content section's text, which is a measurement of how long that text is.\r\n * This value is updated when the component mounts and whenever the content within the contentDiv changes size (i.e. whenever the window is resized).\r\n */\r\n useEffect(() => {\r\n setContentHeight(contentDiv.current.scrollHeight);\r\n }, [dimensions, contentDiv.current?.scrollHeight]);\r\n\r\n return (\r\n \r\n {\r\n setIsActive(!isActive); // Open/close the content container.\r\n }}\r\n className={styles.accordionHeader}\r\n >\r\n

{title}

\r\n \r\n \r\n \r\n \r\n {message}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nAccordion.propTypes = {\r\n /**\r\n * Provides text to the different parts of the accordion. Each element in the array represents a new section of the accordion.\r\n * The array must follow the following shape:\r\n * ```js\r\n * {\r\n * title: \"Example Header\"\r\n * message: \"Text that appears under the header after it has been clicked.\"\r\n * }\r\n * ```\r\n */\r\n content: PropTypes.arrayOf(\r\n PropTypes.shape({\r\n title: PropTypes.string,\r\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\r\n })\r\n ).isRequired,\r\n};\r\n","export default __webpack_public_path__ + \"static/media/Louis-Stokes.6bfeca72.jpg\";","export default __webpack_public_path__ + \"static/media/One STEM Community (3).f931ce9e.jpg\";","export default __webpack_public_path__ + \"static/media/homeImage.70913e46.JPG\";","export default __webpack_public_path__ + \"static/media/D72339_069.25cce319.jpg\";","export default __webpack_public_path__ + \"static/media/D72339_028.23eac8d3.jpg\";","export default __webpack_public_path__ + \"static/media/D72339_051.f61a6eaf.jpg\";","export default __webpack_public_path__ + \"static/media/DSC00572.a09da73a.JPG\";","// Modules\r\nimport HeaderCarousel from \"../components/HeaderCarousel\";\r\nimport Footer from \"../components/Footer\";\r\nimport Button from \"../components/Button\";\r\nimport Accordion from \"../components/Accordion\";\r\nimport { Link } from \"react-router-dom\";\r\n// Styles\r\nimport \"./Home.css\";\r\n// Pictures\r\nimport lsampLogo from \"../assets/logos/lsamp-logo.png\";\r\nimport louisStokes from \"../assets/decorative-pictures/Louis-Stokes.jpg\";\r\n// Background Images\r\nimport background1 from \"../assets/student-pictures/One STEM Community (3).jpg\";\r\nimport background2 from \"../assets/student-pictures/homeImage.JPG\";\r\nimport background3 from \"../assets/student-pictures/D72339_069.jpg\";\r\nimport background4 from \"../assets/student-pictures/D72339_028.jpg\";\r\nimport background5 from \"../assets/student-pictures/D72339_051.jpg\";\r\nimport background6 from \"../assets/student-pictures/DSC00572.JPG\";\r\n\r\n/**\r\n * The main landing page for the site that provides information on SNNA-LSAMP, its origin, a video, and an FAQ section.\r\n */\r\nexport default function Home() {\r\n /**\r\n * A JavaScript method for opening a link in a new tag.\r\n * Use this when using the tag is not preferable.\r\n * @param {string} url The link to the site that will be opened in a new tab.\r\n */\r\n const openInNewTab = (url) => {\r\n const newWindow = window.open(url, \"_blank\", \"noopener,noreferrer\");\r\n if (newWindow) newWindow.opener = null;\r\n };\r\n\r\n /**\r\n * When adding images to use for the header, make sure they are first imported at the top of this\r\n * file under the \"Background Images\" comment. Whatever you name the image(s) doesn't matter,\r\n * but to actually add them to the header carousel they need to be inserted into the array below.\r\n */\r\n const headerImages = [\r\n background1,\r\n background2,\r\n background3,\r\n background4,\r\n background5,\r\n background6,\r\n ];\r\n\r\n /**\r\n * Data that will be supplied to the FAQ section.\r\n * Each element in the array represents a single dropdown accordion that can be clicked on.\r\n * Every object element must follow this format:\r\n * {\r\n * title: The clickable header that reveals the text written under it.\r\n * message: The content that only becomes visible once the user clicks on the header.\r\n * }\r\n */\r\n const FAQContent = [\r\n {\r\n title: \"What is the goal and what are the objectives of the SNNA-LSAMP?\",\r\n message: (\r\n
\r\n The goal of the SNNA-LSAMP is to substantially increase the number of STEM \r\n baccalaureate degrees earned by students from historically underrepresented minority\r\n (URM) groups (specifically, African Americans, Hispanic Americans, American Indians,\r\n Alaska Natives, Native Hawaiians and Native Pacific Islanders) at SNNA-LSAMP institutions.\r\n SNNA-LSAMP’s objectives include increasing the:\r\n
    \r\n
  • Number of URMs declaring STEM majors at the Alliance universities;
  • \r\n
  • \r\n Persistence rates of URMs in STEM degree programs at Alliance institutions;
  • \r\n
  • \r\n Transfer rates of URMs in STEM disciplines from the Alliance’s community colleges \r\n to its universities;\r\n
  • \r\n
  • \r\n STEM baccalaureate degree completion rates of URMs at Alliance universities; and
  • \r\n
  • \r\n Graduate-school enrollment rates among the Alliance institutions’ URM STEM baccalaureate recipients.
  • \r\n
\r\n For purposes of the LSAMP program, the definition of STEM includes most science-,\r\n technology-, engineering-, and mathematics-associated disciplines but does not include \r\n health, clinical, or social sciences. \r\n
\r\n ),\r\n },\r\n {\r\n title: \"Who are the Alliance partners from the private-industry, government-agency, and non-profit sectors?\",\r\n message: (\r\n
\r\n The Alliance’s non-institutional partners are:\r\n
    \r\n
  • Bureau of Land Management Southern Nevada District
  • \r\n
  • \r\n Clark County Water Reclamation District
  • \r\n
  • \r\n The Nature Conservancy Nevada
  • \r\n
  • \r\n Nevada Gold Mines
  • \r\n
  • \r\n Nevada National Security Site
  • \r\n
  • \r\n Southwest Gas Corporation
  • \r\n
  • \r\n Arizona Public Service
  • \r\n
  • \r\n Colorado Plateau Center for Health Professions
  • \r\n
  • \r\n Loven Contracting
  • \r\n
  • \r\n Salt River Project Agricultural Improvement and Power District
  • \r\n
  • \r\n Translational Genomics Research Institute (North)
  • \r\n
  • \r\n U.S. Forest Service: Coconino National Forest
  • \r\n
  • \r\n U.S. Geological Survey Astrogeology Science Center
  • \r\n
\r\n
\r\n ),\r\n },\r\n {\r\n title: \"What are the Alliance’s activities and services?\",\r\n message: (\r\n
\r\n The Alliance’s activities and services are:\r\n
    \r\n
  • STEM Transfer Transition Success Program (TTSP)
  • \r\n
  • \r\n University-to-Community-College Near-Peer Mentoring
  • \r\n
  • \r\n STEM Post-Baccalaureate Transition Success Program (PBTSP)
  • \r\n
  • \r\n STEM Undergraduate Research (UGR)
  • \r\n
  • \r\n Cross-Institutional, Discord-Based Tutoring for Select STEM Gateway Courses
  • \r\n
  • \r\n Outreach to Draw Underrepresented Minority University Undergraduates into STEM Disciplines
  • \r\n
  • \r\n Annual Alliance Conference
  • \r\n
\r\n More information about each activity and service can be found under {\" \"}\r\n \r\n Activities and Services\r\n {\" \"}.\r\n
\r\n ),\r\n },\r\n {\r\n title: \"What are the eligibility requirements for each of SNNA-LSAMP’s activities and services?\",\r\n message: (\r\n

\r\n The eligibility requirements for each activity and service can be found under {\" \"}\r\n \r\n Activities and Services\r\n {\" \"}.\r\n

\r\n ),\r\n },\r\n {\r\n title: \"How do I apply to become an SNNA-LSAMP participant?\",\r\n message: (\r\n

\r\n Click on the{\" \"}\r\n \r\n Apply\r\n {\" \"}\r\n link at the top of this page for instructions about how to apply for\r\n admission to the SNNA-LSAMP program on your campus.\r\n

\r\n ),\r\n },\r\n {\r\n title: \"Is there a cost to students at Alliance institutions to participate in SNNA-LSAMP activities and services?\",\r\n message:\r\n \"No. All SNNA-LSAMP activities and services are free to eligible students. However, eligibility requirements vary between services, and resource constraints limit the number of students who can participate in each of the activities and services offered on a given Alliance campus.\",\r\n },\r\n {\r\n title:\r\n \"How much time do I have to commit to SNNA-LSAMP if I become a participant?\",\r\n message:\r\n \"The time commitment varies depending on the specific SNNA-LSAMP services you decide to utilize.\",\r\n },\r\n {\r\n title: \"How do I know if I qualify to be in SNNA-LSAMP?\",\r\n message: (\r\n
\r\n You qualify if you:\r\n
    \r\n
  • Are an undergraduate at UNLV, NAU, CSN, or CCC;
  • \r\n
  • \r\n Are a member of one or more historically underrepresented minority\r\n groups (specifically, African Americans, Hispanic Americans,\r\n American Indians, Alaska Natives, Native Hawaiians and Native\r\n Pacific Islanders); and\r\n
  • \r\n
  • \r\n Meet the specific eligibility requirements established by the\r\n SNNA-LSAMP office at your institution. Check your institution’s\r\n SNNA-LSAMP website for more information about these requirements.\r\n
  • \r\n
\r\n
\r\n ),\r\n },\r\n {\r\n title: \"How will I benefit from participating in the program?\",\r\n message:\r\n \"SNNA-LSAMP can help you boost your academic performance; network with STEM students, faculty members, and employers; transfer to UNLV or NAU (if you are currently at CSN or CCC); graduate with a baccalaureate degree in a STEM field; and prepare for entry into graduate-level studies in STEM.\",\r\n },\r\n {\r\n title: \"What types of services are available to SNNA-LSAMP participants?\",\r\n message: (\r\n
\r\n SNNA-LSAMP offers services that aim to help students be successful in\r\n STEM. Some of these services include: mentoring, one-on-one academic\r\n support, financial aid counseling, and{\" \"}\r\n \r\n more!\r\n \r\n
\r\n ),\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n \r\n\r\n {/*================================ \"What is LSAMP?\" Section ================================*/}\r\n
\r\n

What is SNNA-LSAMP?

\r\n
\r\n

\r\n The Southern Nevada Northern Arizona Louis Stokes Alliance for\r\n Minority Participation (hereafter referred to as SNNA-LSAMP or “the\r\n Alliance”) was founded in 2017 and funded through a National Science\r\n Foundation (NSF) grant (EES 2307200). The Alliance joins four higher\r\n education institutions--the University of Nevada, Las Vegas (UNLV),\r\n Northern Arizona University (NAU), the College of Southern Nevada\r\n (CSN), and Coconino Community College (CCC)-- and 13 private-\r\n industry/government-agency/non-profit partners in pursuit of the goal\r\n of substantially increasing the number of STEM baccalaureate degrees\r\n earned by students from historically underrepresented minority\r\n groups (specifically, African Americans, Hispanic Americans,\r\n American Indians, Alaska Natives, Native Hawaiians and Native\r\n Pacific Islanders). In order to do this, SNNA-LSAMP provides free\r\n services to students and supports them through a comprehensive\r\n approach to student development, community building, and career\r\n readiness.\r\n
\r\n

\r\n \r\n
\r\n\r\n {/*================================ \"History\" Section ================================*/}\r\n

History of LSAMP

\r\n
\r\n \r\n

\r\n The LSAMP Program is a nationwide NSF initiative in honor of Louis\r\n Stokes (1925-2015), who served in Congress for 30 years and was the\r\n first African American from the state of Ohio elected to the U.S.\r\n House of Representatives. Stokes was the son of a widow who cleaned\r\n homes for a living, and he grew up in public housing along with his\r\n brother. He served in a segregated army unit during World War II and\r\n went on to attend college and law school. He later became a\r\n prominent attorney prior to running for office. Stokes also became\r\n the first African American to earn a seat on the powerful House\r\n Appropriations Committee, where he addressed many of the inequities\r\n faced by disadvantaged populations. He supported and was a sponsor\r\n of many bills and resolutions intended to help those populations,\r\n including H.R. 5240—101st Congress: Summer Science Academy of 1990\r\n and H.R. 775—102nd Congress: Summer Science Academy of 1991.\r\n

\r\n
\r\n
\r\n
\r\n {/*================================ Embedded Video ================================*/}\r\n\r\n {/*================================ FAQ Section ================================*/}\r\n
\r\n

FAQ

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n {/*================================ Button that links to the official LSAMP site ================================*/}\r\n
\r\n \r\n openInNewTab(\r\n \"https://beta.nsf.gov/funding/opportunities/louis-stokes-alliances-minority-participation\"\r\n )\r\n }\r\n />\r\n
\r\n\r\n
\r\n
\r\n );\r\n}\r\n","import React, { useEffect, useState } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport styles from \"./Header.module.css\";\r\n\r\n/**\r\n * Displays a picture container with some text for the header and a blue bar of additional text for the subheader.\r\n * @param {Object} headerStyle Style object used to inject additional styles to the header component.\r\n * @param {Object} subheaderStyle Style object used to inject additional styles to the subheader component.\r\n * @param {string} backgroundImage URL to the image that will be used as the background for the header.\r\n * @param {string} title Actual text for the header content.\r\n * @param {string, element} subheader Actual text for the subheader content.\r\n */\r\nexport default function Header({\r\n headerStyle,\r\n subheaderStyle,\r\n backgroundImage,\r\n title,\r\n subheader,\r\n}) {\r\n const [pageHasMounted, setPageHasMounted] = useState(false); // Used for fading in and moving down animations.\r\n\r\n /**\r\n * When the component mounts, set the associated state to true so some animations can trigger.\r\n */\r\n useEffect(() => {\r\n setPageHasMounted(true);\r\n }, []);\r\n\r\n return (\r\n <>\r\n {/*----- Header -----*/}\r\n \r\n \r\n {title}\r\n \r\n \r\n\r\n {/*----- Subheader -----*/}\r\n
\r\n \r\n {subheader}\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nHeader.propTypes = {\r\n /**Style object used to inject additional styles to the header component.*/\r\n headerStyle: PropTypes.object,\r\n /**Style object used to inject additional styles to the subheader component.*/\r\n subheaderStyle: PropTypes.object,\r\n /**URL to the image that will be used as the background for the header.*/\r\n backgroundImage: PropTypes.string.isRequired,\r\n /**Actual text for the header content.*/\r\n title: PropTypes.string.isRequired,\r\n /**Actual text for the subheader content.*/\r\n subheader: PropTypes.oneOfType([PropTypes.string, PropTypes.element])\r\n .isRequired,\r\n};\r\n","export default __webpack_public_path__ + \"static/media/Leadershippic.cb59d65c.jpg\";","// Modules\r\nimport Header from \"../components/Header\";\r\nimport Footer from \"../components/Footer\";\r\n// Stylesheet\r\nimport styles from \"./Leadership.module.css\";\r\n// Images\r\nimport background from \"../assets/student-pictures/Leadershippic.jpg\";\r\n\r\n/**\r\n * Quick page that provides bulleted lists about some of the faculty in charge of running SNNA-LSAMP.\r\n */\r\nexport default function Leadership() {\r\n return (\r\n
\r\n \r\n
\r\n

Governing Board

\r\n\r\n
    \r\n
  • \r\n Chris L. Heavey, Ph.D., Executive Vice President and Provost, UNLV\r\n (Chair)\r\n
  • \r\n
  • \r\n Karen Pugliesi, Ph.D., Interim Provost and Vice President for\r\n Academic Affairs, NAU\r\n
  • \r\n
  • \r\n Douglas B. Sims, Ph.D., Dean, School of Science & Mathematics, CSN\r\n
  • \r\n
  • \r\n Tony Williams, Vice President of Student Services, CCC
  • \r\n
\r\n
\r\n\r\n
\r\n

P.I.s and co-P.I.s

\r\n
    \r\n
  • \r\n Chris L. Heavey, Ph.D., Executive Vice President and Provost, UNLV\r\n (Prime Award PI)\r\n
  • \r\n
  • \r\n Melissa Morris, Ph.D., Associate Professor in Residence, Howard R.\r\n Hughes College of Engineering, UNLV (Prime Award co-PI)\r\n
  • \r\n
  • \r\n Morgan Vigil-Hayes, Ph.D., Assistant Professor, Informatics, Computing, \r\n and Cyber Systems, NAU (Subaward PI)\r\n
  • \r\n
  • \r\n Peter Lanagan, Ph.D., Professor, Department of Physical Sciences,\r\n CSN (Subaward PI)\r\n
  • \r\n
  • \r\n David Asencio, MS, Dean of Student Development, CCC (Subaward\r\n PI)\r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/LSAMPActivity1.fa893df4.png\";","// Modules\r\nimport React, { useRef, useState } from \"react\";\r\nimport Header from \"../components/Header\";\r\nimport Footer from \"../components/Footer\";\r\nimport Slider from \"react-slick\";\r\nimport { Link } from \"react-router-dom\";\r\n// CSS\r\nimport \"./ProgramBenefits.css\";\r\n// Images\r\nimport background from \"../assets/student-pictures/LSAMPActivity1.png\";\r\nimport csnLogo from \"../assets/logos/CSN.png\";\r\nimport cccLogo from \"../assets/logos/CCCprimary-horizontal-white.png\";\r\nimport nauLogo from \"../assets/logos/NAU.png\";\r\nimport unlvLogo from \"../assets/logos/UNLV.png\";\r\n// Icons\r\nimport { ImCheckmark } from \"react-icons/im\";\r\nimport { BsChevronRight } from \"react-icons/bs\";\r\nimport { BsChevronLeft } from \"react-icons/bs\";\r\nimport { BsDot } from \"react-icons/bs\";\r\n// Hooks\r\nimport useIsMobile from \"../hooks/useIsMobile\";\r\n\r\n/**\r\n * This page displays some of the services provided by SNNA-LSAMP in the form of a graph. This graph lists various services along\r\n * with checkmarks under the schools that actually provide them. Additionally, it contains a carousel with many testimonials\r\n * from current and previous LSAMP members.\r\n */\r\nexport default function ProgramBenefits() {\r\n const isMobile = useIsMobile(); // Determine's whether the user is using a mobile device.\r\n const checkmarkColor = \"#10b510\"; // The color for every checkmark.\r\n const checkmarkSize = isMobile ? 20 : 28; // The size of every checkmark.\r\n\r\n /**\r\n * An array containing every student testimonial as an object. These will become viewable in the carousel at the bottom of the page.\r\n * For every element in this array, follow this format:\r\n * {\r\n * quote: The student's quote.\r\n * name: The student's name.\r\n * school: The student's school abbreviation (e.g. UNLV, CSN, etc.).\r\n * }\r\n */\r\n const testimonials = [\r\n {\r\n quote:\r\n \"I feel as though LSAMP has improved my time at NAU so much, opened my eyes to how many opportunities are here, and connected me to some great people on campus.\",\r\n name: \"Pedro Camancho\",\r\n school: \"NAU\",\r\n },\r\n {\r\n quote:\r\n \"Joining and participating in SNNA-LSAMP has been enlightening. At first, I was unsure of how beneficial participation would be, but it has borne fruit in ways I could not foresee. I am grateful to be a part of it.\",\r\n name: \"Conzello Barnhill\",\r\n school: \"CSN\",\r\n },\r\n {\r\n quote:\r\n \"Being an LSAMP participant comes with a lot of perks and one of the best ones, in my opinion, is that you’re getting the opportunity to be paired up with a peer mentor... They’ve inspired me to push myself to do things that I didn’t think I could do before.\",\r\n name: \"Yoali Terrones\",\r\n school: \"UNLV\",\r\n },\r\n {\r\n quote:\r\n \"LSAMP has continued to support me by providing me guidance and meeting with me about my educational goals and plans after college.\",\r\n name: \"Mia Cordero\",\r\n school: \"CCC\",\r\n },\r\n ];\r\n\r\n return (\r\n
\r\n \r\n

What FREE Activities and Services are Offered?

\r\n
\r\n

\r\n The Alliance provides a collection of activities and services offered across \r\n one or more SNNA-LSAMP partner campuses. Please note some SNNA-LSAMP activities \r\n such as the Transfer Transition Success Program, the Postbaccalaureate Transition \r\n Success Program, and Undergraduate Research Program require interested students to \r\n submit an application. Information about each activity and service is shown below. \r\n
\r\n

\r\n
\r\n

STEM Transfer Transition Success Program

\r\n

\r\n The STEM Transfer Transition Success Program (TTSP) occurs at \r\n College of Southern Nevada (CSN) and Coconino Community College \r\n (CCC) with the goal of increasing the number of underrepresented \r\n minority (URM) STEM students who transfer to the University of \r\n Nevada Las Vegas (UNLV) or Northern Arizona University (NAU). \r\n The two-year TTSP provides students with a highly structured set \r\n of interventions that promote transfer readiness. Performance-based \r\n stipends are available to students who complete the program, which \r\n is available to underrepresented minority (URM)* freshmen at CSN and \r\n CCC and requires interested students to submit an application to the \r\n SNNA-LSAMP office on their campus. (Note: TTSP participants must be U.S. \r\n citizens, U.S. nationals, or permanent residents of the United States.) \r\n Information about how to submit an application can be found by visiting{\" \"}\r\n \r\n Apply\r\n .\r\n and then selecting the button corresponding to the Alliance institution where \r\n the applicant is enrolled.\r\n

\r\n

Near-Peer Mentoring

\r\n

\r\n Near-peer mentoring is provided to students enrolled in the TTSP. Community \r\n college students at CSN and CCC are mentored by UNLV and NAU upper-level high-achieving \r\n STEM students. \r\n

\r\n

STEM Postbaccalaureate Transition Success Program

\r\n

\r\n The STEM Post-baccalaureate Transition Success Program (PBTSP) program consists of a \r\n series of graduate school preparation events, assisting students with completing and \r\n submitting at least two graduate-school applications and submitting at least one \r\n application for graduate school funding. Performance-based stipends are available to \r\n students who complete the program. Available to URM* STEM majors who are seniors at UNLV \r\n and NAU and have a cumulative GPA of 3.0 or higher, this one-year program requires \r\n interested students to submit an application to the SNNA-LSAMP office on their campus. \r\n (Note: PBTSP participants must be U.S. citizens, U.S. nationals, or permanent residents of \r\n the United States.) Information about how to submit an application can be found by visiting{\" \"}\r\n \r\n Apply\r\n {\" \"}\r\n and then selecting the button corresponding to the Alliance \r\n institution where the applicant is enrolled.\r\n

\r\n

STEM Undergraduate Research

\r\n

\r\n SNNA-LSAMP-sponsored STEM undergraduate research (UGR) focuses on STEM topics and is \r\n supervised by STEM faculty members. UGR occurs at NAU, UNLV, and CSN. All UGR participants\r\n produce a technical poster and present at an SNNA-LSAMP Annual Conference. Performance-\r\n based stipends are available to students who complete the program. Available to URM* STEM\r\n majors who are sophomores or juniors at UNLV, NAU, and CSN and have a cumulative GPA of 3.0 \r\n or higher, this one-semester program requires interested students to submit an application to \r\n the SNNA-LSAMP office on their campus. (Note: UGR participants must be U.S. citizens, U.S. \r\n nationals, or permanent residents of the United States.) Information about how to submit an \r\n application can be found by visiting{\" \"}\r\n \r\n Apply\r\n {\" \"}\r\n and then selecting the button corresponding to the Alliance institution where the applicant is \r\n enrolled.\r\n

\r\n

Discord-based Tutoring STEM Gateway Courses

\r\n

\r\n Discord-based tutoring is offered at NAU, CCC, UNLV, and CSN for students enrolled in targeted \r\n STEM gateway courses with historically high rates of students earning grades of D, F, I, or W at \r\n multiple Alliance institutions. The tutoring will be delivered virtually via the Discord Platform. \r\n All students enrolled in the targeted courses are eligible to utilize this service. Information \r\n about which courses are being targeted in a given semester at an Alliance institution can be \r\n obtained by contacting that institution’s SNNA-LSAMP office:{\" \"}\r\n \r\n Connect\r\n .\r\n

\r\n

Outreach to Draw Underrepresented Minority Students to STEM Disciplines

\r\n

\r\n The Alliance conducts frequent outreach to undeclared and non-STEM freshmen and sophomores at UNLV \r\n and NAU to share information about STEM disciplines and career fields. This outreach includes \r\n classroom presentations, electronic or hard copy communication, and field trips to STEM \r\n laboratories and worksites. UNLV and NAU underclassmen who would like more information about STEM,\r\n as well as others who are interested in having the Alliance reach out to specific groups of URM* \r\n underclassmen at UNLV or NAU, should contact the SNNA-LSAMP office on their campus:{\" \"}\r\n \r\n Connect\r\n .\r\n

\r\n

Annual SNNA-LSAMP Conference

\r\n

\r\n The annual SNNA-LSAMP Conference will alternate between Las Vegas, Nevada, and Flagstaff, Arizona, \r\n starting in Las Vegas in Spring 2024. The 1.5 day conference will include professional development\r\n sessions, networking opportunities, and undergraduate research presentations. First preference \r\n for attendance will be given to students enrolled in the TTSP, PBTSP, and UGR. More information \r\n about the conference can be obtained from the SNNA-LSAMP office at UNLV:{\" \"}\r\n \r\n Connect\r\n .\r\n *Note: For LSAMP program purposes, underrepresented minority (URM) students are individuals who are \r\n members of groups historically underrepresented in STEM at the undergraduate and graduate-education \r\n levels. In accordance with the the solicitation (NSF 20-590) under which the SNNA-LSAMP grant (EES \r\n 2307200) is funded, students historically underrepresented in STEM include members of one or more of \r\n the following groups: African Americans, Hispanic Americans, American Indians, Alaska Natives, Native \r\n Hawaiians and Native Pacific Islanders. The purpose of LSAMP nationally and SNNA-LSAMP regionally is to \r\n broaden the participation of these students in STEM disciplines and careers.\r\n

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

SNNA-LSAMP Service/Activity

\r\n
\r\n {/* CSN Header Logo */}\r\n \r\n \r\n {/* CCC Header Logo */}\r\n \r\n \r\n {/* NAU Header Logo */}\r\n \r\n \r\n {/* UNLV Header Logo */}\r\n \r\n
STEM Transfer Transition Success Program (TTSP)\r\n \r\n \r\n \r\n \r\n \r\n
University-to-Community-College Near-Peer Mentoring\r\n \r\n \r\n \r\n \r\n \r\n
STEM Post-Baccalaureate Transition Success Program (PBTSP)\r\n \r\n \r\n \r\n \r\n \r\n
STEM Undergraduate Research\r\n \r\n \r\n \r\n \r\n \r\n \r\n
Cross-Institutional, Discord-Based Tutoring for Select STEM Gateway Courses\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Outreach to Draw Underrepresented Minority University Undergraduates into STEM Disciplines\r\n \r\n \r\n \r\n \r\n \r\n
Annual Conference\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n

Hear From Past and Current SNNA-LSAMP Participants!

\r\n \r\n\r\n
\r\n
\r\n );\r\n}\r\n\r\n/**\r\n * Component that creates a revolving slideshow (carousel) out of quotes from LSAMP members.\r\n * @param {array} data An array of objects that are formatted as such:\r\n * {\r\n * quote: The student's quote.\r\n * name: The student's name.\r\n * school: The student's school abbreviation (e.g. UNLV, CSN, etc.).\r\n * }\r\n */\r\nfunction Carousel({ data }) {\r\n const carousel = useRef(); // Used to target the Slider component's methods.\r\n const isMobile = useIsMobile();\r\n const [index, setIndex] = useState(0); // Keeps track of the current slide.\r\n const [dotsDisabled, setDotsDisabled] = useState(false); // Dictates whether the dots should be unclickable; prevents the index from changing before an animation has completed.\r\n const primaryColor = \"#255ba8\"; // Color used for the arrows and bottom dots.\r\n const arrowSize = 90; // Size of the arrows (in pixels).\r\n\r\n return (\r\n
\r\n {/*------------------- Previous Arrow -------------------*/}\r\n carousel.current.slickPrev()} // Slides to the previous quote when clicked.\r\n />\r\n {/*------------------- Slider (Carousel) -------------------*/}\r\n
\r\n {\r\n return (\r\n /**\r\n * Create a dot for every quote provided.\r\n * These dots indicate to the user which slide they are currently viewing.\r\n * @param i The slide index associated with each individual dot.\r\n */\r\n
\r\n {dots.map((item, i) => (\r\n {\r\n if (!dotsDisabled) {\r\n setIndex(i);\r\n carousel.current.slickGoTo(i);\r\n }\r\n }}\r\n />\r\n ))}\r\n
\r\n );\r\n }}\r\n beforeChange={(oldIndex, newIndex) => {\r\n // Every time an arrow is clicked, change the index state to the newIndex.\r\n setIndex(newIndex);\r\n setDotsDisabled(true);\r\n }}\r\n afterChange={() => setDotsDisabled(false)}\r\n arrows={false} // Don't use the component's pre-supplied arrows.\r\n autoplay // Automatically scroll through all the slides.\r\n autoplaySpeed={6000} // Time (in milliseconds) before the slider automatically slides to the next quote.\r\n speed={isMobile ? 300 : 800} // How slowly the slider moves to the next quote (slower on mobile).\r\n /* cssEase={\"ease-out\"} */\r\n >\r\n {data.map((d) => {\r\n return (\r\n
\r\n
\r\n

\r\n \"{d.quote}\"\r\n

\r\n

\r\n {d.name}\r\n
\r\n SNNA-LSAMP participant at {d.school}\r\n

\r\n
\r\n
\r\n );\r\n })}\r\n \r\n
\r\n {/*------------------- Next Arrow -------------------*/}\r\n carousel.current.slickNext()} // Slides to the next quote when clicked.\r\n />\r\n
\r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/D72339_061.576d4b83.jpg\";","// Modules\r\nimport { useEffect, useState } from \"react\";\r\nimport Header from \"../components/Header\";\r\nimport Footer from \"../components/Footer\";\r\nimport Accordion from \"../components/Accordion\";\r\n// Stylesheets\r\nimport \"./ResearchSpotlight.css\";\r\n// Images\r\nimport background from \"../assets/student-pictures/D72339_061.jpg\";\r\n\r\n/**\r\n * Displays all the research projects created by SNNA-LSAMP participants according to their subject matter.\r\n *\r\n * NOTE: All the components necessary to create a Research Poster Tile are located in TSV files in \"../assets/research-posters\"\r\n * according to their subject.\r\n * @see https://docs.google.com/spreadsheets/d/1yY_BNFmcWQQHUelCRTpImy3BOTZB376P3e0MqZOuYtQ/edit?usp=sharing To view the spreadsheet where these\r\n * TSV files originally came from.\r\n * @see https://drive.google.com/drive/folders/1spG5WroAHRlgq3-VoGBI-QTFUBh-MSts?usp=sharing To view all the image and PDF files (if you need edit access,\r\n * please request it).\r\n * @see https://docs.google.com/document/d/1-fjjoRR7YZB5UpIJz0Lkw6t_rIchcF51CNr2xZSELE8/edit?usp=sharing To view the documentation to get a more detailed\r\n * explanation of how this page works, as it is the most complicated and prone to breaking one in the whole website.\r\n */\r\nexport default function ResearchSpotlight() {\r\n const [posterData, setPosterData] = useState({}); // Contains all the data to create each individual ResearchTile component.\r\n const [accordionContent, setAccordionContent] = useState([]); // Contains the data necessary to create the entire Accordion component.\r\n\r\n /**\r\n * When the component mounts, take in all the data from the TSV files and format them so they can be read properly\r\n * by the ResearchTile component.\r\n */\r\n useEffect(() => {\r\n /**\r\n * Imports all the files in a given folder without having to manually import them each at\r\n * the top of the page.\r\n * @param {NodeRequire} r A require.context() function that indicates the path of all the dynamically imported files.\r\n * @returns An object containing the name of each file as the key and the actual import path as the value.\r\n */\r\n function dynamicallyImport(r) {\r\n let imports = {};\r\n r.keys().map(\r\n (item) =>\r\n (imports[\r\n item\r\n .replace(/^\\.\\//, \"\") // Removes the \"./\" from the beginning of the name of the file.\r\n .replace(/\\.tsv$/, \"\") // Removes the \".tsv\" from the end of the name of the file.\r\n ] = r(item).default)\r\n );\r\n return imports;\r\n }\r\n\r\n /**\r\n * Takes a given TSV file containing the research posters' titles, image links, and pdf links, and formats\r\n * it such that the ResearchTile component can read it.\r\n * @param {string} file The path to a TSV file that contains three columns.\r\n * @returns An array of objects for each row, with the keys of each object being title, thumbnail, and pdfLink.\r\n * These keys can be used by the ResearchTile component's props.\r\n */\r\n async function extractData(file) {\r\n const response = await fetch(file); // Must fetch files rather than import.\r\n const text = (await response.text()).split(\"\\n\"); // Makes the text readable and removes all newline characters.\r\n\r\n // For each row, create an object containing the title, thumbnail, and pdfLink data.\r\n return text.map((element) => {\r\n const poster = element.replace(\"\\r\", \"\").split(\"\\t\"); // Remove all return characters, then create a new element for each column (separated by a tab).\r\n return {\r\n title: poster[0],\r\n thumbnail: poster[1],\r\n pdfLink: poster[2],\r\n };\r\n });\r\n }\r\n\r\n // Import all the TSV files so the data can be extracted from them.\r\n const subjects = dynamicallyImport(\r\n require.context(`../assets/research-posters/`, false)\r\n );\r\n\r\n /**\r\n * The following code will create an object that is structured as such:\r\n *\r\n * {\r\n * subjectName: [\r\n * [\r\n * title: {string},\r\n * thumbnail: {string},\r\n * pdfLink: {string},\r\n * ]\r\n * ...\r\n * ]\r\n * ...\r\n * }\r\n *\r\n * This will be used to create all the Accordion sections and the ResearchTiles that are within them.\r\n */\r\n let compiledData = {};\r\n for (let name in subjects) {\r\n compiledData[name] = extractData(subjects[name]);\r\n }\r\n\r\n // Put the \"Other\" subject section at the end of the list, that way it is always the last header in the accordion.\r\n let other = { Other: compiledData.Other };\r\n delete compiledData.Other;\r\n compiledData = { ...compiledData, ...other };\r\n\r\n setPosterData(compiledData);\r\n }, []);\r\n\r\n /**\r\n * Whenever the posterData state changes, create an array of objects that can be read by the Accordion component.\r\n */\r\n useEffect(() => {\r\n async function formatAccordionContent() {\r\n // Only proceed with this function once the posterData state has been initialized, otherwise the for loop won't run.\r\n if (!!Object.keys(posterData).length) {\r\n let content = []; // Stores the posterData in a format that corresponds to the content prop on the Accordion component.\r\n for (let subject in posterData) {\r\n const subjectArr = await posterData[subject]; // Must await this to get actual array data.\r\n content.push({\r\n title: subject,\r\n message: (\r\n
\r\n {\r\n // Must await this as well; returns a promise due to the fetch command that was used earlier.\r\n await subjectArr.map((data, index) => (\r\n \r\n ))\r\n }\r\n
\r\n ),\r\n });\r\n }\r\n setAccordionContent(content);\r\n }\r\n }\r\n\r\n formatAccordionContent();\r\n }, [posterData]);\r\n\r\n /**\r\n * For each section, create an array with the file locations, thumbnails, etc as objects.\r\n * This info will be mapped into a series of tiles for that specific section in the Accordion.\r\n */\r\n return (\r\n
\r\n \r\n
\r\n {/* Only display the Accordion if its content has been initialized; takes a second due to the asynchronous method of reading the TSV files. */}\r\n {accordionContent.length > 0 ? (\r\n \r\n ) : (\r\n <>\r\n )}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\n/**\r\n * Component used to display every research poster in the Accordion.\r\n * Each Tile contains a background image of the actual research poster and a title that corresponds to the\r\n * title of that poster.\r\n * It will act like a button that takes the user to a new tab containing the research poster's PDF when clicked.\r\n *\r\n * The following params should be extracted from the provided TSV files located in \"../assets/research-posters\".\r\n * @param {string} title The title of the research poster.\r\n * @param {string} thumbnail Link to the image of the poster that will be displayed in the background of the tile.\r\n * @param {string} pdfLink Link to the actual PDF file of the poster that will open up in a new tab when the tile is clicked.\r\n */\r\nfunction ResearchTile({ title, thumbnail, pdfLink }) {\r\n return (\r\n \r\n

{title}

\r\n
\r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/Newsletterpic2.c7611410.png\";","// Modules\r\nimport { useState } from \"react\";\r\nimport Header from \"../components/Header\";\r\nimport Footer from \"../components/Footer\";\r\nimport Button from \"../components/Button\";\r\n// Stylesheet\r\nimport \"./Newsletter.css\";\r\n// Images\r\nimport background from \"../assets/student-pictures/Newsletterpic2.png\";\r\n\r\n/**\r\n * Displays a PDF the most recent newsletter published by SNNA-LSAMP.\r\n *\r\n * IMPORTANT NOTE: When posting PDFs on this page, make sure to use a Google Drive embed link, otherwise it will not work\r\n * properly. All current and future PDFs should be located within the folder listed below.\r\n *\r\n * @see https://drive.google.com/drive/folders/1PrG0ABAhLInMgXrJLCkFjVyJw8dAXUnr?usp=sharing The folder containing all\r\n * the newsletters.\r\n * @see https://youtu.be/BcVFQWdXlsM?t=72 To learn how to get the embed link for a Google Drive PDF document. Don't copy the\r\n * entire