{"version":3,"file":"5949-5bd0d332fb8e4a7c9d2f.js","mappings":"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","sources":["webpack://brc/./src/hoc/withMotion.tsx","webpack://brc/./src/hooks/useMedia.ts","webpack://brc/./src/stories/Components/Cards/ContentCard/ContentCard.styles.ts","webpack://brc/./src/stories/Components/Cards/ContentCard/ContentCard.tsx","webpack://brc/./src/stories/Components/CategoryTags/CategoryTags.styles.ts","webpack://brc/./src/stories/Components/CategoryTags/CategoryTags.tsx","webpack://brc/./src/stories/Components/Misc/Carousels/Carousel/Dots/Dots.tsx","webpack://brc/./src/stories/Components/Misc/Carousels/Carousel/Controls/Controls.tsx","webpack://brc/./src/stories/Components/Misc/Carousels/Carousel/Pagination/Pagination.tsx","webpack://brc/./src/stories/Components/Misc/Carousels/FullWidthCarousel/FullWidthCarousel.styles.ts","webpack://brc/./src/stories/Components/Misc/Carousels/FullWidthCarousel/FullWidthCarousel.tsx","webpack://brc/./src/stories/Widgets/ContentCards/ContentCards.styles.ts","webpack://brc/./src/stories/Widgets/ContentCards/ContentCards.tsx","webpack://brc/./node_modules/framer-motion/dist/es/components/MotionConfig/index.mjs"],"sourcesContent":["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 { useEffect, useState } from 'react';\r\n/**\r\n * Store a value in state based on the specified media queries.\r\n * @param {Array} queries\r\n * @param {Array} values\r\n * @param {T} defaultValue\r\n */\r\nfunction useMedia(queries, values, defaultValue) {\r\n // Function that gets value based on matching media query\r\n const getValue = () => {\r\n // Get index of first media query that matches\r\n const index = mediaQueryLists.findIndex((mql) => mql.matches);\r\n // Return related value or defaultValue if none\r\n return typeof values[index] !== 'undefined' ? values[index] : defaultValue;\r\n };\r\n // State and setter for matched value\r\n const [value, setValue] = useState(defaultValue);\r\n const [mediaQueryLists, setMediaQueryLists] = useState([]);\r\n useEffect(() => {\r\n // Array containing a media query list for each query\r\n setMediaQueryLists(queries.map((query) => window.matchMedia(query)));\r\n }, []);\r\n useEffect(() => {\r\n setValue(getValue);\r\n // Event listener callback\r\n // Note: By defining getValue outside of useEffect we ensure that it has ...\r\n // ... current values of hook args (as this hook callback is created once on mount).\r\n const handler = () => setValue(getValue);\r\n // Set a listener for each media query with above handler as callback.\r\n mediaQueryLists.forEach((mql) => mql.addListener(handler));\r\n // Remove listeners on cleanup\r\n return () => mediaQueryLists.forEach((mql) => mql.removeListener(handler));\r\n }, [mediaQueryLists]); // Empty array ensures effect is only run on mount and unmount\r\n return value;\r\n}\r\nexport default useMedia;\r\n","import { transition } from '@helpers/animate';\r\nimport { imageCoverContainer, imageWrapperPreserveRatio } from '@helpers/aspectRatio';\r\nimport 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 ButtonStyles from '@stories/Components/Buttons/Button/Button.styles';\r\nimport CategoryTagsStyles from '@stories/Components/CategoryTags/CategoryTags.styles';\r\nimport { rgba } from 'polished';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n --contentColour: ${brand.primary.blue.dark};\r\n --bgColour: ${brand.global.white};\r\n --memberTextColour: ${brand.primary.purple.dark};\r\n --memberBorderColour: ${brand.primary.purple.dark};\r\n --memberBackground: transparent;\r\n\r\n ${transition('background-color, color', 0.25)};\r\n\r\n display: flex;\r\n flex-direction: column;\r\n border-radius: 20px;\r\n color: var(--contentColour);\r\n background-color: var(--bgColour);\r\n overflow: hidden;\r\n border: 1px solid ${brand.primary.blue.dark};\r\n\r\n &[data-is-featured='true'][data-has-image='false'] {\r\n --contentColour: ${brand.global.white};\r\n --bgColour: ${brand.primary.purple.light};\r\n --memberTextColour: ${brand.primary.purple.dark};\r\n --memberBorderColour: ${brand.primary.purple.dark};\r\n --memberBackground: ${brand.primary.grey};\r\n border: none;\r\n }\r\n\r\n a& {\r\n text-decoration: none;\r\n\r\n ${() => Image}, svg {\r\n ${transition('transform, background-color, color', 0.25)};\r\n }\r\n\r\n &:focus-visible,\r\n &:hover {\r\n --contentColour: ${brand.global.white};\r\n --bgColour: ${brand.primary.blue.dark};\r\n --memberTextColour: ${brand.global.white};\r\n --memberBorderColour: ${brand.global.white};\r\n\r\n &[data-is-featured='true'][data-has-image='false'] {\r\n --contentColour: ${brand.global.white};\r\n --bgColour: ${brand.primary.purple.dark};\r\n --memberTextColour: ${brand.primary.purple.dark};\r\n --memberBorderColour: ${brand.primary.purple.dark};\r\n --memberBackground: ${brand.primary.grey};\r\n }\r\n\r\n ${() => Image}, svg {\r\n transform: scale(1.05);\r\n }\r\n }\r\n }\r\n\r\n ${CategoryTagsStyles.Container} {\r\n margin-bottom: 12px;\r\n }\r\n`;\r\nconst ImageContainer = styled.div `\r\n ${imageWrapperPreserveRatio(406, 230)};\r\n\r\n display: grid;\r\n place-content: center;\r\n position: relative;\r\n\r\n [data-is-featured='true'] & {\r\n @media ${from(Device.TabletLarge)} {\r\n aspect-ratio: 842 / 230;\r\n }\r\n }\r\n`;\r\nconst Image = styled.img `\r\n ${imageCoverContainer()};\r\n\r\n /* Border radius duplicated for iOS */\r\n border-radius: 20px 20px 0 0;\r\n`;\r\nconst MemberAccess = styled.div `\r\n ${transition('border-color, color', 0.25)};\r\n ${fonts.lato.bold};\r\n position: absolute;\r\n top: 10px;\r\n left: 10px;\r\n z-index: 1;\r\n display: flex;\r\n align-items: center;\r\n gap: 4px;\r\n background-color: ${rgba(brand.primary.purple.light, 0.5)};\r\n color: ${brand.global.white};\r\n font-size: ${fluid(12, 14)};\r\n line-height: ${fluid(14, 20)};\r\n text-transform: uppercase;\r\n padding: ${fluid(6, 6)} ${fluid(10, 14)};\r\n border-radius: 300000000px;\r\n backdrop-filter: blur(2px);\r\n`;\r\nconst MemberIcon = styled.div `\r\n flex: 0 0 20px;\r\n height: 20px;\r\n width: 20px;\r\n`;\r\nconst ContentWrapper = styled.div `\r\n flex: 1;\r\n display: flex;\r\n flex-direction: column;\r\n padding: ${fluid(16, 20)} ${fluid(16, 16)} 16px;\r\n\r\n @media ${from(Device.Tablet)} {\r\n padding-bottom: 10px;\r\n }\r\n\r\n ${MemberAccess} {\r\n position: relative;\r\n top: auto;\r\n left: auto;\r\n width: fit-content;\r\n background-color: var(--memberBackground);\r\n border: 1px solid var(--memberBorderColour);\r\n color: var(--memberTextColour);\r\n margin-bottom: 11px;\r\n }\r\n\r\n ${ButtonStyles.Container} {\r\n --buttonHeight: ${fluid(42, 56)};\r\n position: relative;\r\n align-self: flex-end;\r\n\r\n [data-is-featured='true'][data-has-image='false'] & {\r\n --bgColour: transparent;\r\n --bgColourActive: ${brand.global.white};\r\n --bgColourHover: var(--colourText);\r\n --borderColorActive: var(--bgColourActive);\r\n --borderColorHover: var(--bgColourHover);\r\n --borderColour: var(--colourText);\r\n --colourText: ${brand.global.white};\r\n --colourTextHover: ${brand.primary.purple.dark};\r\n }\r\n }\r\n`;\r\nconst ContentArea = styled.div `\r\n flex: 1 0 auto;\r\n padding-bottom: ${fluid(16, 24)};\r\n`;\r\nconst Heading = styled.h3 `\r\n ${fonts.lato.semiBold};\r\n\r\n font-size: ${fluid(16, 22)};\r\n line-height: ${fluid(24, 30)};\r\n margin: 0;\r\n`;\r\nconst DateTime = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 8px 16px;\r\n margin: ${fluid(12, 20)} 0 0;\r\n`;\r\nconst Date = styled.div `\r\n ${fonts.lato.semiBold};\r\n display: flex;\r\n gap: 4px;\r\n align-items: center;\r\n font-size: ${fluid(14, 16)};\r\n line-height: ${fluid(22, 26)};\r\n color: var(--contentColour);\r\n\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n }\r\n`;\r\nconst Time = styled.div `\r\n ${fonts.lato.semiBold};\r\n display: flex;\r\n gap: 4px;\r\n align-items: center;\r\n font-size: ${fluid(14, 16)};\r\n line-height: ${fluid(22, 26)};\r\n color: var(--contentColour);\r\n\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n }\r\n`;\r\nconst Location = styled.div `\r\n ${fonts.lato.semiBold};\r\n display: flex;\r\n gap: 4px;\r\n align-items: center;\r\n font-size: ${fluid(14, 16)};\r\n line-height: ${fluid(22, 26)};\r\n color: var(--contentColour);\r\n\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n }\r\n`;\r\nconst BaseContentArea = styled.div `\r\n display: flex;\r\n justify-content: space-between;\r\n gap: 16px;\r\n\r\n &[data-just-button='false'] {\r\n justify-content: flex-end;\r\n }\r\n\r\n ${Date} {\r\n ${fonts.lato.bold};\r\n }\r\n`;\r\nconst ContentCardStyles = {\r\n BaseContentArea,\r\n Container,\r\n ContentArea,\r\n ContentWrapper,\r\n Date,\r\n DateTime,\r\n ImageContainer,\r\n Image,\r\n Heading,\r\n Location,\r\n MemberAccess,\r\n MemberIcon,\r\n Time,\r\n};\r\nexport default ContentCardStyles;\r\n","import { getSvgIcon, InterfaceIcon } from '@helpers/icons';\r\nimport { getSrcs } from '@helpers/image';\r\nimport { Device, until } from '@helpers/media';\r\nimport { FakeButton } from '@stories/Components/Buttons/Button/Button';\r\nimport * as React from 'react';\r\nimport S from './ContentCard.styles';\r\nimport CategoryTags from '@stories/Components/CategoryTags/CategoryTags';\r\nconst ContentCard = (props) => {\r\n const srcs = props.image ? getSrcs(props.image, 1424, 375, 8, 354 / 226) : undefined;\r\n const sizes = `${until(Device.Tablet)} 100vw, ${until(Device.TabletLarge)} 50vw, ${until(Device.Desktop)} 33vw, ${until(Device.DesktopLarge)} 25vw, 402px`;\r\n return (React.createElement(S.Container, { \"data-has-image\": !!props.image, \"data-is-featured\": props.featured ?? false, ...(props.cta ? { as: 'a', href: props.cta.url, target: props.cta.target } : {}) },\r\n srcs && (React.createElement(S.ImageContainer, null,\r\n props.restricted && (React.createElement(S.MemberAccess, null,\r\n React.createElement(S.MemberIcon, null, getSvgIcon(props.memberHasAccess ? InterfaceIcon.Unlocked : InterfaceIcon.Lock)),\r\n React.createElement(\"span\", null, props.translations?.['global.memberaccesslabel']))),\r\n React.createElement(S.Image, { src: srcs.src, srcSet: srcs.srcSet, sizes: sizes, alt: props.image?.altText, loading: \"lazy\" }))),\r\n React.createElement(S.ContentWrapper, null,\r\n props.restricted && !srcs && (React.createElement(S.MemberAccess, null,\r\n React.createElement(S.MemberIcon, null, getSvgIcon(props.memberHasAccess ? InterfaceIcon.Unlocked : InterfaceIcon.Lock)),\r\n props.translations?.['global.memberaccesslabel'])),\r\n React.createElement(CategoryTags, { id: props.id, tags: props.categoryTags }),\r\n React.createElement(S.ContentArea, null,\r\n React.createElement(S.Heading, { as: props.headingType }, props.heading),\r\n props.showIcons || props.time || props.location ? (React.createElement(S.DateTime, null,\r\n props.date && (React.createElement(S.Date, null,\r\n getSvgIcon(InterfaceIcon.CalendarBlank),\r\n React.createElement(\"span\", null, props.date))),\r\n props.time && (React.createElement(S.Time, null,\r\n getSvgIcon(InterfaceIcon.Clock),\r\n React.createElement(\"span\", null, props.time))),\r\n props.location && (React.createElement(S.Location, null,\r\n getSvgIcon(InterfaceIcon.Location),\r\n React.createElement(\"span\", null, props.location))))) : null),\r\n React.createElement(S.BaseContentArea, { \"data-just-button\": !!props.date && !props.time },\r\n props.date && !props.time && !props.location ? React.createElement(S.Date, null, props.date) : null,\r\n props.cta && (React.createElement(FakeButton, { buttonType: \"secondary\", icon: InterfaceIcon.ArrowRight, iconOnly: true }))))));\r\n};\r\nexport default ContentCard;\r\n","import brand, { BrandColours } from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport fonts from '@helpers/fonts';\r\nimport styled from 'styled-components';\r\nconst Container = styled.div `\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 11px;\r\n`;\r\nconst Tag = styled.div `\r\n display: flex;\r\n\r\n &[data-theme=${BrandColours.BlueDark}] {\r\n --tagColour: ${brand.primary.blue.dark};\r\n --textColour: ${brand.global.white};\r\n }\r\n\r\n &[data-theme=${BrandColours.BlueLight}] {\r\n --tagColour: ${brand.primary.blue.light};\r\n --textColour: ${brand.primary.blue.dark};\r\n }\r\n\r\n &[data-theme=${BrandColours.PurpleDark}] {\r\n --tagColour: ${brand.primary.purple.dark};\r\n --textColour: ${brand.global.white};\r\n }\r\n\r\n &[data-theme=${BrandColours.PurpleLight}] {\r\n --tagColour: ${brand.primary.purple.light};\r\n --textColour: ${brand.global.white};\r\n }\r\n\r\n &[data-theme=${BrandColours.OrangeMid}] {\r\n --tagColour: ${brand.secondary.orange.mid};\r\n --textColour: ${brand.global.white};\r\n }\r\n\r\n &[data-theme=${BrandColours.GreyPrimary}] {\r\n --tagColour: ${brand.primary.grey};\r\n --textColour: ${brand.primary.purple.dark};\r\n }\r\n\r\n [data-is-featured='true'][data-has-image='false'] & {\r\n &[data-theme=${BrandColours.PurpleDark}] {\r\n --tagColour: transparent;\r\n border: 1px solid ${brand.global.white};\r\n }\r\n\r\n &[data-theme=${BrandColours.PurpleLight}] {\r\n --tagColour: transparent;\r\n border: 1px solid ${brand.global.white};\r\n }\r\n }\r\n\r\n background-color: var(--tagColour);\r\n color: var(--textColour);\r\n\r\n padding: ${fluid(6, 6)} ${fluid(10, 14)};\r\n border-radius: 300000000px;\r\n`;\r\nconst TagInner = styled.div `\r\n display: flex;\r\n gap: 4px;\r\n align-items: center;\r\n`;\r\nconst TagIcon = styled.div `\r\n flex: 1 0 20px;\r\n height: 20px;\r\n width: 20px;\r\n`;\r\nconst TagText = styled.span `\r\n ${fonts.lato.bold};\r\n\r\n display: block;\r\n font-size: ${fluid(12, 14)};\r\n line-height: ${fluid(14, 20)};\r\n text-transform: uppercase;\r\n flex: 1 0 auto;\r\n`;\r\nconst CategoryTagsStyles = {\r\n Container,\r\n Tag,\r\n TagIcon,\r\n TagInner,\r\n TagText,\r\n};\r\nexport default CategoryTagsStyles;\r\n","import * as React from 'react';\r\nimport S from './CategoryTags.styles';\r\nimport { getSvgIcon } from '@helpers/icons';\r\nconst CategoryTags = (props) => {\r\n if (!props.tags || props.tags.length === 0) {\r\n return null;\r\n }\r\n return React.createElement(S.Container, null, props.tags?.map((tag) => (React.createElement(S.Tag, { key: `${props.id}-${tag.id}`, \"data-theme\": tag.theme },\r\n React.createElement(S.TagInner, null,\r\n tag.icon && React.createElement(S.TagIcon, null, getSvgIcon(tag.icon)),\r\n React.createElement(S.TagText, null, tag.text))))));\r\n};\r\nexport default CategoryTags;\r\n","import React from 'react';\r\nimport { DotsStyles as S } from './Dots.styles';\r\nconst Dots = ({ activeIndex, itemCount }) => {\r\n return (React.createElement(S.Dots, null,\r\n React.createElement(S.Dot, { style: { '--progress': `${((activeIndex + 1) / itemCount) * 100}%` } })));\r\n};\r\nexport default Dots;\r\n","import { InterfaceIcon, getSvgIcon } from '@helpers/icons';\r\nimport * as React from 'react';\r\nimport { FocusRing } from 'react-aria';\r\nimport { useCarouselContext } from '../CarouselProvider/CarouselProvider';\r\nimport S from './Controls.styles';\r\nconst Controls = React.forwardRef((props, ref) => {\r\n const carousel = useCarouselContext();\r\n return (React.createElement(S.Container, { ref: ref, className: props.className, \"aria-label\": props.translations?.['global.carousel.controls'] ?? '' },\r\n React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Button, { \"aria-label\": props.translations?.['global.carousel.previous'] ?? '', disabled: !props.wrap && carousel.activeIndex === 0, onClick: (event) => {\r\n event.preventDefault();\r\n carousel.goToPrev(props.wrap);\r\n }, \"data-prev\": true },\r\n React.createElement(S.Icon, null,\r\n getSvgIcon(InterfaceIcon.ArrowRight),\r\n getSvgIcon(InterfaceIcon.ArrowRight)))),\r\n React.createElement(FocusRing, { focusRingClass: \"focus-ring\" },\r\n React.createElement(S.Button, { \"aria-label\": props.translations?.['global.carousel.next'] ?? '', disabled: !props.wrap && carousel.activeIndex === carousel.maxIndex, onClick: (event) => {\r\n event.preventDefault();\r\n carousel.goToNext(props.wrap);\r\n }, \"data-next\": true },\r\n React.createElement(S.Icon, null,\r\n getSvgIcon(InterfaceIcon.ArrowRight),\r\n getSvgIcon(InterfaceIcon.ArrowRight))))));\r\n});\r\nControls.displayName = 'Controls';\r\nexport default Controls;\r\n","import Controls from '@stories/Components/Misc/Carousels/Carousel/Controls/Controls';\r\nimport Dots from '@stories/Components/Misc/Carousels/Carousel/Dots/Dots';\r\nimport * as React from 'react';\r\nimport { useCarouselContext } from '../CarouselProvider/CarouselProvider';\r\nimport S from './Pagination.styles';\r\nconst Pagination = React.forwardRef((props, ref) => {\r\n const carousel = useCarouselContext();\r\n if (carousel.maxIndex === 0) {\r\n return null;\r\n }\r\n return (React.createElement(S.Container, { ref: ref },\r\n React.createElement(Dots, { itemCount: carousel.maxIndex + 1, activeIndex: carousel.activeIndex }),\r\n React.createElement(Controls, { ...props })));\r\n});\r\nPagination.displayName = 'CarouselPagination';\r\nexport default Pagination;\r\n","import brand from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport { Device, from } from '@helpers/media';\r\nimport MotionTrack from '@stories/Components/Misc/Carousels/Carousel/MotionTrack/MotionTrack';\r\nimport PaginationStyles from '@stories/Components/Misc/Carousels/Carousel/Pagination/Pagination.styles';\r\nimport HeadingSummaryBlockStyles from '@stories/Components/Misc/HeadingSummaryBlock/HeadingSummaryBlock.styles';\r\nimport SectionWrapper from '@stories/Components/Misc/SectionWrapper/SectionWrapper';\r\nimport SectionWrapperStyles from '@stories/Components/Misc/SectionWrapper/SectionWrapper.styles';\r\nimport styled from 'styled-components';\r\nconst Container = styled(SectionWrapper) `\r\n --bgColour: transparent;\r\n --fgColour: ${brand.global.black};\r\n\r\n background-color: var(--bgColour);\r\n color: var(--fgColour);\r\n overflow: hidden;\r\n\r\n @media ${from(Device.Desktop)} {\r\n ${SectionWrapperStyles.Inner} {\r\n display: grid;\r\n\r\n &:has(${PaginationStyles.Container}) {\r\n grid-template-columns: 1fr min-content;\r\n column-gap: ${fluid(50, 80)};\r\n }\r\n }\r\n }\r\n\r\n ${HeadingSummaryBlockStyles.Container} {\r\n margin-bottom: ${fluid(32, 58)};\r\n }\r\n\r\n ${PaginationStyles.Container} {\r\n margin: 32px 0 0;\r\n\r\n @media ${from(Device.Desktop)} {\r\n margin: 0 0 ${fluid(32, 58)};\r\n grid-row: 1;\r\n grid-column: 2 / span 1;\r\n }\r\n }\r\n`;\r\nconst CarouselWrapper = styled.div `\r\n --itemPeek: 16px;\r\n --itemGutter: var(--gutterWidth);\r\n --visibleItems: 1;\r\n\r\n margin: 0 calc(var(--itemGutter) * -0.5);\r\n\r\n @media ${from(Device.TabletSmall)} {\r\n --visibleItems: 2;\r\n }\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n --visibleItems: 3;\r\n }\r\n\r\n @media ${from(Device.Desktop)} {\r\n --itemPeek: 0px;\r\n --visibleItems: 4;\r\n\r\n grid-row: 2;\r\n\r\n ${Container}:has(${PaginationStyles.Container}) & {\r\n grid-column: 1 / span 2;\r\n }\r\n }\r\n`;\r\nconst Track = styled(MotionTrack) ``;\r\nconst Item = styled.li `\r\n display: flex;\r\n flex: 0 0 calc(100% / var(--visibleItems) - (var(--itemPeek, 0px) / var(--visibleItems)));\r\n padding: 0 calc(var(--itemGutter) / 2);\r\n\r\n &[data-is-featured='true'] {\r\n @media ${from(Device.TabletLarge)} {\r\n flex: 0 0 calc(200% / var(--visibleItems) - (var(--itemPeek, 0px) / var(--visibleItems)));\r\n }\r\n }\r\n`;\r\nconst GenericContentCarouselStyles = {\r\n CarouselWrapper,\r\n Container,\r\n Item,\r\n Track,\r\n};\r\nexport default GenericContentCarouselStyles;\r\n","import { Device, until } from '@helpers/media';\r\nimport { withMotion } from '@hoc/withMotion';\r\nimport useMedia from '@hooks/useMedia';\r\nimport CarouselProvider from '@stories/Components/Misc/Carousels/Carousel/CarouselProvider/CarouselProvider';\r\nimport Pagination from '@stories/Components/Misc/Carousels/Carousel/Pagination/Pagination';\r\nimport HeadingSummaryBlock from '@stories/Components/Misc/HeadingSummaryBlock/HeadingSummaryBlock';\r\nimport { MotionConfig } from 'framer-motion';\r\nimport * as React from 'react';\r\nimport S from './FullWidthCarousel.styles';\r\nfunction FullWidthCarousel(props) {\r\n const paddingOffset = useMedia([until(Device.Desktop)], [16], 0);\r\n if (!props.items || props.items.length === 0) {\r\n return null;\r\n }\r\n return (React.createElement(S.Container, { translations: props.translations },\r\n React.createElement(HeadingSummaryBlock, { ...props, layout: \"split\" }),\r\n React.createElement(MotionConfig, { transition: { duration: 0.3, ease: 'easeOut' } },\r\n React.createElement(CarouselProvider, { count: props.items.length, paddingOffset: paddingOffset },\r\n React.createElement(S.CarouselWrapper, null,\r\n React.createElement(S.Track, { trackMutations: true }, props.items.map((item, i) => (React.createElement(S.Item, { key: `fw-carousel-${item.id}-${i}`, \"data-is-featured\": item.featured }, props.renderItem(item, i)))))),\r\n React.createElement(Pagination, { translations: props.translations })))));\r\n}\r\nexport default withMotion(FullWidthCarousel);\r\n","import brand, { BrandColours } from '@helpers/brand';\r\nimport { fluid } from '@helpers/fluid';\r\nimport { siteWide } from '@helpers/grid';\r\nimport { Device, from } from '@helpers/media';\r\nimport ContentCardStyles from '@stories/Components/Cards/ContentCard/ContentCard.styles';\r\nimport FullWidthCarouselStyles from '@stories/Components/Misc/Carousels/FullWidthCarousel/FullWidthCarousel.styles';\r\nimport HeadingSummaryBlockStyles from '@stories/Components/Misc/HeadingSummaryBlock/HeadingSummaryBlock.styles';\r\nimport SectionWrapper from '@stories/Components/Misc/SectionWrapper/SectionWrapper';\r\nimport SectionWrapperStyles from '@stories/Components/Misc/SectionWrapper/SectionWrapper.styles';\r\nimport styled from 'styled-components';\r\nconst Outer = styled.div `\r\n scroll-margin: var(--headerHeight, 0px) 0 0;\r\n overflow: hidden;\r\n --fgColour: ${brand.primary.blue.dark};\r\n\r\n ${HeadingSummaryBlockStyles.Container} {\r\n color: var(--fgColour);\r\n }\r\n\r\n ${FullWidthCarouselStyles.Container} {\r\n --fgColour: ${brand.primary.blue.dark};\r\n\r\n ${SectionWrapperStyles.Inner} {\r\n padding-bottom: ${fluid(32, 48)};\r\n }\r\n }\r\n\r\n ${FullWidthCarouselStyles.CarouselWrapper} {\r\n @media ${from(Device.Desktop)} {\r\n overflow: hidden;\r\n }\r\n }\r\n\r\n ${FullWidthCarouselStyles.CarouselWrapper} {\r\n --visibleItems: 1;\r\n\r\n @media ${from(Device.Tablet)} {\r\n --visibleItems: 2;\r\n }\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n --visibleItems: 3;\r\n }\r\n\r\n @media ${from(Device.Desktop)} {\r\n --visibleItems: 4;\r\n }\r\n }\r\n\r\n ${FullWidthCarouselStyles.Item} ${ContentCardStyles.Container} {\r\n width: 100%;\r\n }\r\n\r\n @media print {\r\n display: none;\r\n }\r\n`;\r\nconst Container = styled(SectionWrapper) `\r\n overflow: hidden;\r\n\r\n [data-variant=${BrandColours.BlueDark}] & {\r\n --sectionBackground: ${brand.primary.blue.dark};\r\n --sectionColour: ${brand.global.white};\r\n }\r\n\r\n background-color: var(--sectionBackground);\r\n color: var(--sectionColour);\r\n\r\n ${HeadingSummaryBlockStyles.Container} {\r\n margin-bottom: ${fluid(16, 58)};\r\n }\r\n`;\r\nconst Grid = styled.div `\r\n display: grid;\r\n gap: ${fluid(24, 32)};\r\n grid-template-columns: 1fr;\r\n\r\n @media ${from(Device.Tablet)} {\r\n grid-template-columns: 1fr 1fr;\r\n }\r\n\r\n @media ${from(Device.TabletLarge)} {\r\n grid-template-columns: repeat(3, 1fr);\r\n }\r\n\r\n @media ${from(Device.Desktop)} {\r\n grid-template-columns: repeat(4, 1fr);\r\n }\r\n\r\n ${ContentCardStyles.Container} {\r\n &[data-is-featured='true'] {\r\n @media ${from(Device.TabletLarge)} {\r\n grid-column: span 2;\r\n }\r\n }\r\n }\r\n`;\r\nconst Base = styled.div `\r\n ${siteWide};\r\n\r\n padding-bottom: 80px;\r\n\r\n @media ${from(Device.Tablet)} {\r\n text-align: center;\r\n }\r\n\r\n @media ${from(Device.Desktop)} {\r\n padding-left: 0;\r\n }\r\n\r\n [data-is-grid='true'] & {\r\n padding-top: ${fluid(32, 58)};\r\n }\r\n`;\r\nconst ContentCardsStyles = {\r\n Base,\r\n Container,\r\n Grid,\r\n Outer,\r\n};\r\nexport default ContentCardsStyles;\r\n","import { withMotion } from '@hoc/withMotion';\r\nimport { LinkButton } from '@stories/Components/Buttons/Button/Button';\r\nimport ContentCard from '@stories/Components/Cards/ContentCard/ContentCard';\r\nimport FullWidthCarousel from '@stories/Components/Misc/Carousels/FullWidthCarousel/FullWidthCarousel';\r\nimport HeadingSummaryBlock from '@stories/Components/Misc/HeadingSummaryBlock/HeadingSummaryBlock';\r\nimport * as React from 'react';\r\nimport S from './ContentCards.styles';\r\nconst ContentCards = (props) => {\r\n if (!props.items) {\r\n return null;\r\n }\r\n return (React.createElement(S.Outer, { id: props.anchorId, \"data-is-grid\": props.pageLayout === 'grid' }, props.pageLayout === 'carousel' ? (React.createElement(React.Fragment, null,\r\n React.createElement(FullWidthCarousel, { subheading: props.subheading, heading: props.heading, summary: props.summary ? `

${props.summary}

` : undefined, items: props.items, renderItem: (item) => (React.createElement(ContentCard, { key: item.id, ...item, headingType: \"h3\", translations: props.translations })), translations: props.translations }),\r\n props.baseCta && (React.createElement(S.Base, null,\r\n React.createElement(LinkButton, { href: props.baseCta.url, buttonType: \"primary\", target: props.baseCta.target ?? '_self' }, props.baseCta.text ?? 'View All'))))) : (React.createElement(S.Container, { translations: props.translations },\r\n React.createElement(HeadingSummaryBlock, { ...props, summary: props.summary ? `

${props.summary}

` : undefined, layout: props.summary ? 'split' : 'central' }),\r\n React.createElement(S.Grid, null, props.items.map((item) => (React.createElement(ContentCard, { key: item.id, ...item, \"data-is-featured\": item.featured, headingType: \"h3\", translations: props.translations })))),\r\n props.baseCta && (React.createElement(S.Base, null,\r\n React.createElement(LinkButton, { href: props.baseCta.url, buttonType: props.baseCta.buttonType ? props.baseCta.buttonType : 'primary', target: props.baseCta.target ?? '_self', icon: props.baseCta.icon }, props.baseCta.text)))))));\r\n};\r\nexport default withMotion(ContentCards);\r\n","import { __rest, __assign } from 'tslib';\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { MotionConfigContext } from '../../context/MotionConfigContext.mjs';\nimport { loadExternalIsValidProp } from '../../render/dom/utils/filter-props.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\n\n/**\n * `MotionConfig` is used to set configuration options for all children `motion` components.\n *\n * ```jsx\n * import { motion, MotionConfig } from \"framer-motion\"\n *\n * export function App() {\n * return (\n * \n * \n * \n * )\n * }\n * ```\n *\n * @public\n */\nfunction MotionConfig(_a) {\n var children = _a.children, isValidProp = _a.isValidProp, config = __rest(_a, [\"children\", \"isValidProp\"]);\n isValidProp && loadExternalIsValidProp(isValidProp);\n /**\n * Inherit props from any parent MotionConfig components\n */\n config = __assign(__assign({}, useContext(MotionConfigContext)), config);\n /**\n * Don't allow isStatic to change between renders as it affects how many hooks\n * motion components fire.\n */\n config.isStatic = useConstant(function () { return config.isStatic; });\n /**\n * Creating a new config context object will re-render every `motion` component\n * every time it renders. So we only want to create a new one sparingly.\n */\n var context = useMemo(function () { return config; }, [JSON.stringify(config.transition), config.transformPagePoint, config.reducedMotion]);\n return (React.createElement(MotionConfigContext.Provider, { value: context }, children));\n}\n\nexport { MotionConfig };\n"],"names":["withMotion","WrappedComponent","displayName","name","ComponentWithMotion","props","React","LazyMotion","features","domAnimation","strict","queries","values","defaultValue","getValue","index","mediaQueryLists","findIndex","mql","matches","value","setValue","useState","setMediaQueryLists","useEffect","map","query","window","matchMedia","handler","forEach","addListener","removeListener","Container","styled","div","withConfig","componentId","brand","primary","blue","dark","global","white","purple","transition","light","grey","Image","CategoryTagsStyles","ImageContainer","imageWrapperPreserveRatio","from","Device","TabletLarge","img","imageCoverContainer","MemberAccess","fonts","lato","bold","rgba","fluid","MemberIcon","ContentWrapper","Tablet","ButtonStyles","ContentArea","Heading","h3","semiBold","DateTime","Date","Time","Location","BaseContentArea","_props$featured","_props$translations","_props$image","_props$translations2","srcs","image","getSrcs","undefined","sizes","until","Desktop","DesktopLarge","S","featured","cta","as","href","url","target","restricted","getSvgIcon","memberHasAccess","InterfaceIcon","Unlocked","Lock","translations","src","srcSet","alt","altText","loading","CategoryTags","id","tags","categoryTags","headingType","heading","showIcons","time","location","date","CalendarBlank","Clock","FakeButton","buttonType","icon","ArrowRight","iconOnly","Tag","BrandColours","BlueDark","BlueLight","PurpleDark","PurpleLight","OrangeMid","secondary","orange","mid","GreyPrimary","TagInner","TagIcon","TagText","span","_props$tags","length","tag","key","theme","text","_ref","activeIndex","itemCount","Dots","Dot","style","Controls","ref","_props$translations$g","_props$translations$g2","_props$translations$g3","_props$translations3","carousel","useCarouselContext","className","FocusRing","focusRingClass","Button","disabled","wrap","onClick","event","preventDefault","goToPrev","Icon","maxIndex","goToNext","Pagination","SectionWrapper","black","SectionWrapperStyles","Inner","PaginationStyles","HeadingSummaryBlockStyles","CarouselWrapper","TabletSmall","Track","MotionTrack","Item","li","paddingOffset","useMedia","items","HeadingSummaryBlock","layout","MotionConfig","duration","ease","CarouselProvider","count","trackMutations","item","i","renderItem","Outer","FullWidthCarouselStyles","ContentCardStyles","Grid","Base","siteWide","_props$baseCta$target","_props$baseCta$text","_props$baseCta$target2","anchorId","pageLayout","FullWidthCarousel","subheading","summary","ContentCard","baseCta","LinkButton","_a","children","isValidProp","config","useContext","isStatic","context","useMemo","JSON","stringify","transformPagePoint","reducedMotion","Provider"],"sourceRoot":""}