{"version":3,"sources":["webpack:///./src/pages/broker-centre/broker-portal/index.tsx","webpack:///./src/components/ButtonLink/ButtonLink.tsx"],"names":["withTranslation","LocaleNameSpaceKeys","BROKER_PORTAL","props","t","location","activeLocaleTag","updateLocale","useLocaleContext","useEffect","hasLocaleInPath","pathname","match","includes","LocaleTag","EN","FR","layoutOptions","seo","title","page","heroSection","options","accentColor","HeroSectionColors","PARROT_GREEN","heroImage","fileName","alt","brokerEmail","COMMON","brokerPhone","CommonData","tollFreeCustomerServiceNumber","brokerRelated","className","i18nKey","list","returnObjects","map","str","i","key","values","href","aria-label","to","websites","brokerPortal","linkOptions","isExternalLink","iconOptions","icon","IconTypes","LOCK","styleOptions","invertColors","isInline","getPathFromRouteKey","RouteKeys","BROKER_CENTRE","MEET_THE_TEAM","ARROW_NEXT","FAQ","ButtonLinkType","ButtonLinkSize","defaultLinkOptions","shouldOpenInNewTab","shouldEnableActiveState","defaultStyleOptions","type","PRIMARY","size","LARGE","ButtonLink","aLinkProps","children","ariaLabel","styleOptionsWithDefault","linkOptionsWithDefault","classNames","classnames","small","SMALL","aLinkPropsDefault","target","rel","linkProps","partiallyActive","activeClassName","undefined","getIcon","IconComp","className_","position","React","Fragment","role","memo"],"mappings":"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","file":"component---src-pages-broker-centre-broker-portal-index-tsx-55b2dcf99f8f85b9b3e3.js","sourcesContent":["import React, { useEffect } from 'react';\nimport { PageProps } from 'gatsby';\nimport { WithTranslation, withTranslation, Trans } from 'react-i18next';\n\nimport Layout, { HeroSectionColors, LayoutOptions } from '../../../components/Layout/Layout';\nimport { LocaleNameSpaceKeys } from '../../../localization/translations';\nimport { useLocaleContext } from '../../../context/Locale';\nimport { LocaleTag } from '../../../../config/locales';\nimport ExternalLink from '../../../components/ExternalLink/ExternalLink';\nimport ButtonLink from '../../../components/ButtonLink/ButtonLink';\nimport { IconTypes } from '../../../components/Icon/Icon';\nimport CommonData from '../../../data/common/common';\nimport { getPathFromRouteKey } from '../../../shared/utils/getPathFromRouteKey';\nimport RouteKeys from '../../../../config/RouteKeys';\nimport './style.scss';\n\ntype Props = PageProps & WithTranslation;\n\nconst BrokerPortal: React.FC = (props) => {\n const { t, location } = props;\n const { activeLocaleTag, updateLocale } = useLocaleContext();\n\n useEffect(() => {\n const hasLocaleInPath = location.pathname.match(/\\/en\\/|\\/fr\\//);\n\n if (hasLocaleInPath) {\n const shouldUpdateLocale = !hasLocaleInPath[0].includes(activeLocaleTag);\n\n if (shouldUpdateLocale) {\n updateLocale(activeLocaleTag === LocaleTag.EN ? LocaleTag.FR : LocaleTag.EN);\n }\n }\n }, []);\n\n const layoutOptions: LayoutOptions = {\n seo: {\n title: t('brokerPortal.seo.title'),\n },\n page: {\n title: t('brokerPortal.heading'),\n },\n heroSection: {\n options: {\n accentColor: HeroSectionColors.PARROT_GREEN,\n heroImage: {\n fileName: 'hero-image-4.jpg',\n alt: 'Image',\n },\n },\n },\n };\n\n const generateList = (list: string[]) => {\n return (\n \n );\n };\n\n const brokerEmail = t(`${LocaleNameSpaceKeys.COMMON}:emails.brokerSupport`);\n const brokerPhone = CommonData.tollFreeCustomerServiceNumber.brokerRelated;\n\n return (\n \n
\n
\n
\n
\n

\n \n

\n

{t('brokerPortal.introBlock.listTitle')}

\n {generateList(t('brokerPortal.introBlock.list', { returnObjects: true }))}\n
\n\n
\n {/*

{t('brokerPortal.troubleLoggingInBlock.heading')}

*/}\n

\n \n \n \n \n

\n
\n
\n \n
\n
\n
\n );\n};\n\nexport default withTranslation(LocaleNameSpaceKeys.BROKER_PORTAL)(BrokerPortal);\n","import React, { memo } from 'react';\nimport classnames from 'classnames';\nimport './style.scss';\nimport Icon, { IconTypes } from '../Icon/Icon';\nimport Link from '../Link/Link';\n\nexport enum ButtonLinkType {\n PRIMARY = 'ButtonLink__primary',\n // SECONDARY = 'ButtonLink_secondary'\n}\n\nexport enum ButtonLinkSize {\n SMALL = 'ButtonLink__small',\n LARGE = 'ButtonLink__large',\n // SECONDARY = 'SECONDARY'\n}\nexport interface ButtonLinkLinkOptions {\n isExternalLink?: boolean;\n shouldOpenInNewTab?: boolean; // This option will be overridden if the external link is true\n shouldEnableActiveState?: boolean; // Only gets affected if isExternalLink is false\n}\n\nexport interface ButtonLinkStyleOptions {\n isInline?: boolean;\n type?: ButtonLinkType;\n size?: ButtonLinkSize;\n invertColors?: boolean;\n}\n\nexport interface ButtonLinkIconOptions {\n icon: IconTypes;\n position?: 'left' | 'right'; // default is always left\n}\n\ninterface AnchorLinkProps {\n href?: string;\n target?: string;\n rel?: string;\n}\n\nexport interface OwnProps {\n to: string;\n linkOptions?: ButtonLinkLinkOptions;\n iconOptions?: ButtonLinkIconOptions;\n children?: React.ReactNode;\n className?: string;\n styleOptions?: ButtonLinkStyleOptions;\n aLinkProps?: AnchorLinkProps;\n ariaLabel?: string;\n}\n\ntype Props = OwnProps;\n\nconst defaultLinkOptions: ButtonLinkLinkOptions = {\n isExternalLink: false,\n shouldOpenInNewTab: false, // This option will be overridden if the external link is true\n shouldEnableActiveState: true, // Only gets affected if isExternalLink is false\n};\n\nconst defaultStyleOptions: ButtonLinkStyleOptions = {\n isInline: false,\n type: ButtonLinkType.PRIMARY,\n size: ButtonLinkSize.LARGE,\n invertColors: false,\n};\n\nconst ButtonLink: React.FC = ({\n to,\n linkOptions,\n iconOptions,\n styleOptions,\n className = '',\n // onClick = () => {},\n aLinkProps,\n children = null,\n ariaLabel,\n}: Props) => {\n const styleOptionsWithDefault: ButtonLinkStyleOptions = {\n ...defaultStyleOptions,\n ...styleOptions,\n };\n\n const linkOptionsWithDefault: ButtonLinkLinkOptions = {\n ...defaultLinkOptions,\n ...linkOptions,\n };\n\n const classNames = classnames(\n `ButtonLink`,\n styleOptionsWithDefault.type,\n styleOptionsWithDefault.size,\n className,\n {\n 'ButtonLink__inline-link': !!styleOptions?.isInline,\n 'ButtonLink__invert-colors': !!styleOptions?.invertColors,\n small: styleOptionsWithDefault.size === ButtonLinkSize.SMALL,\n }\n );\n\n const aLinkPropsDefault = {\n href: to,\n target: '__blank',\n rel: 'noopener',\n ...aLinkProps,\n };\n\n const linkProps = {\n to,\n partiallyActive: !!linkOptionsWithDefault.shouldEnableActiveState,\n activeClassName: linkOptionsWithDefault?.shouldEnableActiveState\n ? 'ButtonLink--active'\n : undefined,\n };\n\n const getIcon = () => {\n if (iconOptions) {\n const IconComp = ({ className_ }: any) => (\n \n \n \n );\n return (\n \n );\n }\n return React.Fragment;\n };\n\n return linkOptionsWithDefault.isExternalLink ? (\n \n {(!iconOptions?.position || iconOptions?.position === 'left') && getIcon()}\n {children}\n {iconOptions?.position === 'right' && getIcon()}\n \n ) : (\n \n {(!iconOptions?.position || iconOptions?.position === 'left') && getIcon()}\n {children}\n {iconOptions?.position === 'right' && getIcon()}\n \n );\n};\n\nexport default memo(ButtonLink);\n"],"sourceRoot":""}