{"version":3,"file":"static/js/40e6e6c84347930cc7e2.bundle.js","mappings":"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","sources":["webpack://Dobbies.Commerce/./lib/footer-item/module-registration.js?3ce3","webpack://Dobbies.Commerce/./src/modules/footer-item/footer-item.tsx?074a","webpack://Dobbies.Commerce/./src/modules/footer-item/footer-item.view.tsx?c5af","webpack://Dobbies.Commerce/./src/modules/adventureworks/views/footer-item.view.tsx?15be","webpack://Dobbies.Commerce/external var \"React\"?0d3b","webpack://Dobbies.Commerce/external var \"ReactDOM\"?853b"],"sourcesContent":["const binding = { modules: {}, dataActions: {} };\n\n (binding.modules['footer-item'] = {\n c: () => require('@msdyn365-commerce-modules/footer/dist/lib/modules/footer-item/footer-item'),\n $type: 'moduleDefinition',\n da: [],\n \n iNM: true,\n ns: '@msdyn365-commerce-modules',\n n: 'footer-item',\n p: 'footer',\n \n pdp: '',\n \n \n md: 'node_modules/@msdyn365-commerce-modules/footer/dist/lib/modules/footer-item'\n });\n \n\n \n window.__bindings__ = window.__bindings__ || {};\n window.__bindings__.modules = {\n ...window.__bindings__.modules || {},\n ...binding.modules\n };\n \n window.__bindings__.dataActions = {\n ...window.__bindings__.dataActions || {},\n ...binding.dataActions\n };\n export const viewDictionary = {};\n viewDictionary['@msdyn365-commerce-modules|footer|modules|footer-item|footer-item'] = {\n c: () => require('@msdyn365-commerce-modules/footer/dist/lib/modules/footer-item/footer-item.view.js'),\n cn: '@msdyn365-commerce-modules-footer-footer-item'\n };\nviewDictionary['@msdyn365-commerce-theme|adventureworks-theme-kit|modules|adventureworks|views|footer-item'] = {\n c: () => require('@msdyn365-commerce-theme/adventureworks-theme-kit/dist/lib/modules/adventureworks/views/footer-item.view.js'),\n cn: '@msdyn365-commerce-theme-adventureworks-theme-kit-footer-item'\n };\nwindow.__bindings__ = window.__bindings__ || {};\nwindow.__bindings__.viewDictionary = {\n ...window.__bindings__.viewDictionary || {},\n ...viewDictionary\n };","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport {\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n IModuleProps,\n INodeProps,\n IPayLoad,\n ITelemetryContent,\n onTelemetryClick\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IFooterItemConfig, IFooterItemProps, IHeadingData, ILinkData } from './footer-item.props.autogenerated';\n\nexport interface IFooterViewProps extends IFooterItemProps {\n heading: React.ReactNode;\n image: React.ReactNode;\n text: React.ReactNode;\n linkText: React.ReactNode;\n className?: string;\n FooterItem: IModuleProps;\n HeadingContainer: INodeProps;\n ItemContainer: INodeProps;\n Link: INodeProps;\n EditableLink: React.ReactNode;\n}\n\n/**\n *\n * FooterItem component.\n * @extends {React.PureComponent>}\n */\nexport class FooterItem extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent;\n\n private readonly payLoad: IPayLoad;\n\n private attributes: Msdyn365.IDictionary | undefined;\n\n constructor(props: IFooterItemProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n // Construct telemetry attribute to render\n this.payLoad = getPayloadObject('click', this.telemetryContent, '', '');\n }\n\n public render(): JSX.Element {\n const { heading, image, link, text } = this.props.config;\n const footerItemClassName = classnames('ms-footer__item', this.props.config.className);\n const linkText = link && link.linkText ? link.linkText : '';\n this.payLoad.contentAction.etext = linkText;\n this.attributes = getTelemetryAttributes(this.telemetryContent, this.payLoad);\n const viewProps: IFooterViewProps = {\n ...this.props,\n heading: this._createHeading(heading!),\n image: this._createImageMarkup(image!),\n text: this._createText(text!),\n linkText: this._createLinkText(link!),\n EditableLink: this._createLink(link!),\n\n FooterItem: {\n moduleProps: this.props,\n className: footerItemClassName\n },\n\n HeadingContainer: {\n className: 'ms-footer__heading'\n },\n\n ItemContainer: {\n className: 'ms-footer__link__container'\n },\n\n // @ts-expect-error\n Link: link &&\n link.linkUrl &&\n link.linkUrl.destinationUrl && {\n tag: 'a',\n role: 'link',\n className: 'ms-footer__link',\n href: link.linkUrl.destinationUrl,\n title: linkText,\n 'aria-label': link.ariaLabel,\n target: link.openInNewTab ? '_blank' : undefined,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText),\n ...this.attributes\n },\n className: footerItemClassName\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.text = event.target.value);\n\n public handleLinkTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.link!.linkText = event.target.value);\n\n private _createLink(link: ILinkData): React.ReactNode | null {\n if (link) {\n const linkText = link.linkText ? link.linkText : '';\n\n // TODO: Update the inner tag in the anchor link to span\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: 'ms-footer__link',\n linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: 'link',\n additionalProperties: this.attributes!,\n onClick: onTelemetryClick(this.telemetryContent, this.payLoad, linkText)\n };\n return (\n \n );\n }\n return null;\n }\n\n private _createLinkText(link: ILinkData): React.ReactNode | null {\n if (!link || !link.linkText) {\n return null;\n }\n\n return {link.linkText};\n }\n\n private _createHeading(heading: IHeadingData): React.ReactNode | null {\n if (!heading || !heading.text || heading.text.length === 0) {\n return null;\n }\n\n return (\n \n );\n }\n\n private _createText(text: string): React.ReactNode | null {\n if (!text) {\n return null;\n }\n return (\n \n );\n }\n\n private _createImageMarkup(item: Msdyn365.IImageData, ariaHiddenAttr?: boolean): React.ReactNode | null {\n if (!item || !item.src || item.src.length === 0) {\n return null;\n }\n\n const defaultImageSettings: Msdyn365.IImageSettings = {\n viewports: {\n xs: { q: 'w=24&h=24&m=6', w: 0, h: 0 },\n lg: { q: 'w=24&h=24&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n return (\n \n );\n }\n}\n\nexport default FooterItem;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IFooterViewProps } from './footer-item';\n\n/**\n *\n * FooterItemView component.\n * @extends {React.PureComponent}\n */\nexport class FooterItemView extends React.PureComponent {\n public render(): JSX.Element | null {\n const { FooterItem } = this.props;\n return {this._renderElement(this.props)};\n }\n\n private _renderElement(props: IFooterViewProps): React.ReactNode | null {\n const { heading, HeadingContainer, Link, linkText, image, text, EditableLink } = props;\n if (heading) {\n return {heading} ;\n } else if (Link && image) {\n return (\n \n {linkText}\n {image}\n \n );\n } else if (Link) {\n return EditableLink;\n }\n return (\n <>\n {text}\n {image}\n \n );\n }\n}\n\nexport default FooterItemView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IFooterViewProps } from '@msdyn365-commerce-modules/footer';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\n/**\n *\n * FooterItemView component.\n * @extends {React.PureComponent}\n */\nexport class FooterItemView extends React.PureComponent {\n public render(): JSX.Element | null {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Cannot change the prop names as props are from business logic.\n const { FooterItem } = this.props;\n return {this._renderElement(this.props)};\n }\n\n private _renderElement(props: IFooterViewProps): React.ReactNode | null {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Cannot change the prop names as props are from business logic.\n const { heading, HeadingContainer, Link, linkText, image, text, EditableLink } = props;\n if (heading) {\n return (\n \n {' '}\n \n );\n } else if (Link && image) {\n return (\n \n {linkText}\n {image}\n \n );\n } else if (Link) {\n return EditableLink;\n }\n return (\n <>\n {text}\n {image}\n \n );\n }\n}\n\nexport default FooterItemView;\n","module.exports = React;","module.exports = ReactDOM;"],"names":["binding","modules","dataActions","c","require","$type","da","iNM","ns","n","p","pdp","md","window","__bindings__","_objectSpread","viewDictionary","cn","FooterItem","React","constructor","props","super","handleHeadingChange","event","this","config","heading","text","target","value","handleTextChange","handleLinkTextChange","link","linkText","telemetryContent","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","payLoad","getPayloadObject","render","image","footerItemClassName","classnames","className","contentAction","etext","attributes","getTelemetryAttributes","viewProps","_createHeading","_createImageMarkup","_createText","_createLinkText","EditableLink","_createLink","moduleProps","HeadingContainer","ItemContainer","Link","linkUrl","destinationUrl","tag","role","href","title","ariaLabel","openInNewTab","undefined","onClick","onTelemetryClick","renderView","editableLink","additionalProperties","Msdyn365","editProps","onTextChange","requestContext","length","onEdit","item","ariaHiddenAttr","src","Object","assign","gridSettings","imageSettings","viewports","xs","q","w","h","lg","lazyload","loadFailureBehavior","key","shouldSkipToMainImage","FooterItemView","Module","_renderElement","Node","module","exports","ReactDOM"],"sourceRoot":""}