{"version":3,"file":"6f8134190450c4216c4dded139760b6ac2b9736e.js","mappings":"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","sources":["webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/firstItem/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/firstItem/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomJurors/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomJurors/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificProjects/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificProjects/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomCompanies/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomCompanies/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomProjects/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/randomProjects/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificCompanies/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificCompanies/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificCollections/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificCollections/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificJurors/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/specificJurors/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/continentRankings/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/infiniteGrid/styles.module.scss","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/infiniteGrid/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/infiniteJurors/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/infiniteCompanies/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/components/infiniteProjects/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/index.jsx","webpack://if-website/./src/components/cms-modules/dynamicTeaser/styles.module.scss","webpack://if-website/./src/components/cms-modules/separator/separator.module.scss","webpack://if-website/./src/components/cms-modules/separator/index.jsx","webpack://if-website/./node_modules/react-tabs/esm/helpers/elementTypes.js","webpack://if-website/./node_modules/react-tabs/esm/helpers/childrenDeepMap.js","webpack://if-website/./node_modules/clsx/dist/clsx.m.js","webpack://if-website/./node_modules/react-tabs/esm/helpers/uuid.js","webpack://if-website/./node_modules/react-tabs/esm/helpers/count.js","webpack://if-website/./node_modules/react-tabs/esm/components/UncontrolledTabs.js","webpack://if-website/./node_modules/react-tabs/esm/components/Tabs.js","webpack://if-website/./node_modules/react-tabs/esm/components/TabList.js","webpack://if-website/./node_modules/react-tabs/esm/components/Tab.js","webpack://if-website/./node_modules/react-tabs/esm/components/TabPanel.js","webpack://if-website/./src/components/ui/customTabs/styles.module.scss","webpack://if-website/./src/components/ui/customTabs/index.jsx","webpack://if-website/./src/components/wdi-ranking/components/countryTabs/components/rankingTableRow/styles.module.scss","webpack://if-website/./src/helpers/getProfileTypeId.js","webpack://if-website/./src/components/wdi-ranking/components/countryTabs/components/rankingTableRow/index.jsx","webpack://if-website/./src/components/wdi-ranking/components/countryTabs/components/rankingTabPanel/index.jsx","webpack://if-website/./src/components/wdi-ranking/components/countryTabs/components/rankingTabPanel/styles.module.scss"],"sourcesContent":["import React from 'react';\nimport pt from 'prop-types';\nimport Link, { linkProptypes } from '../../../../ui/link';\nimport Headline, { headlinePropTypes } from '../../../../ui/headline';\nimport Text from '../../../../ui/text';\nimport * as styles from './styles.module.scss';\n\nconst FirstItem = ({ headline, text, link }) => (\n
\n {headline && (\n \n )}\n {text && (\n \n {text}\n \n )}\n {link && (\n \n {link.text}\n \n )}\n
\n);\n\nFirstItem.propTypes = {\n headline: pt.shape(headlinePropTypes),\n text: pt.string,\n link: pt.shape(linkProptypes),\n};\n\nFirstItem.defaultProps = {\n headline: null,\n text: '',\n link: null,\n};\n\nexport default FirstItem;\n","// extracted by mini-css-extract-plugin\nexport var cta = \"styles-module--cta--5635c\";\nexport var headline = \"styles-module--headline--60fbd\";\nexport var text = \"styles-module--text--78b97\";\nexport var wrapperheader = \"styles-module--wrapperheader--be151\";","// extracted by mini-css-extract-plugin\nexport var beigeBg = \"styles-module--beigeBg--33b35\";\nexport var button = \"styles-module--button--9491e\";\nexport var gridContainer = \"styles-module--gridContainer--62abd\";\nexport var innerContainer = \"styles-module--innerContainer--4c31d\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--b637e\";\nexport var scrollContainer = \"styles-module--scrollContainer--11523\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--52d7d\";","import React, { useContext, useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport Link, { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\nimport {\n API_ROUTES,\n getCountryName,\n STATIC_ROUTES,\n} from '../../../../../utils/constants';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { useLocale } from '../../../../../context/locale.context';\nimport placeholderImage from '../../../../../images/placeholder-image.png';\nimport { getCopy } from '../../../../../helpers/copy';\nimport { MicrocopyContext } from '../../../../../context/microcopy.context';\nimport { combine } from '../../../../../helpers/styles';\n\nconst RandomJurors = ({\n amountOfRandomTeaser,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n setTotal,\n layout,\n beigeBackground,\n}) => {\n const [jurors, setJurors] = useState([]);\n const microcopy = useContext(MicrocopyContext);\n const { locale } = useLocale();\n\n const fetchProjects = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(`${apiRoot}${API_ROUTES.RANDOM_JUROR}/${amountOfRandomTeaser}`)\n .then((res) => res.json())\n .then((res) => {\n const data = res.items.map((item) => {\n return {\n image: {\n url: item.pictureProfile || placeholderImage,\n description: `${item.firstName} ${item.surname}`,\n isContainImage: !res.pictureProfile,\n },\n title: `${item.firstName} ${item.surname}`,\n subline: getCountryName(locale, item.country) || '',\n link: { linkToPage: item.slug },\n };\n });\n setJurors(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchProjects();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n
\n {jurors.length > 0\n ? jurors.map((item, index) => (\n \n ))\n : Array.from(Array(amountOfRandomTeaser).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n {getCopy('btn.seeAllJurors', microcopy)}\n \n
\n
\n );\n }\n\n return (\n
\n \n {firstItemHeadline && (\n \n )}\n
\n {jurors.length > 0\n ? jurors.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n
\n {jurors.length > 0\n ? jurors.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n
\n );\n};\n\nRandomJurors.propTypes = {\n amountOfRandomTeaser: pt.number.isRequired,\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n setTotal: pt.func,\n};\n\nRandomJurors.defaultProps = {\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n setTotal: () => {},\n};\n\nexport default RandomJurors;\n","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\nimport { getIfDesignAwardBadge } from '../../../../../helpers/badges';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst SpecificProjects = ({\n dataIds,\n layout,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n}) => {\n const [projects, setProjects] = useState([]);\n\n const fetchProjects = async () => {\n const tmp = [];\n let apiRoot = await getAPIRoot();\n\n const resolve = dataIds.map(async (id, index) => {\n await fetch(`${apiRoot}${API_ROUTES.PROJECT_DETAIL}/${id}`)\n .then((res) => res.json())\n .then((res) => {\n const project = {\n image: { url: res.primaryMediaThumbnail, description: res.name },\n title: res.name,\n subline: res.designation,\n info: res?.clients?.[0],\n link: { linkToPage: res.slug },\n awardBadge: getIfDesignAwardBadge(res),\n position: index,\n };\n tmp.push(project);\n })\n .catch(() => console.error(`Error loading entry ${id}`));\n });\n await Promise.all(resolve);\n const sorted = tmp.sort((a, b) => a.position - b.position);\n setProjects(sorted);\n };\n\n useEffect(() => {\n fetchProjects();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n {projects.length > 0\n ? projects.map((item, index) => )\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n );\n }\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {projects &&\n projects.map((item, index) => (\n \n ))}\n
\n
\n \n
\n {projects &&\n projects.map((item, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nSpecificProjects.propTypes = {\n dataIds: pt.arrayOf(pt.string).isRequired,\n layout: pt.oneOf(['slider', 'grid']),\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n};\n\nSpecificProjects.defaultProps = {\n layout: 'slider',\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n};\n\nexport default SpecificProjects;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--0aaf1\";\nexport var innerContainer = \"styles-module--innerContainer--c246d\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--db839\";\nexport var scrollContainer = \"styles-module--scrollContainer--c7e7a\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--ab416\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst RandomCompanies = ({\n amountOfRandomTeaser,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n setTotal,\n isCreative,\n layout,\n profileTypeId,\n}) => {\n const [companies, setCompanies] = useState([]);\n\n const fetchCompanies = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(\n `${apiRoot}${API_ROUTES.RANDOM_COMPANIES}/${\n isCreative ? 'creatives/' : ''\n }${amountOfRandomTeaser}${profileTypeId ? `/${profileTypeId}` : ''}`\n )\n .then((res) => res.json())\n .then((res) => {\n const data = res.items.map((item) => {\n return {\n image: { url: item.image, description: item.companyName },\n title: item.companyName,\n info: item.firstClient,\n imageBadge: item.logo,\n link: { linkToPage: item.slug },\n };\n });\n setCompanies(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchCompanies();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n {companies.length > 0\n ? companies.map((item, index) => )\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n );\n }\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {companies.length > 0\n ? companies.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n
\n {companies.length > 0\n ? companies.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nRandomCompanies.propTypes = {\n amountOfRandomTeaser: pt.number.isRequired,\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n setTotal: pt.func,\n isCreative: pt.bool,\n layout: pt.oneOf(['slider', 'grid']),\n profileTypeId: pt.string,\n};\n\nRandomCompanies.defaultProps = {\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n setTotal: () => {},\n isCreative: false,\n layout: 'slider',\n profileTypeId: '',\n};\n\nexport default RandomCompanies;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--86d9e\";\nexport var innerContainer = \"styles-module--innerContainer--3a0a3\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--d3bbe\";\nexport var scrollContainer = \"styles-module--scrollContainer--6c439\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--8878b\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\nimport { getIfDesignAwardBadge } from '../../../../../helpers/badges';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst RandomProjects = ({\n amountOfRandomTeaser,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n setTotal,\n layout,\n}) => {\n const [projects, setProjects] = useState([]);\n\n const fetchProjects = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(\n `${apiRoot}${API_ROUTES.RANDOM_PROJECTS}/${amountOfRandomTeaser}`\n )\n .then((res) => res.json())\n .then((res) => {\n const data = res.items.map((item) => {\n return {\n image: { url: item.primaryMediaThumbnail, description: item.name },\n title: item.name,\n subline: item.designation,\n info: item?.clients?.[0],\n link: { linkToPage: item.slug },\n awardBadge: getIfDesignAwardBadge(item),\n };\n });\n setProjects(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchProjects();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n {projects.length > 0\n ? projects.map((item, index) => )\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n );\n }\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {projects.length > 0\n ? projects.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n
\n {projects.length > 0\n ? projects.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nRandomProjects.propTypes = {\n amountOfRandomTeaser: pt.number.isRequired,\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n setTotal: pt.func,\n layout: pt.oneOf(['slider', 'grid']),\n};\n\nRandomProjects.defaultProps = {\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n setTotal: () => {},\n layout: 'slider',\n};\n\nexport default RandomProjects;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--c1e71\";\nexport var innerContainer = \"styles-module--innerContainer--ef60b\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--97689\";\nexport var scrollContainer = \"styles-module--scrollContainer--f24a9\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--9ca6e\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\n\nimport { getAPIRoot } from './../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst SpecificCompanies = ({\n dataIds,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n layout,\n}) => {\n const [companies, setCompanies] = useState([]);\n\n const fetchCompanies = async () => {\n const tmp = [];\n let apiRoot = await getAPIRoot();\n\n const resolve = dataIds.map(async (id, index) => {\n await fetch(`${apiRoot}${API_ROUTES.COMPANY_DETAIL}/${id}`)\n .then((res) => res.json())\n .then((res) => {\n const data = {\n image: { url: res.image, description: res.companyName },\n title: res.companyName,\n info: res.firstClient,\n imageBadge: res.logo,\n link: { linkToPage: res.slug },\n position: index,\n };\n tmp.push(data);\n })\n .catch(() => console.error(`Error loading profile ${id}`));\n });\n await Promise.all(resolve);\n const sorted = tmp.sort((a, b) => a.position - b.position);\n setCompanies(sorted);\n };\n\n useEffect(() => {\n fetchCompanies();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n {companies.length > 0\n ? companies.map((item, index) => )\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n );\n }\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {companies.length > 0\n ? companies.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n
\n {companies.length > 0\n ? companies.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nSpecificCompanies.propTypes = {\n dataIds: pt.arrayOf(pt.string).isRequired,\n layout: pt.oneOf(['slider', 'grid']),\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n};\n\nSpecificCompanies.defaultProps = {\n firstItemHeadline: null,\n layout: 'slider',\n firstItemText: '',\n firstItemLink: null,\n};\n\nexport default SpecificCompanies;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--5e62a\";\nexport var innerContainer = \"styles-module--innerContainer--07c35\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--d5537\";\nexport var scrollContainer = \"styles-module--scrollContainer--819e1\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--67015\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\nimport { imageProptypes } from '../../../../ui/image';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst SpecificCollections = ({\n dataIds,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n collectionImages,\n}) => {\n const [collections, setCollection] = useState([]);\n\n const fetchCollections = async () => {\n const tmp = [];\n let apiRoot = await getAPIRoot();\n\n const resolve = dataIds.map(async (id, index) => {\n await fetch(`${apiRoot}${API_ROUTES.COLLECTION_DETAIL}/${id}`)\n .then((res) => res.json())\n .then((res) => {\n const collection = {\n title: res.name,\n image: collectionImages[index]?.image,\n link: {\n linkToPage: `/winner-ranking/winner-overview/?find=${res.name}`,\n },\n position: index,\n };\n tmp.push(collection);\n })\n .catch(() => console.error(`Error loading collection ${id}`));\n });\n await Promise.all(resolve);\n const sorted = tmp.sort((a, b) => a.position - b.position);\n setCollection(sorted);\n };\n\n useEffect(() => {\n fetchCollections();\n }, []);\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {collections.length > 0\n ? collections.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n
\n {collections.length > 0\n ? collections.map((item, index) => (\n \n ))\n : Array.from(Array(3).keys()).map((_, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nSpecificCollections.propTypes = {\n dataIds: pt.arrayOf(pt.string).isRequired,\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n collectionImages: pt.arrayOf(pt.shape(imageProptypes)),\n};\n\nSpecificCollections.defaultProps = {\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n collectionImages: [],\n};\n\nexport default SpecificCollections;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--dacdb\";\nexport var innerContainer = \"styles-module--innerContainer--fd9bc\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--7500e\";\nexport var scrollContainer = \"styles-module--scrollContainer--81a4b\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--1d720\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport CustomScrollable from '../../../../ui/customScrollable';\nimport FirstItem from '../firstItem';\nimport { headlinePropTypes } from '../../../../ui/headline';\nimport { linkProptypes } from '../../../../ui/link';\nimport * as styles from './styles.module.scss';\nimport { API_ROUTES, getCountryName } from '../../../../../utils/constants';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { useLocale } from '../../../../../context/locale.context';\nimport placeholderImage from '../../../../../images/placeholder-image.png';\n\nconst SpecificJurors = ({\n dataIds,\n layout,\n firstItemHeadline,\n firstItemText,\n firstItemLink,\n}) => {\n const [jurors, setJurors] = useState([]);\n const { locale } = useLocale();\n\n const fetchJurors = async () => {\n const tmp = [];\n\n const resolve = dataIds.map(async (id, index) => {\n let apiRoot = await getAPIRoot();\n\n await fetch(`${apiRoot}${API_ROUTES.JUROR_DETAIL}/${id}`)\n .then((res) => res.json())\n .then((res) => {\n const juror = {\n image: {\n url: res.pictureProfile || placeholderImage,\n description: `${res.firstName} ${res.surname}`,\n isContainImage: true,\n },\n title: `${res.firstName} ${res.surname}`,\n subline: getCountryName(locale, res.country) || '',\n link: { linkToPage: res.slug },\n id,\n position: index,\n };\n tmp.push(juror);\n })\n .catch(() => console.error(`Error loading juror ${id}`));\n });\n await Promise.all(resolve);\n const sorted = tmp.sort((a, b) => a.position - b.position);\n setJurors(sorted);\n };\n\n useEffect(() => {\n fetchJurors();\n }, []);\n\n if (layout === 'grid') {\n return (\n
\n {jurors.length > 0\n ? jurors.map((item, index) => (\n \n ))\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n );\n }\n\n return (\n <>\n \n {firstItemHeadline && (\n \n )}\n
\n {jurors &&\n jurors.map((item, index) => (\n \n ))}\n
\n
\n \n
\n {jurors &&\n jurors.map((item, index) => (\n \n ))}\n
\n
\n \n );\n};\n\nSpecificJurors.propTypes = {\n dataIds: pt.arrayOf(pt.string).isRequired,\n layout: pt.oneOf(['slider', 'grid']),\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n};\n\nSpecificJurors.defaultProps = {\n layout: 'slider',\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n};\n\nexport default SpecificJurors;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--5b797\";\nexport var innerContainer = \"styles-module--innerContainer--5b401\";\nexport var innerContainerSm = \"styles-module--innerContainerSm--3be99\";\nexport var scrollContainer = \"styles-module--scrollContainer--e8b87\";\nexport var scrollContainerSm = \"styles-module--scrollContainerSm--0d6d3\";","import React, { useContext, useEffect, useState } from 'react';\nimport CountryTabItem from '../../../../wdi-ranking/components/countryTabs/components/rankingTabPanel';\nimport CustomTabs from '../../../../ui/customTabs';\nimport * as styles from './styles.module.scss';\nimport { MicrocopyContext } from '../../../../../context/microcopy.context';\nimport { getCopy } from '../../../../../helpers/copy';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst ContinentRankings = ({}) => {\n const microcopy = useContext(MicrocopyContext);\n\n const [ranking, setRanking] = useState([]);\n\n const fetchRankings = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(`${apiRoot}${API_ROUTES.TOP_BYCONTINENT}`)\n .then((res) => res.json())\n .then((res) => {\n setRanking(res.continents);\n });\n };\n\n const renderContinentTab = (continent) => (\n a.position - b.position) || []}\n />\n );\n\n const getRegionLabel = (region) =>\n getCopy(\n `filters.region.${region.replace(' ', '').toLowerCase()}`,\n microcopy\n ).toUpperCase();\n\n useEffect(() => {\n fetchRankings();\n }, []);\n\n return (\n
\n getRegionLabel(continent.name))}\n tabPanels={ranking.map(renderContinentTab)}\n forceRenderTabPanel\n />\n
\n );\n};\n\nexport default ContinentRankings;\n","// extracted by mini-css-extract-plugin\nexport var gridContainer = \"styles-module--gridContainer--78278\";\nexport var spinner = \"styles-module--spinner--600f2\";\nexport var spinnerContainer = \"styles-module--spinnerContainer--4108a\";","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport TeaserItem from '../../../../ui/teaserItem';\nimport * as styles from './styles.module.scss';\nimport useElementOnScreen from '../../../../../hooks/useElementOnScreen';\nimport Image from '../../../../ui/image';\n\nconst InfiniteGrid = ({ items, pageSize, loading }) => {\n const [page, setPage] = useState(1);\n const [containerRef, isVisible] = useElementOnScreen({\n root: null,\n rootMargin: '0px',\n threshold: 0.9,\n ignore: loading,\n });\n\n useEffect(() => {\n if (isVisible && !loading) {\n setPage(page + 1);\n }\n }, [isVisible]);\n\n return (\n <>\n
\n {items.length > 0\n ? items\n .slice(0, page * pageSize)\n .map((item, index) => (\n \n ))\n : Array.from(Array(6).keys()).map((_, index) => (\n \n ))}\n
\n {page * pageSize < items.length && (\n
\n {loading ? (\n \n ) : (\n \n )}\n
\n )}\n \n );\n};\n\nInfiniteGrid.propTypes = {\n items: pt.array,\n pageSize: pt.number,\n loading: pt.boolean,\n};\n\nInfiniteGrid.defaultProps = {\n items: [],\n pageSize: 9,\n loading: false,\n};\n\nexport default InfiniteGrid;\n","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport { API_ROUTES, getCountryName } from '../../../../../utils/constants';\nimport InfiniteGrid from '../infiniteGrid';\nimport {\n getFiltersFromQueryParams,\n getMappedJurorFilterDates,\n} from '../../../../../helpers/filters';\nimport { useLocale } from '../../../../../context/locale.context';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport placeholderImage from '../../../../../images/placeholder-image.png';\n\nconst DEFAULT_FILTERS = {\n awards: [],\n range: 4,\n countries: [],\n find: '',\n sort: 'desc',\n};\n\nconst QUERY_PARAM_MAPPING = {\n awardId: 'awards',\n countryId: 'countries',\n yearId: 'range',\n};\n\nconst InfiniteJurors = ({ setTotal, filtersAsQueryString, limit }) => {\n const [jurors, setJurors] = useState([]);\n const [loading, setLoading] = useState(true);\n const { locale } = useLocale();\n\n const filters = getFiltersFromQueryParams(\n DEFAULT_FILTERS,\n filtersAsQueryString,\n QUERY_PARAM_MAPPING\n );\n\n const fetchJurors = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(\n `${apiRoot}${API_ROUTES.UNPAGINATED_JURORS}/${limit}/${filters.sort}`,\n {\n method: 'POST',\n redirect: 'follow',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(filters),\n }\n )\n .then((res) => res.json())\n .then((res) => {\n const data = res.items\n .sort((a, b) => a.surname.localeCompare(b.surname))\n .map((item) => {\n return {\n image: {\n url: item.pictureProfile || placeholderImage,\n description: `${item.firstName} ${item.surname}`,\n isContainImage: !res.pictureProfile,\n },\n title: `${item.firstName} ${item.surname}`,\n subline: getCountryName(locale, item.country) || '',\n link: { linkToPage: item.slug },\n };\n });\n setLoading(false);\n setJurors(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchJurors();\n }, []);\n\n return ;\n};\n\nInfiniteJurors.propTypes = {\n setTotal: pt.func,\n filtersAsQueryString: pt.string,\n limit: pt.number,\n};\n\nInfiniteJurors.defaultProps = {\n setTotal: () => {},\n filtersAsQueryString: '',\n limit: 150,\n};\n\nexport default InfiniteJurors;\n","import React, { useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport InfiniteGrid from '../infiniteGrid';\nimport { getFiltersFromQueryParams } from '../../../../../helpers/filters';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst DEFAULT_FILTERS = {\n types: [],\n range: 4,\n countries: [],\n fieldsOfWork: [],\n businessSectors: [],\n find: '',\n};\n\nconst QUERY_PARAM_MAPPING = {\n profileTypeId: 'types',\n fieldOfWorkId: 'fieldsOfWork',\n countryId: 'countries',\n yearId: 'range',\n regionId: 'countries',\n};\n\nconst InfiniteCompanies = ({ setTotal, filtersAsQueryString, limit }) => {\n const [results, setResults] = useState([]);\n const [regionCountryMapping, setRegionCountryMapping] = useState({});\n const [loading, setLoading] = useState(true);\n\n const CUSTOM_RESOLVERS = {\n regionId: (id) => regionCountryMapping[id],\n };\n\n const filters = getFiltersFromQueryParams(\n DEFAULT_FILTERS,\n filtersAsQueryString,\n QUERY_PARAM_MAPPING,\n CUSTOM_RESOLVERS\n );\n\n const fetchFilters = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(`${apiRoot}${API_ROUTES.JURORS_FILTERS}`)\n .then((res) => res.json())\n .then((res) => {\n const mapping = {};\n res.countries.forEach((country) => {\n if (mapping.hasOwnProperty(country.region)) {\n mapping[country.region] = mapping[country.region].concat(\n country.id\n );\n } else {\n mapping[country.region] = [country.id];\n }\n });\n setRegionCountryMapping(mapping);\n });\n };\n\n const fetchResults = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(`${apiRoot}${API_ROUTES.UNPAGINATED_COMPANIES}/${limit}`, {\n method: 'POST',\n redirect: 'follow',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(filters),\n })\n .then((res) => res.json())\n .then((res) => {\n const data = res.items\n .sort((a, b) => a.surname?.localeCompare(b?.surname))\n .map((item) => {\n return {\n image: { url: item.image, description: item.companyName },\n title: item.companyName,\n info: item.firstClient,\n imageBadge: item.logo,\n link: { linkToPage: item.slug },\n };\n });\n setLoading(false);\n setResults(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchFilters();\n }, []);\n\n useEffect(() => {\n if (Object.keys(regionCountryMapping).length) {\n fetchResults();\n }\n }, [regionCountryMapping]);\n\n return ;\n};\n\nInfiniteCompanies.propTypes = {\n setTotal: pt.func,\n filtersAsQueryString: pt.string,\n limit: pt.number,\n};\n\nInfiniteCompanies.defaultProps = {\n setTotal: () => {},\n filtersAsQueryString: '',\n limit: 150,\n};\n\nexport default InfiniteCompanies;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport pt from 'prop-types';\nimport InfiniteGrid from '../infiniteGrid';\nimport {\n getFiltersFromQueryParams,\n getMappedFilterDates,\n} from '../../../../../helpers/filters';\nimport { getIfDesignAwardBadge } from '../../../../../helpers/badges';\n\nimport { getAPIRoot } from '../../../../../helpers/fetch';\nimport { API_ROUTES } from '../../../../../utils/constants';\n\nconst DEFAULT_FILTERS = {\n awards: [],\n categories: [],\n countries: [],\n disciplines: [],\n find: '',\n isBestOfTheYear: false,\n isGoldAward: false,\n isSupportedByIf: false,\n profileId: 0,\n sipTalentCategories: [],\n sort: 'desc',\n tag: '',\n years: [],\n};\n\nconst QUERY_PARAM_MAPPING = {\n awardId: 'awards',\n disciplineId: 'disciplines',\n categoryId: 'categories',\n countryId: 'countries',\n yearId: 'range',\n regionId: 'countries',\n profile: 'profileId',\n};\n\nconst GOLD_AWARD_MOCK_ID = 9999;\nconst SUPPORTED_BY_IF_MOCK_ID = 8888;\nconst BEST_OF_THE_YEAR_MOCK_ID = 7777;\n\nconst InfiniteProjects = ({ setTotal, filtersAsQueryString, limit }) => {\n const [results, setResults] = useState([]);\n const [loading, setLoading] = useState(true);\n\n const filters = getFiltersFromQueryParams(\n DEFAULT_FILTERS,\n filtersAsQueryString,\n QUERY_PARAM_MAPPING\n );\n\n filters.isSupportedByIf = filters.awards.includes(SUPPORTED_BY_IF_MOCK_ID);\n filters.isGoldAward = filters.awards.includes(GOLD_AWARD_MOCK_ID);\n filters.isBestOfTheYear = filters.awards.includes(BEST_OF_THE_YEAR_MOCK_ID);\n\n filters.awards = filters.awards.filter(\n (filter) =>\n ![\n SUPPORTED_BY_IF_MOCK_ID,\n GOLD_AWARD_MOCK_ID,\n BEST_OF_THE_YEAR_MOCK_ID,\n ].includes(filter)\n );\n\n const fetchResults = async () => {\n let apiRoot = await getAPIRoot();\n\n await fetch(\n `${apiRoot}${API_ROUTES.ENTRIES}/unpaginated/${limit}/${filters.sort}`,\n {\n method: 'POST',\n redirect: 'follow',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(filters),\n }\n )\n .then((res) => res.json())\n .then((res) => {\n const data = res.items.map((item) => {\n return {\n image: { url: item.primaryMediaThumbnail, description: item.name },\n title: item.name,\n subline: item.designation,\n info: item?.clients?.[0],\n link: { linkToPage: item.slug },\n awardBadge: getIfDesignAwardBadge(item),\n };\n });\n setLoading(false);\n setResults(data);\n setTotal(res.count);\n });\n };\n\n useEffect(() => {\n fetchResults();\n }, []);\n\n return ;\n};\n\nInfiniteProjects.propTypes = {\n setTotal: pt.func,\n filtersAsQueryString: pt.string,\n limit: pt.number,\n};\n\nInfiniteProjects.defaultProps = {\n setTotal: () => {},\n filtersAsQueryString: '',\n limit: 150,\n};\n\nexport default InfiniteProjects;\n","import React, { useState } from 'react';\nimport pt from 'prop-types';\nimport { combine } from '/src/helpers/styles';\nimport Container from '../../../modules/container';\nimport Headline, { headlinePropTypes } from '../../ui/headline';\nimport Link, { linkProptypes } from '../../ui/link';\nimport { imageProptypes } from '../../ui/image';\nimport Text from '../../ui/text';\nimport RandomCompanies from './components/randomCompanies';\nimport RandomProjects from './components/randomProjects';\nimport SpecificProjects from './components/specificProjects';\nimport SpecificCompanies from './components/specificCompanies';\nimport SpecificCollections from './components/specificCollections';\nimport SpecificJurors from './components/specificJurors';\nimport RandomJurors from './components/randomJurors';\nimport * as styles from './styles.module.scss';\nimport ContinentRankings from './components/continentRankings';\nimport InfiniteJurors from './components/infiniteJurors';\nimport InfiniteCompanies from './components/infiniteCompanies';\nimport InfiniteProjects from './components/infiniteProjects';\n\nconst DynamicTeaser = ({\n className,\n headline,\n type,\n amountOfRandomTeaser,\n limit,\n queryParameters,\n dataIds,\n beigeBackground,\n firstItemHeadline,\n link,\n firstItemText,\n firstItemLink,\n totalAmountLabel,\n collectionImages,\n}) => {\n const [total, setTotal] = useState(null);\n const profileTypeId = link?.queryParameter?.split('=')?.[1];\n\n return (\n \n \n
\n {headline && (\n \n )}\n {total && totalAmountLabel && (\n \n {total} {totalAmountLabel}\n \n )}\n
\n\n {/* Projects */}\n {type === 'Random Projects Slider' && (\n \n )}\n {type === 'Random Projects Grid' && (\n \n )}\n {type === 'Specific Projects Grid' && dataIds && (\n \n )}\n {type === 'Specific Projects Slider' && dataIds && (\n \n )}\n\n {/* Companies */}\n {type === 'Specific Companies Slider' && dataIds && (\n \n )}\n {type === 'Specific Companies Grid' && dataIds && (\n \n )}\n {type === 'Random Companies Slider' && (\n \n )}\n {type === 'Random Companies Grid' && (\n \n )}\n {type === 'Random Companies Creatives Slider' && (\n \n )}\n {type === 'Random Companies Creatives Grid' && (\n \n )}\n\n {/* Collections */}\n {type === 'Specific Collection Slider' && dataIds && (\n \n )}\n\n {/* Jurors */}\n {type === 'Specific Jurors Grid' && dataIds && (\n \n )}\n {type === 'All Jurors 2022' && (\n \n )}\n {type === 'Talent Jurors 2022' && (\n \n )}\n {type === 'All SIP 2021' && (\n \n )}\n {type === 'Infinite Jurors' && (\n \n )}\n {type === 'Infinite Companies' && (\n \n )}\n {type === 'Infinite Projects' && (\n \n )}\n\n {type === 'Random Jurors Slider' && (\n \n )}\n\n {/* Best Companies by continent */}\n {type === 'Best Companies By Continent' && }\n\n {link && (\n
\n \n {link.text}\n \n
\n )}\n \n \n );\n};\n\nDynamicTeaser.propTypes = {\n headline: pt.shape(headlinePropTypes),\n type: pt.string.isRequired,\n link: pt.shape(linkProptypes),\n dataIds: pt.arrayOf(pt.string),\n amountOfRandomTeaser: pt.number,\n beigeBackground: pt.bool,\n firstItemHeadline: pt.shape(headlinePropTypes),\n firstItemText: pt.string,\n firstItemLink: pt.shape(linkProptypes),\n totalAmountLabel: pt.string,\n collectionImages: pt.arrayOf(pt.shape(imageProptypes)),\n className: pt.string,\n};\n\nDynamicTeaser.defaultProps = {\n headline: null,\n link: null,\n dataIds: [],\n amountOfRandomTeaser: 3,\n beigeBackground: false,\n firstItemHeadline: null,\n firstItemText: '',\n firstItemLink: null,\n totalAmountLabel: '',\n collectionImages: [],\n className: '',\n};\n\nexport default DynamicTeaser;\n","// extracted by mini-css-extract-plugin\nexport var bgBeige = \"styles-module--bgBeige--30c10\";\nexport var hl = \"styles-module--hl--6a25f\";\nexport var hlWrapper = \"styles-module--hlWrapper--b89c0\";\nexport var linkWrapper = \"styles-module--linkWrapper--9f26f\";\nexport var relative = \"styles-module--relative--80c13\";\nexport var wrapper = \"styles-module--wrapper--3bf8e\";","// extracted by mini-css-extract-plugin\nexport var backgroundImage = \"separator-module--backgroundImage--09b95\";\nexport var ctaWrapper = \"separator-module--ctaWrapper--79d87\";\nexport var ctasContainer = \"separator-module--ctasContainer--2857f\";\nexport var firstColumn = \"separator-module--firstColumn--35bf7\";\nexport var form = \"separator-module--form--f3290\";\nexport var fullWidth = \"separator-module--fullWidth--237ed\";\nexport var innerContainer = \"separator-module--innerContainer--301af\";\nexport var inputCta = \"separator-module--inputCta--55722\";\nexport var inputWrapper = \"separator-module--inputWrapper--b3c3c\";\nexport var isRed = \"separator-module--isRed--1d17a\";\nexport var secondColumn = \"separator-module--secondColumn--2f601\";\nexport var secondColumnContent = \"separator-module--secondColumnContent--0d59f\";\nexport var separator = \"separator-module--separator--13de7\";\nexport var separatorInput = \"separator-module--separatorInput--24ef2\";\nexport var textAboveHeadline = \"separator-module--textAboveHeadline--77c3f\";\nexport var whiteText = \"separator-module--whiteText--122c4\";","import React from 'react';\nimport pt from 'prop-types';\nimport Container from '/src/modules/container';\nimport Text from '/src/components/ui/text';\nimport { combine } from '../../../helpers/styles';\nimport CMSForm, {\n proptypes as formProps,\n} from '/src/components/cms-modules/form';\nimport Image, { imageProptypes } from '../../ui/image';\nimport Link, { linkProptypes } from '../../ui/link';\nimport * as styles from './separator.module.scss';\nimport { ifWordLetterLowercase } from '../../../helpers/copy';\n\nconst CMSSeparator = ({\n textAboveHeadline,\n title: { headline },\n backgroundImage,\n ctas,\n form,\n backgroundColor,\n image,\n}) => {\n const renderImage = () => {\n return (\n \n );\n };\n\n const hasForm = form ? Object.keys(form).length > 0 : false;\n const hasCtas = ctas ? ctas.length > 0 : false;\n\n const renderSecondColumn = () => {\n // preference is image > ctas > form\n if (image?.image) {\n return (\n \n );\n }\n\n return !hasForm ? (\n
\n {ctas?.map((cta, index) => (\n
\n \n {cta.text}\n \n
\n ))}\n
\n ) : (\n
\n \n
\n );\n };\n\n return (\n \n {backgroundImage && renderImage()}\n \n \n {textAboveHeadline && (\n \n {textAboveHeadline}\n \n )}\n \n {ifWordLetterLowercase(headline)}\n \n \n {(hasForm || hasCtas || image) && (\n \n {renderSecondColumn()}\n \n )}\n \n \n );\n};\n\nCMSSeparator.propTypes = {\n textAboveHeadline: pt.string,\n title: pt.shape({\n headline: pt.string.isRequired,\n }),\n ctas: pt.arrayOf(pt.shape(linkProptypes)),\n form: pt.shape(formProps),\n backgroundColor: pt.oneOf(['red', 'blue']),\n backgroundImage: pt.shape(imageProptypes),\n};\n\nCMSSeparator.defaultProps = {\n textAboveHeadline: '',\n title: '',\n ctas: [],\n backgroundColor: '',\n backgroundImage: '',\n};\n\nexport default CMSSeparator;\n","function makeTypeChecker(tabsRole) {\n return function (element) {\n return !!element.type && element.type.tabsRole === tabsRole;\n };\n}\nexport var isTab = makeTypeChecker('Tab');\nexport var isTabList = makeTypeChecker('TabList');\nexport var isTabPanel = makeTypeChecker('TabPanel');","function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nimport { Children, cloneElement } from 'react';\nimport { isTabPanel, isTab, isTabList } from './elementTypes';\nfunction isTabChild(child) {\n return isTab(child) || isTabList(child) || isTabPanel(child);\n}\nexport function deepMap(children, callback) {\n return Children.map(children, function (child) {\n // null happens when conditionally rendering TabPanel/Tab\n // see https://github.com/reactjs/react-tabs/issues/37\n if (child === null) return null;\n if (isTabChild(child)) {\n return callback(child);\n }\n if (child.props && child.props.children && typeof child.props.children === 'object') {\n // Clone the child that has children and map them too\n return /*#__PURE__*/cloneElement(child, _extends({}, child.props, {\n children: deepMap(child.props.children, callback)\n }));\n }\n return child;\n });\n}\nexport function deepForEach(children, callback) {\n return Children.forEach(children, function (child) {\n // null happens when conditionally rendering TabPanel/Tab\n // see https://github.com/reactjs/react-tabs/issues/37\n if (child === null) return;\n if (isTab(child) || isTabPanel(child)) {\n callback(child);\n } else if (child.props && child.props.children && typeof child.props.children === 'object') {\n if (isTabList(child)) callback(child);\n deepForEach(child.props.children, callback);\n }\n });\n}","function r(e) {\n var t,\n f,\n n = \"\";\n if (\"string\" == typeof e || \"number\" == typeof e) n += e;else if (\"object\" == typeof e) if (Array.isArray(e)) for (t = 0; t < e.length; t++) e[t] && (f = r(e[t])) && (n && (n += \" \"), n += f);else for (t in e) e[t] && (n && (n += \" \"), n += t);\n return n;\n}\nexport function clsx() {\n for (var e, t, f = 0, n = \"\"; f < arguments.length;) (e = arguments[f++]) && (t = r(e)) && (n && (n += \" \"), n += t);\n return n;\n}\nexport default clsx;","// Get a universally unique identifier\nvar count = 0;\nexport default function uuid() {\n return \"react-tabs-\" + count++;\n}\nexport function reset() {\n count = 0;\n}","import { deepForEach } from './childrenDeepMap';\nimport { isTab, isTabPanel } from './elementTypes';\nexport function getTabsCount(children) {\n var tabCount = 0;\n deepForEach(children, function (child) {\n if (isTab(child)) tabCount++;\n });\n return tabCount;\n}\nexport function getPanelsCount(children) {\n var panelCount = 0;\n deepForEach(children, function (child) {\n if (isTabPanel(child)) panelCount++;\n });\n return panelCount;\n}","var _excluded = [\"children\", \"className\", \"disabledTabClassName\", \"domRef\", \"focus\", \"forceRenderTabPanel\", \"onSelect\", \"selectedIndex\", \"selectedTabClassName\", \"selectedTabPanelClassName\", \"environment\", \"disableUpDownKeys\"];\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nimport React, { cloneElement, Component } from 'react';\nimport cx from 'clsx';\nimport uuid from '../helpers/uuid';\nimport { childrenPropType } from '../helpers/propTypes';\nimport { getPanelsCount as _getPanelsCount, getTabsCount as _getTabsCount } from '../helpers/count';\nimport { deepMap } from '../helpers/childrenDeepMap';\nimport { isTabList, isTabPanel, isTab } from '../helpers/elementTypes';\nfunction isNode(node) {\n return node && 'getAttribute' in node;\n} // Determine if a node from event.target is a Tab element\n\nfunction isTabNode(node) {\n return isNode(node) && node.getAttribute('data-rttab');\n} // Determine if a tab node is disabled\n\nfunction isTabDisabled(node) {\n return isNode(node) && node.getAttribute('aria-disabled') === 'true';\n}\nvar canUseActiveElement;\nfunction determineCanUseActiveElement(environment) {\n var env = environment || (typeof window !== 'undefined' ? window : undefined);\n try {\n canUseActiveElement = !!(typeof env !== 'undefined' && env.document && env.document.activeElement);\n } catch (e) {\n // Work around for IE bug when accessing document.activeElement in an iframe\n // Refer to the following resources:\n // http://stackoverflow.com/a/10982960/369687\n // https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/12733599\n canUseActiveElement = false;\n }\n}\nvar UncontrolledTabs = /*#__PURE__*/function (_Component) {\n _inheritsLoose(UncontrolledTabs, _Component);\n function UncontrolledTabs() {\n var _this;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _Component.call.apply(_Component, [this].concat(args)) || this;\n _this.tabNodes = [];\n _this.handleKeyDown = function (e) {\n var _this$props = _this.props,\n direction = _this$props.direction,\n disableUpDownKeys = _this$props.disableUpDownKeys;\n if (_this.isTabFromContainer(e.target)) {\n var index = _this.props.selectedIndex;\n var preventDefault = false;\n var useSelectedIndex = false;\n if (e.keyCode === 32 || e.keyCode === 13) {\n preventDefault = true;\n useSelectedIndex = false;\n _this.handleClick(e);\n }\n if (e.keyCode === 37 || !disableUpDownKeys && e.keyCode === 38) {\n // Select next tab to the left, validate if up arrow is not disabled\n if (direction === 'rtl') {\n index = _this.getNextTab(index);\n } else {\n index = _this.getPrevTab(index);\n }\n preventDefault = true;\n useSelectedIndex = true;\n } else if (e.keyCode === 39 || !disableUpDownKeys && e.keyCode === 40) {\n // Select next tab to the right, validate if down arrow is not disabled\n if (direction === 'rtl') {\n index = _this.getPrevTab(index);\n } else {\n index = _this.getNextTab(index);\n }\n preventDefault = true;\n useSelectedIndex = true;\n } else if (e.keyCode === 35) {\n // Select last tab (End key)\n index = _this.getLastTab();\n preventDefault = true;\n useSelectedIndex = true;\n } else if (e.keyCode === 36) {\n // Select first tab (Home key)\n index = _this.getFirstTab();\n preventDefault = true;\n useSelectedIndex = true;\n } // This prevents scrollbars from moving around\n\n if (preventDefault) {\n e.preventDefault();\n } // Only use the selected index in the state if we're not using the tabbed index\n\n if (useSelectedIndex) {\n _this.setSelected(index, e);\n }\n }\n };\n _this.handleClick = function (e) {\n var node = e.target;\n do {\n if (_this.isTabFromContainer(node)) {\n if (isTabDisabled(node)) {\n return;\n }\n var index = [].slice.call(node.parentNode.children).filter(isTabNode).indexOf(node);\n _this.setSelected(index, e);\n return;\n }\n } while ((node = node.parentNode) != null);\n };\n return _this;\n }\n var _proto = UncontrolledTabs.prototype;\n _proto.setSelected = function setSelected(index, event) {\n // Check index boundary\n if (index < 0 || index >= this.getTabsCount()) return;\n var _this$props2 = this.props,\n onSelect = _this$props2.onSelect,\n selectedIndex = _this$props2.selectedIndex; // Call change event handler\n\n onSelect(index, selectedIndex, event);\n };\n _proto.getNextTab = function getNextTab(index) {\n var count = this.getTabsCount(); // Look for non-disabled tab from index to the last tab on the right\n\n for (var i = index + 1; i < count; i++) {\n if (!isTabDisabled(this.getTab(i))) {\n return i;\n }\n } // If no tab found, continue searching from first on left to index\n\n for (var _i = 0; _i < index; _i++) {\n if (!isTabDisabled(this.getTab(_i))) {\n return _i;\n }\n } // No tabs are disabled, return index\n\n return index;\n };\n _proto.getPrevTab = function getPrevTab(index) {\n var i = index; // Look for non-disabled tab from index to first tab on the left\n\n while (i--) {\n if (!isTabDisabled(this.getTab(i))) {\n return i;\n }\n } // If no tab found, continue searching from last tab on right to index\n\n i = this.getTabsCount();\n while (i-- > index) {\n if (!isTabDisabled(this.getTab(i))) {\n return i;\n }\n } // No tabs are disabled, return index\n\n return index;\n };\n _proto.getFirstTab = function getFirstTab() {\n var count = this.getTabsCount(); // Look for non disabled tab from the first tab\n\n for (var i = 0; i < count; i++) {\n if (!isTabDisabled(this.getTab(i))) {\n return i;\n }\n }\n return null;\n };\n _proto.getLastTab = function getLastTab() {\n var i = this.getTabsCount(); // Look for non disabled tab from the last tab\n\n while (i--) {\n if (!isTabDisabled(this.getTab(i))) {\n return i;\n }\n }\n return null;\n };\n _proto.getTabsCount = function getTabsCount() {\n var children = this.props.children;\n return _getTabsCount(children);\n };\n _proto.getPanelsCount = function getPanelsCount() {\n var children = this.props.children;\n return _getPanelsCount(children);\n };\n _proto.getTab = function getTab(index) {\n return this.tabNodes[\"tabs-\" + index];\n };\n _proto.getChildren = function getChildren() {\n var _this2 = this;\n var index = 0;\n var _this$props3 = this.props,\n children = _this$props3.children,\n disabledTabClassName = _this$props3.disabledTabClassName,\n focus = _this$props3.focus,\n forceRenderTabPanel = _this$props3.forceRenderTabPanel,\n selectedIndex = _this$props3.selectedIndex,\n selectedTabClassName = _this$props3.selectedTabClassName,\n selectedTabPanelClassName = _this$props3.selectedTabPanelClassName,\n environment = _this$props3.environment;\n this.tabIds = this.tabIds || [];\n this.panelIds = this.panelIds || [];\n var diff = this.tabIds.length - this.getTabsCount(); // Add ids if new tabs have been added\n // Don't bother removing ids, just keep them in case they are added again\n // This is more efficient, and keeps the uuid counter under control\n\n while (diff++ < 0) {\n this.tabIds.push(uuid());\n this.panelIds.push(uuid());\n } // Map children to dynamically setup refs\n\n return deepMap(children, function (child) {\n var result = child; // Clone TabList and Tab components to have refs\n\n if (isTabList(child)) {\n var listIndex = 0; // Figure out if the current focus in the DOM is set on a Tab\n // If it is we should keep the focus on the next selected tab\n\n var wasTabFocused = false;\n if (canUseActiveElement == null) {\n determineCanUseActiveElement(environment);\n }\n if (canUseActiveElement) {\n wasTabFocused = React.Children.toArray(child.props.children).filter(isTab).some(function (tab, i) {\n var env = environment || (typeof window !== 'undefined' ? window : undefined);\n return env && env.document.activeElement === _this2.getTab(i);\n });\n }\n result = /*#__PURE__*/cloneElement(child, {\n children: deepMap(child.props.children, function (tab) {\n var key = \"tabs-\" + listIndex;\n var selected = selectedIndex === listIndex;\n var props = {\n tabRef: function tabRef(node) {\n _this2.tabNodes[key] = node;\n },\n id: _this2.tabIds[listIndex],\n panelId: _this2.panelIds[listIndex],\n selected: selected,\n focus: selected && (focus || wasTabFocused)\n };\n if (selectedTabClassName) props.selectedClassName = selectedTabClassName;\n if (disabledTabClassName) props.disabledClassName = disabledTabClassName;\n listIndex++;\n return /*#__PURE__*/cloneElement(tab, props);\n })\n });\n } else if (isTabPanel(child)) {\n var props = {\n id: _this2.panelIds[index],\n tabId: _this2.tabIds[index],\n selected: selectedIndex === index\n };\n if (forceRenderTabPanel) props.forceRender = forceRenderTabPanel;\n if (selectedTabPanelClassName) props.selectedClassName = selectedTabPanelClassName;\n index++;\n result = /*#__PURE__*/cloneElement(child, props);\n }\n return result;\n });\n };\n\n /**\n * Determine if a node from event.target is a Tab element for the current Tabs container.\n * If the clicked element is not a Tab, it returns false.\n * If it finds another Tabs container between the Tab and `this`, it returns false.\n */\n _proto.isTabFromContainer = function isTabFromContainer(node) {\n // return immediately if the clicked element is not a Tab.\n if (!isTabNode(node)) {\n return false;\n } // Check if the first occurrence of a Tabs container is `this` one.\n\n var nodeAncestor = node.parentElement;\n do {\n if (nodeAncestor === this.node) return true;\n if (nodeAncestor.getAttribute('data-rttabs')) break;\n nodeAncestor = nodeAncestor.parentElement;\n } while (nodeAncestor);\n return false;\n };\n _proto.render = function render() {\n var _this3 = this;\n\n // Delete all known props, so they don't get added to DOM\n var _this$props4 = this.props,\n children = _this$props4.children,\n className = _this$props4.className,\n disabledTabClassName = _this$props4.disabledTabClassName,\n domRef = _this$props4.domRef,\n focus = _this$props4.focus,\n forceRenderTabPanel = _this$props4.forceRenderTabPanel,\n onSelect = _this$props4.onSelect,\n selectedIndex = _this$props4.selectedIndex,\n selectedTabClassName = _this$props4.selectedTabClassName,\n selectedTabPanelClassName = _this$props4.selectedTabPanelClassName,\n environment = _this$props4.environment,\n disableUpDownKeys = _this$props4.disableUpDownKeys,\n attributes = _objectWithoutPropertiesLoose(_this$props4, _excluded);\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, attributes, {\n className: cx(className),\n onClick: this.handleClick,\n onKeyDown: this.handleKeyDown,\n ref: function ref(node) {\n _this3.node = node;\n if (domRef) domRef(node);\n },\n \"data-rttabs\": true\n }), this.getChildren());\n };\n return UncontrolledTabs;\n}(Component);\nUncontrolledTabs.defaultProps = {\n className: 'react-tabs',\n focus: false\n};\nexport { UncontrolledTabs as default };","var _excluded = [\"children\", \"defaultIndex\", \"defaultFocus\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nimport React, { Component } from 'react';\nimport { childrenPropType, onSelectPropType, selectedIndexPropType } from '../helpers/propTypes';\nimport UncontrolledTabs from './UncontrolledTabs';\nimport { getTabsCount } from '../helpers/count';\nvar MODE_CONTROLLED = 0;\nvar MODE_UNCONTROLLED = 1;\nvar Tabs = /*#__PURE__*/function (_Component) {\n _inheritsLoose(Tabs, _Component);\n function Tabs(props) {\n var _this;\n _this = _Component.call(this, props) || this;\n _this.handleSelected = function (index, last, event) {\n var onSelect = _this.props.onSelect;\n var mode = _this.state.mode; // Call change event handler\n\n if (typeof onSelect === 'function') {\n // Check if the change event handler cancels the tab change\n if (onSelect(index, last, event) === false) return;\n }\n var state = {\n // Set focus if the change was triggered from the keyboard\n focus: event.type === 'keydown'\n };\n if (mode === MODE_UNCONTROLLED) {\n // Update selected index\n state.selectedIndex = index;\n }\n _this.setState(state);\n };\n _this.state = Tabs.copyPropsToState(_this.props, {}, props.defaultFocus);\n return _this;\n }\n Tabs.getDerivedStateFromProps = function getDerivedStateFromProps(props, state) {\n return Tabs.copyPropsToState(props, state);\n };\n Tabs.getModeFromProps = function getModeFromProps(props) {\n return props.selectedIndex === null ? MODE_UNCONTROLLED : MODE_CONTROLLED;\n };\n\n // preserve the existing selectedIndex from state.\n // If the state has not selectedIndex, default to the defaultIndex or 0\n Tabs.copyPropsToState = function copyPropsToState(props, state, focus) {\n if (focus === void 0) {\n focus = false;\n }\n if (process.env.NODE_ENV !== 'production' && state.mode !== undefined && state.mode !== Tabs.getModeFromProps(props)) {\n throw new Error(\"Switching between controlled mode (by using `selectedIndex`) and uncontrolled mode is not supported in `Tabs`.\\nFor more information about controlled and uncontrolled mode of react-tabs see https://github.com/reactjs/react-tabs#controlled-vs-uncontrolled-mode.\");\n }\n var newState = {\n focus: focus,\n mode: Tabs.getModeFromProps(props)\n };\n if (newState.mode === MODE_UNCONTROLLED) {\n var maxTabIndex = Math.max(0, getTabsCount(props.children) - 1);\n var selectedIndex = null;\n if (state.selectedIndex != null) {\n selectedIndex = Math.min(state.selectedIndex, maxTabIndex);\n } else {\n selectedIndex = props.defaultIndex || 0;\n }\n newState.selectedIndex = selectedIndex;\n }\n return newState;\n };\n var _proto = Tabs.prototype;\n _proto.render = function render() {\n var _this$props = this.props,\n children = _this$props.children,\n defaultIndex = _this$props.defaultIndex,\n defaultFocus = _this$props.defaultFocus,\n props = _objectWithoutPropertiesLoose(_this$props, _excluded);\n var _this$state = this.state,\n focus = _this$state.focus,\n selectedIndex = _this$state.selectedIndex;\n props.focus = focus;\n props.onSelect = this.handleSelected;\n if (selectedIndex != null) {\n props.selectedIndex = selectedIndex;\n }\n return /*#__PURE__*/React.createElement(UncontrolledTabs, props, children);\n };\n return Tabs;\n}(Component);\nTabs.defaultProps = {\n defaultFocus: false,\n forceRenderTabPanel: false,\n selectedIndex: null,\n defaultIndex: null,\n environment: null,\n disableUpDownKeys: false\n};\nexport { Tabs as default };\nTabs.tabsRole = 'Tabs';","var _excluded = [\"children\", \"className\"];\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nimport React, { Component } from 'react';\nimport cx from 'clsx';\nvar TabList = /*#__PURE__*/function (_Component) {\n _inheritsLoose(TabList, _Component);\n function TabList() {\n return _Component.apply(this, arguments) || this;\n }\n var _proto = TabList.prototype;\n _proto.render = function render() {\n var _this$props = this.props,\n children = _this$props.children,\n className = _this$props.className,\n attributes = _objectWithoutPropertiesLoose(_this$props, _excluded);\n return /*#__PURE__*/React.createElement(\"ul\", _extends({}, attributes, {\n className: cx(className),\n role: \"tablist\"\n }), children);\n };\n return TabList;\n}(Component);\nTabList.defaultProps = {\n className: 'react-tabs__tab-list'\n};\nexport { TabList as default };\nTabList.tabsRole = 'TabList';","var _excluded = [\"children\", \"className\", \"disabled\", \"disabledClassName\", \"focus\", \"id\", \"panelId\", \"selected\", \"selectedClassName\", \"tabIndex\", \"tabRef\"];\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nimport React, { Component } from 'react';\nimport cx from 'clsx';\nvar DEFAULT_CLASS = 'react-tabs__tab';\nvar Tab = /*#__PURE__*/function (_Component) {\n _inheritsLoose(Tab, _Component);\n function Tab() {\n return _Component.apply(this, arguments) || this;\n }\n var _proto = Tab.prototype;\n _proto.componentDidMount = function componentDidMount() {\n this.checkFocus();\n };\n _proto.componentDidUpdate = function componentDidUpdate() {\n this.checkFocus();\n };\n _proto.checkFocus = function checkFocus() {\n var _this$props = this.props,\n selected = _this$props.selected,\n focus = _this$props.focus;\n if (selected && focus) {\n this.node.focus();\n }\n };\n _proto.render = function render() {\n var _cx,\n _this = this;\n var _this$props2 = this.props,\n children = _this$props2.children,\n className = _this$props2.className,\n disabled = _this$props2.disabled,\n disabledClassName = _this$props2.disabledClassName,\n focus = _this$props2.focus,\n id = _this$props2.id,\n panelId = _this$props2.panelId,\n selected = _this$props2.selected,\n selectedClassName = _this$props2.selectedClassName,\n tabIndex = _this$props2.tabIndex,\n tabRef = _this$props2.tabRef,\n attributes = _objectWithoutPropertiesLoose(_this$props2, _excluded);\n return /*#__PURE__*/React.createElement(\"li\", _extends({}, attributes, {\n className: cx(className, (_cx = {}, _cx[selectedClassName] = selected, _cx[disabledClassName] = disabled, _cx)),\n ref: function ref(node) {\n _this.node = node;\n if (tabRef) tabRef(node);\n },\n role: \"tab\",\n id: id,\n \"aria-selected\": selected ? 'true' : 'false',\n \"aria-disabled\": disabled ? 'true' : 'false',\n \"aria-controls\": panelId,\n tabIndex: tabIndex || (selected ? '0' : null),\n \"data-rttab\": true\n }), children);\n };\n return Tab;\n}(Component);\nTab.defaultProps = {\n className: DEFAULT_CLASS,\n disabledClassName: DEFAULT_CLASS + \"--disabled\",\n focus: false,\n id: null,\n panelId: null,\n selected: false,\n selectedClassName: DEFAULT_CLASS + \"--selected\"\n};\nexport { Tab as default };\nTab.tabsRole = 'Tab';","var _excluded = [\"children\", \"className\", \"forceRender\", \"id\", \"selected\", \"selectedClassName\", \"tabId\"];\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nimport React, { Component } from 'react';\nimport cx from 'clsx';\nvar DEFAULT_CLASS = 'react-tabs__tab-panel';\nvar TabPanel = /*#__PURE__*/function (_Component) {\n _inheritsLoose(TabPanel, _Component);\n function TabPanel() {\n return _Component.apply(this, arguments) || this;\n }\n var _proto = TabPanel.prototype;\n _proto.render = function render() {\n var _cx;\n var _this$props = this.props,\n children = _this$props.children,\n className = _this$props.className,\n forceRender = _this$props.forceRender,\n id = _this$props.id,\n selected = _this$props.selected,\n selectedClassName = _this$props.selectedClassName,\n tabId = _this$props.tabId,\n attributes = _objectWithoutPropertiesLoose(_this$props, _excluded);\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, attributes, {\n className: cx(className, (_cx = {}, _cx[selectedClassName] = selected, _cx)),\n role: \"tabpanel\",\n id: id,\n \"aria-labelledby\": tabId\n }), forceRender || selected ? children : null);\n };\n return TabPanel;\n}(Component);\nTabPanel.defaultProps = {\n className: DEFAULT_CLASS,\n forceRender: false,\n selectedClassName: DEFAULT_CLASS + \"--selected\"\n};\nexport { TabPanel as default };\nTabPanel.tabsRole = 'TabPanel';","// extracted by mini-css-extract-plugin\nexport var gradientOverlay = \"styles-module--gradientOverlay--c6418\";\nexport var left = \"styles-module--left--db6cb\";\nexport var right = \"styles-module--right--2ead1\";\nexport var selectedTab = \"styles-module--selectedTab--be49a\";\nexport var tab = \"styles-module--tab--0c73a\";\nexport var tabList = \"styles-module--tabList--e7980\";\nexport var tabListContainer = \"styles-module--tabListContainer--abea1\";","import React from 'react';\nimport pt from 'prop-types';\nimport { Tab, Tabs, TabList, TabPanel } from 'react-tabs';\nimport Container from '../../../modules/container';\nimport { combine } from '../../../helpers/styles';\nimport 'react-tabs/style/react-tabs.css';\nimport * as styles from './styles.module.scss';\n\nconst CustomTabs = ({\n tabList,\n tabPanels,\n tabListClassName,\n forceRenderTabPanel,\n}) => (\n \n \n \n {tabList.map((item, index) => (\n \n {item}\n \n ))}\n \n
\n
\n \n\n {tabPanels.map((TabItem, index) => (\n {TabItem}\n ))}\n \n);\n\nCustomTabs.propTypes = {\n tabList: pt.array.isRequired,\n tabPanels: pt.array.isRequired,\n tabListClassName: pt.string,\n forceRenderTabPanel: pt.bool,\n};\n\nCustomTabs.defaultProps = {\n tabListClassName: '',\n forceRenderTabPanel: false,\n};\n\nexport default CustomTabs;\n","// extracted by mini-css-extract-plugin\nexport var arrow = \"styles-module--arrow--bf9fa\";\nexport var borderBold = \"styles-module--borderBold--2b47d\";\nexport var button = \"styles-module--button--bb1d3\";\nexport var companyWrapper = \"styles-module--companyWrapper--f74a1\";\nexport var descriptionWrapper = \"styles-module--descriptionWrapper--35b36\";\nexport var first = \"styles-module--first--d22ac\";\nexport var image = \"styles-module--image--34dc0\";\nexport var labelWrapper = \"styles-module--labelWrapper--e8b2a\";\nexport var later = \"styles-module--later--5b8d8\";\nexport var link = \"styles-module--link--a17fe\";\nexport var logo = \"styles-module--logo--d3486\";\nexport var ranking = \"styles-module--ranking--81b3a\";\nexport var rankingWrapper = \"styles-module--rankingWrapper--9fe2d\";\nexport var small = \"styles-module--small--15b67\";\nexport var transparent = \"styles-module--transparent--df7eb\";\nexport var trophy = \"styles-module--trophy--02146\";\nexport var type = \"styles-module--type--be64f\";\nexport var wrapper = \"styles-module--wrapper--3ded5\";","export const getProfileTypeId = (profileTypeName) => {\n const profileTypes = {\n Companies: 1,\n 'Design & Architecture Studios': 2,\n Museums: 7,\n 'Design Organization': 8,\n };\n\n return profileTypes[profileTypeName];\n};\n","import React, { useContext } from 'react';\nimport pt from 'prop-types';\nimport { combine } from '/src/helpers/styles';\nimport Text from '../../../../../ui/text';\nimport Link from '../../../../../ui/link';\nimport Image from '../../../../../ui/image';\nimport Icon from '../../../../../ui/icon';\nimport * as styles from './styles.module.scss';\nimport { getCountryName } from '../../../../../../utils/constants';\nimport { MicrocopyContext } from '../../../../../../context/microcopy.context';\nimport { getCopy } from '../../../../../../helpers/copy';\nimport { useLocale } from '../../../../../../context/locale.context';\nimport { getProfileTypeId } from '../../../../../../helpers/getProfileTypeId';\n\nconst RankingTableRow = ({ data, index, type, withType, isGlobal }) => {\n const microcopy = useContext(MicrocopyContext);\n const { locale } = useLocale();\n\n // get appropriate number to show as label (e.g. Top 3)\n const getTopNumber = () => {\n const position = index + 1;\n const steps = [3, 10, 25, 50, 100];\n return steps.find((step) => position <= step);\n };\n\n const getRegionLabel = (region) =>\n getCopy(\n `filters.region.${region.replace(' ', '').toLowerCase()}`,\n microcopy\n );\n\n const withWrapper = (children) => {\n if (data.slug) {\n return (\n \n {children}\n \n );\n } else {\n return (\n \n {children}\n
\n );\n }\n };\n\n return withWrapper(\n <>\n
\n
\n {index === 0 && !data.tied && (\n \n )}\n 2 && styles.later\n )}\n >\n {index + 1}\n \n
\n {type === 'company' &&\n (index === 0 && !data.tied ? (\n \n {withType\n ? `${getCopy('wdiRanking.labeledBest', microcopy)} ${\n (data.continent && getRegionLabel(data.continent)) ||\n (data.country && getCountryName(locale, data.country)) ||\n (isGlobal ? getCopy('wdiRanking.global', microcopy) : '')\n }`\n : getCopy('wdiRanking.nonLabeledBest', microcopy)}\n \n ) : (\n \n {`${getCopy(\n 'wdiRanking.top',\n microcopy\n )} ${getTopNumber()} `}\n {withType\n ? `${\n (data.continent && getRegionLabel(data.continent)) ||\n (data.country && getCountryName(locale, data.country)) ||\n (isGlobal ? getCopy('wdiRanking.global', microcopy) : '')\n }`\n : ''}\n \n ))}\n
\n
\n {type === 'company' ? (\n <>\n {data.logoFile ? (\n \n ) : (\n
\n )}\n
\n 2 && styles.later\n )}\n >\n {index === 0 ? (\n \n {`${index + 1} | ${\n withType\n ? `${getCopy('wdiRanking.labeledBest', microcopy)} ${\n (data.continent &&\n getRegionLabel(data.continent)) ||\n (data.country &&\n getCountryName(locale, data.country)) ||\n (isGlobal\n ? getCopy('wdiRanking.global', microcopy)\n : '')\n }`\n : getCopy('wdiRanking.nonLabeledBest', microcopy)\n }`}\n \n ) : (\n \n {`${index + 1} | ${getCopy(\n 'wdiRanking.top',\n microcopy\n )} ${getTopNumber()} `}\n {withType\n ? `${\n (data.continent && getRegionLabel(data.continent)) ||\n (data.country &&\n getCountryName(locale, data.country)) ||\n (isGlobal\n ? getCopy('wdiRanking.global', microcopy)\n : '')\n }`\n : ''}\n \n )}\n \n \n {getCopy(\n `filters.profiletypes.${getProfileTypeId(\n data.profilTypeText\n )}.wdi`,\n microcopy\n )}\n \n \n {data.name}\n \n
\n \n ) : (\n \n {data.sectorName}\n \n )}\n
\n {data.slug && (\n
\n \n
\n )}\n \n );\n};\n\nRankingTableRow.propTypes = {\n data: pt.object.isRequired,\n index: pt.number.isRequired,\n type: pt.oneOf(['sectors', 'company']),\n isGlobal: pt.bool,\n withType: pt.bool,\n};\n\nRankingTableRow.defaultProps = {\n type: 'company',\n isGlobal: false,\n withType: true,\n};\n\nexport default RankingTableRow;\n","import React, { useContext } from 'react';\nimport pt from 'prop-types';\nimport Headline, { headlinePropTypes } from '../../../../../ui/headline';\nimport CountryTableRow from '../rankingTableRow';\nimport * as styles from './styles.module.scss';\nimport Container from '../../../../../../modules/container';\nimport Link from '../../../../../ui/link';\nimport { MicrocopyContext } from '../../../../../../context/microcopy.context';\nimport { getCopy } from '../../../../../../helpers/copy';\nimport { STATIC_ROUTES } from '../../../../../../utils/constants';\n\nconst RankingTabPanel = ({ items, headline, type }) => {\n const microcopy = useContext(MicrocopyContext);\n\n return (\n
\n \n \n
\n {items?.slice(0, 10).map((item, index) => (\n \n ))}\n
\n
\n \n {getCopy('btn.showAll', microcopy)}\n \n
\n
\n
\n );\n};\n\nRankingTabPanel.propTypes = {\n items: pt.array.isRequired,\n headline: pt.shape(headlinePropTypes).isRequired,\n type: pt.oneOf(['sectors', 'company']),\n};\n\nRankingTabPanel.defaultProps = {\n type: 'company',\n};\n\nexport default RankingTabPanel;\n","// extracted by mini-css-extract-plugin\nexport var button = \"styles-module--button--17608\";\nexport var hl = \"styles-module--hl--ddfd9\";\nexport var outerContainer = \"styles-module--outerContainer--38d9c\";"],"names":["FirstItem","headline","text","link","React","className","Headline","level","type","Text","as","Link","asButton","propTypes","pt","headlinePropTypes","linkProptypes","defaultProps","beigeBg","RandomJurors","amountOfRandomTeaser","firstItemHeadline","firstItemText","firstItemLink","setTotal","layout","beigeBackground","jurors","setJurors","useState","microcopy","useContext","MicrocopyContext","locale","useLocale","useEffect","async","apiRoot","getAPIRoot","fetch","API_ROUTES","then","res","json","data","items","map","item","image","url","pictureProfile","placeholderImage","description","firstName","surname","isContainImage","title","subline","getCountryName","country","linkToPage","slug","count","fetchProjects","combine","styles","length","index","TeaserItem","_extends","key","aspectRatio","Array","from","keys","_","isSkeleton","STATIC_ROUTES","btnType","getCopy","CustomScrollable","isInSlider","isSmall","SpecificProjects","dataIds","projects","setProjects","tmp","resolve","id","_res$clients","project","primaryMediaThumbnail","name","designation","info","clients","awardBadge","getIfDesignAwardBadge","position","push","catch","console","error","Promise","all","sorted","sort","a","b","isRequired","RandomCompanies","isCreative","profileTypeId","companies","setCompanies","companyName","firstClient","imageBadge","logo","fetchCompanies","RandomProjects","_item$clients","SpecificCompanies","SpecificCollections","collectionImages","collections","setCollection","_collectionImages$ind","collection","fetchCollections","disableGatsbyImage","imageProptypes","SpecificJurors","juror","fetchJurors","ContinentRankings","ranking","setRanking","getRegionLabel","region","replace","toLowerCase","toUpperCase","continents","fetchRankings","CustomTabs","tabList","continent","tabPanels","CountryTabItem","forceRenderTabPanel","spinner","InfiniteGrid","pageSize","loading","page","setPage","containerRef","isVisible","useElementOnScreen","root","rootMargin","threshold","ignore","slice","ref","Image","imgClassName","DEFAULT_FILTERS","awards","range","countries","find","QUERY_PARAM_MAPPING","awardId","countryId","yearId","InfiniteJurors","filtersAsQueryString","limit","setLoading","filters","getFiltersFromQueryParams","method","redirect","headers","body","JSON","stringify","localeCompare","types","fieldsOfWork","businessSectors","fieldOfWorkId","regionId","InfiniteCompanies","results","setResults","regionCountryMapping","setRegionCountryMapping","CUSTOM_RESOLVERS","mapping","forEach","hasOwnProperty","concat","fetchFilters","Object","_a$surname","fetchResults","categories","disciplines","isBestOfTheYear","isGoldAward","isSupportedByIf","profileId","sipTalentCategories","tag","years","disciplineId","categoryId","profile","GOLD_AWARD_MOCK_ID","SUPPORTED_BY_IF_MOCK_ID","BEST_OF_THE_YEAR_MOCK_ID","InfiniteProjects","includes","filter","DynamicTeaser","queryParameters","totalAmountLabel","_link$queryParameter","_link$queryParameter$","total","queryParameter","split","Container","fullWidth","variant","secondColumnContent","CMSSeparator","textAboveHeadline","backgroundImage","ctas","form","backgroundColor","hasForm","hasCtas","focusPoint","ifWordLetterLowercase","CMSForm","inputPlaceholder","btnLabel","inputClassName","btnClassName","action","gaTrackingKeyword","cta","allowIcon","formProps","makeTypeChecker","tabsRole","element","assign","target","i","arguments","source","prototype","call","apply","this","deepMap","children","callback","Children","child","isTabChild","props","cloneElement","r","e","t","f","n","isArray","uuid","tabCount","canUseActiveElement","_excluded","_setPrototypeOf","o","p","setPrototypeOf","__proto__","isNode","node","isTabNode","getAttribute","isTabDisabled","UncontrolledTabs","_Component","subClass","superClass","_this","_len","args","_key","tabNodes","handleKeyDown","_this$props","direction","disableUpDownKeys","isTabFromContainer","selectedIndex","preventDefault","useSelectedIndex","keyCode","handleClick","getNextTab","getPrevTab","getLastTab","getFirstTab","setSelected","parentNode","indexOf","create","constructor","_proto","event","getTabsCount","_this$props2","onSelect","getTab","_i","getPanelsCount","panelCount","getChildren","_this2","_this$props3","disabledTabClassName","focus","selectedTabClassName","selectedTabPanelClassName","environment","tabIds","panelIds","diff","result","listIndex","wasTabFocused","env","window","undefined","document","activeElement","determineCanUseActiveElement","some","tab","selected","tabRef","panelId","selectedClassName","disabledClassName","tabId","forceRender","nodeAncestor","parentElement","render","_this3","_this$props4","domRef","attributes","excluded","sourceKeys","_objectWithoutPropertiesLoose","onClick","onKeyDown","Component","Tabs","handleSelected","last","mode","state","setState","copyPropsToState","defaultFocus","getDerivedStateFromProps","getModeFromProps","newState","maxTabIndex","Math","max","min","defaultIndex","_this$state","TabList","role","DEFAULT_CLASS","Tab","componentDidMount","checkFocus","componentDidUpdate","_cx","disabled","tabIndex","TabPanel","gradientOverlay","tabListClassName","TabItem","borderBold","later","wrapper","RankingTableRow","withType","isGlobal","getTopNumber","step","tied","Icon","size","logoFile","profileTypeName","profilTypeText","Companies","Museums","sectorName","useGatsbyLink","RankingTabPanel","_items$","CountryTableRow"],"sourceRoot":""}