{"version":3,"sources":["webpack:///./Avensia.Common/Features/Shared/SharedComponents/molecules/ImageVideoBackground.tsx","webpack:///./Avensia.Common/Features/Shared/Page/PageContent.tsx","webpack:///./Avensia.Common/Features/Shared/Video/VideoSource.tsx","webpack:///./Avensia.Common/Features/Shared/Video/VideoPlayer.tsx","webpack:///./Avensia.Common/Features/Shared/SharedComponents/atoms/Breadcrumbs.tsx","webpack:///./Avensia.Common/Features/Article/ArticlePage.tsx"],"names":["AspectImageVideoBackground","props","children","image","paddingTop","videoSources","borderRadius","breakPoint","className","preset","isMobile","gotVideo","length","css","background","url","size","position","autoPlay","loop","muted","playsInline","coverContent","sources","ViewportSizeVideoBackground","fixedVideo","height","compose","hasVideo","Div","width","clipPath","overflow","AutoSizeVideoBackground","TopLabel","margin","top","bottom","ReadMoreWrap","div","display","marginTop","ReadMore","span","color","monochrome","a11ygrey","cursor","textTransform","fontSize","fontWeight","TopContentHeading","wordBreak","BreadcrumbWrapper","isCompact","breadcrumbs","isProductPage","rowGap","marginLeft","marginRight","vertical","TopContentWideWrapper","padding","TopContentWide","TopContent","TopContentButton","TopContentIntro","p","xy","TopContentWrap","TopContentChildren","label","heading","headingSize","modalButtonText","modalButtonClick","modalButtonIconAfter","intro","handleReadMore","readMoreLabel","Small","x","text","onClick","iconAfter","theme","WhiteToBlack","render","this","type","videoType","src","Component","videoRef","playerRef","current","hlsSource","find","device","isSupported","hls","loadSource","attachMedia","on","Events","MANIFEST_PARSED","play","canPlayType","volume","ref","onEnded","style","zIndex","left","objectFit","objectPosition","filter","map","source","i","key","BaseWrap","textDecoration","flexDirection","VerticalWrap","transform","justifyContent","writingMode","alignItems","HorizontalWrap","flexWrap","overflowX","overflowY","scrollbarWidth","ListWrap","ListItem","gap","BreadCrumbLink","whiteSpace","white","opaqueColor","black","halfTransparentColor","rgbaFilters","white50","black50","containerRef","scrollLeft","offsetWidth","Wrapper","itemType","itemScope","crumb","index","array","itemProp","to","title","content","String","window","location","protocol","host","FlexElement","FlexColumnElement","UpSwirl","Breadcrumbs","Label","marginBottom","HeadingWrap","TagContainer","IntroWrap","y","TagLabel","ArticlePage","state","currentBreakpoint","dispatch","page","labels","tag","tags","imageSmallScreen","mainIntro","preambleRef","introText","document","imageContainerPadding","ThreeToFour","SixteenToNine","scrollTo","behavior","D16_M16","upperCase","D56_M32","join","FullWidth","scrollIntoView","block","lineHeight","D130_M130","scrollToArticle","D32_M24","for","mainContentArea"],"mappings":"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","file":"assets/23.chunk.f3935b04d0b2307eae72.js","sourcesContent":["import React from 'react';\r\nimport { AspectRatioInner, AspectRatioOuter, OverlayNotABackdrop } from 'Shared/SharedComponents/atoms/AspectRatio';\r\nimport { styled, StyledProps } from '@glitz/react';\r\nimport { setImageBackground, Preset } from 'Shared/image-background';\r\nimport VideoSourceType from 'Shared/ViewModels/VideoSourceViewModel.type';\r\nimport VideoPlayer from 'Shared/Video/VideoPlayer'\r\nimport { isCompact } from 'Shared/Viewport';\r\n\r\ntype BasePropTypes = {\r\n children?: React.ReactNode;\r\n image?: { url?: string };\r\n videoSources?: VideoSourceType[];\r\n breakPoint: number;\r\n preset?: Preset;\r\n};\r\n\r\ntype ImageVideoBackgroundPropTypes = BasePropTypes & {\r\n borderRadius?: number;\r\n paddingTop: string;\r\n className?: string;\r\n};\r\n\r\ntype ViewportSizeVideoBackgroundPropTypes = BasePropTypes & {\r\n fixedVideo?: boolean;\r\n borderRadius?: number;\r\n height?: string;\r\n gradientBg?: boolean;\r\n};\r\n\r\nexport const AspectImageVideoBackground = (\r\n (\r\n props: ImageVideoBackgroundPropTypes & {},\r\n ) => {\r\n const { children,\r\n image,\r\n paddingTop,\r\n videoSources,\r\n borderRadius,\r\n breakPoint,\r\n className,\r\n preset } = props;\r\n\r\n const isMobile = isCompact(breakPoint);\r\n const gotVideo = (videoSources?.length ?? 0) > 0;\r\n return (\r\n \r\n 0 ? `${borderRadius}px` : '0px'\r\n }}\r\n >\r\n {gotVideo && (\r\n \r\n \r\n \r\n )}\r\n {children}\r\n \r\n \r\n );\r\n }\r\n);\r\n\r\nexport const ViewportSizeVideoBackground = styled(\r\n (\r\n props: ViewportSizeVideoBackgroundPropTypes & StyledProps,\r\n ) => {\r\n const { children,\r\n image,\r\n videoSources,\r\n breakPoint,\r\n fixedVideo = false,\r\n //css,\r\n borderRadius,\r\n preset,\r\n height = '100%',\r\n compose,\r\n } = props;\r\n const hasVideo = (videoSources?.length ?? 0) > 0;\r\n const isMobile = isCompact(breakPoint);\r\n return (\r\n 0 ? `${borderRadius}px` : '0px'\r\n }),\r\n ...(fixedVideo && {\r\n clipPath: 'inset(0 0 0 0)',\r\n overflow: 'hidden',\r\n }),\r\n })}\r\n >\r\n {hasVideo && (\r\n \r\n \r\n \r\n )}\r\n {children}\r\n \r\n );\r\n }\r\n);\r\n\r\ntype AutoSizeVideoBackgroundPropTypes = BasePropTypes & {\r\n borderRadius: number;\r\n gradientBg?: boolean;\r\n};\r\n\r\nexport const AutoSizeVideoBackground = styled(\r\n (\r\n props: AutoSizeVideoBackgroundPropTypes & StyledProps,\r\n ) => {\r\n const { children,\r\n image,\r\n videoSources,\r\n breakPoint,\r\n borderRadius,\r\n preset,\r\n compose,\r\n } = props;\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n });\r\n","import React from 'react';\r\nimport { styled, StyledProps } from '@glitz/react';\r\nimport { H1, ResponsiveSize, HeadingLabel } from 'Shared/SharedComponents/atoms/Typography';\r\nimport { ButtonHeight, ButtonTheme, SolidButton } from 'Shared/TextButtons';\r\nimport Breadcrumbs from 'Shared/SharedComponents/atoms/Breadcrumbs';\r\nimport BreadcrumbsViewModel from 'Shared/Breadcrumbs/BreadcrumbsViewModel.type';\r\nimport { createGridClasses, createOffsetGridClassLarge } from 'Shared/grid';\r\nimport { GridWrap } from 'Shared/PageLayout';\r\nimport * as style from 'Shared/Style';\r\n\r\ntype TopContentPropType = React.HTMLAttributes & {\r\n label?: string;\r\n heading: string;\r\n headingSize?: ResponsiveSize;\r\n intro: string;\r\n isCompact: boolean;\r\n modalButtonText?: string;\r\n modalButtonIconAfter?: React.ReactNode;\r\n modalButtonClick?: () => void;\r\n handleReadMore?: Function | boolean;\r\n readMoreLabel?: String\r\n};\r\n\r\ntype TopContentWidePropType = TopContentPropType & {\r\n breadcrumbs?: BreadcrumbsViewModel[];\r\n};\r\n\r\ntype BreadcrumbWrapperPropType = React.HTMLAttributes & {\r\n isCompact: boolean;\r\n breadcrumbs?: BreadcrumbsViewModel[];\r\n isProductPage?: boolean;\r\n};\r\n\r\nconst TopLabel = styled(HeadingLabel, {\r\n margin: {\r\n top: 0,\r\n bottom: '16px',\r\n },\r\n});\r\n\r\nconst ReadMoreWrap = styled.div({\r\n display: 'flex',\r\n marginTop: '8px',\r\n});\r\n\r\nconst ReadMore = styled.span({\r\n color: style.colors.monochrome.a11ygrey,\r\n cursor: 'pointer',\r\n textTransform: 'uppercase',\r\n fontSize: '14px',\r\n fontWeight: 500,\r\n});\r\n\r\nconst TopContentHeading = styled(H1, {\r\n wordBreak: 'break-word'\r\n});\r\n\r\nexport const BreadcrumbWrapper = styled((props: BreadcrumbWrapperPropType & StyledProps) => {\r\n const { isCompact, breadcrumbs, children, isProductPage = false, compose } = props;\r\n\r\n return (\r\n \r\n \r\n {breadcrumbs && }\r\n \r\n {children}\r\n \r\n );\r\n});\r\n\r\nconst TopContentWideWrapper = styled(BreadcrumbWrapper, {\r\n padding: { bottom: '24px' },\r\n ['@media ' + style.mediaMinLarge]: {\r\n padding: { bottom: '48px' }\r\n },\r\n})\r\n\r\nexport const TopContentWide = (props: TopContentWidePropType) => {\r\n const { isCompact, breadcrumbs, children } = props;\r\n return (\r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n\r\nconst TopContentButton = styled(SolidButton, {\r\n display: 'inline-flex',\r\n marginTop: '12px',\r\n ['@media ' + style.mediaMinLarge]: {\r\n marginTop: '24px',\r\n },\r\n})\r\n\r\nconst TopContentIntro = styled.p({\r\n margin: { xy: 0 },\r\n padding: { xy: 0 }\r\n})\r\n\r\nconst TopContentWrap = styled.div({\r\n ['@media ' + style.mediaUpToLarge]: {\r\n marginTop: '16px',\r\n },\r\n})\r\n\r\nconst TopContentChildren = styled.div({\r\n marginTop: '24px',\r\n ['@media ' + style.mediaMinLarge]: {\r\n marginTop: '48px',\r\n },\r\n})\r\n\r\nexport const TopContent = (props: TopContentPropType) => {\r\n const {\r\n isCompact,\r\n label,\r\n heading,\r\n headingSize,\r\n modalButtonText,\r\n modalButtonClick,\r\n modalButtonIconAfter,\r\n intro,\r\n children,\r\n handleReadMore = false,\r\n readMoreLabel = ''\r\n } = props;\r\n return (\r\n \r\n {label && {label}}\r\n \r\n \r\n {heading}\r\n {modalButtonText && (\r\n modalButtonClick()}\r\n iconAfter={modalButtonIconAfter && modalButtonIconAfter}\r\n theme={ButtonTheme.WhiteToBlack}\r\n />\r\n )}\r\n \r\n \r\n \r\n {intro}\r\n {handleReadMore &&\r\n \r\n {\r\n if (typeof handleReadMore !== 'function') {\r\n return\r\n }\r\n handleReadMore()\r\n }}>\r\n {readMoreLabel}\r\n \r\n \r\n }\r\n \r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\r\n\r\ntype ConnectedPropType = {\r\n type: string;\r\n url: string;\r\n};\r\n\r\ntype PropType = ConnectedPropType;\r\n\r\nclass VideoSource extends React.Component {\r\n render() {\r\n const props = this.props;\r\n const { type, url } = props;\r\n let videoType = 'video/mp4';\r\n switch(type)\r\n {\r\n case 'HLS':\r\n videoType = 'application/x-mpegURL';\r\n break;\r\n case 'MP4':\r\n videoType = 'video/mp4';\r\n break;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default VideoSource;\r\n","import React, { useEffect, useRef } from 'react';\r\nimport VideoSourceType from 'Shared/ViewModels/VideoSourceViewModel.type';\r\nimport Hls from \"hls.js\";\r\nimport VideoSource from './VideoSource';\r\n\r\ntype VideoType = {\r\n videoRef?: React.MutableRefObject;\r\n autoPlay: boolean;\r\n loop: boolean;\r\n muted: boolean;\r\n isMobile: boolean;\r\n coverContent: boolean;\r\n playsInline: boolean;\r\n fixedVideo?: boolean;\r\n sources?: VideoSourceType[];\r\n onEnded?: () => void,\r\n};\r\n\r\nconst VideoPlayer = (props: VideoType) => {\r\n const { sources, videoRef, autoPlay, loop, muted, isMobile, fixedVideo = false, coverContent, playsInline } = props;\r\n const playerRef = videoRef ? videoRef : useRef(null);\r\n\r\n useEffect(() => {\r\n if(playerRef && playerRef.current) {\r\n\r\n const video = playerRef.current;\r\n const hlsSource = sources?.find(x => x.type === 'HLS' && (x.device === 'ALL' || x.device === (isMobile ? 'MOBILE' : 'DESKTOP')));\r\n if (hlsSource && Hls.isSupported()) {\r\n var hls = new Hls();\r\n hls.loadSource(hlsSource.url);\r\n hls.attachMedia(video);\r\n hls.on(Hls.Events.MANIFEST_PARSED, function() { \r\n if(autoPlay) {\r\n video.play();\r\n }\r\n });\r\n } else if (hlsSource && video.canPlayType('application/vnd.apple.mpegurl')) {\r\n video.src = hlsSource.url;\r\n }\r\n\r\n if(!muted) {\r\n video.volume = 0.5;\r\n }\r\n }\r\n }, []);\r\n \r\n return (\r\n \r\n {sources?.filter(x => x.type !== \"HLS\").map((source, i) => {\r\n return (\r\n ((source.device === 'ALL' ||\r\n (source.device === 'DESKTOP' && !isMobile) ||\r\n (source.device === 'MOBILE' && isMobile)) && source.type !== 'HLS') && (\r\n \r\n )\r\n );\r\n })} \r\n \r\n );\r\n};\r\n\r\nexport default VideoPlayer;\r\n\r\n","import { styled } from '@glitz/react';\r\nimport React, { useRef, useEffect } from 'react';\r\nimport Link from 'Shared/Link';\r\nimport { TextLabel } from './Typography';\r\nimport { Down12x12, Right12x12 } from 'Shared/Icons/Chevron';\r\nimport BreadcrumbsViewModel from 'Shared/Breadcrumbs/BreadcrumbsViewModel.type';\r\nimport * as style from 'Shared/Style';\r\n\r\nconst BaseWrap = styled.div({\r\n textDecoration: 'none',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n padding: { xy: '0px' },\r\n})\r\n\r\nconst VerticalWrap = styled(BaseWrap, {\r\n transform: 'rotate(180deg)',\r\n justifyContent: 'center',\r\n writingMode: 'vertical-rl',\r\n alignItems: 'start',\r\n ['@media ' + style.mediaUpToLarge]: {\r\n padding: {\r\n x: '12px'\r\n }\r\n },\r\n})\r\n\r\nconst HorizontalWrap = styled(BaseWrap, {\r\n alignItems: 'center',\r\n flexWrap: 'nowrap',\r\n overflowX: 'auto',\r\n overflowY: 'hidden',\r\n scrollbarWidth: 'none',\r\n //@ts-ignore\r\n '-ms-overflow-style': 'none',\r\n '::-webkit-scrollbar': {\r\n display: 'none'\r\n },\r\n ['@media ' + style.mediaUpToLarge]: {\r\n padding: {\r\n x: '12px'\r\n }\r\n },\r\n})\r\n\r\nconst ListWrap = styled.div({\r\n display: 'flex',\r\n alignItems: 'center',\r\n})\r\n\r\nconst ListItem = styled.div({\r\n display: 'flex',\r\n gap: '2px',\r\n alignItems: 'center',\r\n})\r\n\r\nconst BreadCrumbLink = styled(Link, {\r\n whiteSpace: 'nowrap',\r\n textDecoration: 'none',\r\n padding: { xy: '0px' },\r\n})\r\n\r\nexport const Breadcrumbs = (props: { breadcrumbs: BreadcrumbsViewModel[]; vertical?: boolean; white?: boolean, isProductPage?: boolean, isCompact?: boolean }) => {\r\n const { vertical, breadcrumbs, white, isCompact, isProductPage } = props;\r\n const opaqueColor = white ? style.colors.monochrome.white : style.colors.monochrome.black;\r\n const halfTransparentColor = white\r\n ? style.colors.rgbaFilters.white50\r\n : style.colors.rgbaFilters.black50;\r\n\r\n if (breadcrumbs?.length < 1) {\r\n return <>>;\r\n }\r\n\r\n const containerRef = useRef(null)\r\n\r\n useEffect(() => {\r\n if (vertical) {\r\n return () => {}\r\n }\r\n if(containerRef && containerRef.current !== null) {\r\n containerRef.current.scrollLeft = containerRef.current.offsetWidth; \r\n }\r\n\r\n return () => {} \r\n }, [breadcrumbs])\r\n const Wrapper = vertical ? VerticalWrap : HorizontalWrap;\r\n return (\r\n \r\n \r\n {breadcrumbs?.map((crumb, index, array) => {\r\n return (\r\n \r\n {index !== 0 &&\r\n (vertical ? (\r\n \r\n ) : (\r\n \r\n )\r\n )\r\n }\r\n \r\n \r\n {crumb.text} \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\nexport default Breadcrumbs;\r\n","/**\r\n * @ComponentFor ArticlePageViewModel\r\n */\r\n\r\nimport React, { Ref, useRef, useEffect } from 'react';\r\nimport {scrollPosition} from '@polarnopyret/scope';\r\nimport connect from 'Shared/connect';\r\nimport { isCompact as functionIsCompact } from 'Shared/Viewport';\r\nimport { styled } from '@glitz/react';\r\nimport ArticlePageViewModel from './ArticlePageViewModel.type';\r\nimport {\r\n H1,\r\n ResponsiveSize,\r\n ResponsiveLineHeight,\r\n Paragraph,\r\n ArticleTag,\r\n TextBlockSmall,\r\n HeadingLabel,\r\n} from 'Shared/SharedComponents/atoms/Typography';\r\nimport { EpiProperty, epiPropertyValue } from '@polarnopyret/scope-episerver';\r\nimport { AspectImageVideoBackground } from 'Shared/SharedComponents/molecules/ImageVideoBackground';\r\nimport { Down24x40, Up32x64 } from 'Shared/Icons/ArrowSwirl';\r\nimport { Preset } from 'Shared/image-sizes';\r\nimport { calculateTopPadding, Ratio } from 'Shared/AspectRatio';\r\nimport Page from 'Shared/Page';\r\nimport { BreadcrumbWrapper } from 'Shared/Page/PageContent';\r\nimport { createGridClasses } from 'Shared/grid';\r\nimport { selectDeviceImageFromProperty } from 'Shared/utils';\r\nimport * as style from 'Shared/Style';\r\n\r\nconst FlexElement = styled.div({\r\n display: 'flex',\r\n width: '100%',\r\n height: '100%',\r\n justifyContent: 'center',\r\n alignItems: 'top',\r\n color: style.colors.monochrome.white,\r\n paddingTop: '43%',\r\n ['@media ' + style.mediaMinLarge]: {\r\n paddingTop: '33%',\r\n },\r\n});\r\n\r\nconst FlexColumnElement = styled.div({\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center',\r\n gap: '8px',\r\n color: style.colors.monochrome.white,\r\n cursor: 'pointer',\r\n});\r\n\r\nconst UpSwirl = styled(Up32x64, {\r\n position: 'fixed', \r\n bottom: '24px', \r\n left: '48px', \r\n cursor: 'pointer'\r\n})\r\n\r\nconst Breadcrumbs = styled(BreadcrumbWrapper, {\r\n color: style.colors.monochrome.black,\r\n})\r\n\r\nconst Label = styled(HeadingLabel, {\r\n marginBottom: '16px'\r\n})\r\n\r\nconst HeadingWrap = styled.div({\r\n marginBottom: '16px'\r\n})\r\n\r\nconst TagContainer = styled.div({\r\n display: 'flex', \r\n flexDirection: 'column', \r\n justifyContent: 'end', \r\n marginBottom: '16px' \r\n})\r\n\r\nconst IntroWrap = styled.div({\r\n margin: { y: '40px' },\r\n ['@media ' + style.mediaMinLarge]: {\r\n margin: { y: '80px' },\r\n },\r\n})\r\n\r\nconst TagLabel = styled(TextBlockSmall, {\r\n marginBottom: '8px'\r\n})\r\n\r\nexport const ArticlePage = connect(\r\n (state) => ({\r\n currentBreakpoint: state.currentBreakpoint,\r\n }),\r\n (dispatch) => ({}),\r\n)((props: ArticlePageViewModel & { currentBreakpoint: number }) => {\r\n const { currentBreakpoint, breadcrumbs, page, labels } = props;\r\n const { heading, tag, tags, image, imageSmallScreen, mainIntro } = page;\r\n const preambleRef: Ref = useRef();\r\n const isCompact = functionIsCompact(currentBreakpoint);\r\n const introText = epiPropertyValue(mainIntro);\r\n\r\n useEffect(() => {\r\n window?.document && scrollPosition(0);\r\n }, []);\r\n\r\n const imageContainerPadding = isCompact ? `${calculateTopPadding(Ratio.ThreeToFour)}` : `${calculateTopPadding(Ratio.SixteenToNine)}`;\r\n\r\n return (\r\n \r\n {!isCompact && (\r\n {\r\n window.scrollTo({ top: 0, left: 0, behavior: 'smooth', });\r\n }}\r\n />\r\n )}\r\n \r\n \r\n \r\n {tag && epiPropertyValue(tag)}\r\n \r\n \r\n \r\n {heading && epiPropertyValue(heading)}\r\n \r\n \r\n {epiPropertyValue(tags)?.length > 0 && (\r\n \r\n \r\n {labels.tags}\r\n \r\n {epiPropertyValue(tags)?.join(', ')}\r\n \r\n )}\r\n \r\n \r\n \r\n preambleRef?.current?.scrollIntoView({ behavior: 'smooth', block: 'center' })}>\r\n \r\n {labels && labels.scrollToArticle}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {introText && (\r\n \r\n {introText}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default ArticlePage;\r\n"],"sourceRoot":""}