{"version":3,"file":"336-b3ddaf93a074d482e30c.js","mappings":"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","sources":["webpack://royal-geographical-society/./src/core/enums.ts","webpack://royal-geographical-society/./src/helpers/api.ts","webpack://royal-geographical-society/./src/helpers/layers.ts","webpack://royal-geographical-society/./src/helpers/srOnly.ts","webpack://royal-geographical-society/./src/hoc/withMotion.tsx","webpack://royal-geographical-society/./src/hoc/withQueryParams.tsx","webpack://royal-geographical-society/./src/hoc/withRouter.tsx","webpack://royal-geographical-society/./src/hooks/useApi.ts","webpack://royal-geographical-society/./src/stories/Components/Cards/ArticleCard/ArticleCard.tsx","webpack://royal-geographical-society/./src/stories/Components/Cards/ResourceCard/ResourceCard.styles.ts","webpack://royal-geographical-society/./src/stories/Components/Cards/ResourceCard/ResourceCard.tsx","webpack://royal-geographical-society/./src/stories/Components/Global/Pagination/Pagination.styles.ts","webpack://royal-geographical-society/./src/stories/Components/Global/Pagination/Pagination.tsx","webpack://royal-geographical-society/./src/stories/Widgets/ArticleListing/ArticleListing.styles.ts","webpack://royal-geographical-society/./src/stories/Components/Filters/Filter/Filter.styles.ts","webpack://royal-geographical-society/./src/stories/Components/Filters/Filter/Filter.tsx","webpack://royal-geographical-society/./src/stories/Components/Filters/FilteredListing/FilteredListing.styles.ts","webpack://royal-geographical-society/./src/stories/Components/Filters/FilteredListing/FilteredListing.tsx","webpack://royal-geographical-society/./src/stories/Widgets/ArticleListing/ArticleListing.tsx","webpack://royal-geographical-society/./node_modules/lodash/noop.js"],"sourcesContent":["export var PageType;\r\n(function (PageType) {\r\n PageType[\"Content\"] = \"content\";\r\n PageType[\"Events\"] = \"events\";\r\n PageType[\"News\"] = \"news\";\r\n PageType[\"Resources\"] = \"resources\";\r\n PageType[\"CGeogMembers\"] = \"cGeogMember\";\r\n})(PageType || (PageType = {}));\r\n","// ADD API URLS BELOW\r\nexport const API_URLS = {\r\n ARTICLE_LIST: '/umbraco/api/listing/articles',\r\n SEARCH_RESULTS_LIST: '/umbraco/api/searchapi/search',\r\n};\r\n","/**\r\n * The various major z-index layers, adjust with caution and leave space between to add to later.\r\n */\r\nexport const Layers = {\r\n Modal: 1000,\r\n};\r\n","import { css } from 'styled-components';\r\n/**\r\n * Show only for screen readers.\r\n * @description Sourced from https://gist.github.com/ffoodd/000b59f431e3e64e4ce1a24d5bb36034\r\n */\r\nconst srOnly = css `\r\n border: 0 !important;\r\n clip: rect(1px, 1px, 1px, 1px) !important;\r\n -webkit-clip-path: inset(50%) !important;\r\n clip-path: inset(50%) !important;\r\n height: 1px !important;\r\n margin: -1px !important;\r\n overflow: hidden !important;\r\n padding: 0 !important;\r\n position: absolute !important;\r\n width: 1px !important;\r\n white-space: nowrap !important;\r\n`;\r\nexport default srOnly;\r\n","import { domAnimation, LazyMotion } from 'framer-motion';\r\nimport React from 'react';\r\nexport function withMotion(WrappedComponent) {\r\n const displayName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\r\n const ComponentWithMotion = (props) => {\r\n return (React.createElement(LazyMotion, { features: domAnimation, strict: true },\r\n React.createElement(WrappedComponent, { ...props })));\r\n };\r\n ComponentWithMotion.displayName = `withMotion(${displayName})`;\r\n return ComponentWithMotion;\r\n}\r\n","import React from 'react';\r\nimport { Route } from 'react-router';\r\nimport { QueryParamProvider } from 'use-query-params';\r\nimport { withRouter } from './withRouter';\r\nexport function withQueryParams(WrappedComponent) {\r\n const displayName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\r\n const ComponentWithQueryParams = (props) => {\r\n return (React.createElement(QueryParamProvider, { ReactRouterRoute: Route },\r\n React.createElement(WrappedComponent, { ...props })));\r\n };\r\n ComponentWithQueryParams.displayName = `withQueryParams(${displayName})`;\r\n return withRouter(ComponentWithQueryParams);\r\n}\r\n","import React from 'react';\r\nimport { BrowserRouter, StaticRouter } from 'react-router-dom';\r\nexport function withRouter(WrappedComponent) {\r\n const displayName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\r\n const ComponentWithRouter = (props) => {\r\n if (typeof window === 'undefined') {\r\n if (!props.location) {\r\n throw new Error(`The \"location\" prop was not provided when the \"withRouter\" HOC was used. Ensure the Tag Helper is using the \"use-router\" parameter.`);\r\n }\r\n return (React.createElement(StaticRouter, { basename: props.basename, context: props.context, location: props.location },\r\n React.createElement(WrappedComponent, { ...props })));\r\n }\r\n return (React.createElement(BrowserRouter, { basename: props.basename },\r\n React.createElement(WrappedComponent, { ...props })));\r\n };\r\n ComponentWithRouter.displayName = `withRouter(${displayName})`;\r\n return ComponentWithRouter;\r\n}\r\n","import React from 'react';\r\nimport { useFirstMountState } from 'react-use';\r\nexport function useApi(url, enable = true, jsonPostData = '') {\r\n const [data, setData] = React.useState();\r\n const [error, setError] = React.useState();\r\n const [loading, setLoading] = React.useState(false);\r\n const [complete, setComplete] = React.useState(false);\r\n const isFirstMount = useFirstMountState();\r\n React.useEffect(() => {\r\n if (isFirstMount || !enable) {\r\n return;\r\n }\r\n doAsync();\r\n async function doAsync() {\r\n try {\r\n setLoading(true);\r\n const res = await fetch(url, {\r\n method: jsonPostData !== '' ? 'POST' : 'GET',\r\n body: jsonPostData !== '' ? jsonPostData : null,\r\n headers: {\r\n 'content-type': 'application/json',\r\n },\r\n });\r\n if (!res.ok) {\r\n setData(undefined);\r\n setError(new Error(res.statusText));\r\n setLoading(false);\r\n return;\r\n }\r\n const data = (await res.json());\r\n setData(data);\r\n setError(undefined);\r\n setLoading(false);\r\n setComplete(true);\r\n }\r\n catch (error) {\r\n setData(undefined);\r\n setError(error);\r\n setLoading(false);\r\n }\r\n }\r\n }, [enable, url, jsonPostData]);\r\n return { data, error, loading, complete };\r\n}\r\n","import { imageUrl } from '@helpers/image';\r\nimport { getSvgFromSystem, SystemIcon } from '@helpers/systemIcons';\r\nimport React from 'react';\r\nimport { ArticleCardStyles as S } from './ArticleCard.styles';\r\nconst ArticleCard = ({ categoryTag, content, cta, date, featured = false, hideImage = false, image, theme, title, translations, }) => {\r\n return (React.createElement(S.Container, { as: \"a\", href: cta?.url, target: cta?.target ?? '_self', id: cta?.id, title: cta.text ?? translations['translations.global.btn.moreInfo'], \"data-featured\": featured ? '' : null, \"data-component-theme\": theme },\r\n !hideImage && (React.createElement(S.ImageWrapper, null,\r\n categoryTag && React.createElement(S.CategoryTag, null, categoryTag),\r\n React.createElement(S.Image, { alt: image.altText, loading: \"lazy\", role: image.altText ? undefined : 'presentation', src: featured\r\n ? imageUrl(image, { width: 564, height: 330 })\r\n : imageUrl(image, { width: 368, height: 280 }), width: featured ? '564' : '368', height: featured ? '330' : '280' }))),\r\n React.createElement(S.NewsCardContent, null,\r\n React.createElement(S.Title, null, title),\r\n React.createElement(S.Content, null, content),\r\n date && (React.createElement(S.ArticleInfo, null, date && (React.createElement(S.ArticleInfoItem, null,\r\n React.createElement(S.ArticleInfoItemIcon, null, getSvgFromSystem(SystemIcon.Calendar)),\r\n date)))),\r\n React.createElement(S.ArrowIcon, null, getSvgFromSystem(SystemIcon.HoverArrowRight)))));\r\n};\r\nexport default ArticleCard;\r\n","import brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport { paragraphSmall } from '@helpers/typography';\r\nimport styled from 'styled-components';\r\nimport { ArticleCardStyles } from '../ArticleCard/ArticleCard.styles';\r\nimport { CtaCardStyles } from '../CtaCard/CtaCard.styles';\r\nimport { InformationCardStyles } from '../InformationCard/InformationCard.styles';\r\nconst Container = styled(ArticleCardStyles.Container) `\r\n display: flex;\r\n flex-direction: column;\r\n height: 100%;\r\n`;\r\nconst ImageWrapper = styled(ArticleCardStyles.ImageWrapper) ``;\r\nconst CategoryTag = styled(ArticleCardStyles.CategoryTag) ``;\r\nconst Image = styled(ArticleCardStyles.Image) ``;\r\nconst CardContent = styled(InformationCardStyles.Content) `\r\n position: relative;\r\n padding-bottom: 79px;\r\n\r\n ${Container}[data-memberOnlyContent=true] & {\r\n padding-bottom: 20px;\r\n }\r\n\r\n ${Container}[data-featured] & {\r\n background-color: var(--themeColor);\r\n padding: 20px 30px 79px;\r\n }\r\n\r\n ${Container}[data-featured][data-memberOnlyContent=true] & {\r\n background-color: var(--themeColor);\r\n padding: 20px 30px 0;\r\n }\r\n`;\r\nconst Title = styled(ArticleCardStyles.Title) ``;\r\nconst Content = styled.p `\r\n ${paragraphSmall};\r\n margin-bottom: 10px;\r\n\r\n ${Container}[data-featured] & {\r\n color: ${brand.white};\r\n }\r\n`;\r\nconst ArticleInfo = styled.div ``;\r\nconst ArticleInfoItem = styled(ArticleCardStyles.ArticleInfoItem) ``;\r\nconst ArticleInfoItemIcon = styled.div `\r\n display: flex;\r\n align-items: center;\r\n width: 16px;\r\n margin-right: 7px;\r\n`;\r\nconst ArrowIcon = styled(CtaCardStyles.ArrowIcon) `\r\n top: auto;\r\n bottom: 10px;\r\n right: 15px;\r\n\r\n @media ${from(Device.MobileLarge)} {\r\n top: auto;\r\n bottom: 10px;\r\n right: 20px;\r\n\r\n ${Container}[data-featured] & {\r\n bottom: 20px;\r\n right: 30px;\r\n }\r\n }\r\n\r\n ${Container}[data-featured] & {\r\n background-color: ${brand.white};\r\n\r\n svg {\r\n path:first-child {\r\n stroke: var(--themeColor);\r\n }\r\n }\r\n }\r\n`;\r\nconst MemberOnlyContent = styled.div `\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n width: 100%;\r\n margin-top: auto;\r\n padding: 10px ${fluid(15, 20)};\r\n color: ${brand.white};\r\n text-transform: uppercase;\r\n background-color: var(--themeColor);\r\n\r\n > span {\r\n ${fonts.agBook.regular};\r\n font-size: ${fluid(16, 18)};\r\n line-height: ${fluid(19, 22)};\r\n margin-left: ${fluid(12, 32)};\r\n }\r\n\r\n ${ArrowIcon} {\r\n position: relative;\r\n bottom: auto;\r\n right: auto;\r\n background-color: ${brand.white};\r\n\r\n @media ${from(Device.MobileLarge)} {\r\n top: auto;\r\n bottom: auto;\r\n }\r\n\r\n svg {\r\n path {\r\n &:first-child {\r\n stroke: var(--themeColor);\r\n }\r\n }\r\n }\r\n }\r\n\r\n ${Container}[data-featured] & {\r\n width: calc(100% + 60px);\r\n margin-left: -30px;\r\n padding: 10px 30px;\r\n background-color: ${brand.white};\r\n color: var(--themeColor);\r\n\r\n ${ArrowIcon} {\r\n position: relative;\r\n bottom: auto;\r\n right: auto;\r\n background-color: var(--themeColor);\r\n\r\n svg {\r\n path {\r\n &:first-child {\r\n stroke: ${brand.white};\r\n }\r\n }\r\n }\r\n }\r\n }\r\n`;\r\nexport const ResourceCardStyles = {\r\n ArrowIcon,\r\n CardContent,\r\n CategoryTag,\r\n Container,\r\n Content,\r\n ArticleInfo,\r\n ArticleInfoItem,\r\n ArticleInfoItemIcon,\r\n Image,\r\n ImageWrapper,\r\n MemberOnlyContent,\r\n Title,\r\n};\r\n","import { imageUrl } from '@helpers/image';\r\nimport { getSvgFromSystem, SystemIcon } from '@helpers/systemIcons';\r\nimport React from 'react';\r\nimport { ResourceCardStyles as S } from './ResourceCard.styles';\r\nconst ResourceCard = ({ categoryTag, content, cta, featured = false, hideImage = false, image, memberOnlyContent = false, theme, title, translations, }) => {\r\n return (React.createElement(S.Container, { as: \"a\", href: cta.url, title: cta.text ?? translations['translations.global.btn.moreInfo'], id: cta.id, \"data-memberOnlyContent\": memberOnlyContent, \"data-featured\": featured ? '' : null, \"data-component-theme\": theme },\r\n !hideImage && (React.createElement(S.ImageWrapper, null,\r\n categoryTag && React.createElement(S.CategoryTag, null, categoryTag),\r\n React.createElement(S.Image, { alt: image.altText, loading: \"lazy\", role: image.altText ? undefined : 'presentation', src: featured\r\n ? imageUrl(image, { width: 564, height: 330 })\r\n : imageUrl(image, { width: 368, height: 280 }), width: featured ? '564' : '368', height: featured ? '330' : '280' }))),\r\n React.createElement(S.CardContent, null,\r\n React.createElement(S.Title, null, title),\r\n React.createElement(S.Content, null, content),\r\n !memberOnlyContent && (React.createElement(S.ArrowIcon, null, getSvgFromSystem(SystemIcon.HoverArrowRight))),\r\n memberOnlyContent && featured && (React.createElement(S.MemberOnlyContent, null,\r\n React.createElement(\"span\", null, translations['translations.global.memberOnlyContent']),\r\n React.createElement(S.ArrowIcon, null, getSvgFromSystem(SystemIcon.HoverArrowRight))))),\r\n memberOnlyContent && !featured && (React.createElement(S.MemberOnlyContent, null,\r\n React.createElement(\"span\", null, translations['translations.global.memberOnlyContent']),\r\n React.createElement(S.ArrowIcon, null, getSvgFromSystem(SystemIcon.HoverArrowRight))))));\r\n};\r\nexport default ResourceCard;\r\n","import { transition } from '@helpers/animate';\r\nimport brand from '@helpers/brand';\r\nimport fonts from '@helpers/fonts';\r\nimport { Device, from } from '@helpers/media';\r\nimport { rgba } from 'polished';\r\nimport styled from 'styled-components';\r\nconst Wrapper = styled.div `\r\n display: block;\r\n user-select: none;\r\n margin-top: 40px;\r\n\r\n ul {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n place-content: center;\r\n place-items: center;\r\n column-gap: 10px;\r\n width: 100%;\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n column-gap: 20px;\r\n }\r\n\r\n li {\r\n display: inline-block;\r\n opacity: 1;\r\n transition: opacity 0.15s ease-out;\r\n padding: 0;\r\n\r\n a {\r\n ${fonts.agBook.bold};\r\n font-size: 16px;\r\n line-height: 1;\r\n display: flex;\r\n color: ${brand.grey.grey41};\r\n background-color: ${rgba(brand.white, 0)};\r\n border: 2px solid ${brand.grey.grey41};\r\n font-feature-settings: 'tnum' on;\r\n margin: 0;\r\n place-content: center;\r\n place-items: center;\r\n text-decoration: none;\r\n width: 42px;\r\n height: 42px;\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n width: 57px;\r\n }\r\n }\r\n\r\n a {\r\n ${transition('color, background-color, opacity')};\r\n cursor: pointer;\r\n position: relative;\r\n\r\n &:focus {\r\n outline: none;\r\n opacity: 0.6;\r\n }\r\n\r\n @supports selector(:focus-visible) {\r\n &:focus-visible {\r\n color: ${brand.black};\r\n }\r\n }\r\n\r\n @supports not selector(:focus-visible) {\r\n &:focus {\r\n color: ${brand.black};\r\n }\r\n }\r\n }\r\n\r\n &:not(.previous):not(.next) {\r\n &:hover {\r\n opacity: 0.6;\r\n }\r\n }\r\n\r\n &.previous,\r\n &.next {\r\n &:focus {\r\n opacity: 0.6;\r\n }\r\n\r\n a {\r\n width: auto;\r\n height: auto;\r\n border: none;\r\n background-color: transparent;\r\n color: ${brand.grey.grey41};\r\n\r\n > div {\r\n display: inline-flex;\r\n align-items: center;\r\n\r\n > span {\r\n display: none;\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n display: inline-block;\r\n }\r\n }\r\n }\r\n\r\n &:focus,\r\n &:hover {\r\n svg path {\r\n stroke-width: 5;\r\n }\r\n }\r\n }\r\n\r\n svg {\r\n display: block;\r\n height: 26px;\r\n height: 26px;\r\n\r\n path {\r\n ${transition('stroke-width')};\r\n\r\n &:first-child {\r\n stroke: ${brand.grey.grey41};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &.previous {\r\n svg {\r\n transform: scaleX(-1);\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n margin-right: 10px;\r\n }\r\n }\r\n }\r\n\r\n &.next {\r\n svg {\r\n @media ${from(Device.TabletSmall)} {\r\n margin-left: 10px;\r\n }\r\n }\r\n }\r\n\r\n &.break {\r\n a {\r\n border: none;\r\n width: 30px;\r\n height: auto;\r\n font-size: 32px;\r\n line-height: 12px;\r\n top: -8px;\r\n }\r\n }\r\n\r\n &.selected {\r\n a {\r\n color: ${brand.white};\r\n background-color: ${brand.grey.grey41};\r\n ${transition('opacity')};\r\n\r\n &::after {\r\n opacity: 1;\r\n }\r\n\r\n @supports selector(:focus-visible) {\r\n &:focus-visible {\r\n background-color: ${brand.grey.grey13};\r\n color: ${brand.white};\r\n }\r\n }\r\n\r\n @supports not selector(:focus-visible) {\r\n &:focus {\r\n background-color: ${brand.grey.grey13};\r\n color: ${brand.white};\r\n }\r\n }\r\n }\r\n }\r\n\r\n &.disabled {\r\n cursor: default;\r\n pointer-events: none;\r\n display: none;\r\n }\r\n }\r\n }\r\n`;\r\nexport default {\r\n Wrapper,\r\n};\r\n","import { Device, until } from '@helpers/media';\r\nimport { SystemIcon, getSvgFromSystem } from '@helpers/systemIcons';\r\nimport React from 'react';\r\nimport ReactPaginate from 'react-paginate';\r\nimport { useMedia } from 'react-use';\r\nimport PaginationStyles from './Pagination.styles';\r\nconst Pagination = ({ pageIndex, pageSize, totalCount, onPageChange, }) => {\r\n const isMobile = useMedia(until(Device.Tablet), false);\r\n return (React.createElement(PaginationStyles.Wrapper, null,\r\n React.createElement(ReactPaginate, { pageCount: Math.ceil(totalCount / pageSize), pageRangeDisplayed: isMobile ? 1 : 3, marginPagesDisplayed: 1, previousLabel: React.createElement(\"div\", null,\r\n getSvgFromSystem(SystemIcon.HoverArrowRight),\r\n React.createElement(\"span\", null, \"Previous\")), nextLabel: React.createElement(\"div\", null,\r\n React.createElement(\"span\", null, \"Next\"),\r\n getSvgFromSystem(SystemIcon.HoverArrowRight)), forcePage: pageIndex - 1, hrefBuilder: (page, pageCount) => (page >= 1 && page <= pageCount ? `/page/${page}` : '#'), hrefAllControls: true, onPageChange: ({ selected }) => {\r\n onPageChange(selected + 1);\r\n } })));\r\n};\r\nexport default Pagination;\r\n","import { fluid } from '@helpers/fluid';\r\nimport { baseGrid } from '@helpers/grid';\r\nimport { Device, from } from '@helpers/media';\r\nimport SectionWrapper from '@stories/Components/Global/SectionWrapper/SectionWrapper';\r\nimport styled from 'styled-components';\r\nconst Container = styled(SectionWrapper) ``;\r\nconst Listing = styled.div `\r\n ${baseGrid};\r\n grid-template-columns: 1fr;\r\n row-gap: ${fluid(30, 32)};\r\n\r\n @media ${from(Device.MobileLarge)} {\r\n grid-template-columns: repeat(2, 1fr);\r\n column-gap: 16px;\r\n }\r\n\r\n @media ${from(Device.Tablet)} {\r\n grid-template-columns: repeat(3, 1fr);\r\n }\r\n`;\r\nconst SearchInput = styled.input ``;\r\nexport const ArticleListingStyles = {\r\n Container,\r\n Listing,\r\n SearchInput,\r\n};\r\n","import { transition } from '@helpers/animate';\r\nimport brand, { ThemeOption } from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport { Layers } from '@helpers/layers';\r\nimport { Device, from, until } from '@helpers/media';\r\nimport srOnly from '@helpers/srOnly';\r\nimport { h2, h3 } from '@helpers/typography';\r\nimport SvgTick from '@img/icons/tick.svg';\r\nimport Button from '@stories/Components/Buttons/Button/Button';\r\nimport { ButtonStyles } from '@stories/Components/Buttons/Button/Button.styles';\r\nimport { m } from 'framer-motion';\r\nimport styled, { css } from 'styled-components';\r\nconst Container = styled.section `\r\n margin-bottom: 30px;\r\n`;\r\nconst Title = styled.h3 `\r\n ${h2}\r\n margin-bottom: 16px;\r\n color: ${brand.white};\r\n`;\r\nconst ActiveFilters = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n column-gap: 12px;\r\n`;\r\nconst ActiveTab = styled(Button) `\r\n --buttonFgColor: ${brand.white};\r\n --themeColor: ${brand.orange};\r\n margin-top: 12px;\r\n\r\n &&& {\r\n --buttonHeight: 42px;\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Orange}] & {\r\n --themeColor: ${brand.orange};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Blue}] & {\r\n --themeColor: ${brand.blue};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Purple}] & {\r\n --themeColor: ${brand.purple};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Red}] & {\r\n --themeColor: ${brand.red};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Green}] & {\r\n --themeColor: ${brand.green.default};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.DarkGreen}] & {\r\n --themeColor: ${brand.green.dark};\r\n }\r\n\r\n body[data-page-theme=${ThemeOption.Teal}] & {\r\n --themeColor: ${brand.teal};\r\n }\r\n\r\n ${ButtonStyles.Text} {\r\n ${fonts.agBook.regular};\r\n font-size: ${fluid(18, 20)};\r\n line-height: 24px;\r\n }\r\n`;\r\nconst ActiveFiltersBase = styled.div `\r\n margin-top: 10px;\r\n`;\r\nconst ClearBtn = styled.button `\r\n border: none;\r\n background-color: transparent;\r\n text-decoration: underline;\r\n font-size: 16px;\r\n line-height: 32px;\r\n`;\r\nconst TotalResults = styled.div `\r\n ${h2};\r\n margin: 0;\r\n`;\r\nconst FilterBtnIcon = styled.div `\r\n display: flex;\r\n align-items: center;\r\n\r\n svg {\r\n path {\r\n ${transition('stroke-width')};\r\n }\r\n }\r\n`;\r\nconst FilterBtn = styled.button `\r\n display: inline-flex;\r\n gap: 16px;\r\n align-items: center;\r\n justify-content: space-between;\r\n width: 100%;\r\n padding: 12px 20px;\r\n margin: 0;\r\n background-color: ${brand.white};\r\n color: ${brand.black};\r\n font-size: 20px;\r\n line-height: 24px;\r\n ${fonts.agBook.regular};\r\n border: none;\r\n\r\n ${({ active }) => active &&\r\n css `\r\n ${FilterBtnIcon} {\r\n transform: scaleY(-1);\r\n\r\n path {\r\n stroke-width: 5px;\r\n }\r\n }\r\n `}\r\n`;\r\nconst FilterOptions = styled(m.div) `\r\n overflow: hidden;\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n transform: translateY(100%);\r\n z-index: 1;\r\n min-width: 100%;\r\n background-color: ${brand.white};\r\n outline: 1px solid ${brand.black};\r\n\r\n &::before {\r\n content: '';\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 1px;\r\n background-color: ${brand.white};\r\n z-index: 1;\r\n }\r\n`;\r\nconst CheckboxFilterHolder = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n gap: 16px;\r\n`;\r\nconst Checkbox = styled.div ``;\r\nconst CheckboxInput = styled.input `\r\n ${srOnly}\r\n`;\r\nconst Tick = styled(SvgTick) `\r\n position: absolute;\r\n right: 18px;\r\n top: 17px;\r\n width: 16px;\r\n opacity: 0;\r\n z-index: 1;\r\n\r\n path {\r\n fill: ${brand.black};\r\n }\r\n`;\r\nconst filterSharedStyles = css `\r\n ${h3}\r\n color: ${brand.black};\r\n font-size: 20px;\r\n line-height: 22px;\r\n margin: 0;\r\n display: block;\r\n position: relative;\r\n padding: 11px 48px 11px 20px;\r\n width: 100%;\r\n`;\r\nconst CheckboxLabel = styled.label `\r\n ${filterSharedStyles};\r\n border-top: 1px solid ${brand.black};\r\n cursor: pointer;\r\n\r\n &:not(:hover) {\r\n ${fonts.agBook.regular};\r\n }\r\n\r\n ${CheckboxInput}:checked + & {\r\n ${Tick} {\r\n opacity: 1;\r\n }\r\n }\r\n`;\r\nconst FilterList = styled.div ``;\r\nconst Filter = styled.div `\r\n display: block;\r\n flex: 1 1 auto;\r\n position: relative;\r\n margin-top: 15px;\r\n`;\r\nconst FilterDropdown = styled.select `\r\n display: block;\r\n width: 100%;\r\n border: 2px solid ${brand.black};\r\n border-radius: 8px;\r\n appearance: none !important;\r\n background: none;\r\n background-color: ${brand.white};\r\n background-repeat: no-repeat;\r\n background-position: center right 12px;\r\n background-size: 20px 10px;\r\n color: ${brand.black};\r\n font-size: 16px;\r\n line-height: 20px;\r\n height: 56px;\r\n padding: 0 30px 0 12px;\r\n width: 100%;\r\n cursor: pointer;\r\n\r\n @media ${from(Device.Desktop)} {\r\n font-size: 18px;\r\n line-height: 20px;\r\n }\r\n`;\r\nconst FilterSearch = styled.input `\r\n ${filterSharedStyles};\r\n border: none;\r\n height: 100%;\r\n ${fonts.agBook.regular};\r\n\r\n &&& {\r\n box-sizing: border-box;\r\n }\r\n`;\r\nconst SearchFilterBtnHolder = styled.div `\r\n @media ${until(Device.TabletLarge)} {\r\n position: absolute;\r\n bottom: 0;\r\n left: 0;\r\n width: 100%;\r\n padding: 15px 20px;\r\n box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);\r\n }\r\n`;\r\nconst FilterHolder = styled(m.div) `\r\n position: relative;\r\n width: 100%;\r\n min-width: 257px;\r\n border: 1px solid ${brand.black};\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n width: calc(25% - 12px);\r\n }\r\n`;\r\nconst SelectLabel = styled.label `\r\n ${srOnly};\r\n`;\r\nconst ItemContainer = styled.div ``;\r\nconst Background = styled.div `\r\n @media ${until(Device.TabletLarge)} {\r\n position: fixed;\r\n top: 0;\r\n right: 0;\r\n background: ${brand.black};\r\n height: 100%;\r\n opacity: 0;\r\n pointer-events: none;\r\n transition: opacity 0.3s ease-out;\r\n width: 100%;\r\n z-index: ${Layers.Modal - 1};\r\n\r\n [aria-active='true'] & {\r\n opacity: 0.85;\r\n pointer-events: all;\r\n }\r\n }\r\n`;\r\nconst Overlay = styled.div `\r\n padding: 20px 30px 30px;\r\n margin-bottom: 30px;\r\n background-color: var(--themeColor);\r\n\r\n @media ${until(Device.TabletSmall)} {\r\n margin-left: calc(var(--sitePadding) * -1);\r\n margin-right: calc(var(--sitePadding) * -1);\r\n }\r\n`;\r\nexport default {\r\n ActiveFilters,\r\n ActiveFiltersBase,\r\n ActiveTab,\r\n Background,\r\n Checkbox,\r\n CheckboxFilterHolder,\r\n CheckboxInput,\r\n CheckboxLabel,\r\n ClearBtn,\r\n Container,\r\n Filter,\r\n FilterBtn,\r\n FilterBtnIcon,\r\n FilterDropdown,\r\n FilterOptions,\r\n FilterSearch,\r\n FilterHolder,\r\n FilterList,\r\n ItemContainer,\r\n Overlay,\r\n SearchFilterBtnHolder,\r\n SelectLabel,\r\n Tick,\r\n Title,\r\n TotalResults,\r\n};\r\n","import brand from '@helpers/brand';\r\nimport { SystemIcon, getSvgFromSystem } from '@helpers/systemIcons';\r\nimport { withMotion } from '@hoc/withMotion';\r\nimport React from 'react';\r\nimport S from './Filter.styles';\r\nconst Filter = ({ activeFilter, checkboxFilters, itemAmount, dropdownFilter, dropdownFilterValue, filterOpen, filterHeading, searchTerm, translations, setFilterOpen, onCheckboxChange, onReset, keywordSearchHandler, }) => {\r\n const ref = React.useRef(null);\r\n const [activeId, setActiveId] = React.useState('');\r\n const [tempSearchTerm, setTempSearchTerm] = React.useState(searchTerm ?? '');\r\n return (React.createElement(S.Container, { \"aria-active\": filterOpen },\r\n React.createElement(S.Overlay, { ref: ref },\r\n React.createElement(S.Title, null, filterHeading),\r\n React.createElement(S.FilterList, null,\r\n React.createElement(S.CheckboxFilterHolder, null,\r\n React.createElement(S.FilterHolder, null,\r\n React.createElement(S.FilterSearch, { id: \"keywordSearch\", placeholder: translations['translations.search.search-placholder'] ?? 'Keyword search', value: tempSearchTerm ? tempSearchTerm : '', onChange: (event) => setTempSearchTerm(event.target.value), onKeyDown: (event) => {\r\n if (event.key !== 'Enter') {\r\n return;\r\n }\r\n else {\r\n keywordSearchHandler(tempSearchTerm);\r\n }\r\n } })),\r\n checkboxFilters?.length > 0 &&\r\n checkboxFilters.map((filter) => (React.createElement(S.FilterHolder, { key: filter.key, animate: activeId === filter.key ? 'open' : 'closed', initial: activeId === filter.key ? 'open' : 'closed' },\r\n React.createElement(S.FilterBtn, { type: \"button\", active: activeId === filter.key, onClick: () => {\r\n if (activeId === filter.key) {\r\n setActiveId('');\r\n }\r\n else {\r\n setActiveId(filter.key ?? '');\r\n }\r\n } },\r\n filter.filterTitle,\r\n React.createElement(S.FilterBtnIcon, null, getSvgFromSystem(SystemIcon.HoverArrowDown))),\r\n React.createElement(S.FilterOptions, { variants: {\r\n open: {\r\n height: 'auto',\r\n outline: `1px solid ${brand.black}`,\r\n },\r\n closed: {\r\n height: 0,\r\n outline: 0,\r\n },\r\n }, transition: { ease: 'linear', duration: 0.2 } }, filter.options.map((checkbox) => {\r\n const selectedOption = dropdownFilterValue.includes(checkbox.value);\r\n return (React.createElement(S.Checkbox, { key: checkbox.id },\r\n React.createElement(S.ItemContainer, null,\r\n React.createElement(S.CheckboxInput, { type: \"checkbox\", id: `${filter.key}-${checkbox.value}`, checked: selectedOption, name: filter.key, value: checkbox.value, onChange: () => onCheckboxChange(filter.key, checkbox.value) }),\r\n React.createElement(S.CheckboxLabel, { htmlFor: `${filter.key}-${checkbox.value}` },\r\n checkbox.text,\r\n React.createElement(S.Tick, null)))));\r\n })))))),\r\n dropdownFilter && (React.createElement(React.Fragment, null, dropdownFilterValue &&\r\n onCheckboxChange &&\r\n dropdownFilter?.map((filter) => (React.createElement(S.FilterHolder, { key: filter.key, animate: activeId === filter.key ? 'open' : 'closed', initial: activeId === filter.key ? 'open' : 'closed' },\r\n React.createElement(S.FilterBtn, { type: \"button\", active: activeId === filter.key, onClick: () => {\r\n if (activeId === filter.key) {\r\n setActiveId('');\r\n }\r\n else {\r\n setActiveId(filter.key ?? '');\r\n }\r\n } },\r\n filter.title,\r\n getSvgFromSystem(SystemIcon.HoverArrowDown)),\r\n React.createElement(S.FilterOptions, { variants: {\r\n open: {\r\n height: 'auto',\r\n },\r\n closed: {\r\n height: 0,\r\n },\r\n }, transition: { ease: 'linear', duration: 0.2 } }, filter.options?.length > 0 && (React.createElement(S.Filter, null,\r\n React.createElement(S.SelectLabel, { htmlFor: filter.key },\r\n translations['translations.search.filter-by'] ?? 'Filter by',\r\n ' ',\r\n filter.title),\r\n React.createElement(S.FilterDropdown, { id: filter.key, name: filter.key, value: filter.key ?? '', onChange: (event) => onCheckboxChange(filter.key, event.target.value, true) },\r\n React.createElement(\"option\", { value: \"\" }, filter.title),\r\n filter.options.map((option) => (React.createElement(\"option\", { key: option.id, value: option.value }, option.text)))))))))))))),\r\n (activeFilter.length > 0 || (searchTerm && searchTerm.length > 0)) && (React.createElement(S.TotalResults, null,\r\n itemAmount,\r\n \" \",\r\n translations['translations.search.results-found'] ?? 'Results found')),\r\n React.createElement(S.ActiveFilters, null,\r\n checkboxFilters?.map((filter) => activeFilter &&\r\n activeFilter.map((item) => filter.options.map((option) => {\r\n if (item === option.value) {\r\n return (React.createElement(S.ActiveTab, { key: item, type: \"button\", title: option.text, styleType: \"solid\", addon: getSvgFromSystem(SystemIcon.Cross), onClick: () => onCheckboxChange(filter.key, item, false, true) }));\r\n }\r\n }))),\r\n dropdownFilter?.map((filter) => activeFilter &&\r\n activeFilter.map((item) => filter.options.map((option) => {\r\n if (item === option.value) {\r\n return (React.createElement(S.ActiveTab, { key: item, type: \"button\", title: option.text, styleType: \"solid\", onClick: () => onCheckboxChange(filter.key, item, false, true) }));\r\n }\r\n }))),\r\n activeFilter && activeFilter?.length > 0 && (React.createElement(S.ActiveTab, { type: \"button\", title: translations['translations.search.clear-all'], styleType: \"solid\", addon: getSvgFromSystem(SystemIcon.Cross), onClick: onReset }))),\r\n React.createElement(S.Background, { onClick: (event) => {\r\n event.preventDefault();\r\n setFilterOpen && setFilterOpen(false);\r\n } })));\r\n};\r\nexport default withMotion(Filter);\r\n","import brand from '@helpers/brand';\r\nimport { Device, from } from '@helpers/media';\r\nimport { h2, paragraph } from '@helpers/typography';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div ``;\r\nconst Inner = styled.div `\r\n @media ${from(Device.TabletLarge)} {\r\n display: grid;\r\n grid-template-columns: repeat(12, 1fr);\r\n gap: 32px;\r\n }\r\n`;\r\nconst Filter = styled.div `\r\n position: relative;\r\n z-index: 2;\r\n border-bottom: 1px solid ${brand.white};\r\n`;\r\nconst Main = styled.div `\r\n grid-column: 1 / span 12;\r\n`;\r\nconst Message = styled.p `\r\n ${paragraph}\r\n margin-top: var(--sectionMargin);\r\n`;\r\nconst Loading = styled.div `\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n display: flex;\r\n align-items: center;\r\n background: rgba(0, 0, 0, 0.65);\r\n height: 100%;\r\n justify-content: center;\r\n width: 100%;\r\n z-index: 100;\r\n`;\r\nconst CtaWrapper = styled.div `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n margin-top: 84px;\r\n`;\r\nconst ListTitle = styled.h2 `\r\n ${h2};\r\n margin: 50px 0 30px;\r\n`;\r\nexport default {\r\n Container,\r\n CtaWrapper,\r\n Inner,\r\n ListTitle,\r\n Loading,\r\n Main,\r\n Message,\r\n Filter,\r\n};\r\n","import Pagination from '@stories/Components/Global/Pagination/Pagination';\r\nimport noop from 'lodash/noop';\r\nimport React from 'react';\r\nimport { useFirstMountState } from 'react-use';\r\nimport Filter from '../Filter/Filter';\r\nimport S from './FilteredListing.styles';\r\nfunction FilteredListing({ complete, error, errorText, items, pageSize = 12, filterProps, listTitle, pageIndex = 0, renderItems, totalItems = 0, onReset, onPageChange = noop, }) {\r\n const [filterOpen, setFilterOpen] = React.useState(false);\r\n const isFirstMount = useFirstMountState();\r\n const refItemList = React.useRef(null);\r\n React.useEffect(() => {\r\n if (isFirstMount) {\r\n return;\r\n }\r\n if (complete === true || pageIndex) {\r\n refItemList.current?.scrollIntoView({\r\n behavior: 'smooth',\r\n block: 'start',\r\n inline: 'start',\r\n });\r\n }\r\n }, [complete, pageIndex]);\r\n return (React.createElement(S.Container, { ref: refItemList },\r\n React.createElement(S.Inner, null,\r\n React.createElement(S.Main, { \"data-has-nav\": filterProps ? true : false },\r\n listTitle && React.createElement(S.ListTitle, null, listTitle),\r\n filterProps && (React.createElement(S.Filter, null, filterProps && (React.createElement(Filter, { ...filterProps, itemAmount: totalItems, filterOpen: filterOpen, setFilterOpen: setFilterOpen, onReset: onReset })))),\r\n error && renderError(error),\r\n items && items?.length ? renderResults(items ?? []) : null))));\r\n function renderError(error) {\r\n return React.createElement(S.Message, null, error.message);\r\n }\r\n function renderResults(items) {\r\n if (items?.length === 0) {\r\n return React.createElement(S.Message, null, errorText);\r\n }\r\n return (React.createElement(React.Fragment, null,\r\n renderItems(items),\r\n items?.length < totalItems && (React.createElement(Pagination, { pageIndex: pageIndex, pageSize: pageSize, onPageChange: onPageChange, totalCount: totalItems }))));\r\n }\r\n}\r\nexport default FilteredListing;\r\n","import { PageType } from '@core/enums';\r\nimport { API_URLS } from '@helpers/api';\r\nimport { ThemeOption } from '@helpers/brand';\r\nimport { withQueryParams } from '@hoc/withQueryParams';\r\nimport { useApi } from '@hooks/useApi';\r\nimport ArticleCard from '@stories/Components/Cards/ArticleCard/ArticleCard';\r\nimport EventCard from '@stories/Components/Cards/EventCard/EventCard';\r\nimport ResourceCard from '@stories/Components/Cards/ResourceCard/ResourceCard';\r\nimport FilteredListing from '@stories/Components/Filters/FilteredListing/FilteredListing';\r\nimport queryString from 'query-string';\r\nimport React from 'react';\r\nimport { ArrayParam, NumberParam, StringParam, useQueryParams, withDefault, } from 'use-query-params';\r\nimport { ArticleListingStyles as S } from './ArticleListing.styles';\r\nconst ArticleListing = ({ dataApiUrl = API_URLS.ARTICLE_LIST, featuredItem, filterHeading, filters, hideImages = false, id, initialData, errorText, pageContext, pageType, theme = ThemeOption.Orange, translations, isTalksOnDemandPage = false, }) => {\r\n // Define query string parameters.\r\n const [queryParams, setQueryParams] = useQueryParams({\r\n pageIndex: withDefault(NumberParam, 1),\r\n filter: withDefault(ArrayParam, initialData.filter ?? []),\r\n searchTerm: StringParam,\r\n sortBy: StringParam,\r\n });\r\n const [activeFilters, setActiveFilters] = React.useState(\r\n // queryParams.filter ? queryParams.filter : initialData.filter ?? null,\r\n initialData.filter ? initialData.filter : queryParams.filter ?? null);\r\n // Get page index or default.\r\n const pageIndex = queryParams.pageIndex ?? 1;\r\n const pageSize = 12;\r\n // Get filter or default.\r\n const filterValue = queryParams.filter;\r\n // Construct API url.\r\n const parameters = queryString.stringify({\r\n docId: pageContext?.documentId,\r\n pageType,\r\n filter: filterValue,\r\n pageIndex: pageIndex,\r\n pageSize: pageSize,\r\n searchTerm: queryParams.searchTerm,\r\n });\r\n const apiUrl = `${dataApiUrl}?${parameters}`;\r\n // Fetch data.\r\n const { data, error, complete } = useApi(apiUrl);\r\n // Get items from response or initial items.\r\n const items = data?.items ?? initialData.items;\r\n const totalItems = data?.totalItems ?? initialData.totalItems;\r\n React.useEffect(() => {\r\n if (activeFilters) {\r\n setQueryParams({ filter: activeFilters });\r\n }\r\n else {\r\n setQueryParams({ filter: [] });\r\n }\r\n }, [activeFilters, setQueryParams]);\r\n return (React.createElement(S.Container, { innerWidth: \"reduced\", flush: \"top\", id: id },\r\n featuredItem &&\r\n (() => {\r\n switch (pageType) {\r\n case PageType.News:\r\n return React.createElement(ArticleCard, { ...featuredItem, theme: theme });\r\n case PageType.Events:\r\n return (React.createElement(EventCard, { ...featuredItem, theme: theme, isTalksOnDemandPage: isTalksOnDemandPage }));\r\n case PageType.Resources:\r\n case PageType.CGeogMembers:\r\n return React.createElement(ResourceCard, { ...featuredItem, theme: theme });\r\n }\r\n })(),\r\n React.createElement(FilteredListing, { filterProps: {\r\n checkboxFilters: filters,\r\n activeFilter: filterValue ?? [],\r\n dropdownFilterValue: filterValue ?? [],\r\n filterHeading: filterHeading,\r\n onCheckboxChange: (name, filterValue) => {\r\n let filters = activeFilters;\r\n if (filters && activeFilters) {\r\n if (filters.includes(filterValue)) {\r\n filters = activeFilters.filter((x) => x !== filterValue);\r\n }\r\n else {\r\n filters = [...activeFilters, filterValue];\r\n }\r\n setActiveFilters(filters);\r\n }\r\n else {\r\n setActiveFilters([filterValue]);\r\n }\r\n },\r\n keywordSearchHandler: (value) => {\r\n setQueryParams({ searchTerm: value, pageIndex: 1 }, 'pushIn');\r\n },\r\n searchTerm: queryParams.searchTerm,\r\n translations,\r\n }, errorText: errorText, error: error, items: items, complete: complete, pageSize: pageSize, pageIndex: pageIndex, renderItems: (items) => (React.createElement(S.Listing, null, (() => {\r\n switch (pageType) {\r\n case PageType.News:\r\n return items.map((item, index) => (React.createElement(ArticleCard, { key: `item-${index}`, hideImage: hideImages, ...item, theme: theme })));\r\n case PageType.Events:\r\n return items.map((item, index) => (React.createElement(EventCard, { key: `item-${index}`, hideImage: hideImages, ...item, theme: theme, isTalksOnDemandPage: isTalksOnDemandPage })));\r\n case PageType.Resources:\r\n case PageType.CGeogMembers:\r\n return items.map((item, index) => (React.createElement(ResourceCard, { key: `item-${index}`, hideImage: hideImages, ...item, theme: theme })));\r\n }\r\n })())), totalItems: totalItems, onPageChange: (pageIndex) => {\r\n setQueryParams({ pageIndex });\r\n }, onReset: () => {\r\n setActiveFilters(null);\r\n } })));\r\n};\r\nexport default withQueryParams(ArticleListing);\r\n","/**\n * This method returns `undefined`.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Util\n * @example\n *\n * _.times(2, _.noop);\n * // => [undefined, undefined]\n */\nfunction noop() {\n // No operation performed.\n}\n\nmodule.exports = noop;\n"],"names":["PageType","API_URLS","ARTICLE_LIST","SEARCH_RESULTS_LIST","Layers","Modal","css","withMotion","WrappedComponent","displayName","name","ComponentWithMotion","props","React","LazyMotion","features","domAnimation","strict","withQueryParams","ComponentWithQueryParams","QueryParamProvider","ReactRouterRoute","Route","ComponentWithRouter","window","location","Error","StaticRouter","basename","context","BrowserRouter","withRouter","useApi","url","enable","jsonPostData","data","setData","error","setError","loading","setLoading","complete","setComplete","isFirstMount","useFirstMountState","async","res","fetch","method","body","headers","ok","undefined","statusText","json","doAsync","categoryTag","content","cta","date","featured","hideImage","image","theme","title","translations","S","as","href","target","id","text","alt","altText","role","src","imageUrl","width","height","getSvgFromSystem","SystemIcon","Container","styled","ArticleCardStyles","ImageWrapper","CategoryTag","Image","CardContent","InformationCardStyles","Title","Content","paragraphSmall","brand","ArticleInfo","ArticleInfoItem","ArticleInfoItemIcon","ArrowIcon","CtaCardStyles","from","Device","ResourceCardStyles","MemberOnlyContent","fluid","fonts","memberOnlyContent","Wrapper","rgba","transition","pageIndex","pageSize","totalCount","onPageChange","isMobile","useMedia","until","PaginationStyles","ReactPaginate","pageCount","Math","ceil","pageRangeDisplayed","marginPagesDisplayed","previousLabel","nextLabel","forcePage","hrefBuilder","page","hrefAllControls","selected","ArticleListingStyles","SectionWrapper","Listing","baseGrid","SearchInput","h2","ActiveFilters","ActiveTab","Button","ThemeOption","ButtonStyles","ActiveFiltersBase","ClearBtn","TotalResults","FilterBtnIcon","FilterBtn","active","FilterOptions","m","CheckboxFilterHolder","Checkbox","CheckboxInput","srOnly","Tick","SvgTick","filterSharedStyles","h3","CheckboxLabel","FilterList","Filter","FilterDropdown","FilterSearch","SearchFilterBtnHolder","FilterHolder","SelectLabel","ItemContainer","Background","Overlay","activeFilter","checkboxFilters","itemAmount","dropdownFilter","dropdownFilterValue","filterOpen","filterHeading","searchTerm","setFilterOpen","onCheckboxChange","onReset","keywordSearchHandler","ref","activeId","setActiveId","tempSearchTerm","setTempSearchTerm","placeholder","value","onChange","event","onKeyDown","key","length","map","filter","animate","initial","type","onClick","filterTitle","variants","open","outline","closed","ease","duration","options","checkbox","selectedOption","includes","checked","htmlFor","option","item","styleType","addon","preventDefault","Inner","Main","Message","paragraph","Loading","CtaWrapper","ListTitle","errorText","items","filterProps","listTitle","renderItems","totalItems","noop","refItemList","current","scrollIntoView","behavior","block","inline","message","renderError","Pagination","renderResults","dataApiUrl","featuredItem","filters","hideImages","initialData","pageContext","pageType","isTalksOnDemandPage","queryParams","setQueryParams","useQueryParams","withDefault","NumberParam","ArrayParam","StringParam","sortBy","activeFilters","setActiveFilters","filterValue","apiUrl","queryString","docId","documentId","innerWidth","flush","ArticleCard","EventCard","ResourceCard","FilteredListing","x","index","module","exports"],"sourceRoot":""}