{"version":3,"sources":["components/Footer/FooterInfo/FooterInfo.tsx","components/Footer/FooterNav/FooterNav.tsx","hooks/useForceCookieLabel.ts","components/Footer/FooterSocial/FooterSocial.tsx","components/Footer/FooterAIButton/index.tsx","components/Footer/index.tsx","helper/withErrorCatch.tsx"],"names":["FooterInfo","logoImage","info","className","Image","field","width","height","RichText","FooterNavItem","props","cookieButtonRef","label","condition","useRef","iid","checkIfLoaded","useCallback","v","length","useEffect","current","setInterval","innerHTML","clearInterval","useForceCookieLabel","fields","link","value","text","ref","id","Link","prevlink","newCLass","linkValue","FooterNav","usefulLinks","map","idx","FooterSocial","socialList","useState","isModalOpen","setIsModalOpen","modalTitle","setModalTitle","modalSubTitle","setModalSubtitle","modalQr","setModalQr","FooterSocialItem","to","iconClassName","onClick","href","target","rel","hosts","facebook","linkedin","youtube","twitter","instagram","spotify","weibo","wechat","flickr","blogdafpt","getIconByHostname","hostname","key","includes","style","display","src","socialItem","Icon","QrCodeImage","title","subTitle","qrCode","Title","SubTitle","FooterAIButton","icon","Footer","enableAiAssistant","logo","navigation","socialLinks","withErrorCatch","Component","hocProps","error","console","log","stack"],"mappings":"+TAuBeA,EAdwC,SAAC,GAGjD,IAFLC,EAEI,EAFJA,UACAC,EACI,EADJA,KAEA,OACE,sBAAKC,UAAU,aAAf,UACE,qBAAKA,UAAU,mBAAf,SACE,cAACC,EAAA,EAAD,CAAOC,MAAOJ,EAAWK,MAAO,OAAQC,OAAQ,OAElD,cAACC,EAAA,EAAD,CAAUL,UAAU,mBAAmBE,MAAOH,Q,iBCXpD,IAAMO,EAAgB,SAACC,GAGrB,IAAMC,ECRD,SACLC,GAEsB,IADtBC,IACqB,yDACfF,EAAkBG,mBAClBC,EAAMD,mBAENE,EAAwCC,uBAAY,SAACC,GACzD,OAAOA,EAAEC,OAAS,IACjB,IAWH,OATAC,qBAAU,WACHP,IACLE,EAAIM,QAAUC,aAAY,WACnBN,EAAcL,EAAgBU,QAAQE,aAC3CZ,EAAgBU,QAAQE,UAAYX,EACpCY,cAAcT,EAAIM,YACjB,OACF,IAEIV,EDZiBc,CACtBf,EAAML,MAAMqB,OAAOC,KAAKC,MAAMC,KACU,cAAxCnB,EAAML,MAAMqB,OAAOC,KAAKC,MAAxB,OAQF,OACE,+BAC2C,cAAxClB,EAAML,MAAMqB,OAAOC,KAAKC,MAAxB,OACC,mCAEE,wBACEE,IAAKnB,EACLoB,GAAG,aACH5B,UAAU,4BAKyB,cAAxCO,EAAML,MAAMqB,OAAOC,KAAKC,MAAxB,OACC,cAACI,EAAA,EAAD,CAAM3B,MAnBM,SAAC4B,GACjB,IAAIC,EAAWxB,EAAML,MAAMqB,OAAOC,KAAKC,MAAxB,MAAoC,sBACnD,OAAO,2BAAIK,GAAX,IAAqBC,aAiBJC,CAAUzB,EAAML,MAAMqB,OAAOC,YAuBnCS,EAfV,SAAC,GAAqB,IAAnBC,EAAkB,EAAlBA,YACN,OACE,qBAAKlC,UAAU,YAAf,SACE,8BACE,6BACGkC,EAAYlB,OAAS,GACpBkB,EAAYC,KAAI,SAACX,EAAMY,GAAP,OACd,cAAC,EAAD,CAAyBlC,MAAOsB,GAAZY,aE6DnBC,G,QAjGV,SAAC,GAAoB,IAAlBC,EAAiB,EAAjBA,WACN,EAAsCC,oBAAS,GAA/C,mBAAOC,EAAP,KAAoBC,EAApB,KACA,EAAoCF,mBAAS,IAA7C,mBAAOG,EAAP,KAAmBC,EAAnB,KACA,EAA0CJ,mBAAS,IAAnD,mBAAOK,EAAP,KAAsBC,EAAtB,KACA,EAA8BN,mBAAS,IAAvC,mBAAOO,EAAP,KAAgBC,EAAhB,KAOMC,EAA6D,SAAC,GAI7D,IAAD,MAHJC,EAGI,EAHJA,GACAC,EAEI,EAFJA,cACAC,EACI,EADJA,QAEA,OACE,6BACE,mBACEC,KAA0B,MAAlB,OAAFH,QAAE,IAAFA,GAAA,UAAAA,EAAIxB,aAAJ,eAAW2B,MAAX,OAAyBH,QAAzB,IAAyBA,GAAzB,UAAyBA,EAAIxB,aAA7B,aAAyB,EAAW2B,KAAO,KACjDpD,UAAS,eAAUkD,EAAV,wBACTG,OAAM,OAAEJ,QAAF,IAAEA,GAAF,UAAEA,EAAIxB,aAAN,aAAE,EAAW4B,OACnBC,IAAI,sBACJH,QAAS,kBAAMA,UAKjBI,EAAQ,CACZC,SAAU,2BACVC,SAAU,2BACVC,QAAS,0BACTC,QAAS,0BACTC,UAAW,4BACXC,QAAS,0BACTC,MAAO,mBACPC,OAAQ,oBACRC,OAAQ,yBACRC,UAAW,aAEPC,EAAkD,SAACC,GACvD,IAAK,IAAIC,KAAOb,EAAO,UAAIY,QAAJ,IAAIA,KAAUE,SAASD,GAAM,OAAOb,EAAMa,GACjE,MAAO,IAGT,OACE,sBAAKpE,UAAU,eAAf,UACE,qBACEA,UAAW,6BACXsE,MAAO9B,EAAc,CAAE+B,QAAS,SAAY,CAAEA,QAAS,QAFzD,SAIE,sBAAKvE,UAAW,qCAAhB,UACE,qBAAKA,UAAW,uBAAhB,SACE,sBACEA,UAAW,kBACXmD,QAAS,kBAAMV,GAAe,QAGlC,oBAAIzC,UAAW,SAAf,SAA0B0C,IAC1B,mBAAG1C,UAAW,aAAd,SAA6B4C,IAC7B,qBAAK5C,UAAW,eAAhB,SACE,qBAAKwE,IAAK1B,EAAS9C,UAAW,qBAIpC,8BACE,8BACa,OAAVsC,QAAU,IAAVA,OAAA,EAAAA,EAAYtB,QAAS,GACpBsB,EAAWH,KAAI,SAACsC,EAAYrC,GAAb,2BACb,cAACY,EAAD,CAEEC,GAAE,OAAEwB,QAAF,IAAEA,GAAF,UAAEA,EAAYlD,cAAd,aAAE,EAAqB,eACzB2B,cACE,UAAAuB,EAAWlD,cAAX,SAAoB,eAChB2C,EAAiB,OACfO,QADe,IACfA,GADe,UACfA,EAAYlD,cADG,iBACf,EAAqB,sBADN,iBACf,EAAqCE,aADtB,aACf,EAA4C2B,MAFlD,OAIIqB,QAJJ,IAIIA,GAJJ,UAIIA,EAAYlD,cAJhB,iBAII,EAAoBmD,YAJxB,aAII,EAA0BjD,MAEhC0B,QACY,OAAVsB,QAAU,IAAVA,GAAA,UAAAA,EAAYlD,cAAZ,SAAoBoD,YAChB,6BA5EKC,EAAOC,EAAUC,EA4EtB,OA5EKF,EA6EY,OACbH,QADa,IACbA,GADa,UACbA,EAAYlD,cADC,iBACb,EAAoBwD,aADP,aACb,EAA2BtD,MA9EnBoD,EA6EK,OAEbJ,QAFa,IAEbA,GAFa,UAEbA,EAAYlD,cAFC,iBAEb,EAAoByD,gBAFP,aAEb,EAA8BvD,MA/EZqD,EA6EL,OAGbL,QAHa,IAGbA,GAHa,UAGbA,EAAYlD,cAHC,iBAGb,EAAoBoD,mBAHP,iBAGb,EAAiClD,aAHpB,aAGb,EAAwC+C,IA/E9DzB,EAAW+B,GACXnC,EAAciC,GACd/B,EAAiBgC,QACjBpC,GAAe,IA8EG,cAjBDL,e,kBC5DN6C,G,QATuC,SAAC,GAAoB,IAAD,EAAjBzD,EAAiB,EAAjBA,KAAM0D,EAAW,EAAXA,KAC7D,OACE,eAACrD,EAAA,EAAD,CAAM7B,UAAU,iBAAiBE,MAAOsB,EAAxC,UACE,cAACvB,EAAA,EAAD,CAAOC,MAAOgF,EAAM/E,MAAO,GAAIC,OAAQ,QACvC,sCAAOoB,QAAP,IAAOA,GAAP,UAAOA,EAAMC,aAAb,aAAO,EAAaC,YCSpByD,EAAyC,SAAC5E,GAAW,IAAD,cACxD,OACE,yBAAQP,UAAU,SAAlB,WACQ,OAALO,QAAK,IAALA,GAAA,UAAAA,EAAOgB,cAAP,mBAAe6D,yBAAf,eAAkC3D,QACjC,cAAC,EAAD,CAAgBD,KAAI,OAAEjB,QAAF,IAAEA,GAAF,UAAEA,EAAOgB,cAAT,aAAE,EAAeC,KAAM0D,KAAI,OAAE3E,QAAF,IAAEA,GAAF,UAAEA,EAAOgB,cAAT,aAAE,EAAe2D,OAElE,qBAAKlF,UAAU,kBAAf,SACE,cAAC,EAAD,CAAYF,UAAWS,EAAMgB,OAAO8D,KAAMtF,KAAI,UAAEQ,EAAMgB,cAAR,aAAE,EAAcG,SAGhE,qBAAK1B,UAAU,8BAAf,SACE,cAAC,EAAD,CAAWkC,aAAa,UAAA3B,EAAMgB,cAAN,eAAc+D,aAAc,OAGtD,qBAAKtF,UAAU,kBAAf,SACE,cAAC,EAAD,CAAcsC,YAAY,UAAA/B,EAAMgB,cAAN,eAAcgE,cAAe,WAMhDC,sBAAeL,I,4DCjCfK,IAbf,SAA2BC,GACzB,OAAO,SAACC,GACN,IACE,OAAKA,IACD,OAACA,QAAD,IAACA,KAAUnE,QACR,cAACkE,EAAD,eAAeC,IAFA,6BAGtB,MAAOC,GAEP,OADAC,QAAQC,IAAR,OAAaF,QAAb,IAAaA,OAAb,EAAaA,EAAiBG,OACvB","file":"static/js/Footer.998573d1.chunk.js","sourcesContent":["import React, { FunctionComponent } from \"react\";\r\nimport { Image, ImageField, RichText } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"./FooterInfo.scss\";\r\n\r\ninterface FooterInfoProps {\r\n logoImage: ImageField;\r\n info: { value: string };\r\n}\r\n\r\nconst FooterInfo: FunctionComponent = ({\r\n logoImage,\r\n info,\r\n}) => {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default FooterInfo;\r\n","import React, { FunctionComponent } from 'react';\r\nimport { FooterProps } from '../types/Footer.types';\r\nimport { Link } from '@sitecore-jss/sitecore-jss-react';\r\nimport './FooterNav.scss';\r\n\r\nimport { useForceCookieLabel } from '../../../hooks/useForceCookieLabel';\r\n\r\nconst FooterNavItem = (props: {\r\n field: FooterProps['fields']['navigation'][number];\r\n}) => {\r\n const cookieButtonRef = useForceCookieLabel(\r\n props.field.fields.link.value.text,\r\n props.field.fields.link.value.class === 'cookielaw'\r\n );\r\n\r\n const linkValue = (prevlink) => {\r\n let newCLass = props.field.fields.link.value.class='ga4-click-ui-footer'\r\n return {...prevlink, newCLass}\r\n }\r\n\r\n return (\r\n
  • \r\n {props.field.fields.link.value.class === 'cookielaw' && (\r\n <>\r\n {/* OneTrust Cookies Settings button start */}\r\n \r\n {/* OneTrust Cookies Settings button end */}\r\n \r\n )}\r\n {props.field.fields.link.value.class !== 'cookielaw' && (\r\n \r\n )}\r\n
  • \r\n );\r\n};\r\n\r\nconst FooterNav: FunctionComponent<{\r\n usefulLinks: FooterProps['fields']['navigation'];\r\n}> = ({ usefulLinks }) => {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default FooterNav;\r\n","import { MutableRefObject, useCallback, useEffect, useRef } from 'react';\r\n\r\nexport function useForceCookieLabel(\r\n label: string,\r\n condition: boolean = true\r\n): MutableRefObject {\r\n const cookieButtonRef = useRef();\r\n const iid = useRef();\r\n\r\n const checkIfLoaded: (v: string) => boolean = useCallback((v) => {\r\n return v.length > 0;\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (!condition) return;\r\n iid.current = setInterval(() => {\r\n if (!checkIfLoaded(cookieButtonRef.current.innerHTML)) return;\r\n cookieButtonRef.current.innerHTML = label;\r\n clearInterval(iid.current);\r\n }, 10);\r\n }, []);\r\n\r\n return cookieButtonRef;\r\n}\r\n","import { Link } from \"@sitecore-jss/sitecore-jss-react\";\r\nimport React, { FunctionComponent, useState } from \"react\";\r\nimport { FooterProps } from \"../types/Footer.types\";\r\nimport \"./FooterSocial.scss\";\r\n\r\ninterface FooterSocialItemProps {\r\n to: any;\r\n iconClassName: string;\r\n onClick?: Function;\r\n}\r\n\r\nconst FooterSocial: FunctionComponent<{\r\n socialList: FooterProps[\"fields\"][\"socialLinks\"];\r\n}> = ({ socialList }) => {\r\n const [isModalOpen, setIsModalOpen] = useState(false);\r\n const [modalTitle, setModalTitle] = useState(\"\");\r\n const [modalSubTitle, setModalSubtitle] = useState(\"\");\r\n const [modalQr, setModalQr] = useState(\"\");\r\n const OpenWeChatPopup = (title, subTitle, qrCode) => {\r\n setModalQr(qrCode);\r\n setModalTitle(title);\r\n setModalSubtitle(subTitle);\r\n setIsModalOpen(true);\r\n };\r\n const FooterSocialItem: FunctionComponent = ({\r\n to,\r\n iconClassName,\r\n onClick,\r\n }) => {\r\n return (\r\n
  • \r\n onClick()}\r\n />\r\n
  • \r\n );\r\n };\r\n const hosts = {\r\n facebook: \"icon-facebook_bottom_bar\",\r\n linkedin: \"icon-linkedin_bottom_bar\",\r\n youtube: \"icon-youtube_bottom_bar\",\r\n twitter: \"icon-twitter_bottom_bar\",\r\n instagram: \"icon-instagram_bottom_bar\",\r\n spotify: \"icon-spotify_bottom_bar\",\r\n weibo: \"icon-weibo_white\",\r\n wechat: \"icon-wechat_white\",\r\n flickr: \"icon-flickr_bottom_bar\",\r\n blogdafpt: \"icon-blog\",\r\n };\r\n const getIconByHostname: (hostname: string) => string = (hostname) => {\r\n for (let key in hosts) if (hostname?.includes(key)) return hosts[key];\r\n return \"\";\r\n };\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n
    \r\n setIsModalOpen(false)}\r\n />\r\n
    \r\n

    {modalTitle}

    \r\n

    {modalSubTitle}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n );\r\n};\r\n\r\nexport default FooterSocial;\r\n","import React from \"react\";\r\nimport {\r\n Image,\r\n ImageField,\r\n Link,\r\n LinkField,\r\n} from \"@sitecore-jss/sitecore-jss-react\";\r\nimport \"./index.scss\";\r\n\r\ntype FooterAIButtonProps = {\r\n link: LinkField;\r\n icon: ImageField;\r\n};\r\n\r\nconst FooterAIButton: React.FC = ({ link, icon }) => {\r\n return (\r\n \r\n \r\n {link?.value?.text}\r\n \r\n );\r\n};\r\n\r\nexport default FooterAIButton;\r\n","import React, { FunctionComponent, useState } from \"react\";\r\nimport { FooterProps } from \"./types/Footer.types\";\r\nimport \"./Footer.scss\";\r\n\r\nimport FooterInfo from \"./FooterInfo/FooterInfo\";\r\nimport FooterNav from \"./FooterNav/FooterNav\";\r\nimport FooterSocial from \"./FooterSocial/FooterSocial\";\r\nimport { Waypoint } from \"react-waypoint\";\r\nimport withErrorCatch from \"../../helper/withErrorCatch\";\r\nimport FooterAIButton from \"./FooterAIButton\";\r\n\r\nconst FooterWrapper = (props: FooterProps) => {\r\n const [shouldRender, setShouldRender] = useState(false);\r\n\r\n return (\r\n <>\r\n {\r\n if (currentPosition === \"inside\") setShouldRender(true);\r\n }}\r\n />\r\n\r\n {shouldRender &&