{"version":3,"file":"static/js/8cfcde66354c6eb70a59.bundle.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/content-block/components/additional-content.tsx?068b","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/components/links.tsx?9c0f","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.props.autogenerated.ts?b60d","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.tsx?f8de","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.view.tsx?21f5","webpack://Msdyn365.Commerce.Online/./lib/content-block/module-registration.js?4cb2","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.view.tsx?1773","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/content-block.view.tsx?0db4","webpack://Msdyn365.Commerce.Online/external var \"React\"?0d3b","webpack://Msdyn365.Commerce.Online/external var \"ReactDOM\"?853b"],"sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAdditionalContentData, ILinksData } from '../content-block.props.autogenerated';\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content Component props.\n */\nexport interface IContentBlockAdditionalContentProps {\n requestContext: Msdyn365.IRequestContext;\n additionalContent: IAdditionalContentData[] | undefined;\n handleAdditionalTextChange(index: number, event: Msdyn365.ContentEditableEvent): void;\n handleAdditionalParagraphChange(index: number, event: Msdyn365.ContentEditableEvent): void;\n handleAdditionalLinkTextChange(linkIndex: number, index: number, event: Msdyn365.ContentEditableEvent): void;\n}\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content view props.\n */\nexport interface IContentBlockAdditionalContentViewProps {\n additionalContentNode: INodeProps;\n additionalContentItems?: IContentBlockAdditionalContentItemViewProps[];\n}\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content Item view props.\n */\nexport interface IContentBlockAdditionalContentItemViewProps {\n heading: React.ReactNode;\n text: React.ReactNode;\n links: React.ReactNode;\n additionalContentItemContainer: INodeProps;\n additionalContentItemLinks: INodeProps;\n}\n\n/**\n * Renders additional content heading.\n * @param additionalContentHeading - Additional content heading.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns Heading Node.\n */\nconst renderHeading = (additionalContentHeading: string, props: IContentBlockAdditionalContentProps, itemIndex: number) => {\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalTextChange(itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Renders additional content heading.\n * @param additionalContentParagraphText - Additional content paragraph text.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns Paragraph Node.\n */\nconst renderParagraph = (additionalContentParagraphText: string, props: IContentBlockAdditionalContentProps, itemIndex: number) => {\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalTextChange(itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Renders additional content heading.\n * @param ctaLink - Additional content link.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @param linkIndex - Additional content link index.\n * @returns Link Node.\n */\nconst renderLinks = (ctaLink: ILinksData, props: IContentBlockAdditionalContentProps, itemIndex: number, linkIndex: number) => {\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: ctaLink.ariaLabel,\n className: 'ms-content-block__details__additional-content-cta-links',\n linkText: ctaLink.linkText,\n linkUrl: ctaLink.linkUrl.destinationUrl,\n openInNewTab: ctaLink.openInNewTab,\n role: 'link'\n };\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalLinkTextChange(linkIndex, itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Create node for each additonal content item.\n * @param item - Content block additonal content item props.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns IContentBlockAdditionalContentItemViewProps.\n */\nconst assembleNode = (\n item: IAdditionalContentData,\n props: IContentBlockAdditionalContentProps,\n itemIndex: number\n): IContentBlockAdditionalContentItemViewProps => {\n const headingNode = item.heading && renderHeading(item.heading, props, itemIndex);\n const paragraphNode = item.subtext && renderParagraph(item.subtext, props, itemIndex);\n const linksNode = item.links?.map((ctaLink: ILinksData, index: number) => {\n return renderLinks(ctaLink, props, itemIndex, index);\n });\n\n return {\n heading: headingNode,\n text: paragraphNode,\n links: linksNode,\n additionalContentItemContainer: { className: 'ms-content-block__details__additional-content__container' },\n additionalContentItemLinks: { className: 'ms-content-block__details__additional-content-cta' }\n };\n};\n\n/**\n * ContentBlockAdditionalContent component.\n * @param props - Content Block Additional content component props.\n * @returns Content Block Additional content view props.\n */\nexport const contentBlockAdditionalContent = (\n props: IContentBlockAdditionalContentProps\n): IContentBlockAdditionalContentViewProps | undefined => {\n const { additionalContent } = props;\n if (!additionalContent) {\n return undefined;\n }\n\n const reactNodes: IContentBlockAdditionalContentItemViewProps[] = [];\n additionalContent.map((item, index: number) => {\n return reactNodes.push(assembleNode(item, props, index));\n });\n\n return {\n additionalContentNode: { className: 'ms-content-block__details__additional-content' },\n additionalContentItems: reactNodes\n };\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../content-block.props.autogenerated';\n\nexport interface IContentCardLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n telemetryContent: ITelemetryContent;\n role?: string;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\n/**\n *\n * ContentCardLinks component.\n * @extends {React.PureComponent}\n */\nexport class ContentCardLinks extends React.PureComponent {\n public render(): JSX.Element {\n const editableLinks = this._mapEditableLinks(this.props.links);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n }\n\n private readonly _mapEditableLinks = (linkdata: ILinksData[]): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n linkdata.forEach((link, index) => {\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', this.props.telemetryContent, '', '');\n const linkText = link.linkText ? link.linkText : '';\n payLoad.contentAction.etext = linkText;\n const attributes = getTelemetryAttributes(this.props.telemetryContent, payLoad);\n const btnClass = index === 0 ? 'msc-cta__primary' : 'msc-cta__secondary';\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: btnClass,\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: this.props.role,\n additionalProperties: attributes,\n onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n };\n}\nexport default ContentCardLinks;\n","/**\r\n * Copyright (c) Microsoft Corporation\r\n * All rights reserved. See License.txt in the project root for license information.\r\n * IContentBlock contentModule Interface Properties\r\n * THIS FILE IS AUTO-GENERATED - MANUAL MODIFICATIONS WILL BE LOST\r\n */\r\n\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\n\r\nexport const enum actionableRegion {\r\n imageAndLinks = 'imageAndLinks',\r\n linksOnly = 'linksOnly'\r\n}\r\n\r\nexport interface IContentBlockConfig extends Msdyn365.IModuleConfig {\r\n heading?: IHeadingData;\r\n paragraph?: Msdyn365.RichText;\r\n image?: Msdyn365.IImageData;\r\n links?: ILinksData[];\r\n additionalContent?: IAdditionalContentData[];\r\n actionableRegion?: actionableRegion;\r\n imageLink?: Msdyn365.ILinkData;\r\n imageAriaLabel?: string;\r\n className?: string;\r\n clientRender?: boolean;\r\n}\r\n\r\nexport const enum HeadingTag {\r\n h1 = 'h1',\r\n h2 = 'h2',\r\n h3 = 'h3',\r\n h4 = 'h4',\r\n h5 = 'h5',\r\n h6 = 'h6'\r\n}\r\n\r\nexport interface IHeadingData {\r\n text: string;\r\n tag?: HeadingTag;\r\n}\r\n\r\nexport interface ILinksData {\r\n linkText?: string;\r\n linkUrl: Msdyn365.ILinkData;\r\n ariaLabel?: string;\r\n openInNewTab?: boolean;\r\n}\r\n\r\nexport interface IAdditionalContentData {\r\n heading?: string;\r\n subtext?: string;\r\n links?: ILinksData[];\r\n}\r\n\r\nexport interface ILinksData {\r\n linkText?: string;\r\n linkUrl: Msdyn365.ILinkData;\r\n ariaLabel?: string;\r\n openInNewTab?: boolean;\r\n}\r\n\r\nexport interface IContentBlockProps extends Msdyn365.IModule {\r\n config: IContentBlockConfig;\r\n}\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { contentBlockAdditionalContent, IContentBlockAdditionalContentViewProps } from './components/additional-content';\nimport LinksComponent from './components/links';\nimport { actionableRegion as region, IContentBlockConfig, IContentBlockProps } from './content-block.props.autogenerated';\n\nexport interface IContentBlockViewProps extends IContentBlockProps<{}> {\n title?: React.ReactNode;\n text?: React.ReactNode;\n image?: React.ReactNode;\n links?: React.ReactNode;\n className?: string;\n contentBlockContainer: IModuleProps;\n imageContainer: INodeProps;\n detailsContainer: INodeProps;\n contentBlockAnchorTag?: INodeProps;\n imageLink?: string;\n imageAriaLabel?: string;\n additionalContent?: IContentBlockAdditionalContentViewProps;\n handleAdditionalText?(): void;\n handleAdditionalParagraph?(): void;\n handleAdditionalLinkTextChange?(): void;\n}\n\n/**\n * Site-builder configuration for the module.\n */\nexport interface IContentBlockFullConfig extends IContentBlockConfig {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- This field comes from SDK.\n msdyn365__moduleLayout?: string;\n}\n\n/**\n * ContentCard component.\n * @extends {React.PureComponent}\n */\nexport class ContentBlock extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public render(): JSX.Element | null {\n const { heading, paragraph, image, links, className, imageAriaLabel } = this.props.config;\n const contentBlockTitle = heading && (\n \n );\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings ?? {},\n imageSettings: image?.imageSettings\n };\n const contentBlockLinks = links && ArrayExtensions.hasElements(links) && (\n \n );\n const contentBlockText = paragraph && (\n \n );\n const contentBlockImage = (\n \n );\n\n if (!contentBlockTitle && !contentBlockText && !contentBlockLinks) {\n this.props.context.telemetry.error('Content block content is empty, module wont render.');\n return null;\n }\n const contentBlockviewProps = {\n ...this.props,\n title: contentBlockTitle,\n text: contentBlockText,\n image: contentBlockImage,\n links: contentBlockLinks,\n moduleClass: this.props.config.className,\n contentBlockContainer: {\n moduleProps: this.props,\n className: classnames('ms-content-block', className)\n },\n imageContainer: { className: 'ms-content-block__image' },\n detailsContainer: { className: 'ms-content-block__details' },\n contentBlockAnchorTag: {\n tag: 'a',\n className: 'ms-content-block__link',\n role: 'link'\n },\n imageLink: this._getImageLink(),\n imageAriaLabel,\n additionalContent: contentBlockAdditionalContent({\n requestContext: this.props.context.request,\n additionalContent: this.props.config.additionalContent,\n handleAdditionalTextChange: this.handleAdditionalTextChange,\n handleAdditionalParagraphChange: this.handleAdditionalParagraphChange,\n handleAdditionalLinkTextChange: this.handleAdditionalLinkTextChange\n }),\n handleAdditionalText: this.handleAdditionalTextChange,\n handleAdditionalParagraph: this.handleAdditionalParagraphChange,\n handleAdditionalLinkTextChange: this.handleAdditionalLinkTextChange\n };\n\n return this.props.renderView(contentBlockviewProps) as React.ReactElement;\n }\n\n /**\n * To handle text change.\n * @param event - To handle text change event.\n * @name - HandleTextChange\n * @public\n * @returns - The Text value.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n /**\n * To handle paragraph change.\n * @param event - To handle text change event.\n * @name - HandleParagraphChange\n * @public\n * @returns - The Paragraph value.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.paragraph = event.target.value);\n\n /**\n * Handle link text change.\n * @param linkIndex - The link index.\n * @returns - Void.\n */\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[Number(linkIndex)]) {\n this.props.config.links[Number(linkIndex)].linkText = event.target.value;\n }\n };\n\n public handleAdditionalTextChange(index: number, event: Msdyn365.ContentEditableEvent): void {\n if (this.props.config.additionalContent) {\n this.props.config.additionalContent[Number(index)].heading = event.target.value;\n }\n }\n\n public handleAdditionalLinkTextChange(linkIndex: number, index: number, event: Msdyn365.ContentEditableEvent): void {\n const additionalContentObject =\n (this.props.config.additionalContent &&\n ArrayExtensions.hasElements(this.props.config.additionalContent) &&\n this.props.config.additionalContent[Number(index)]) ||\n {};\n if (additionalContentObject.links) {\n additionalContentObject.links[Number(linkIndex)].linkText = event.target.value;\n }\n }\n\n public handleAdditionalParagraphChange(index: number, event: Msdyn365.ContentEditableEvent): void {\n if (this.props.config.additionalContent) {\n this.props.config.additionalContent[Number(index)].subtext = event.target.value;\n }\n }\n\n private _getImageLink(): string | null {\n const { imageLink, links, actionableRegion } = this.props.config;\n if (actionableRegion === region.imageAndLinks) {\n if (imageLink?.destinationUrl) {\n return imageLink.destinationUrl;\n } else if (links && ArrayExtensions.hasElements(links) && links[0].linkUrl) {\n return links[0].linkUrl.destinationUrl;\n }\n return null;\n }\n return null;\n }\n}\n\nexport default ContentBlock;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IContentBlockAdditionalContentItemViewProps, IContentBlockAdditionalContentViewProps } from './components/additional-content';\nimport { IContentBlockViewProps } from './content-block';\n\n/**\n * Render Additional Content.\n * @param additionalContent - Additional content view props.\n * @returns JSX Element.\n */\nconst renderAdditionalContent = (additionalContent: IContentBlockAdditionalContentViewProps) => {\n return (\n \n {additionalContent.additionalContentItems?.map((item: IContentBlockAdditionalContentItemViewProps) => {\n return (\n <>\n {item.heading}\n \n {item.text}\n {item.links}\n \n \n );\n })}\n \n );\n};\n\nconst ContentBlockView: React.FC = props => {\n const {\n contentBlockContainer,\n imageContainer,\n detailsContainer,\n title,\n text,\n links,\n image,\n contentBlockAnchorTag,\n imageLink,\n imageAriaLabel,\n additionalContent\n } = props;\n\n if (imageLink) {\n return (\n \n \n {image}\n \n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n }\n return (\n \n {image}\n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n};\n\nexport default ContentBlockView;\n","const binding = { modules: {}, dataActions: {} };\n\n (binding.modules['content-block'] = {\n c: () => require('partner/modules/content-block/content-block.tsx'),\n $type: 'contentModule',\n da: [],\n \n iNM: false,\n ns: '__local__',\n n: 'content-block',\n p: '__local__',\n \n pdp: '',\n \n \n md: 'src/modules/content-block'\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['__local__|__local__|modules|content-block|content-block'] = {\n c: () => require('partner/modules/content-block/content-block.view.tsx'),\n cn: '__local__-__local__-content-block'\n };\nviewDictionary['@msdyn365-commerce-modules|content-block|modules|content-block|content-block'] = {\n c: () => require('@msdyn365-commerce-modules/content-block/dist/lib/modules/content-block/content-block.view.js'),\n cn: '@msdyn365-commerce-modules-content-block-content-block'\n };\nviewDictionary['@msdyn365-commerce-theme|adventureworks-theme-kit|modules|adventureworks|views|content-block'] = {\n c: () => require('@msdyn365-commerce-theme/adventureworks-theme-kit/dist/lib/modules/adventureworks/views/content-block.view.js'),\n cn: '@msdyn365-commerce-theme-adventureworks-theme-kit-content-block'\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 { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IContentBlockAdditionalContentItemViewProps, IContentBlockAdditionalContentViewProps } from './components/additional-content';\nimport { IContentBlockViewProps } from './content-block';\n\n/**\n * Render Additional Content.\n * @param additionalContent - Additional content view props.\n * @returns JSX Element.\n */\nconst renderAdditionalContent = (additionalContent: IContentBlockAdditionalContentViewProps) => {\n return (\n \n {additionalContent.additionalContentItems?.map((item: IContentBlockAdditionalContentItemViewProps) => {\n return (\n <>\n {item.heading}\n \n {item.text}\n {item.links}\n \n \n );\n })}\n \n );\n};\n\nconst ContentBlockView: React.FC = props => {\n const {\n contentBlockContainer,\n imageContainer,\n detailsContainer,\n title,\n text,\n links,\n image,\n contentBlockAnchorTag,\n imageLink,\n imageAriaLabel,\n additionalContent\n } = props;\n\n if (imageLink) {\n return (\n \n \n {image}\n \n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n }\n return (\n \n {image}\n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n};\n\nexport default ContentBlockView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n IContentBlockAdditionalContentItemViewProps,\n IContentBlockAdditionalContentViewProps,\n IContentBlockViewProps\n} from '@msdyn365-commerce-modules/content-block';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\n/**\n * Render Additional Content.\n * @param additionalContent - Additional content view props.\n * @returns JSX Element.\n */\nconst renderAdditionalContent = (additionalContent: IContentBlockAdditionalContentViewProps) => {\n return (\n \n {additionalContent.additionalContentItems?.map((item: IContentBlockAdditionalContentItemViewProps) => {\n return (\n <>\n {item.heading}\n \n {item.text}\n {item.links}\n \n \n );\n })}\n \n );\n};\n\n/**\n * Render View.\n * @param props - The view props.\n * @returns -The JSX Element.\n */\nconst contentBlockView: React.FC = props => {\n const {\n contentBlockContainer,\n imageContainer,\n detailsContainer,\n title,\n text,\n links,\n image,\n contentBlockAnchorTag,\n imageLink,\n imageAriaLabel,\n additionalContent\n } = props;\n\n // @ts-expect-error HTML element need to be clear on run time.\n const hasImage: boolean = image.props.src;\n const imageClass: string = hasImage ? `${detailsContainer.className} withImage` : `${detailsContainer.className} withoutImage`;\n\n if (imageLink) {\n return (\n \n \n {image}\n \n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n }\n return (\n \n {image}\n \n {title}\n {text}\n {links}\n {additionalContent && renderAdditionalContent(additionalContent)}\n \n \n );\n};\n\nexport default contentBlockView;\n","module.exports = React;","module.exports = ReactDOM;"],"names":["assembleNode","item","props","itemIndex","_item$links","heading","renderHeading","additionalContentHeading","requestContext","React","Msdyn365","text","tag","className","editProps","onEdit","event","handleAdditionalTextChange","subtext","renderParagraph","additionalContentParagraphText","links","map","ctaLink","index","renderLinks","linkIndex","editableLink","ariaLabel","linkText","linkUrl","destinationUrl","openInNewTab","role","key","link","onTextChange","handleAdditionalLinkTextChange","additionalContentItemContainer","additionalContentItemLinks","contentBlockAdditionalContent","additionalContent","reactNodes","push","additionalContentNode","additionalContentItems","ContentCardLinks","constructor","_mapEditableLinks","linkdata","length","editableLinks","forEach","payLoad","getPayloadObject","this","telemetryContent","contentAction","etext","attributes","getTelemetryAttributes","btnClass","additionalProperties","onClick","onTelemetryClick","render","actionableRegion","HeadingTag","ContentBlock","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","handleTextChange","config","target","value","handleParagraphChange","paragraph","handleLinkTextChange","Number","_heading$tag","_this$props$context$r","_this$props$config$im","image","imageAriaLabel","contentBlockTitle","imageProps","gridSettings","imageSettings","contentBlockLinks","ArrayExtensions","hasElements","LinksComponent","Object","assign","msdyn365__moduleLayout","contentBlockText","contentBlockImage","preserveImageSpace","moduleType","typeName","imagePropertyName","moduleId","id","layout","shouldSkipToMainImage","error","contentBlockviewProps","_objectSpread","title","moduleClass","contentBlockContainer","moduleProps","classnames","imageContainer","detailsContainer","contentBlockAnchorTag","imageLink","_getImageLink","handleAdditionalParagraphChange","handleAdditionalText","handleAdditionalParagraph","renderView","additionalContentObject","region","imageAndLinks","renderAdditionalContent","_additionalContent$ad","Node","Module","href","binding","modules","dataActions","c","require","$type","da","iNM","ns","n","p","pdp","md","window","__bindings__","viewDictionary","cn","imageClass","src","module","exports","ReactDOM"],"sourceRoot":""}