{"version":3,"file":"static/js/PressRoomHome.420f8d8e52e10a7fa5ff.js","mappings":"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","sources":["helpers/lazyloading.ts","pages/public/styleObjects/pressRoomHome.ts","components/PressRoomHome/PressKitStyles.ts","components/PressRoomHome/PressKit.jsx","components/styleObjects/PressRoomSectionStyle.ts","components/PressRoomSection/PressRoomSectionListCards.jsx","pages/public/PressRoomHome.tsx"],"sourcesContent":["export function getLazyLoadByIndex(index: number, noLazyLoadCount = 2): boolean {\n    return !(index <= noLazyLoadCount - 1);\n}\n","import { v2Colors, breakpoints } from '@web-for-marketing/react-ui';\n\nexport const pressRoomHomeStyles = {\n    blogHomeBackground: {\n        backgroundColor: v2Colors.core.snow,\n        zIndex: 1,\n    },\n    innerContainer: {\n        '& > *': {\n            width: '100%',\n        },\n    },\n    headerBackground: {\n        position: 'relative',\n        padding: '5.7rem 0 0',\n        zIndex: 1,\n        '&:after': {\n            content: '\"\"',\n            position: 'absolute',\n            height: '60%',\n            width: '100%',\n            top: 0,\n            left: 0,\n            backgroundColor: v2Colors.core.cloud,\n            zIndex: -1,\n        },\n        [`@media (max-width: ${breakpoints.md})`]: {\n            padding: '4rem 0 0',\n            '&:after': {\n                backgroundColor: v2Colors.core.snow,\n            },\n        },\n    },\n    inTheNewsContainer: {\n        margin: '0 auto',\n        maxWidth: '1564px',\n        '@media (max-width: 1958px)': {\n            margin: '0 10.0694vw',\n        },\n        [`@media (max-width: ${breakpoints.md})`]: {\n            margin: '0 9.6vw',\n        },\n    },\n};\n","import { v2Colors, breakpoints } from '@web-for-marketing/react-ui';\n\nexport const pressKitStyles = {\n    subTitle: {\n        marginBottom: '2rem',\n    },\n    container: {\n        '& > *': {\n            textAlign: 'center',\n        },\n    },\n    pressKitBoxLink: {\n        width: '100%',\n        display: 'flex',\n        padding: '4rem 1rem',\n        boxSizing: 'content-box',\n        flexWrap: 'wrap',\n        background: '#FFFFFF',\n        boxShadow: '0px 0px 6px rgba(149,174,187,0.16)',\n        alignItems: 'center',\n        borderRadius: '1rem',\n        '& > *': {\n            width: '100%',\n            display: 'block',\n        },\n    },\n    pressKitBox: {\n        textAlign: 'center',\n    },\n    pressKitBoxImage: {\n        maxWidth: '9rem',\n        marginBottom: '2rem',\n    },\n    pressKitBoxMediaGuidelinesImage: {\n        width: '9.6rem',\n        height: '9rem',\n    },\n    PRLink: {\n        color: v2Colors.core.innovation,\n        textDecoration: 'none',\n        cursor: 'pointer',\n    },\n    [`@media (max-width: ${breakpoints.md})`]: {\n        title: {\n            marginBottom: '2rem',\n        },\n        childContainer: {\n            flexWrap: 'wrap',\n        },\n    },\n} as const;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid } from '@mui/material';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { pressKitStyles as classes } from './PressKitStyles';\nimport { ensureInternalURLTrailingSlash } from '@helpers/string';\nimport { GridContainer, ChildContainer } from '../GeotabGridComponents';\nimport { Picture } from '../Picture';\nimport { v2Colors } from '@web-for-marketing/react-ui';\nimport { CMSLink } from '@components/CMSLink';\nimport { Heading } from '@web-for-marketing/react-ui';\nimport { ClassNames } from '@emotion/react';\nimport { PressRoomImages } from '@helpers/staticImages/pressRoom';\n\nexport function PressKit({ translations }) {\n    const { prefixStringWithBaseUrl } = useStaticValues();\n    let pressKitList = translations.pressKit.pressKitList;\n\n    return (\n        <div\n            style={{\n                background: `linear-gradient(1deg, #0080B2E6 0%, ${\n                    v2Colors.core.geotab\n                } 100%) 0% 0%, url(${prefixStringWithBaseUrl(\n                    PressRoomImages.pkBackground\n                )}) center center / cover no-repeat`,\n            }}\n        >\n            <GridContainer css={classes.container} justifyContent='center' direction='column'>\n                <Heading css={classes.title} variant='h2' color='inversePrimary'>\n                    {translations.pressKit.pressKitTitle}\n                </Heading>\n                <Heading variant='h4' weight='regular' component='p' color='inversePrimary' css={classes.subTitle}>\n                    {translations.pressKit.ourAvailableResources}\n                    <CMSLink type='link' css={classes.PRLink} href='mailto:pr@geotab.com'>\n                        pr@geotab.com\n                    </CMSLink>\n                </Heading>\n                <ChildContainer\n                    alignItems='stretch'\n                    direction='row'\n                    justifyContent='center'\n                    customSpacing='1rem 2%'\n                    css={classes.childContainer}\n                >\n                    {Array.isArray(pressKitList)\n                        ? pressKitList.map(({ name, image, url }) => {\n                            return (\n                                <Grid container item xs={6} md={3} css={classes.pressKitBoxItem} key={name}>\n                                    <CMSLink\n                                        underline='none'\n                                        href={ensureInternalURLTrailingSlash(url)}\n                                        aria-label={`Go to ${name} page`}\n                                        css={classes.pressKitBoxLink}\n                                        type='link'\n                                    >\n                                        <ClassNames>\n                                            {({ css }) => (\n                                                <Picture\n                                                    css={classes.pressKitBoxImage}\n                                                    pictureProps={{ className: css({ height: 'auto' }) }}\n                                                    imagePath={prefixStringWithBaseUrl(image)}\n                                                    lazyLoad={true}\n                                                />\n                                            )}\n                                        </ClassNames>\n                                        <Heading variant='h4' component='h3' weight='medium' color='tertiary'>\n                                            {name}\n                                        </Heading>\n                                    </CMSLink>\n                                </Grid>\n                            );\n                        })\n                        : null}\n                </ChildContainer>\n            </GridContainer>\n        </div>\n    );\n}\n\nPressKit.propTypes = {\n    translations: PropTypes.objectOf(Object).isRequired,\n};\n","import { v2Colors } from '@web-for-marketing/react-ui';\n\nexport const PressRoomSectionStyle = {\n    mainHeader: {\n        width: '100%',\n        marginBottom: '2rem',\n    },\n    newsHeader: {\n        width: '100%',\n        marginTop: '4rem',\n        marginBottom: '2rem',\n    },\n    cardContainer: {\n        marginBottom: '5rem',\n    },\n    cardLinkContainer: {\n        zIndex: 1,\n        display: 'block',\n        width: '100%',\n        height: '100%',\n        boxShadow: 'none',\n        overflow: 'hidden',\n        position: 'relative',\n        transition: 'transform ease 750ms, box-shadow ease 500ms',\n        border: '1px solid #DFE3EA',\n        borderRadius: '10px',\n        '&::after': {\n            content: '\"\"',\n            visibility: 'hidden',\n            position: 'absolute',\n            display: 'block',\n            opacity: '0',\n            height: '100%',\n            width: '100%',\n            top: 0,\n            left: 0,\n            zIndex: 1000,\n            transition: 'visibility ease 400ms, opacity 400ms ease',\n            background:\n                'linear-gradient(0deg,rgba(1, 23, 41, 0) 0%, rgba(1, 23, 41, 0) 25%, rgba(1, 23, 41, 0.1) 50%, rgba(1, 23, 41, 0.3) 100%)',\n        },\n        '&:focus::after': {\n            visibility: 'visible',\n            opacity: '1',\n            boxShadow: '0 0 6px rgba(108,127,148,0.1), 0 10px 10px rgba(108,127,148,0.1)',\n        },\n        '&:active::after': {\n            visibility: 'hidden',\n            transform: 'translateY(0)',\n            opacity: '0',\n        },\n        '&:hover': {\n            transform: 'translateY(-1rem)',\n            boxShadow: '0 0 6px rgba(108,127,148,0.1), 0 10px 10px rgba(108,127,148,0.1)',\n        },\n        '&:focus': {\n            borderColor: v2Colors.core.innovation,\n            transform: 'translateY(-1rem)',\n            boxShadow: '0 0 6px rgba(108,127,148,0.1), 0 10px 10px rgba(108,127,148,0.1)',\n        },\n    },\n    card: {\n        height: '100%',\n        position: 'relative',\n        boxShadow: 'none',\n    },\n    viewIcon: {\n        width: '1em',\n        height: '1em',\n        marginRight: '1rem',\n    },\n    media: {\n        borderRadius: '10px 10px 0 0',\n        objectFit: 'cover',\n        maxHeight: '26rem',\n        width: '100%',\n    },\n    largeCardImage: {\n        maxHeight: '43rem',\n    },\n    cardTitle: {\n        fontSize: '2rem',\n        fontWeight: 500,\n    },\n    cardContent: {\n        padding: '3rem 3rem 4rem !important',\n        transition: 'transform 200ms ease',\n    },\n    link: {\n        cursor: 'pointer',\n        display: 'flex',\n        alignItems: 'center',\n        position: 'absolute',\n        fontWeight: 500,\n        bottom: '3rem',\n        left: '3rem',\n    },\n    pagination: {\n        width: '100%',\n        marginTop: '2rem',\n    },\n} as const;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Stack, Grid2 } from '@mui/material';\nimport { languageRouteTypes } from '@helpers/languageRoutes';\nimport { getLanguageRouteAndPrefixByCodeAndRouteKey } from '@helpers/languages';\nimport { Card } from '../Cards/Card';\nimport { PressRoomSectionStyle as classes } from '@components/styleObjects/PressRoomSectionStyle';\nimport { cardTypes } from '../../helpers/ObjectTypeModels/Card';\nimport { getLazyLoadByIndex } from '@helpers/lazyloading';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { useAtom } from 'jotai';\nimport { isMobileAtom, selectedLanguageAtom } from '@atoms/appSettings';\nimport { Heading, Pagination, PaginationItem, containerWidth } from '@web-for-marketing/react-ui';\nimport { SectionContainer } from '@components/SectionComponents/SectionContainer';\n\nexport function PressRoomSectionListCards({ translations }) {\n    const [isMobile] = useAtom(isMobileAtom);\n    const [selectedLanguage] = useAtom(selectedLanguageAtom);\n    const { pressRelease } = useStaticValues();\n    const simplifiedHomepage = pressRelease.homepageData.simplifiedHomepage;\n    const currentPage = pressRelease.homepageData.pagedPressReleases.currentPage;\n    const notLazyLoadedAmount = simplifiedHomepage || currentPage > 1 ? (isMobile ? 0 : 3) : isMobile ? 2 : 6;\n\n    return (\n        <SectionContainer maxWidth={containerWidth.lg}>\n            <div css={classes.mainHeader}>\n                <Heading variant='h1' color='primary'>\n                    {translations.pressRoomSectionListCards.latestUpdates}\n                </Heading>\n            </div>\n            <Grid2 container>\n                {!simplifiedHomepage &&\n                currentPage === 1 &&\n                Array.isArray(pressRelease.homepageData.pagedPressReleases.pageRecords) ? (\n                        <Grid2\n                            container\n                            alignItems='stretch'\n                            rowSpacing={'4rem'}\n                            columnSpacing={'4%'}\n                            data-testid='cardContainer'\n                        >\n                            {pressRelease.homepageData.pagedPressReleases.pageRecords.map((pressRelease, index) => {\n                                const cardContent = {\n                                    title: pressRelease.title,\n                                    image: {\n                                        imagePath: pressRelease.cardImageUrl,\n                                        mobilePath: pressRelease.mobileCardImageUrl,\n                                        imageAlt: pressRelease.cardImageAlt,\n                                        lazyLoad: false,\n                                    },\n                                    publishedDateUtc: pressRelease.publishedDateUtc,\n                                };\n\n                                return index < 2 ? (\n                                    <Grid2 size={{ xs: 12, lg: 6 }} key={index}>\n                                        <Card\n                                            card={{\n                                                ...cardTypes.RESTRICTIVE_DEFAULT_CARD,\n                                                content: cardContent,\n                                            }}\n                                            href={`${getLanguageRouteAndPrefixByCodeAndRouteKey(\n                                                selectedLanguage,\n                                                languageRouteTypes.PRESS_RELEASE\n                                            )}${pressRelease.slug}`}\n                                            data-testid={`pressReleaseCard${index}`}\n                                        />\n                                    </Grid2>\n                                ) : null;\n                            })}\n                        </Grid2>\n                    ) : null}\n                {!simplifiedHomepage && currentPage === 1 ? (\n                    <div css={classes.newsHeader}>\n                        <Heading variant='h2' color='primary'>\n                            {translations.pressRoomSectionListCards.inOtherNews}\n                        </Heading>\n                    </div>\n                ) : null}\n                {Array.isArray(pressRelease.homepageData.pagedPressReleases.pageRecords) ? (\n                    <Grid2\n                        container\n                        alignItems='stretch'\n                        rowSpacing={'4rem'}\n                        columnSpacing={'4%'}\n                        data-testid='cardContainer'\n                    >\n                        {pressRelease.homepageData.pagedPressReleases.pageRecords.map((pressRelease, index) => {\n                            const cardContent = {\n                                title: pressRelease.title,\n                                image: {\n                                    imagePath: pressRelease.cardImageUrl,\n                                    mobilePath: pressRelease.mobileCardImageUrl,\n                                    imageAlt: pressRelease.cardImageAlt,\n                                    lazyLoad: getLazyLoadByIndex(index, notLazyLoadedAmount),\n                                },\n                                publishedDateUtc: pressRelease.publishedDateUtc,\n                            };\n\n                            return (!simplifiedHomepage && currentPage === 1 && index >= 2) ||\n                                simplifiedHomepage ||\n                                currentPage > 1 ? (\n                                    <Grid2 size={{ xs: 12, md: 6, lg: 4 }} key={index}>\n                                        <Card\n                                            card={{\n                                                ...cardTypes.RESTRICTIVE_DEFAULT_CARD,\n                                                content: cardContent,\n                                            }}\n                                            href={`${getLanguageRouteAndPrefixByCodeAndRouteKey(\n                                                selectedLanguage,\n                                                languageRouteTypes.PRESS_RELEASE\n                                            )}${pressRelease.slug}`}\n                                            data-testid={`pressReleaseCard${index}`}\n                                        />\n                                    </Grid2>\n                                ) : null;\n                        })}\n                    </Grid2>\n                ) : null}\n                {pressRelease.homepageData.pagedPressReleases.totalRecordCount >\n                pressRelease.homepageData.pagedPressReleases.maxRecordsPerPage ? (\n                        <Stack alignItems='center' css={classes.pagination}>\n                            <Pagination\n                                currentPage={pressRelease.homepageData.pagedPressReleases.currentPage}\n                                totalRecordCount={pressRelease.homepageData.pagedPressReleases.totalRecordCount}\n                                maxRecordsPerPage={pressRelease.homepageData.pagedPressReleases.maxRecordsPerPage}\n                                renderItem={(item) => (\n                                // eslint-disable-next-line jsx-a11y/anchor-has-content\n                                    <PaginationItem\n                                        component='a'\n                                        href={`${getLanguageRouteAndPrefixByCodeAndRouteKey(\n                                            selectedLanguage,\n                                            languageRouteTypes.PRESS_ROOM_HOME\n                                        )}${item.page}/`}\n                                        {...item}\n                                    />\n                                )}\n                            />\n                        </Stack>\n                    ) : null}\n            </Grid2>\n        </SectionContainer>\n    );\n}\n\nPressRoomSectionListCards.propTypes = {\n    translations: PropTypes.objectOf(Object).isRequired,\n};\n","import React from 'react';\nimport { pressRoomHomeStyles as classes } from './styleObjects/pressRoomHome';\nimport { PressKit } from '@components/PressRoomHome/PressKit';\nimport { PageHelmet } from '@components/PageHelmet';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { PressRoomSectionListCards } from '@components/PressRoomSection/PressRoomSectionListCards';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { LazyLoadContainer } from '@web-for-marketing/react-ui';\nimport { Grid } from '@mui/material';\n\nexport default function PressRoomHome(): JSX.Element {\n    const { pressRelease } = useStaticValues();\n    const { selectedLanguageTranslation } = useTranslation();\n    const pressRoomHomeTranslation = getTranslation(selectedLanguageTranslation, 'pressRoomHome');\n    const seoTranslatedTitle = pressRoomHomeTranslation.seo.title;\n\n    const seoTitle = (): string => {\n        if (pressRelease.homepageData?.pagedPressReleases && pressRelease.homepageData.pagedPressReleases.pageRecords) {\n            return `${seoTranslatedTitle} ${pressRelease.homepageData.pagedPressReleases.currentPage} | Geotab`;\n        } else {\n            return `${seoTranslatedTitle} | Geotab`;\n        }\n    };\n\n    return (\n        <LazyLoadContainer component={Grid} css={classes.blogHomeBackground}>\n            <PageHelmet\n                seo={{\n                    description: pressRoomHomeTranslation.seo.description,\n                    title: seoTitle(),\n                }}\n            />\n            <PressRoomSectionListCards translations={pressRoomHomeTranslation} />\n            <PressKit translations={pressRoomHomeTranslation} />\n        </LazyLoadContainer>\n    );\n}\n"],"names":["getLazyLoadByIndex","index","noLazyLoadCount","pressRoomHomeStyles","blogHomeBackground","backgroundColor","v2Colors","core","snow","zIndex","innerContainer","width","headerBackground","position","padding","content","height","top","left","cloud","breakpoints","md","inTheNewsContainer","margin","maxWidth","pressKitStyles","subTitle","marginBottom","container","textAlign","pressKitBoxLink","display","boxSizing","flexWrap","background","boxShadow","alignItems","borderRadius","pressKitBox","pressKitBoxImage","pressKitBoxMediaGuidelinesImage","PRLink","color","innovation","textDecoration","cursor","title","childContainer","PressKit","translations","prefixStringWithBaseUrl","useStaticValues","pressKitList","pressKit","_jsx","style","geotab","PressRoomImages","pkBackground","children","_jsxs","GridContainer","css","classes","justifyContent","direction","Heading","variant","pressKitTitle","weight","component","ourAvailableResources","CMSLink","type","href","ChildContainer","customSpacing","Array","isArray","map","name","image","url","Grid","item","xs","pressKitBoxItem","underline","ensureInternalURLTrailingSlash","ClassNames","Picture","pictureProps","className","imagePath","lazyLoad","propTypes","PropTypes","Object","isRequired","PressRoomSectionStyle","mainHeader","newsHeader","marginTop","cardContainer","cardLinkContainer","overflow","transition","border","visibility","opacity","transform","borderColor","card","viewIcon","marginRight","media","objectFit","maxHeight","largeCardImage","cardTitle","fontSize","fontWeight","cardContent","link","bottom","pagination","PressRoomSectionListCards","isMobile","useAtom","isMobileAtom","selectedLanguage","selectedLanguageAtom","pressRelease","simplifiedHomepage","homepageData","currentPage","pagedPressReleases","notLazyLoadedAmount","SectionContainer","containerWidth","lg","pressRoomSectionListCards","latestUpdates","Grid2","pageRecords","rowSpacing","columnSpacing","cardImageUrl","mobilePath","mobileCardImageUrl","imageAlt","cardImageAlt","publishedDateUtc","size","Card","cardTypes","RESTRICTIVE_DEFAULT_CARD","getLanguageRouteAndPrefixByCodeAndRouteKey","languageRouteTypes","PRESS_RELEASE","slug","inOtherNews","totalRecordCount","maxRecordsPerPage","Stack","Pagination","renderItem","PaginationItem","PRESS_ROOM_HOME","page","PressRoomHome","selectedLanguageTranslation","useTranslation","pressRoomHomeTranslation","getTranslation","seoTranslatedTitle","seo","LazyLoadContainer","PageHelmet","description"],"sourceRoot":""}