{"version":3,"file":"static/js/Profile.d998dbcf.js","mappings":"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","sources":["components/Image/ImageLoader.tsx","components/Profile/Profile.styled.ts","components/Profile/Profile.tsx","utils/ucFirst.ts"],"sourcesContent":["import loadable, { DefaultComponent } from \"@loadable/component\";\nimport React, { ReactElement } from \"react\";\n\nimport ImageProps from \"./ImageProps\";\n\nconst Image = loadable(\n (): Promise> =>\n import(/* webpackChunkName: \"Image\" */ \"./Image\"),\n);\nconst ImageLoader = (props: ImageProps): ReactElement => ;\nexport default ImageLoader;\n","import { styled, css } from \"styled-components\";\nimport theme from \"styled-theming\";\n\nimport Icon from \"components/Icon\";\nimport Image from \"components/Image\";\nimport Link, { Obfuscated } from \"components/Link\";\nimport {\n styleBodyM,\n styleHeadingL,\n styleHeadingS,\n} from \"style/components/Typography\";\nimport { MQ } from \"style/mediaQueries\";\n\nconst iconColor = theme(\"theme\", {\n undefined: \"--icon-on-neutral-primary\",\n lightgray: \"--icon-on-neutral-primary\",\n blue: \"--icon-on-blue-primary\",\n cyan: \"--icon-on-cyan-primary\",\n});\n\nconst hoverColor = theme(\"theme\", {\n undefined: \"--icon-on-neutral-primary\",\n lightgray: \"--text-on-neutral-link\",\n blue: \"--text-on-blue-primary-alt\",\n cyan: \"--text-on-cyan-primary\",\n});\n\nconst linkColor = theme(\"theme\", {\n undefined: \"--text-on-neutral-link\",\n lightgray: \"--text-on-neutral-link\",\n blue: \"--text-on-blue-primary\",\n cyan: \"--text-on-cyan-primary\",\n});\n\nexport const Container = styled.div`\n align-items: flex-start;\n display: flex;\n flex-flow: row;\n flex-wrap: wrap;\n`;\n\nexport const Content = styled.div.attrs<{\n $noPadding: boolean;\n}>(() => ({}))`\n flex: 1;\n width: calc(100% - 5.25rem);\n ${(props) =>\n !props.$noPadding &&\n theme(\"size\", {\n small: css`\n padding-left: 0.875rem;\n `,\n medium: css`\n padding-left: 1.3125rem;\n `,\n large: css`\n padding-left: 1.3125rem;\n `,\n })};\n ${theme(\"size\", {\n small: css`\n width: calc(100% - 3.5rem);\n `,\n medium: css`\n ${MQ.FROM_M} {\n width: calc(100% - 6.125rem);\n }\n\n ${MQ.FROM_XL} {\n width: calc(100% - 6.5625rem);\n }\n `,\n large: css`\n ${MQ.FROM_M} {\n width: calc(100% - 9.1875rem);\n }\n\n ${MQ.FROM_XL} {\n width: calc(100% - 9.625rem);\n }\n `,\n })}\n`;\n\nexport const Heading = styled.div`\n ${styleHeadingS}\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nexport const Email = styled(Obfuscated)`\n ${styleBodyM};\n color: var(${linkColor});\n display: block;\n margin-top: 0.4375rem;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nexport const Phone = styled(Obfuscated)`\n ${styleBodyM};\n color: var(${linkColor});\n margin-top: 0.4375rem;\n`;\n\nexport const PhoneSection = styled.div`\n ${styleBodyM}\n align-items: flex-start;\n display: flex;\n flex-direction: column;\n margin-top: 0.4375rem;\n`;\n\nexport const Description = styled.div`\n ${styleBodyM}\n margin-top: 0.4375rem;\n`;\n\nconst imageOrInitialSize = css`\n height: 5.25rem;\n width: 5.25rem;\n ${theme(\"size\", {\n small: css`\n height: 3.5rem;\n width: 3.5rem;\n `,\n medium: css`\n ${MQ.FROM_M} {\n height: 6.125rem;\n width: 6.125rem;\n }\n\n ${MQ.FROM_XL} {\n height: 6.5625rem;\n width: 6.5625rem;\n }\n `,\n large: css`\n ${MQ.FROM_M} {\n height: 9.1875rem;\n width: 9.1875rem;\n }\n\n ${MQ.FROM_XL} {\n height: 9.625rem;\n width: 9.625rem;\n }\n `,\n })}\n`;\n\nexport const Initials = styled.div`\n ${theme(\"size\", {\n small: styleHeadingS,\n medium: styleHeadingL,\n large: styleHeadingL,\n })}\n align-items: center;\n aspect-ratio: 1;\n background: var(--color-black-o05);\n display: flex;\n justify-content: center;\n text-align: center;\n ${imageOrInitialSize}\n`;\n\nexport const HeadingArrow = styled(Icon)`\n color: var(${iconColor});\n margin-left: 0.875rem;\n margin-right: 0.875rem;\n transition:\n margin-left 0.2s ease-in-out,\n margin-right 0.2s ease-in-out,\n color 0.2s ease-in-out;\n vertical-align: middle;\n`;\n\nexport const HeadingUrl = styled(Link)`\n ${styleHeadingS}\n border: none;\n\n &:hover {\n color: var(${hoverColor});\n\n ${HeadingArrow} {\n color: var(${hoverColor});\n margin-left: 1.75rem;\n margin-right: 0;\n }\n }\n`;\n\nexport const ProfileImage = styled(Image)`\n && {\n aspect-ratio: 1;\n ${imageOrInitialSize}\n }\n`;\n\nexport const ProfileLink = styled(Link)`\n border: none;\n color: inherit;\n`;\n\nexport const Offices = styled.div`\n display: inline-flex;\n flex-direction: column;\n gap: 0.25rem;\n margin-top: 0;\n\n ${MQ.FROM_M} {\n margin-top: 0.875rem;\n }\n`;\n\nexport const OfficeLink = styled(Link)`\n ${styleBodyM};\n color: var(${linkColor});\n padding-left: 2.1875rem;\n position: relative;\n\n svg {\n color: var(${iconColor});\n left: 0;\n position: absolute;\n }\n`;\n","import React, { ReactElement } from \"react\";\nimport { ThemeProvider } from \"styled-components\";\n\nimport Icon from \"components/Icon\";\nimport { BREAKPOINT_NUMBER } from \"style/breakpoints\";\nimport { LabelS } from \"style/components/Typography\";\nimport generateSrcSet from \"style/generateSrcSet\";\nimport EpiImage from \"types/EpiImage\";\nimport { appendComponentWithNoBr } from \"utils/appendComponentWithNoBr\";\nimport { addEditAttributes } from \"utils/episerver\";\nimport ucFirst from \"utils/ucFirst\";\n\nimport {\n Container,\n Content,\n Email,\n PhoneSection,\n Description,\n Initials,\n ProfileImage,\n ProfileLink,\n Heading,\n HeadingUrl,\n HeadingArrow,\n Phone,\n OfficeLink,\n Offices,\n} from \"./Profile.styled\";\nimport ProfileProps, { ProfileImageOrInitialsProps } from \"./ProfileProps\";\n\nconst ProfileImageOrInitials = ({\n image,\n initials,\n hideInitials = false,\n}: ProfileImageOrInitialsProps): ReactElement => {\n return (\n <>\n {image ? (\n \n ) : (\n !hideInitials && {initials}\n )}\n \n );\n};\n\nconst Profile = ({\n fullName,\n role,\n businessArea,\n email,\n imageUrl,\n initials,\n hideInitials,\n phoneFixed,\n phoneMobile,\n description,\n className,\n editPropertyName,\n url,\n anchorName,\n size = \"large\",\n showOverlay = false,\n primaryOffice,\n gtmClickType,\n}: ProfileProps): ReactElement => {\n let image = undefined;\n\n if (imageUrl) {\n image = {\n url: imageUrl,\n decorative: false,\n alt: fullName,\n overlay: showOverlay ? \"UpLeft\" : undefined,\n } as EpiImage;\n\n image.srcSet = generateSrcSet({\n image: imageUrl,\n content: [\n {\n width: 154,\n height: 154,\n breakpoint: BREAKPOINT_NUMBER.XL,\n },\n {\n width: 147,\n height: 147,\n breakpoint: BREAKPOINT_NUMBER.M,\n },\n { width: 84, height: 84 },\n ],\n format: \"jpg\",\n });\n }\n return (\n \n \n {url ? (\n \n \n \n ) : (\n \n )}\n \n {url ? (\n \n {appendComponentWithNoBr(\n fullName,\n ,\n )}\n \n ) : (\n {fullName}\n )}\n {(role || businessArea) && (\n \n {role && {role}}\n {role && businessArea && \" \"}\n {businessArea && {businessArea}}\n \n )}\n {email && (\n \n {email}\n \n )}\n {(phoneMobile || phoneFixed) && (\n \n {phoneMobile && (\n \n {phoneMobile}\n \n )}\n {phoneFixed && (\n \n {phoneFixed}\n \n )}\n \n )}\n {description && (\n \n )}\n {primaryOffice && primaryOffice.url && (\n \n \n \n \n {[\n primaryOffice.addressRow1,\n ucFirst(primaryOffice.city),\n ]\n .filter(Boolean)\n .join(\", \")}\n \n \n \n )}\n \n \n \n );\n};\n\nexport default React.memo(Profile);\n","const ucFirst = (string: string | undefined) => {\n if (string === undefined) return string;\n return string[0].toUpperCase() + string.slice(1).toLowerCase();\n};\n\nexport default ucFirst;\n"],"names":["Image","loadable","resolved","chunkName","isReady","props","key","resolve","__webpack_modules__","importAsync","requireAsync","then","requireSync","id","__webpack_require__","ImageLoader","_jsx","iconColor","theme","undefined","lightgray","blue","cyan","hoverColor","linkColor","Container","styled","div","withConfig","componentId","Content","attrs","$noPadding","small","css","medium","large","MQ","FROM_M","FROM_XL","Heading","styleHeadingS","Email","Obfuscated","styleBodyM","Phone","PhoneSection","Description","imageOrInitialSize","Initials","styleHeadingL","HeadingArrow","Icon","HeadingUrl","Link","ProfileImage","ProfileLink","Offices","OfficeLink","ProfileImageOrInitials","image","initials","hideInitials","_Fragment","children","url","decorative","alt","overlay","srcSet","Profile","fullName","role","businessArea","email","imageUrl","phoneFixed","phoneMobile","description","className","editPropertyName","anchorName","size","showOverlay","primaryOffice","gtmClickType","generateSrcSet","content","width","height","breakpoint","BREAKPOINT_NUMBER","XL","M","format","ThemeProvider","_jsxs","addEditAttributes","title","to","appendComponentWithNoBr","icon","LabelS","obfuscateChildren","hoverSpan","tel","replace","dangerouslySetInnerHTML","__html","addressRow1","ucFirst","city","filter","Boolean","join","React","string","toUpperCase","slice","toLowerCase"],"sourceRoot":""}