{"version":3,"sources":["webpack:///./src/data/page-menus/mortgage-resources.ts","webpack:///./src/components/PageMenu/PageMenu.tsx","webpack:///./src/components/ButtonLink/ButtonLink.tsx","webpack:///./src/pages/customer-centre/residential-mortgages/index.tsx"],"names":["mortgageResourcesMenu","to","getPathFromRouteKey","RouteKeys","BORROWER","textKey","CUSTOMER_CENTRE","PREPAYMENT_CALCULATOR","UNDERSTANDING_YOUR_MORTGAGE","MORTGAGE_SERVICE_DOCUMENTS","NEXTJOB_PROGRAM","ABOUT_US","SCC","RESOURCES","FINANCIAL_LITERACY","FINANCIAL_TOOLS_RESOURCES","PageMenu","menu","menuTitle","className","t","useTranslation","map","menuItem","i","key","iconOptions","icon","IconTypes","ARROW_NEXT","linkOptions","shouldEnableActiveState","enableActiveState","memo","ButtonLinkType","ButtonLinkSize","defaultLinkOptions","isExternalLink","shouldOpenInNewTab","defaultStyleOptions","isInline","type","PRIMARY","size","LARGE","invertColors","ButtonLink","styleOptions","aLinkProps","children","ariaLabel","styleOptionsWithDefault","linkOptionsWithDefault","classNames","classnames","small","SMALL","aLinkPropsDefault","href","target","rel","linkProps","partiallyActive","activeClassName","undefined","getIcon","IconComp","className_","position","React","Fragment","role","withTranslation","LocaleNameSpaceKeys","props","activeLocaleTag","useLocaleContext","layoutOptions","seo","title","page","heroSection","options","accentColor","HeroSectionColors","FOREST_GREEN","heroImage","fileName","alt","links","renew","RESIDENTIAL_MORTGAGES","RENEW_YOUR_MORTGAGE","refinance","REFINANCING_MORTGAGE","homePurchase","PURCHASING_HOME","i18nKey","returnObjects","listItem","linkTag","description","buttonLabel","values","tollFreeNumber","CommonData","tollFreeCustomerServiceNumber","mortgageServicing","websites","fcacMortgages","cbaMortgages","aria-label","COMMON"],"mappings":"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","file":"component---src-pages-customer-centre-residential-mortgages-index-tsx-1fcdde889897065d8669.js","sourcesContent":["import RouteKeys from '../../../config/RouteKeys';\nimport { PageMenuLinks } from './pageMenuTypes';\nimport { getPathFromRouteKey } from '../../shared/utils/getPathFromRouteKey';\n\nconst mortgageResourcesMenu: PageMenuLinks = [\n {\n to: getPathFromRouteKey(RouteKeys.BORROWER),\n textKey: 'pageTitles.clientPortal',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.PREPAYMENT_CALCULATOR),\n textKey: 'pageTitles.prepaymentCalculator',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.UNDERSTANDING_YOUR_MORTGAGE),\n textKey: 'pageTitles.understandingYourMortgage',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.MORTGAGE_SERVICE_DOCUMENTS),\n textKey: 'pageTitles.mortgageServiceDocuments',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.NEXTJOB_PROGRAM),\n textKey: 'pageTitles.nextJobProgram',\n },\n {\n to: getPathFromRouteKey(RouteKeys.ABOUT_US.SCC),\n textKey: 'pageTitles.scc',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.RESOURCES.FINANCIAL_LITERACY),\n textKey: 'pageTitles.financialLiteracy',\n },\n {\n to: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.RESOURCES.FINANCIAL_TOOLS_RESOURCES),\n textKey: 'pageTitles.financialTools',\n },\n // {\n // to: getPathFromRouteKey(RouteKeys.CCP),\n // textKey: 'pageTitles.promotions',\n // },\n];\n\nexport default mortgageResourcesMenu;\n","import React, { memo } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { IconTypes } from '../Icon/Icon';\nimport { PageMenuLinks } from '../../data/page-menus/pageMenuTypes';\nimport ButtonLink from '../ButtonLink/ButtonLink';\nimport './style.scss';\n\nexport interface OwnProps {\n menuTitle?: string;\n menu: PageMenuLinks;\n className?: string;\n}\n\ntype Props = OwnProps;\n\nconst PageMenu: React.FC = ({ menu, menuTitle = '', className = '' }: Props) => {\n const { t } = useTranslation();\n\n const getMenuContent = () => {\n return menu.map((menuItem, i) => (\n
  • \n \n {t(menuItem.textKey)}\n \n
  • \n ));\n };\n\n return (\n
    \n {menuTitle &&

    {menuTitle}

    }\n \n
    \n );\n};\n\nexport default memo(PageMenu);\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","import React from 'react';\nimport { PageProps } from 'gatsby';\nimport { WithTranslation, withTranslation, Trans } from 'react-i18next';\n\nimport Layout, { LayoutOptions, HeroSectionColors } from '../../../components/Layout/Layout';\nimport { LocaleNameSpaceKeys } from '../../../localization/translations';\nimport { useLocaleContext } from '../../../context/Locale';\nimport PageMenu from '../../../components/PageMenu/PageMenu';\nimport mortgageResourcesMenu from '../../../data/page-menus/mortgage-resources';\nimport { IconTypes } from '../../../components/Icon/Icon';\nimport { getPathFromRouteKey } from '../../../shared/utils/getPathFromRouteKey';\nimport RouteKeys from '../../../../config/RouteKeys';\nimport ButtonLink from '../../../components/ButtonLink/ButtonLink';\nimport ExternalLink from '../../../components/ExternalLink/ExternalLink';\nimport CommonData from '../../../data/common/common';\n\nimport './style.scss';\n\ntype Props = PageProps & WithTranslation;\n\nconst ResidentialMortgages: React.FC = (props) => {\n const { t } = props;\n const { activeLocaleTag } = useLocaleContext();\n\n const layoutOptions: LayoutOptions = {\n seo: {\n title: t('residentialMortgages.seo.title'),\n },\n page: {\n title: t('residentialMortgages.heading'),\n },\n heroSection: {\n options: {\n accentColor: HeroSectionColors.FOREST_GREEN,\n heroImage: {\n fileName: 'hero-image-12.jpg',\n alt: 'Image',\n },\n },\n },\n };\n\n const links: any = {\n renew: getPathFromRouteKey(RouteKeys.CUSTOMER_CENTRE.RESIDENTIAL_MORTGAGES.RENEW_YOUR_MORTGAGE),\n refinance: getPathFromRouteKey(\n RouteKeys.CUSTOMER_CENTRE.RESIDENTIAL_MORTGAGES.REFINANCING_MORTGAGE\n ),\n homePurchase: getPathFromRouteKey(\n RouteKeys.CUSTOMER_CENTRE.RESIDENTIAL_MORTGAGES.PURCHASING_HOME\n ),\n };\n\n const generateInfoBlocks = (listItems: any[]) =>\n listItems.map((listItem) => (\n
    \n
    {listItem.description}
    \n \n {listItem.buttonLabel}\n \n
    \n ));\n\n return (\n \n
    \n
    \n
    \n
    \n

    \n \n

    \n
    \n {generateInfoBlocks(t('residentialMortgages.selections', { returnObjects: true }))}\n
    \n

    \n \n \n \n \n \n

    \n
    \n
    \n \n
    \n
    \n
    \n );\n};\n\nexport default withTranslation(LocaleNameSpaceKeys.CUSTOMER_CENTRE)(ResidentialMortgages);\n"],"sourceRoot":""}