{"version":3,"file":"component---src-templates-content-page-tsx-75ca047c58960b29ef5c.js","mappings":"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","sources":["webpack://batmaid-www/../../../src/lib/getActiveRepositoryName.ts","webpack://batmaid-www/../../../src/lib/getDocument.ts","webpack://batmaid-www/../../../src/lib/getPreviewCookie.ts","webpack://batmaid-www/../../../src/lib/hasOwnProperty.ts","webpack://batmaid-www/../../src/useMergePrismicPreviewData.ts","webpack://batmaid-www/../../src/withPrismicPreview.tsx","webpack://batmaid-www/../@services/Capitalize/Capitalize.ts","webpack://batmaid-www/./src/components/SEO.tsx","webpack://batmaid-www/./src/templates/ContentPage.tsx","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/array-includes.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/classof-raw.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/enum-bug-keys.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/indexed-object.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/length-of-array-like.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/math-trunc.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/object-keys-internal.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/to-absolute-index.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/to-indexed-object.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/to-integer-or-infinity.js","webpack://batmaid-www/../node_modules/gatsby/node_modules/core-js/internals/to-length.js"],"sourcesContent":["import { getPreviewCookie } from \"./getPreviewCookie\";\n\nexport const getActiveRepositoryName = (): string | undefined => {\n\tconst [, repositoryName] =\n\t\tdecodeURIComponent(getPreviewCookie() || \"\").match(\n\t\t\t/\"([a-zA-Z0-9][-a-zA-Z0-9]{2,}[a-zA-Z0-9]).prismic.io\"/,\n\t\t) || [];\n\n\treturn repositoryName;\n};\n","import type { NormalizedDocument } from \"../types\";\n\nimport { usePrismicPreviewStore } from \"../usePrismicPreviewStore\";\n\nexport const getDocument = (\n\tprismicId: string,\n): NormalizedDocument | undefined => {\n\tconst state = usePrismicPreviewStore.getState();\n\n\treturn state.documents[prismicId];\n};\n","const readValue = (value: string): string => {\n\treturn value.replace(/%3B/g, \";\");\n};\n\n/**\n * Returns the value of a cookie from a given cookie store.\n *\n * @returns The value of the cookie, if it exists.\n */\nexport const getPreviewCookie = (): string | undefined => {\n\tconst cookies = document.cookie.split(\"; \");\n\n\tfor (const cookie of cookies) {\n\t\tconst parts = cookie.split(\"=\");\n\t\tconst thisName = readValue(parts[0]).replace(/%3D/g, \"=\");\n\n\t\t// The Prismic preview cookie name is hardcoded here to prevent\n\t\t// including `@prismicio/client` in the main \"app.js\" bundle.\n\t\t// Unfortunately, the package is not tree-shaken when only the\n\t\t// cookie name is imported.\n\t\tif (thisName === \"io.prismic.preview\") {\n\t\t\tconst value = parts.slice(1).join(\"=\");\n\n\t\t\treturn readValue(value);\n\t\t}\n\t}\n};\n","/**\n * Determines if an object contains a given property. It augments the provided\n * object's type to include the property.\n *\n * @returns `true` if `obj` contains a `prop` property, `false` otherwise.\n */\nexport const hasOwnProperty = (\n\tobj: X,\n\tprop: Y,\n): obj is X & Record => {\n\treturn obj.hasOwnProperty(prop);\n};\n","import * as React from \"react\";\n\nimport { getDocument } from \"./lib/getDocument\";\nimport { hasOwnProperty } from \"./lib/hasOwnProperty\";\n\nimport { usePrismicPreviewStore } from \"./usePrismicPreviewStore\";\n\ntype MergePreviewDataArgs = {\n\tstaticDataNode: TStaticDataNode;\n\tpublishedDocumentIDs: string[];\n};\n\nconst mergePreviewData = ({\n\tstaticDataNode,\n\tpublishedDocumentIDs,\n}: MergePreviewDataArgs): TStaticDataNode => {\n\tconst castedData: unknown = staticDataNode;\n\n\tif (\n\t\ttypeof castedData === \"object\" &&\n\t\tcastedData !== null &&\n\t\t!Array.isArray(castedData)\n\t) {\n\t\tif (hasOwnProperty(castedData, \"_previewable\")) {\n\t\t\tconst replacement = getDocument(castedData._previewable as string);\n\n\t\t\tif (replacement) {\n\t\t\t\treturn replacement as unknown as typeof staticDataNode;\n\t\t\t} else {\n\t\t\t\tif (\n\t\t\t\t\tpublishedDocumentIDs.length > 0 &&\n\t\t\t\t\t!publishedDocumentIDs.includes(castedData._previewable as string)\n\t\t\t\t) {\n\t\t\t\t\treturn null as unknown as typeof staticDataNode;\n\t\t\t\t} else {\n\t\t\t\t\treturn staticDataNode;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tconst newNode = {} as TStaticDataNode;\n\n\t\t\tfor (const key in castedData) {\n\t\t\t\tnewNode[key as keyof typeof newNode] = mergePreviewData({\n\t\t\t\t\tstaticDataNode: castedData[key as keyof typeof castedData],\n\t\t\t\t\tpublishedDocumentIDs,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn newNode;\n\t\t}\n\t} else if (Array.isArray(staticDataNode)) {\n\t\treturn staticDataNode.map((element) => {\n\t\t\treturn mergePreviewData({\n\t\t\t\tstaticDataNode: element,\n\t\t\t\tpublishedDocumentIDs,\n\t\t\t});\n\t\t}) as typeof staticDataNode;\n\t} else {\n\t\treturn staticDataNode;\n\t}\n};\n\nexport const useMergePrismicPreviewData = <\n\tTStaticData extends Record,\n>(\n\tstaticData: TStaticData | undefined,\n): TStaticData | undefined => {\n\tconst isBootstrapped = usePrismicPreviewStore(\n\t\t(state) => state.isBootstrapped,\n\t);\n\tconst publishedDocumentIDs = usePrismicPreviewStore(\n\t\t(state) => state.publishedDocumentIDs,\n\t);\n\tconst documents = usePrismicPreviewStore((state) => state.documents);\n\n\treturn React.useMemo(() => {\n\t\tif (staticData) {\n\t\t\tconst hasPreviewData =\n\t\t\t\tpublishedDocumentIDs.length > 0 || Object.keys(documents).length > 0;\n\n\t\t\tif (isBootstrapped && hasPreviewData) {\n\t\t\t\treturn mergePreviewData({\n\t\t\t\t\tstaticDataNode: staticData,\n\t\t\t\t\tpublishedDocumentIDs,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn staticData;\n\t\t\t}\n\t\t}\n\t}, [documents, publishedDocumentIDs, isBootstrapped, staticData]);\n};\n","import * as React from \"react\";\n\nimport { getActiveRepositoryName } from \"./lib/getActiveRepositoryName\";\nimport { getComponentDisplayName } from \"./lib/getComponentDisplayName\";\n\nimport type { PagePropsLike } from \"./types\";\n\nimport { useMergePrismicPreviewData } from \"./useMergePrismicPreviewData\";\nimport { usePrismicPreviewStore } from \"./usePrismicPreviewStore\";\n\nexport type WithPrismicPreviewProps> = {\n\toriginalData: TProps;\n\tisPrismicPreview: boolean;\n};\n\nexport const withPrismicPreview = (\n\tWrappedComponent: React.ComponentType,\n): React.ComponentType => {\n\tconst WithPrismicPreview = (props: TProps): JSX.Element => {\n\t\tconst isBootstrapped = usePrismicPreviewStore(\n\t\t\t(state) => state.isBootstrapped,\n\t\t);\n\n\t\tconst [isPrismicPreview, setIsPrismicPreview] = React.useState<\n\t\t\tboolean | null\n\t\t>(null);\n\t\tconst mergedData = useMergePrismicPreviewData(props.data);\n\n\t\tReact.useEffect(() => {\n\t\t\tconst abortController = new AbortController();\n\n\t\t\tif (!isBootstrapped) {\n\t\t\t\tconst repositoryName = getActiveRepositoryName();\n\t\t\t\tsetIsPrismicPreview(!!repositoryName);\n\n\t\t\t\tif (repositoryName) {\n\t\t\t\t\timport(\"./lib/bootstrapPrismicPreview\").then((mod) =>\n\t\t\t\t\t\tmod.default(repositoryName, abortController),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn () => abortController.abort();\n\t\t}, [isBootstrapped]);\n\n\t\treturn (\n\t\t\t\n\t\t);\n\t};\n\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tconst wrappedComponentName = getComponentDisplayName(WrappedComponent);\n\t\tWithPrismicPreview.displayName = `withPrismicPreview(${wrappedComponentName})`;\n\t}\n\n\treturn WithPrismicPreview;\n};\n","export const capitalize = (str: string): string =>\n str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();\n","/**\n * SEO component that queries for data with\n * Gatsby's useStaticQuery React hook\n *\n * See: https://www.gatsbyjs.org/docs/use-static-query/\n */\n\nimport React from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { useStaticQuery, graphql } from \"gatsby\";\n\nimport {\n DEFAULT_LANGUAGE,\n LANGS_BY_COUNTRY,\n EXCLUDED_COUNTRIES,\n} from \"@config/consts\";\n\nimport { AVAILABLE_COUNTRIES, ORIGIN } from \"@typings/globals\";\n\nimport { capitalize } from \"@services/Capitalize\";\n\nimport { PrismicImageField } from \"@www/graphql-types\";\n\nconst getDomainByCountry = () => {\n switch (process.env.COUNTRY as AVAILABLE_COUNTRIES) {\n case AVAILABLE_COUNTRIES.CH:\n return process.env.DOMAIN_CH;\n case AVAILABLE_COUNTRIES.LU:\n return process.env.DOMAIN_LU;\n case AVAILABLE_COUNTRIES.FR:\n return process.env.DOMAIN_FR;\n case AVAILABLE_COUNTRIES.DE:\n return process.env.DOMAIN_DE;\n case AVAILABLE_COUNTRIES.PL:\n return process.env.DOMAIN_PL;\n case AVAILABLE_COUNTRIES.IT:\n return process.env.DOMAIN_IT;\n case AVAILABLE_COUNTRIES.AT:\n return process.env.DOMAIN_AT;\n case AVAILABLE_COUNTRIES.BE:\n return process.env.DOMAIN_BE;\n case AVAILABLE_COUNTRIES.NL:\n return process.env.DOMAIN_NL;\n default:\n return null;\n }\n};\n\nconst IOS_APP_SUPPORTED_COUNTRIES: string[] = [\n AVAILABLE_COUNTRIES.CH,\n AVAILABLE_COUNTRIES.FR,\n AVAILABLE_COUNTRIES.LU,\n AVAILABLE_COUNTRIES.PL,\n AVAILABLE_COUNTRIES.IT,\n AVAILABLE_COUNTRIES.DE,\n AVAILABLE_COUNTRIES.NL,\n AVAILABLE_COUNTRIES.BE,\n];\n\nconst hasIosSmartBanner = () =>\n process.env.ORIGIN === ORIGIN.BATMAID &&\n process.env.COUNTRY &&\n IOS_APP_SUPPORTED_COUNTRIES.includes(process.env.COUNTRY);\n\nconst breadcrumbCreator = (breadcrumbs: BreadcrumbCreatorItem[]) => {\n const domain = getDomainByCountry();\n\n const items = breadcrumbs.map((item, idx) => ({\n \"@type\": \"ListItem\",\n position: idx + 1,\n name: item.title,\n item: `https://${domain}${item.href}`,\n }));\n\n return `\n {\n \"@context\": \"https://schema.org\",\n \"@type\": \"BreadcrumbList\",\n \"itemListElement\": ${JSON.stringify(items)}\n }`;\n};\n\nconst getCanonicalLink = (path?: string): string | null => {\n const domain = getDomainByCountry();\n\n if (path === undefined || !domain) {\n return null;\n }\n\n return `https://${domain}${path}`;\n};\n\ninterface Meta {\n name: string;\n content: string;\n}\n\n// SEO data from Prismic\nexport interface SeoProps {\n seo_title?: { text?: string | null };\n seo_description?: { text?: string | null };\n seo_image?: PrismicImageField | null;\n}\n\ninterface BreadcrumbCreatorItem {\n title: string;\n href: string;\n}\n\ninterface Props extends SeoProps {\n description: string;\n lang: string;\n meta: Meta[];\n title: string;\n structuredData?: string;\n breadcrumbs?: BreadcrumbCreatorItem[];\n withHreflangs?: boolean;\n path?: string;\n}\n\nconst SEO = (props: Props): React.ReactElement => {\n const { site } = useStaticQuery(\n graphql`\n query SEOQuery {\n site {\n siteMetadata {\n title\n description\n author\n }\n }\n }\n `,\n );\n\n const country = process.env.COUNTRY;\n\n const getTitleTemplate = (origin?: ORIGIN): string => {\n return origin\n ? `%s | ${capitalize(origin)}`\n : `%s | ${site.siteMetadata.title}`;\n };\n\n const titleTemplate = getTitleTemplate(\n (process.env.ORIGIN as ORIGIN) || (ORIGIN.BATMAID as ORIGIN),\n );\n\n const getMetaTitle = (): string => props.seo_title?.text || props.title;\n\n const metaDescription = props.description || site.siteMetadata.description;\n\n const getMetaDescription = (): string =>\n props.seo_description?.text || metaDescription;\n\n const getMetaImage = (): string => {\n return props.seo_image?.gatsbyImageData?.images?.fallback?.src || \"\";\n };\n\n const smartBanner = hasIosSmartBanner()\n ? {\n name: \"apple-itunes-app\",\n content: \"app-id=1527257152\",\n }\n : {};\n\n const hrefLangs = Object.keys(LANGS_BY_COUNTRY)\n .filter(\n (country: AVAILABLE_COUNTRIES) => !EXCLUDED_COUNTRIES.includes(country),\n )\n .reduce(\n (acc: string[], country: AVAILABLE_COUNTRIES): string[] =>\n acc.concat(\n [],\n LANGS_BY_COUNTRY[country]\n .map(lang => `${lang}-${country}`)\n .filter(\n hreflang => hreflang !== `${props.lang}-${process.env.COUNTRY}`,\n ),\n ),\n [],\n );\n\n const canonicalLink = getCanonicalLink(props.path);\n\n return (\n \n \n {props.structuredData && (\n \n )}\n {props.breadcrumbs?.length && (\n \n )}\n {props.withHreflangs &&\n hrefLangs.map(hreflang => (\n \n ))}\n {canonicalLink && }\n \n );\n};\n\nSEO.defaultProps = {\n lang: DEFAULT_LANGUAGE,\n meta: [],\n description: \"\",\n};\n\nexport default SEO;\n","import * as React from \"react\";\nimport { graphql, PageProps } from \"gatsby\";\nimport ReactMarkdown from \"react-markdown\";\nimport { withPrismicPreview } from \"gatsby-plugin-prismic-previews\";\n\nimport { DEFAULT_LANGUAGE } from \"@config/consts\";\n\nimport { AVAILABLE_COUNTRIES, ORIGIN } from \"@typings/globals\";\n\nimport { Paragraph, Section, Margins, OptionPanel } from \"@ui/Atoms\";\nimport { Heading } from \"@ui/Atoms/Headings\";\n\nimport { langFromTag } from \"@services/LangFromTag/LangFromTag\";\nimport rehypeRaw from \"rehype-raw\";\n\nimport Layout from \"../components/Layout\";\nimport SEO from \"../components/SEO\";\nimport { repositoryConfigs } from \"../config/repositoryConfig\";\n\ntype Props = PageProps<\n {\n prismicContentPage: {\n data: {\n is_teaser_version: boolean;\n country: AVAILABLE_COUNTRIES;\n origin: ORIGIN;\n title: { text: string };\n content: { raw: { text: string; url: string }[] };\n };\n };\n },\n {\n lang: string;\n country: AVAILABLE_COUNTRIES;\n }\n>;\n\nconst ContentPage = (props: Props): React.ReactElement => {\n const { prismicContentPage } = props.data;\n const title = prismicContentPage.data.title.text;\n const content = prismicContentPage.data.content.raw;\n const origin = prismicContentPage.data.origin;\n\n const lang = props.pageContext.lang;\n const country = props.pageContext.country;\n\n return (\n \n \n
\n \n \n \n {title}\n \n \n {content.map((item, idx) => (\n \n \n {item.text}\n \n {item.url && (\n \n \n \n )}\n \n ))}\n \n
\n \n );\n};\n\nexport default withPrismicPreview(ContentPage);\n\nexport const pageQuery = graphql`\n query ContentPageQuery($id: String) {\n prismicContentPage(id: { eq: $id }) {\n _previewable\n data {\n is_teaser_version\n country\n origin\n content {\n raw\n }\n title {\n text\n }\n }\n }\n }\n`;\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n"],"names":["getActiveRepositoryName","repositoryName","decodeURIComponent","getPreviewCookie","match","getDocument","prismicId","usePrismicPreviewStore","getState","documents","readValue","value","replace","cookies","document","cookie","split","parts","slice","join","hasOwnProperty","obj","prop","mergePreviewData","_ref","staticDataNode","publishedDocumentIDs","castedData","Array","isArray","map","element","replacement","_previewable","length","includes","newNode","key","withPrismicPreview","WrappedComponent","props","isBootstrapped","state","isPrismicPreview","setIsPrismicPreview","React","mergedData","staticData","hasPreviewData","Object","keys","useMergePrismicPreviewData","data","abortController","AbortController","then","mod","default","abort","jsx","originalData","getDomainByCountry","process","AVAILABLE_COUNTRIES","CH","LU","FR","DE","PL","IT","AT","BE","NL","IOS_APP_SUPPORTED_COUNTRIES","SEO","_props$breadcrumbs","site","useStaticQuery","titleTemplate","origin","str","charAt","toUpperCase","toLowerCase","siteMetadata","title","getMetaTitle","_props$seo_title","seo_title","text","metaDescription","description","getMetaDescription","_props$seo_descriptio","seo_description","smartBanner","ORIGIN","BATMAID","name","content","hrefLangs","LANGS_BY_COUNTRY","filter","country","EXCLUDED_COUNTRIES","reduce","acc","concat","lang","hreflang","canonicalLink","path","domain","undefined","getCanonicalLink","Helmet","htmlAttributes","meta","property","author","_props$seo_image","seo_image","_props$seo_image$gats","gatsbyImageData","_props$seo_image$gats2","images","_props$seo_image$gats3","fallback","src","rel","href","structuredData","type","breadcrumbs","items","item","idx","position","JSON","stringify","breadcrumbCreator","withHreflangs","hrefLang","getMetaImage","defaultProps","DEFAULT_LANGUAGE","prismicContentPage","raw","pageContext","Layout","language","langFromTag","isTeaserVersion","is_teaser_version","location","pathname","Section","small","OptionPanel","Margins","xs","Heading","styleAs","withWordBreak","ReactMarkdown","unwrapDisallowed","rehypePlugins","rehypeRaw","components","p","Paragraph","url","toIndexedObject","toAbsoluteIndex","lengthOfArrayLike","createMethod","IS_INCLUDES","$this","el","fromIndex","O","index","module","exports","indexOf","uncurryThis","toString","stringSlice","it","fails","classof","$Object","propertyIsEnumerable","toLength","ceil","Math","floor","trunc","x","n","hasOwn","hiddenKeys","push","object","names","i","result","toIntegerOrInfinity","max","min","integer","IndexedObject","requireObjectCoercible","argument","number"],"sourceRoot":""}