{"version":3,"file":"static/js/PressRoomRelease.02fa0e0428ba3a1d5ce9.js","mappings":"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","sources":["helpers/articleScriptHelper.js","components/PressRoomHome/MediaContactStyles.ts","components/PressRoomHome/MediaContact.jsx","components/PressReleaseCard.jsx","components/PressRoomHome/RelatedPosts.jsx","pages/public/PressRoomRelease.tsx"],"sourcesContent":["import { resolveImagePath } from '@helpers/gallery';\nimport geotabShare from '@images/geotabShareImage.jpg';\nimport geotabLogoWithR from '@images/Navigation/geotab-logo-with-r-600x60.svg';\n\nconst getFaqArray = (faqContents) => {\n return Array.isArray(faqContents)\n ? faqContents.map(({ answer, question }) => {\n return {\n '@type': 'Question',\n name: question,\n acceptedAnswer: {\n '@type': 'Answer',\n text: answer,\n },\n };\n })\n : {};\n};\n\nexport const getBlogStructuredDataScript = (article, mediaUrlPrefix, prefixStringWithBaseUrl, fullUrl) => {\n const hyperTocJsonLd = getHyperTocStructuredData(article.htmlContent, fullUrl);\n\n const blogPostingJsonLd = {\n '@context': 'https://schema.org',\n '@type': 'BlogPosting',\n mainEntityOfPage: {\n '@type': 'WebPage',\n '@id': fullUrl,\n },\n headline: article.title ? article.title.replace(/\"/g, '\\\\\"') : article.pageTitle.replace(/\"/g, '\\\\\"'),\n image: getImageArray(article, mediaUrlPrefix, prefixStringWithBaseUrl),\n datePublished: article.publishedDateUtc,\n dateModified: article.modifiedDateUtc,\n author: {\n '@type': 'Person',\n name: article.author && article.author.name.replace(/\"/g, '\\\\\"'),\n },\n publisher: {\n '@type': 'Organization',\n name: 'Geotab',\n logo: {\n '@type': 'ImageObject',\n url: prefixStringWithBaseUrl(geotabLogoWithR),\n },\n },\n };\n\n if (article?.frequentlyAskedQuestions?.length) {\n blogPostingJsonLd.mainEntity = {\n '@type': 'FAQPage',\n mainEntity: getFaqArray(article.frequentlyAskedQuestions),\n };\n }\n\n return {\n type: 'application/ld+json',\n body: JSON.stringify({\n '@context': 'https://schema.org',\n '@graph': [blogPostingJsonLd, hyperTocJsonLd],\n }),\n };\n};\n\nexport const getPressReleaseStructuredDataScript = (article, mediaUrlPrefix, prefixStringWithBaseUrl, fullUrl) => {\n return {\n type: 'application/ld+json',\n body: `{\n \"@context\": \"https://schema.org\",\n \"@type\": \"NewsArticle\",\n \"url\": \"${fullUrl}\",\n \"mainEntityOfPage\": {\n \"@type\": \"WebPage\",\n \"@id\": \"${fullUrl}\"\n },\n \"headline\": \"${\n article && article.title ? article.title.replace(/\"/g, '') : article.pageTitle.replace(/\"/g, '')\n }\",\n \"image\": [${getImageArray(article, mediaUrlPrefix, prefixStringWithBaseUrl)}],\n \"datePublished\": \"${article && article.publishedDateUtc}\",\n \"dateModified\": \"${article && article.modifiedDateUtc}\",\n \"publisher\": {\n \"@type\": \"Organization\",\n \"name\": \"Geotab\",\n \"logo\": {\n \"@type\": \"ImageObject\",\n \"url\": \"${prefixStringWithBaseUrl(geotabLogoWithR)}\"\n }\n }\n }`,\n };\n};\n\nexport const getSuccessStoryStructuredDataScript = (article, mediaUrlPrefix, prefixStringWithBaseUrl, fullUrl) => {\n const hyperTocJsonLd = getHyperTocStructuredData(article.htmlContent, fullUrl);\n const successStoryJsonLd = {\n '@context': 'https://schema.org',\n '@type': 'Article',\n url: fullUrl,\n mainEntityOfPage: {\n '@type': 'WebPage',\n '@id': fullUrl,\n },\n name: article.title ? article.title.replace(/\"/g, '\\\\\"') : article.pageTitle.replace(/\"/g, '\\\\\"'),\n description: article.metaDescription\n ? article.metaDescription.replace(/\"/g, '\\\\\"')\n : article.description.replace(/\"/g, '\\\\\"'),\n headline: article.title ? article.title.replace(/\"/g, '\\\\\"') : article.pageTitle.replace(/\"/g, '\\\\\"'),\n image: getImageArray(article, mediaUrlPrefix, prefixStringWithBaseUrl),\n datePublished: article.publishedDateUtc,\n dateModified: article.modifiedDateUtc,\n publisher: {\n '@type': 'Organization',\n name: 'Geotab',\n logo: {\n '@type': 'ImageObject',\n url: prefixStringWithBaseUrl(geotabLogoWithR),\n },\n },\n };\n\n return {\n type: 'application/ld+json',\n body: JSON.stringify({\n '@context': 'https://schema.org',\n '@graph': [successStoryJsonLd, hyperTocJsonLd],\n }),\n };\n};\n\nexport const getGlossaryStructuredDataScript = (article, mediaUrlPrefix, prefixStringWithBaseUrl, fullUrl) => {\n const hyperTocJsonLd = getHyperTocStructuredData(article.htmlContent, fullUrl);\n\n const glossaryJsonLd = {\n '@context': 'https://schema.org',\n '@type': 'Article',\n url: fullUrl,\n mainEntityOfPage: {\n '@type': 'WebPage',\n '@id': fullUrl,\n },\n name: article.title ? article.title.replace(/\"/g, '\\\\\"') : article.pageTitle.replace(/\"/g, '\\\\\"'),\n description: article.metaDescription\n ? article.metaDescription.replace(/\"/g, '\\\\\"')\n : article.description.replace(/\"/g, '\\\\\"'),\n headline: article.title ? article.title.replace(/\"/g, '\\\\\"') : article.pageTitle.replace(/\"/g, '\\\\\"'),\n image: getImageArray(article, mediaUrlPrefix, prefixStringWithBaseUrl),\n datePublished: article.publishedDateUtc,\n dateModified: article.modifiedDateUtc,\n publisher: {\n '@type': 'Organization',\n name: 'Geotab',\n logo: {\n '@type': 'ImageObject',\n url: prefixStringWithBaseUrl(geotabLogoWithR),\n },\n },\n };\n\n if (article?.frequentlyAskedQuestions?.length) {\n glossaryJsonLd.mainEntity = {\n '@type': 'FAQPage',\n mainEntity: getFaqArray(article.frequentlyAskedQuestions),\n };\n }\n\n return {\n type: 'application/ld+json',\n body: JSON.stringify({\n '@context': 'https://schema.org',\n '@graph': [glossaryJsonLd, hyperTocJsonLd],\n }),\n };\n};\n\nconst getImageArray = (article, mediaUrlPrefix, prefixStringWithBaseUrl) => {\n const imageArray = [];\n if (article && article.imageUrl) {\n imageArray.push(`\"${resolveImagePath(mediaUrlPrefix, article.imageUrl)}\"`);\n }\n\n if (article && article.mobileImageUrl) {\n imageArray.push(`\"${resolveImagePath(mediaUrlPrefix, article.mobileImageUrl)}\"`);\n }\n\n if (article && !article.imageUrl && !article.mobileImageUrl) {\n imageArray.push(`\"${prefixStringWithBaseUrl(geotabShare)}\"`);\n }\n\n return imageArray;\n};\n\nexport const getHyperTocStructuredData = (content, fullUrl) => {\n const tocHeadingsRegexp = /(?:<[^>]+>)*([^<]+)(?:<\\/[^>]+>)*<\\/h\\1>/g;\n const tocEntries = [];\n let matches;\n\n while ((matches = tocHeadingsRegexp.exec(content)) !== null) {\n const id = matches[2];\n const text = matches[3].trim();\n\n tocEntries.push({\n '@type': 'HyperTocEntry',\n url: `${fullUrl}#${id}`,\n name: `${text}`,\n });\n }\n\n return {\n '@context': 'https://schema.org',\n '@type': 'HyperToc',\n tocEntry: tocEntries,\n };\n};\n","import { v2Colors, getRgbaColor, breakpoints } from '@web-for-marketing/react-ui';\n\nexport const mediaContactStyles = {\n content: {\n '& > a': {\n textDecoration: 'none',\n color: v2Colors.core.innovation,\n padding: '0.5rem 0.2rem',\n transition: '200ms background-color ease',\n '&:hover': {\n backgroundColor: `${getRgbaColor(v2Colors.core.deepSpace, 0.03)} !important`,\n textDecoration: 'underline',\n },\n '&:focus': {\n outlineColor: v2Colors.core.innovation,\n backgroundColor: `${getRgbaColor(v2Colors.core.deepSpace, 0.06)} !important`,\n textDecoration: 'underline',\n },\n '&:active': {\n outline: 'none',\n backgroundColor: `${getRgbaColor(v2Colors.core.deepSpace, 0.05)} !important`,\n },\n },\n },\n bodySubtitle: {\n marginBottom: '1rem',\n },\n mediaIconContainer: {\n marginBottom: '2rem',\n borderRadius: '50%',\n width: '6rem',\n height: '6rem',\n padding: '2rem',\n background: `linear-gradient(223deg, rgb(0, 128, 178) 21.7%, ${v2Colors.core.geotab} 100%)`,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n fixMargin: {\n [`@media (max-width: ${breakpoints.md})`]: {\n margin: '2.5rem 0 1rem 0',\n },\n },\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid } from '@mui/material';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { mediaContactStyles as classes } from './MediaContactStyles';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { Heading, LazyLoadContainer, Text } from '@web-for-marketing/react-ui';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { PressRoomImages } from '@helpers/staticImages/pressRoom';\n\nexport function MediaContact({ translations }) {\n const { prefixStringWithBaseUrl } = useStaticValues();\n const { selectedLanguageTranslation } = useTranslation();\n\n const aboutGeotabTranslation = getTranslation(selectedLanguageTranslation, 'aboutGeotab');\n\n return (\n \n \n \n \n \n {translations.mediaContact.title}\n \n {translations.mediaContact.name ? (\n \n {translations.mediaContact.name}\n \n ) : null}\n {translations.mediaContact.role ? (\n \n {translations.mediaContact.role}\n \n ) : null}\n \n {translations.mediaContact.email}\n \n \n \n \n {aboutGeotabTranslation.main}\n \n \n \n \n );\n}\n\nMediaContact.propTypes = {\n translations: PropTypes.objectOf(Object).isRequired,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid, Divider } from '@mui/material';\nimport { getFormattedLocalDateTime } from '@helpers/dates';\nimport { ArticleHeader } from './ArticleHeader';\nimport { articleContentAreaStyles as classes } from './styleObjects/ArticleContentArea';\nimport { RenderChips } from '@components/BlogSection/BlogComponents/Shared/RenderChips';\nimport { MediaContact } from './PressRoomHome/MediaContact';\nimport { RenderedArticle } from './Articles/RenderedArticle';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { useAtom } from 'jotai';\nimport { selectedLanguageAtom } from '@atoms/appSettings';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { Heading, Text } from '@web-for-marketing/react-ui';\nimport { PublicDateTime } from './PublicDateTime';\n\nexport function PressReleaseCard({ pressRelease }) {\n const [selectedLanguage] = useAtom(selectedLanguageAtom);\n const { mediaUrlPrefix } = useStaticValues();\n const { selectedLanguageTranslation } = useTranslation();\n const pressReleaseTranslation = getTranslation(selectedLanguageTranslation, 'pressRelease');\n\n return (\n
\n \n \n \n {pressRelease.title}\n \n \n \n \n \n {pressReleaseTranslation.publishedOn}{' '}\n {getFormattedLocalDateTime(pressRelease.publishedDateUtc, 'LL', selectedLanguage)}\n \n \n \n \n \n \n {pressRelease.description}\n \n \n {pressRelease.imageUrl || pressRelease.videoUrl ? (\n \n \n \n ) : null}\n \n \n \n {pressRelease.tags && pressRelease.tags.length ? (\n \n \n \n ) : null}\n \n \n \n \n \n
\n );\n}\n\nPressReleaseCard.propTypes = {\n pressRelease: PropTypes.objectOf(Object).isRequired,\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { languageRouteTypes } from '@helpers/languageRoutes';\nimport { useAtom } from 'jotai';\nimport { selectedLanguageAtom } from '@atoms/appSettings';\nimport { cardTypes } from '../../helpers/ObjectTypeModels/Card';\nimport { ChildContainer } from '../GeotabGridComponents';\nimport { Card } from '../Cards/Card';\nimport { getLanguageRouteAndPrefixByCodeAndRouteKey } from '@helpers/languages';\nimport { Grid } from '@mui/material';\n\nexport function RelatedPosts({ pressReleaseList }) {\n const [selectedLanguage] = useAtom(selectedLanguageAtom);\n\n return (\n \n {Array.isArray(pressReleaseList)\n ? pressReleaseList.map((pressRelease, index) => {\n const cardContent = {\n title: pressRelease.title,\n body: pressRelease.description,\n image: {\n imagePath: pressRelease.cardImageUrl,\n mobilePath: pressRelease.mobileCardImageUrl,\n imageAlt: pressRelease.cardImageAlt,\n lazyLoad: true,\n },\n publishedDateUtc: pressRelease.publishedDateUtc,\n };\n return index < 3 ? (\n \n \n \n ) : null;\n })\n : null}\n \n );\n}\n\nRelatedPosts.propTypes = {\n pressReleaseList: PropTypes.arrayOf(PropTypes.object).isRequired,\n};\n","import React from 'react';\nimport { PressReleaseCard } from '@components/PressReleaseCard';\nimport { Grid } from '@mui/material';\nimport { articleStyles as classes } from './styleObjects/articleStyles';\nimport { BottomArticleCardList } from '@components/BottomArticleCardList';\nimport { RelatedPosts } from '@components/PressRoomHome/RelatedPosts';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { Redirect } from '@components/Redirect';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { languageRouteTypes } from '@helpers/languageRoutes';\nimport { getPressReleaseStructuredDataScript } from '@helpers/articleScriptHelper';\nimport { ArticleSectionPageHelmet } from '@components/BlogSection/ArticleSectionPageHelmet';\nimport { ArticleHeader } from '@components/ArticleHeader';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { Heading } from '@web-for-marketing/react-ui';\n\nexport default function PressRoomRelease(): JSX.Element | null {\n const { selectedLanguageTranslation } = useTranslation();\n const { prefixStringWithBaseUrl, pressRelease, mediaUrlPrefix, fullUrl } = useStaticValues();\n const pressReleaseArticle = pressRelease.articleData;\n const hasHeadermedia =\n pressReleaseArticle?.pressRelease.imageUrl || pressReleaseArticle?.pressRelease.mobileImageUrl;\n\n return pressReleaseArticle ? (\n pressReleaseArticle.pressRelease.redirectUrl ? (\n \n ) : (\n <>\n \n \n \n \n \n \n .MuiGrid-item': { padding: '24px' } },\n classes.centeredContainer,\n classes.mobileWrap,\n ]}\n wrap='nowrap'\n >\n \n \n \n \n \n {getTranslation(selectedLanguageTranslation, 'relatedPosts')}\n \n \n \n \n \n \n \n \n \n {getTranslation(selectedLanguageTranslation, 'recentNews')}\n \n \n \n \n \n \n \n )\n ) : null;\n}\n"],"names":["getFaqArray","faqContents","Array","isArray","map","answer","question","name","acceptedAnswer","text","getBlogStructuredDataScript","article","mediaUrlPrefix","prefixStringWithBaseUrl","fullUrl","hyperTocJsonLd","getHyperTocStructuredData","htmlContent","blogPostingJsonLd","mainEntityOfPage","headline","title","replace","pageTitle","image","getImageArray","datePublished","publishedDateUtc","dateModified","modifiedDateUtc","author","publisher","logo","url","geotabLogoWithR","frequentlyAskedQuestions","length","mainEntity","type","body","JSON","stringify","getPressReleaseStructuredDataScript","getSuccessStoryStructuredDataScript","successStoryJsonLd","description","metaDescription","getGlossaryStructuredDataScript","glossaryJsonLd","imageArray","imageUrl","push","resolveImagePath","mobileImageUrl","geotabShare","content","tocHeadingsRegexp","tocEntries","matches","exec","id","trim","tocEntry","mediaContactStyles","textDecoration","color","v2Colors","core","innovation","padding","transition","backgroundColor","getRgbaColor","deepSpace","outlineColor","outline","bodySubtitle","marginBottom","mediaIconContainer","borderRadius","width","height","background","geotab","display","alignItems","justifyContent","fixMargin","breakpoints","md","margin","MediaContact","translations","useStaticValues","selectedLanguageTranslation","useTranslation","aboutGeotabTranslation","getTranslation","_jsxs","Grid","container","children","LazyLoadContainer","component","item","sm","_jsx","css","classes","PressRoomImages","mediaContact","src","mediaIcon","alt","imageAlt","Heading","variant","Text","role","email","main","dangerouslySetInnerHTML","__html","propTypes","PropTypes","Object","isRequired","PressReleaseCard","pressRelease","selectedLanguage","useAtom","selectedLanguageAtom","pressReleaseTranslation","xs","PublicDateTime","publishedDate","publishedOn","getFormattedLocalDateTime","Divider","dividerTop","subHeading","videoUrl","media","ArticleHeader","RenderedArticle","tags","RenderChips","chips","dividerBottom","RelatedPosts","pressReleaseList","ChildContainer","breakSpaceValue","index","cardContent","imagePath","cardImageUrl","mobilePath","mobileCardImageUrl","cardImageAlt","lazyLoad","lg","Card","card","cardTypes","PRESS_ROOM_RELATED","href","getLanguageRouteAndPrefixByCodeAndRouteKey","languageRouteTypes","PRESS_RELEASE","slug","PressRoomRelease","pressReleaseArticle","articleData","hasHeadermedia","redirectUrl","Redirect","statusCode","_Fragment","ArticleSectionPageHelmet","articleType","noIndex","script","direction","header","spacing","centeredContainer","mobileWrap","wrap","pressReleaseCard","noHeaderMediaCard","relatedPosts","block","recentNewsContainer","BottomArticleCardList","articleList","recentNews","routeType"],"sourceRoot":""}