{"version":3,"sources":["webpack:///./Avensia.Common/Features/Markets/MarketsPage.tsx"],"names":["Container","div","marginTop","StyledP","display","Item","li","padding","y","LogoWrap","marginBottom","Logo","width","height","CountrySelectionWrapper","marginRight","marginLeft","createList","list","callback","bare","map","item","i","key","state","currentBreakpoint","props","clickHandler","external","countryCode","cookieId","page","items","concat","countryLinks","sort","a","b","englishName","halfListLength","Math","ceil","length","leftList","slice","rightList","isMobile","className","src","image","title","alt","ratio","OneToOne","fontSize","D32_M20","upperCase","header","labels","suggestionText","matchingCountryLinkItem","find","countryLinkItem","block","createSuggestion","ipCountryCode","suggestion"],"mappings":"uOA0BMA,EAAY,IAAOC,IAAI,CAC3BC,UAAW,SAGPC,EAAU,YAAO,IAAW,CAChCC,QAAS,iBAGLC,EAAO,IAAOC,GAAG,CACrBC,QAAS,CAAEC,EAAG,SAGVC,EAAW,IAAOR,IAAI,CAC1BC,UAAW,OACXQ,aAAc,SAGVC,EAAO,YAAO,IAAS,CAC3BC,MAAO,OACPC,OAAQ,SAGJC,EAA0B,IAAOb,MAAG,GACxCc,YAAa,OACbC,WAAY,SACX,UAAY,KAAsB,CACjCd,UAAW,OACXa,YAAa,OACbC,WAAY,Q,IAIVC,EAAa,SAACC,EAAWC,GAC7B,OACE,kBAAC,IAAE,CAACC,MAAI,GACLF,EAAKG,KAAI,SAACC,EAAqCC,GAC9C,OACE,kBAAClB,EAAI,CAACmB,IAAKD,GACT,kBAAC,UAAgB,aAACJ,SAAUA,GAAcG,UA0FvC,uBAAQ,SAAAG,GAAS,OAC9BC,kBAAmBD,EAAMC,qBADZ,EA7Df,SAAqBC,GAArB,WACQC,EAAe,SAAOC,EAAmBC,GAAmB,+C,mEAC3DD,EAAD,MACF,GAAM,YAAUF,EAAMI,SAAUD,I,OAAhC,S,mCAIEE,EAAOL,EAAMK,KAGbC,EAAQ,GACXC,OAAO,YAAiBF,EAAKG,cAAcF,OAC3CG,MAAK,SAACC,EAAkCC,GACvC,OAAID,EAAEE,cAAgBD,EAAEC,YACf,EAEFF,EAAEE,YAAcD,EAAEC,YAAc,GAAK,KAG1CC,EAAiBC,KAAKC,KAAoB,GAAfT,EAAMU,QACjCC,EAAWX,EAAMY,MAAM,EAAGL,GAC1BM,EAAYb,EAAMY,MAAML,EAAgBP,EAAMU,QAC9CI,EAAW,YAAUpB,EAAMD,mBAEjC,OACE,kBAAC,IAAI,KACH,yBAAKsB,UAAU,QACb,kBAACvC,EAAQ,CAACuC,UAAW,YAAkB,GAAI,KACzC,kBAACrC,EAAI,QAELoC,GACA,yBAAKC,UAAW,YAAkB,GAAI,IACpC,kBAAC,IAAK,CACJC,IAAK,YAAiBjB,EAAKkB,OAC3BC,MAAO,mBACPC,IAAK,mBACLC,MAAO,IAAWC,YAIxB,yBAAKN,UAAW,YAAkB,GAAI,IACpC,kBAAClC,EAAuB,KACtB,kBAAC,IAAE,CAACyC,SAAU,IAAeC,QAASC,WAAW,GAC9C,YAAiBzB,EAAK0B,QAAU,YAAiB1B,EAAK0B,QAAU/B,EAAMgC,OAAOR,OAhEnE,SACvBjC,EACAY,EACA8B,EACAzC,GAEA,IAAM0C,EAA0B3C,EAAK4C,MAAK,SAACxC,GACzC,IAAMyC,EAAkBzC,EACxB,OAAO,YAAiByC,EAAgBC,MAAMlC,eAAiBA,KAEjE,GAAI+B,EACF,OACE,kBAAC7D,EAAS,KACR,kBAACG,EAAO,KAAEyD,E,MACV,kBAAC,UAAgB,aAACzC,SAAUA,GAAc0C,KAoDrCI,CAAiBhC,EAAON,EAAMuC,cAAevC,EAAMgC,OAAOQ,WAAYvC,GACvE,kBAAC5B,EAAS,CAACgD,UAAU,QACnB,yBAAKA,UAAW,YAAkB,GAAI,IACnC/B,EAAW2B,EAAUhB,IAExB,yBAAKoB,UAAW,YAAkB,GAAI,IACnC/B,EAAW6B,EAAWlB","file":"assets/46.chunk.cb94e957ac1fc04a83e7.js","sourcesContent":["/**\r\n * @ComponentFor MarketsPageViewModel\r\n */\r\nimport connect from 'Shared/connect';\r\nimport React from 'react';\r\nimport BlockPropType from './MarketsPageViewModel.type';\r\nimport { styled } from '@glitz/react';\r\nimport * as style from 'Shared/Style';\r\nimport countryLinkBlockViewModelType from 'Shared/Blocks/CountryLink/CountryLinkBlockViewModel.type';\r\nimport CountryLinkBlock from 'Shared/Blocks/CountryLink/CountryLinkBlock';\r\nimport Ul from 'Shared/Generic/Ul';\r\nimport { H1, Paragraph, ResponsiveSize } from 'Shared/SharedComponents/atoms/Typography';\r\nimport { setCookie } from 'Shared/Helper/cookieHelper';\r\nimport { isCompact } from 'Shared/Viewport';\r\nimport Page from 'Shared/Page';\r\nimport Image, { Ratio as ImageRatio } from 'Shared/Image/Ratio';\r\nimport { epiPropertyValue } from '@polarnopyret/scope-episerver';\r\nimport { createGridClasses } from 'Shared/grid';\r\nimport { AltLogo } from 'Shared/Logotype';\r\n\r\ntype ConnectedProps = {\r\n currentBreakpoint: number;\r\n};\r\n\r\ntype Props = BlockPropType & ConnectedProps;\r\n\r\nconst Container = styled.div({\r\n marginTop: '16px',\r\n});\r\n\r\nconst StyledP = styled(Paragraph, {\r\n display: 'inline-block',\r\n});\r\n\r\nconst Item = styled.li({\r\n padding: { y: '3px' }\r\n});\r\n\r\nconst LogoWrap = styled.div({\r\n marginTop: '48px',\r\n marginBottom: '48px',\r\n})\r\n\r\nconst Logo = styled(AltLogo, {\r\n width: 'auto',\r\n height: '32px',\r\n});\r\n\r\nconst CountrySelectionWrapper = styled.div({\r\n marginRight: '12px',\r\n marginLeft: '12px',\r\n ['@media ' + style.mediaMinLarge]: {\r\n marginTop: '32px',\r\n marginRight: '48px',\r\n marginLeft: '48px',\r\n },\r\n});\r\n\r\nconst createList = (list: any, callback: (external: boolean, countryCode: string) => Promise) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst createSuggestion = (\r\n list: any[],\r\n countryCode: string,\r\n suggestionText: string,\r\n callback: (external: boolean, countryCode: string) => void,\r\n) => {\r\n const matchingCountryLinkItem = list.find((item: any) => {\r\n const countryLinkItem = item as countryLinkBlockViewModelType;\r\n return epiPropertyValue(countryLinkItem.block.countryCode) === countryCode;\r\n });\r\n if (matchingCountryLinkItem) {\r\n return (\r\n \r\n {suggestionText}: \r\n \r\n \r\n );\r\n }\r\n return undefined;\r\n};\r\n\r\nfunction MarketsPage(props: Props) {\r\n const clickHandler = async (external: boolean, countryCode: string) => {\r\n if (!external) {\r\n await setCookie(props.cookieId, countryCode);\r\n }\r\n };\r\n\r\n const page = props.page;\r\n\r\n // copy array and sort it\r\n const items = []\r\n .concat(epiPropertyValue(page.countryLinks).items)\r\n .sort((a: countryLinkBlockViewModelType, b: countryLinkBlockViewModelType) => {\r\n if (a.englishName === b.englishName) {\r\n return 0;\r\n }\r\n return a.englishName > b.englishName ? 1 : -1;\r\n });\r\n\r\n const halfListLength = Math.ceil(items.length * 0.5);\r\n const leftList = items.slice(0, halfListLength);\r\n const rightList = items.slice(halfListLength, items.length);\r\n const isMobile = isCompact(props.currentBreakpoint);\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n \r\n {!isMobile && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n \r\n

\r\n {epiPropertyValue(page.header) ? epiPropertyValue(page.header) : props.labels.title}\r\n

\r\n {createSuggestion(items, props.ipCountryCode, props.labels.suggestion, clickHandler)}\r\n \r\n
\r\n {createList(leftList, clickHandler)}\r\n
\r\n
\r\n {createList(rightList, clickHandler)}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default connect(state => ({\r\n currentBreakpoint: state.currentBreakpoint,\r\n}))(MarketsPage);\r\n"],"sourceRoot":""}