{"version":3,"file":"static/js/7.3eac33a0b55a0231e042.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/brand-hero/svgs/logos.tsx?267c","webpack://Msdyn365.Commerce.Online/./src/modules/brand-hero/brand-hero.tsx?71ab","webpack://Msdyn365.Commerce.Online/./src/modules/brand-hero/brand-hero.view.tsx?2e32","webpack://Msdyn365.Commerce.Online/./src/modules/youtube-embed/youtube-embed.tsx?679a","webpack://Msdyn365.Commerce.Online/./src/modules/youtube-embed/youtube-embed.view.tsx?9245","webpack://Msdyn365.Commerce.Online/./src/themes/connselmer2/views/buybox.view.tsx?80e6","webpack://Msdyn365.Commerce.Online/./src/themes/connselmer2/views/header.view.tsx?1faa","webpack://Msdyn365.Commerce.Online/./src/themes/connselmer/views/buybox.view.tsx?da36","webpack://Msdyn365.Commerce.Online/./src/themes/connselmer/views/header.view.tsx?2129","webpack://Msdyn365.Commerce.Online/./src/themes/leblanc/views/buybox.view.tsx?7d65","webpack://Msdyn365.Commerce.Online/./src/themes/leblanc/views/header.view.tsx?5ee4","webpack://Msdyn365.Commerce.Online/./src/modules/loyalty-sign-up/loyalty-sign-up.view.tsx?45ec","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-customer-account-payment/checkout-customer-account-payment.view.tsx?79c6","webpack://Msdyn365.Commerce.Online/./src/modules/checkout/checkout.view.tsx?e4cc","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/components/additional-content.tsx?d5f9","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/components/links.tsx?abbf","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.tsx?3084","webpack://Msdyn365.Commerce.Online/./src/modules/content-block/content-block.view.tsx?1773","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/cart.view.tsx?ac8f","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/order-history.view.tsx?a21d","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/ratings-histogram.view.tsx?6e01","webpack://Msdyn365.Commerce.Online/./src/modules/fabrikam/views/reviews-list.view.tsx?cd2e","webpack://Msdyn365.Commerce.Online/./src/modules/map/map.view.tsx?5db9","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-order-confirmation/checkout-order-confirmation.view.tsx?722a","webpack://Msdyn365.Commerce.Online/./src/modules/order-confirmation/order-confirmation.view.tsx?f5ab","webpack://Msdyn365.Commerce.Online/./src/modules/order-history/order-history.view.tsx?2545","webpack://Msdyn365.Commerce.Online/./src/modules/product-specification/components/product-specification-table-stucture.tsx?c1c4","webpack://Msdyn365.Commerce.Online/./src/modules/product-specification/product-specification.tsx?6583","webpack://Msdyn365.Commerce.Online/./src/modules/product-specification/product-specification.view.tsx?7490","webpack://Msdyn365.Commerce.Online/./src/modules/ratings-histogram/ratings-histogram.view.tsx?5bff","webpack://Msdyn365.Commerce.Online/./src/modules/reviews-list/reviews-list.view.tsx?0e4a","webpack://Msdyn365.Commerce.Online/./src/modules/write-review/write-review.view.tsx?b867","webpack://Msdyn365.Commerce.Online/./src/modules/social-share/social-share.tsx?899b","webpack://Msdyn365.Commerce.Online/./src/modules/social-share/social-share.view.tsx?dcdf","webpack://Msdyn365.Commerce.Online/./src/modules/store-selector/store-selector.view.tsx?71a6","webpack://Msdyn365.Commerce.Online/./src/modules/subscribe/subscribe.view.tsx?19c8","webpack://Msdyn365.Commerce.Online/./src/modules/tile-list/tile-list.tsx?78cb","webpack://Msdyn365.Commerce.Online/./src/modules/tile-list/tile-list.view.tsx?1b00","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/checkout-customer-account-payment.view.tsx?0efc","webpack://Msdyn365.Commerce.Online/./src/modules/adventureworks/views/order-history.view.tsx?692d"],"sourcesContent":["import React from \"react\";\r\n\r\nexport function armstrong():JSX.Element{\r\n\treturn (Armstrong logo)\r\n}\r\nexport function bach(): JSX.Element {\r\n\treturn (\r\n\t\tBach logo)\r\n}\r\nexport function conn(): JSX.Element {\r\n\treturn (Conn Logo)\r\n}\r\nexport function connselmer(): JSX.Element{\r\n\treturn ()\r\n}\r\nexport function holton(): JSX.Element{\r\n\treturn ()\r\n}\r\nexport function king(): JSX.Element {\r\n\treturn ()\r\n}\r\nexport function leblanc(): JSX.Element {\r\n\treturn ()\r\n}\r\nexport function ludwig(): JSX.Element {\r\n\treturn ()\r\n}\r\nexport function ludwig_musser(): JSX.Element{\r\n\treturn ()\r\n}\r\nexport function musser(): JSX.Element{\r\n\treturn ();\r\n}\r\nexport function scherl(): JSX.Element{\r\n\treturn ()\r\n}\r\nexport function selmer(): JSX.Element {\r\n\treturn (\r\n\t\t)\r\n}\r\nexport function yanagisawa(): JSX.Element {\r\n\treturn ()\r\n}","import * as React from 'react';\r\nimport {IBrandHeroData} from './brand-hero.data';\r\nimport {IBrandHeroProps} from './brand-hero.props.autogenerated';\r\nimport {IModuleProps, INodeProps} from \"@msdyn365-commerce-modules/utilities\";\r\nimport * as Msdyn365 from \"@msdyn365-commerce/core\";\r\nimport classnames from 'classnames';\r\nimport {IContentBlockFullConfig} from \"@msdyn365-commerce-modules/content-block/src/modules/content-block/content-block\";\r\nimport {\r\n\tarmstrong,\r\n\tbach,\r\n\tconn,\r\n\tconnselmer,\r\n\tking,\r\n\tholton,\r\n\tleblanc,\r\n\tludwig,\r\n\tmusser,\r\n\tscherl,\r\n\tselmer,\r\n\tyanagisawa,\r\n\tludwig_musser\r\n} from './svgs/logos';\r\n\r\nexport interface IBrandHeroViewProps extends IBrandHeroProps {\r\n\th1Text?: string;\r\n\tbrandLogo: string;\r\n\tclassName?: string;\r\n\timage?: React.ReactNode;\r\n\ttitle?: React.ReactNode;\r\n\tbrandHeroContainer: IModuleProps;\r\n\timageContainer: INodeProps;\r\n\tdetailsContainer: INodeProps;\r\n}\r\n\r\n/**\r\n *\r\n * BrandHero component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass BrandHero extends React.PureComponent> {\r\n\r\n\tpublic render(): JSX.Element | null {\r\n\t\tconst { h1Text, brandLogo, image, className } = this.props.config;\r\n\t\tconst contentBlockTitle = h1Text && (\r\n\t\t\t\r\n\t\t);\r\n\t\tconst imageProps = {\r\n\t\t\tgridSettings: this.props.context.request.gridSettings ?? {},\r\n\t\t\timageSettings: image?.imageSettings\r\n\t\t\t//lazyload: false ??\r\n\t\t};\r\n\t\t//Get the CTA Link builders from content-block.tsx if we need this later. Same for text\r\n\r\n\t\tconst brandHeroImage = (\r\n\t\t\t\r\n\t\t);\r\n\t\t//Set up the array of logos to grab (this is TERRIBLE CODE)\r\n\t\tconst logos = {\r\n\t\t\tarmstrong, bach, conn, connselmer, king, holton, leblanc, ludwig, ludwig_musser, musser, scherl, selmer, yanagisawa\r\n\t\t}\r\n\t\tif (!contentBlockTitle){\r\n\t\t\tthis.props.context.telemetry.error('Brand Hero H1 is empty, module wont render.');\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\tconst brandHeroBlockProps = {\r\n\t\t\t...this.props,\r\n\t\t\ttitle: contentBlockTitle,\r\n\t\t\timage: brandHeroImage,\r\n\t\t\tmoduleClass: this.props.config.className,\r\n\t\t\tbrandHeroContainer: {\r\n\t\t\t\tmoduleProps: this.props,\r\n\t\t\t\tclassName: classnames('brand-hero', className)\r\n\t\t\t},\r\n\t\t\timageContainer: { className: 'brand-hero__image' },\r\n\t\t\tdetailsContainer: { className: 'brand-hero__details' },\r\n\t\t\tbrandLogo: logos[`${brandLogo}`]()\r\n\t\t};\r\n\t\treturn this.props.renderView(brandHeroBlockProps) as React.ReactElement;\r\n\t}\r\n}\r\nexport default BrandHero;","import * as React from 'react';\r\nimport {IBrandHeroViewProps} from './brand-hero';\r\nimport {Module, Node} from \"@msdyn365-commerce-modules/utilities\";\r\n\r\nconst BrandHeroView: React.FC = props => {\r\n\tconst {\r\n\t\tbrandHeroContainer,\r\n\t\timageContainer,\r\n\t\tdetailsContainer,\r\n\t\ttitle,\r\n\t\tbrandLogo,\r\n\t\timage\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{image}\r\n\t\t\t\r\n\t\t\t\t{brandLogo}\r\n\t\t\t\t{title}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\nexport default BrandHeroView;","import * as React from 'react';\r\nimport { IYoutubeEmbedData } from './youtube-embed.data';\r\nimport { IYoutubeEmbedProps } from './youtube-embed.props.autogenerated';\r\nimport * as Msdyn365 from '@msdyn365-commerce/core';\r\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\n\r\nexport interface IYoutubeEmbedViewProps extends IYoutubeEmbedProps {\r\n title?: React.ReactNode;\r\n text?: React.ReactNode;\r\n youTubeEmbedContainer: IModuleProps;\r\n youTubeURL?: string;\r\n youTubeTitle?: string;\r\n}\r\n\r\n/** -YoutubeEmbed component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass YoutubeEmbed extends React.PureComponent> {\r\n\r\n public render(): JSX.Element | null {\r\n const {headingText, headingTag, paragraph, className} = this.props.config;\r\n\r\n const youTubeEmbedTitle = headingText && (\r\n \r\n );\r\n const youTubeEmbedText = paragraph && (\r\n \r\n );\r\n const youTubeEmbedProps = {\r\n ...this.props,\r\n title: youTubeEmbedTitle,\r\n text: youTubeEmbedText,\r\n youTubeEmbedContainer: {\r\n moduleProps: this.props,\r\n className: classnames('you-tube-embed', className)\r\n },\r\n youTubeURL: this.props.config.youTubeURL,\r\n youTubeTitle: this.props.config.youTubeTitle\r\n }\r\n\r\n return this.props.renderView(youTubeEmbedProps) as React.ReactElement;\r\n }\r\n}\r\nexport default YoutubeEmbed;","import * as React from 'react';\r\nimport { IYoutubeEmbedViewProps } from './youtube-embed';\r\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\n\r\nconst YoutubeEmbedView: React.FC = props => {\r\n\tconst {\r\n\t\tyouTubeEmbedContainer,\r\n\t\ttitle,\r\n\t\ttext,\r\n\t\tyouTubeURL,\r\n\t\tyouTubeTitle\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t\t{title}\r\n\t\t\t{text}\r\n\t\t
\r\n\t);\r\n}\r\nexport default YoutubeEmbedView;","import {Node} from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport {\r\n\tIBuyboxAddToCartViewProps,\r\n\tIBuyboxAddToOrderTemplateViewProps,\r\n\tIBuyboxAddToWishlistViewProps,\r\n\tIBuyboxKeyInPriceViewProps,\r\n\tIBuyboxProductConfigureDropdownViewProps,\r\n\tIBuyboxProductConfigureViewProps,\r\n\tIBuyboxProductQuantityViewProps,\r\n\tIBuyboxShopSimilarLookViewProps\r\n} from '@msdyn365-commerce-modules/buybox/src/common';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./buybox';\r\nimport {\r\n\tIBuyboxFindInStoreViewProps\r\n} from '@msdyn365-commerce-modules/buybox/src/modules/buybox/components/buybox-find-in-store';\r\nimport { AttributeValue, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport {getAttributeValuesAsync} from \"@msdyn365-commerce/retail-proxy/dist/DataActions/ProductsDataActions.g\";\r\nimport {ReactNode, useState} from 'react';\r\n\r\n\r\n/* Private Functions */\r\nconst _getExtensionProperties = (product: SimpleProduct|undefined): null|{} => {\r\n\tif (product === undefined || !product.ExtensionProperties) return null;\r\n\t//we have product data, proceed to extract the usable attributes\r\n\tlet count = 0;\r\n\tlet final = {};\t\t//final return for our data\r\n\r\n\twhile (product.ExtensionProperties && product.ExtensionProperties[count] !== undefined){\r\n\t\tconst ep_key = product.ExtensionProperties[count].Key;\r\n\t\tlet ep_val: any;\r\n\r\n\t\tObject.keys(product.ExtensionProperties[count].Value!).forEach((item) => {\r\n\t\t\tif (product.ExtensionProperties![count].Value![item] !== undefined){\r\n\t\t\t\tep_val = product.ExtensionProperties![count].Value![item];\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (ep_key && ep_val) final[ep_key] = ep_val;\t//false switches don't pass this\r\n\t\tcount++;\r\n\t}\r\n\treturn final;\r\n}\r\nconst _renderSearchName = (ExtensionProps: {}|null): JSX.Element|null => {\r\n\tif (ExtensionProps && ExtensionProps[\"SearchName\"]){\r\n\t\treturn

{ExtensionProps[\"SearchName\"]}

;\r\n\t} else {\r\n\t\treturn null\r\n\t}\r\n}\r\nconst _renderLevelScale = (ExtensionProps: {}|null): JSX.Element|null => {\r\n\tif (ExtensionProps && ExtensionProps[\"LevelId\"]){\r\n\t\treturn (\r\n\t\t\t
{ExtensionProps[\"LevelId\"]}
\r\n\t\t)\r\n\t} else {\r\n\t\treturn null\r\n\t}\r\n};\r\nconst _formatPricing = (ExtensionProps: {}|null, price: ReactNode|undefined, channelId:number) => {\r\n\t//if there's no price, break out / show nothing.\r\n\tif (!price) return null;\r\n\t//Check if the price needs to be suppressed (no data in EP, or Suppress flag is present)\r\n\tif (!ExtensionProps || ExtensionProps['IsSupressPrice']) return null;\r\n\tif([5637145352,5637145370].includes(channelId)){\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t
{price}
\r\n\t\t\t\t

Price includes VAT

\r\n\t\t\t\r\n\t\t)\r\n\t} else {\r\n\t\treturn
{price}
\r\n\t}\r\n}\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element|null => {\r\n\tif (!socialShare || socialShare.length === 0) return null;\r\n\treturn (<>\r\n\t\t{socialShare[0]}\r\n\t\t
\r\n\t);\r\n};\r\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps, ExtensionProps: Object|null): JSX.Element => {\r\n\tconst {ContainerProps, dropdowns} = configure;\r\n\treturn (\r\n\t\t\r\n\t\t\t{dropdowns.map((dropdown: IBuyboxProductConfigureDropdownViewProps, i: number) => {\r\n\t\t\t\treturn _renderConfigureDropdown(dropdown, ExtensionProps, i);\r\n\t\t\t})}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderConfigureDropdown = (\r\n\tdropdown: IBuyboxProductConfigureDropdownViewProps, ExtensionProps: Object|null, count: number,\r\n): JSX.Element => {\r\n\tconst dimensionOverrideKeys = ['DimensionOne', 'DimensionThree', 'DimensionFour'];\r\n\tconst {ContainerProps, LabelContainerProps, heading, errors, select} = dropdown;\r\n\t//if we have an overide use it, otherwise use the default\r\n\tconst headingLabel = (ExtensionProps && ExtensionProps[dimensionOverrideKeys[count]]) || heading;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{headingLabel}{errors}\r\n\t\t\t{select}\r\n\t\t\r\n\t);\r\n}\r\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}\r\n\t\t\t{input}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}{errors}\r\n\t\t\t{input}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderAddToCart = (addToCart: IBuyboxAddToCartViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToCart;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderAddToOrderTemplate = (addToOrderTemplate: IBuyboxAddToOrderTemplateViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToOrderTemplate;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderAddToWishlist = (addToWishlist: IBuyboxAddToWishlistViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToWishlist;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n\tconst {\r\n\t\tContainerProps,\r\n\t\tstoreSelector,\r\n\t\theading,\r\n\t\tdescription,\r\n\t\terrors,\r\n\t\tbutton,\r\n\t\tmodal,\r\n\t\tproductPickupOptionList\r\n\t} = findInStore;\r\n\treturn (\r\n\t\t\r\n\t\t\t{storeSelector} {heading} {productPickupOptionList} {description} {errors} {button} {modal}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errors, input } = shopSimilarItem;\r\n\treturn {errors} {input};\r\n};\r\nconst _renderHtmlField = (fieldKey:string, ExtensionProps:Object|null):JSX.Element|null => {\r\n\tif(ExtensionProps === null) return null;\r\n\tif(ExtensionProps[fieldKey]){\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t

{fieldKey.replace('Product','')}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t} else {\r\n\t\treturn null;\r\n\t}\r\n}\r\n//Injection of deleted dimensions\r\nfunction inject_dimensions(dimensions: any, type_dimension: any) {\r\n\tlet dropDowns = document.getElementsByClassName('ms-buybox__dropdown');\r\n\t//Get the dropdown html by using ID\r\n\tconst valves = document.getElementById('valves');\r\n\tconst material = document.getElementById('material');\r\n\r\n\tfor (let i = 0; i < dropDowns.length; i++) {\r\n\t\tlet dropDown_for = dropDowns[i].firstElementChild?.getAttribute('for');\r\n\t\tlet dimension_type;\r\n\t\tif (dropDown_for != null) {\r\n\t\t\tlet search_against = 'ms-buybox__dropown-quantity-input-';\r\n\t\t\tdimension_type = dropDown_for.slice(dropDown_for.indexOf(search_against) + search_against.length);\r\n\t\t\tif (dimensions !== undefined && dimension_type == type_dimension.toString()) {\r\n\t\t\t\tlet $element = dropDowns[i].lastChild as HTMLDivElement;\r\n\t\t\t\tif ($element.classList.contains('msc-swatch-container')) {\r\n\t\t\t\t\t//SWATCH\r\n\t\t\t\t\tlet $options = $element.children as HTMLCollection;\r\n\t\t\t\t\tfor (let z = 0; z < dimensions.length; z++) {\r\n\t\t\t\t\t\tlet is_exist = false;\r\n\t\t\t\t\t\tfor (let y = 0; y < $options.length; y++) {\r\n\t\t\t\t\t\t\tif ($options[y].textContent == dimensions[z].VALUE) {\r\n\t\t\t\t\t\t\t\tis_exist = true;\r\n\t\t\t\t\t\t\t\t//Remove duplicate\r\n\t\t\t\t\t\t\t\tif ($options[y].textContent == material?.textContent) {\r\n\t\t\t\t\t\t\t\t\tmaterial && material.remove();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (!is_exist) {\r\n\t\t\t\t\t\t\t//PUSH the value\r\n\t\t\t\t\t\t\tlet option_elem = document.createElement('button');\r\n\t\t\t\t\t\t\toption_elem.textContent = dimensions[z].VALUE;\r\n\t\t\t\t\t\t\toption_elem.setAttribute('disabled', '');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item__unselected');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item__uncolored');\r\n\t\t\t\t\t\t\toption_elem.setAttribute('id', 'material');\r\n\t\t\t\t\t\t\t$element.appendChild(option_elem);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t//DROPDOWN\r\n\t\t\t\t\tlet $select = dropDowns[i].lastChild as HTMLSelectElement;\r\n\t\t\t\t\tlet $options = $select.options as HTMLOptionsCollection;\r\n\t\t\t\t\tfor (let z = 0; z < dimensions.length; z++) {\r\n\t\t\t\t\t\tlet is_exist = false;\r\n\t\t\t\t\t\tfor (let y = 0; y < $options.length; y++) {\r\n\t\t\t\t\t\t\tif ($options[y].text == dimensions[z].VALUE) {\r\n\t\t\t\t\t\t\t\tis_exist = true;\r\n\t\t\t\t\t\t\t\t//Remove duplicate\r\n\t\t\t\t\t\t\t\tif ($options[y].text == valves?.textContent) {\r\n\t\t\t\t\t\t\t\t\tvalves && valves.remove();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (!is_exist) {\r\n\t\t\t\t\t\t\t//PUSH the value in the dropDown\r\n\t\t\t\t\t\t\tlet option_elem = document.createElement('option');\r\n\t\t\t\t\t\t\toption_elem.text = dimensions[z].VALUE;\r\n\t\t\t\t\t\t\toption_elem.setAttribute('disabled', '');\r\n\t\t\t\t\t\t\toption_elem.setAttribute('id', 'valves');\r\n\t\t\t\t\t\t\t$select.options.add(option_elem);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* Main Exported Function */\r\nconst BuyboxView: React.FC = props => {\r\n\t/* Only destructuring repeated or complicated props\r\n\t * Totally removed MediaGalleryContainerProps & description (not using OOtB) */\r\n\tconst {\r\n\t\taddToCart,\r\n\t\taddToOrderTemplate,\r\n\t\taddToWishlist,\r\n\t\tconfigure,\r\n\t\tfindInStore,\r\n\t\tkeyInPrice,\r\n\t\tprice,\r\n\t\tProductInfoContainerProps,\r\n\t\tquantity,\r\n\t\tshopSimilarLook,\r\n\t\tshopSimilarDescription,\r\n\t} = props;\r\n\tconst ExtensionProps = _getExtensionProperties(props.data.product.result);\r\n\t//Attribute Function Chain\r\n\tconst [productAttribute, setProductAttribute] = useState([]);\r\n\tconst _getAttributesAsync = async (props: IBuyboxViewProps) => {\r\n\t\tconst getAttribute:AttributeValue[] = await getAttributeValuesAsync(\r\n\t\t\t{ callerContext: props.context.actionContext },\r\n\t\t\tprops.data.product.result?.RecordId!,\r\n\t\t\tprops.context.request.apiSettings.channelId,\r\n\t\t\tprops.context.request.apiSettings.catalogId\r\n\t\t);\r\n\t\tsetProductAttribute(getAttribute);\r\n\t}\r\n\tconst renderProductAttributes = () => {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t

Product Attributes

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{productAttribute.map(attr => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{attr.TextValue !== '' && (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
{attr.Name}{attr.TextValue}
\r\n\t\t\t\r\n\t\t);\r\n\t};\r\n\r\n\t// Get Attribute Call\r\n\tReact.useEffect(() => {\r\n\t\t _getAttributesAsync(props);\r\n\t\t props.data.productDimensions.result?.forEach(dimension => {\r\n\t\t\t let dimension_type = dimension.DimensionTypeValue;\r\n\t\t\t let dimension_values: any = '';\r\n\t\t\t dimension.ExtensionProperties?.forEach(value => {\r\n\t\t\t\t if (value.Key == 'AllDimensions') dimension_values = value.Value?.StringValue;\r\n\t\t\t });\r\n\t\t\t if (dimension_values !== '') {\r\n\t\t\t\t dimension_values = JSON.parse(dimension_values);\r\n\t\t\t\t inject_dimensions(dimension_values, dimension_type);\r\n\t\t\t }\r\n\t\t });\r\n\t });\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
{props.mediaGallery}
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{props.title}\r\n\t\t\t\t\t\t{_renderSearchName(ExtensionProps)}\r\n\t\t\t\t\t\t{_renderLevelScale(ExtensionProps)}\r\n\t\t\t\t\t\t{_formatPricing(ExtensionProps, price, props.context.request.apiSettings.channelId)}\r\n\t\t\t\t\t\t{_renderSocialShare(props.slots && props.slots.socialShare)}\r\n\t\t\t\t\t\t{configure && _renderConfigure(configure, ExtensionProps)}\r\n\t\t\t\t\t\t{props.unitOfMeasure}\r\n\t\t\t\t\t\t{props.bulkPurchaseLink}\r\n\t\t\t\t\t\t{/*{description}*/}\r\n\t\t\t\t\t\t{props.rating}\r\n\t\t\t\t\t\t{keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n\t\t\t\t\t\t{quantity && _renderQuantity(quantity)}\r\n\t\t\t\t\t\t{props.inventoryLabel}\r\n\t\t\t\t\t\t{addToCart && _renderAddToCart(addToCart)}\r\n\t\t\t\t\t\t{findInStore && _renderFindInStore(findInStore)}\r\n\t\t\t\t\t\t{addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n\t\t\t\t\t\t{addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n\t\t\t\t\t\t{shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n\t\t\t\t\t\t{shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\tFind a Dealer\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t{['ProductDescription', 'ProductFeatures', 'ProductSpecification'].map((item) => {\r\n\t\t\t\t\treturn _renderHtmlField(item, ExtensionProps)\r\n\t\t\t\t})}\r\n\t\t\t\t{productAttribute && renderProductAttributes()}\r\n\t\t\t
\r\n\t\t
\r\n\t)\r\n};\r\nexport default BuyboxView;","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IHeaderProps } from '../definition-extensions/header.ext.props.autogenerated';\r\nimport { IHeaderViewProps } from '@msdyn365-commerce-modules/header/src/modules/header/./header';\r\n\r\nconst headerView: React.FC> = (props: IHeaderViewProps & IHeaderProps<{}>) => {\r\n const {\r\n HeaderTag,\r\n HeaderContainer,\r\n HeaderTopBarContainer,\r\n MobileMenuContainer,\r\n MobileMenuBodyContainer,\r\n MobileMenuLinksContainer,\r\n Divider\r\n } = props;\r\n return (\r\n \r\n \r\n \r\n {props.preferredStore}\r\n {_renderDesktopAccountBlock(props)}\r\n {props.wishListIconDesktop}\r\n {props.cartIcon}\r\n \r\n {_renderReactFragment(props.siteOptions)}\r\n \r\n
\r\n {_buildLogo()}\r\n {_renderReactFragment(props.menuBar)}\r\n {props.navIcon}\r\n {_renderReactFragment(props.search)}\r\n
\r\n \r\n \r\n { props.MobileMenuHeader }\r\n {_renderReactFragment(props.menuBar)}\r\n \r\n { props.accountLinks ? props.accountLinks.map(link => link) : false }\r\n { props.siteOptions }\r\n { props.wishListIconMobile }\r\n { props.signInLink }\r\n { props.signOutLink }\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nfunction _renderDesktopAccountBlock(props: IHeaderViewProps): JSX.Element | null {\r\n const {\r\n AccountInfoDropdownParentContainer,\r\n AccountInfoDropdownPopoverConentContainer,\r\n accountInfoDropdownButton,\r\n signOutLink,\r\n signInLink,\r\n accountLinks\r\n } = props;\r\n\r\n if (AccountInfoDropdownParentContainer) {\r\n if (AccountInfoDropdownPopoverConentContainer) {\r\n return (\r\n \r\n {accountInfoDropdownButton}\r\n \r\n { accountLinks ? accountLinks.map(link => link) : false }\r\n {signOutLink}\r\n \r\n \r\n );\r\n } else if (signInLink) {\r\n return (\r\n \r\n {signInLink}\r\n \r\n );\r\n }\r\n }\r\n props.context.telemetry.error('Header content is empty, module wont render.');\r\n return null;\r\n}\r\n\r\nfunction _renderReactFragment(items: React.ReactNode[]): JSX.Element | null {\r\n return (\r\n <>\r\n {items && items.length > 0 ? items.map((slot: React.ReactNode, index: number) => {\r\n return (\r\n {slot}\r\n );\r\n }) : null}\r\n \r\n );\r\n}\r\n\r\n//Moved this to a function to clean up the render code above\r\nfunction _buildLogo(): JSX.Element{\r\n return
\r\n}\r\n\r\nexport default headerView;","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\nimport { Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToOrderTemplateViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxKeyInPriceViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps,\r\n IBuyboxShopSimilarLookViewProps\r\n} from '@msdyn365-commerce-modules/buybox/src/modules/buybox/../../common';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./buybox';\r\nimport { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\n//import { getProductDimensions Async, getProductRefiners Async } from '../../../dataService/DataActionExtension.g';\r\nimport { AttributeValue, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport { getAttributeValuesAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/ProductsDataActions.g';\r\nimport { useState } from 'react';\r\n\r\n//Commented out Description (the OOtB desc) since we're not using it for now.\r\nconst BuyboxView: React.FC = props => {\r\n const {\r\n /*MediaGalleryContainerProps,*/ ProductInfoContainerProps,\r\n addToCart,\r\n addToOrderTemplate,\r\n addToWishlist,\r\n configure,\r\n /*description,*/ findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating,\r\n inventoryLabel,\r\n shopSimilarLook,\r\n keyInPrice,\r\n shopSimilarDescription,\r\n unitOfMeasure\r\n } = props;\r\n\r\n const [productAttribute, setProductAttribute] = useState([]);\r\n // Get Attribute Call\r\n const _getAttriAsync = async (props: IBuyboxViewProps) => {\r\n const context = props.context.actionContext;\r\n const recordID: number = props.data.product.result?.RecordId!;\r\n const channelID = props.context.request.apiSettings.channelId;\r\n const catelogID = props.context.request.apiSettings.catalogId;\r\n const getAttribute: AttributeValue[] = await getAttributeValuesAsync({ callerContext: context }, recordID, channelID, catelogID);\r\n\r\n setProductAttribute(getAttribute);\r\n };\r\n // Product Attribute Rendering HTML\r\n const renderProductAttributes = () => {\r\n return (\r\n <>\r\n

Product Attribtues

\r\n \r\n \r\n {productAttribute.map(attribute => (\r\n \r\n {attribute.TextValue !== '' && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n \r\n
{attribute.Name}{attribute.TextValue}
\r\n \r\n );\r\n };\r\n\r\n React.useEffect(() => {\r\n _getAttriAsync(props);\r\n\r\n props.data.productDimensions.result?.forEach(dimension => {\r\n let dimension_type = dimension.DimensionTypeValue;\r\n let dimension_values: any = '';\r\n dimension.ExtensionProperties?.forEach(value => {\r\n if (value.Key == 'AllDimensions') {\r\n dimension_values = value.Value?.StringValue;\r\n }\r\n });\r\n if (dimension_values !== '') {\r\n dimension_values = JSON.parse(dimension_values);\r\n inject_dimensions(dimension_values, dimension_type);\r\n }\r\n });\r\n\r\n function inject_dimensions(dimensions: any, type_dimension: any) {\r\n let dropDowns = document.getElementsByClassName('ms-buybox__dropdown');\r\n //Get the dropdown html by using ID\r\n const valves = document.getElementById('valves');\r\n const material = document.getElementById('material');\r\n for (let i = 0; i < dropDowns.length; i++) {\r\n let dropDown_for = dropDowns[i].firstElementChild?.getAttribute('for');\r\n let dimension_type;\r\n if (dropDown_for != null) {\r\n let search_against = 'ms-buybox__dropown-quantity-input-';\r\n dimension_type = dropDown_for.slice(dropDown_for.indexOf(search_against) + search_against.length);\r\n if (dimensions !== undefined && dimension_type == type_dimension.toString()) {\r\n let $element = dropDowns[i].lastChild as HTMLDivElement;\r\n if ($element.classList.contains('msc-swatch-container')) {\r\n //SWATCH\r\n let $options = $element.children as HTMLCollection;\r\n for (let z = 0; z < dimensions.length; z++) {\r\n let is_exist = false;\r\n for (let y = 0; y < $options.length; y++) {\r\n if ($options[y].textContent == dimensions[z].VALUE) {\r\n is_exist = true;\r\n //Remove duplicate\r\n if ($options[y].textContent == material?.textContent) {\r\n material && material.remove();\r\n }\r\n }\r\n }\r\n if (is_exist === false) {\r\n //PUSH the value\r\n let option_elem = document.createElement('button');\r\n option_elem.textContent = dimensions[z].VALUE;\r\n option_elem.setAttribute('disabled', '');\r\n option_elem.classList.add('msc-swatch-container__item');\r\n option_elem.classList.add('msc-swatch-container__item__unselected');\r\n option_elem.classList.add('msc-swatch-container__item__uncolored');\r\n option_elem.setAttribute('id', 'material');\r\n $element.appendChild(option_elem);\r\n }\r\n }\r\n } else {\r\n //DROPDOWN\r\n let $select = dropDowns[i].lastChild as HTMLSelectElement;\r\n let $options = $select.options as HTMLOptionsCollection;\r\n for (let z = 0; z < dimensions.length; z++) {\r\n let is_exist = false;\r\n for (let y = 0; y < $options.length; y++) {\r\n if ($options[y].text == dimensions[z].VALUE) {\r\n is_exist = true;\r\n //Remove duplicate\r\n if ($options[y].text == valves?.textContent) {\r\n valves && valves.remove();\r\n }\r\n }\r\n }\r\n if (is_exist === false) {\r\n //PUSH the value in the dropDown\r\n let option_elem = document.createElement('option');\r\n option_elem.text = dimensions[z].VALUE;\r\n option_elem.setAttribute('disabled', '');\r\n option_elem.setAttribute('id', 'valves');\r\n $select.options.add(option_elem);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n });\r\n return (\r\n
\r\n
\r\n
{props.mediaGallery}
\r\n \r\n
\r\n {title}\r\n {_renderSearchName(props.data.product.result)}\r\n {_renderLevelScale(props, props.data.product.result)}\r\n
\r\n {_showPrice(props.data.product.result) && price}\r\n {_renderCurrencyCode(props.data.product.result)}\r\n
\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {configure && _renderConfigure(configure, props)}\r\n {unitOfMeasure}\r\n {props.bulkPurchaseLink}\r\n {/*{description}*/}\r\n {rating}\r\n {/*{getProductDimensions(props.context.actionContext.requestContext, \"PM-102\")}*/}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {quantity && _renderQuantity(quantity)}\r\n {inventoryLabel}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {findInStore && _renderFindInStore(findInStore)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n
\r\n \r\n Find a Dealer\r\n \r\n
\r\n
\r\n {_renderLongFields(props.data.product.result)}\r\n {productAttribute && renderProductAttributes()}\r\n
\r\n
\r\n );\r\n};\r\n\r\n//Loop through the 40+ ExtensionProperties only once (vs 3 times), & then map the 1-3 saved elements to the page.\r\nconst _renderLongFields = (product: SimpleProduct | undefined) => {\r\n if (product !== undefined) {\r\n const _vals: Array = ['ProductDescription', 'ProductFeatures', 'ProductSpecification'];\r\n const _titles: Array = ['Description', 'Features', 'Specifications'];\r\n let _results: JSX.Element[] = []; //create an empty array for stringified HTML\r\n //check for our three sought-after values, and then use the associated title\r\n product.ExtensionProperties?.forEach(element => {\r\n if (_vals.includes(element.Key as string) && element.Value?.StringValue) {\r\n _results.push(_renderCollapse(element.Value.StringValue, _titles[_vals.indexOf(element.Key as string)]));\r\n }\r\n });\r\n return
{_results.map(item => item)}
;\r\n } else {\r\n return <>;\r\n }\r\n};\r\n\r\nconst _renderCollapse = (html: string, title: string) => {\r\n return (\r\n
\r\n

{title}

\r\n
\r\n
\r\n );\r\n};\r\nconst _renderSearchName = (product: SimpleProduct | undefined) => {\r\n let searchName = '';\r\n if (product != undefined) {\r\n product.ExtensionProperties?.forEach(element => {\r\n if (element.Key == 'SearchName' && element.Value?.StringValue != undefined) {\r\n searchName = element.Value?.StringValue;\r\n }\r\n });\r\n }\r\n return

{searchName}

;\r\n};\r\n\r\nconst _renderCurrencyCode = (product: SimpleProduct | undefined) => {\r\n let _currencyCode = '';\r\n if (product != undefined) {\r\n product.ExtensionProperties?.forEach(element => {\r\n if (element.Key == 'CurrencyCode' && element.Value?.StringValue != '' && element.Value?.StringValue != undefined) {\r\n _currencyCode = element.Value?.StringValue;\r\n }\r\n });\r\n }\r\n return {_currencyCode};\r\n};\r\n\r\nconst _renderLevelScale = (props: IBuyboxViewProps, product: SimpleProduct | undefined) => {\r\n let scaleLevel = null;\r\n let scaleClass = null;\r\n if (product != undefined) {\r\n product.ExtensionProperties?.forEach(element => {\r\n if (element.Key == 'LevelId' && element.Value?.StringValue != undefined) {\r\n scaleLevel = element.Value?.StringValue;\r\n scaleClass = element.Value?.StringValue?.toLocaleLowerCase();\r\n }\r\n });\r\n\r\n // Check if Product Sticker is available or not\r\n if(scaleLevel != null)\r\n {\r\n return
{scaleLevel}
;\r\n }\r\n else{\r\n return null;\r\n }\r\n //end\r\n\r\n } else {\r\n return
{scaleLevel}
;\r\n }\r\n};\r\n\r\nconst _showPrice = (product: SimpleProduct | undefined) => {\r\n let showPrice: boolean = true;\r\n if (product != undefined) {\r\n product.ExtensionProperties?.forEach(element => {\r\n if (element.Key == 'IsSupressPrice' && element.Value?.BooleanValue == true) {\r\n showPrice = false;\r\n }\r\n });\r\n }\r\n return showPrice;\r\n};\r\n\r\nconst _renderAddToCart = (addToCart: IBuyboxAddToCartViewProps): JSX.Element => {\r\n const { ContainerProps, errorBlock, button } = addToCart;\r\n\r\n return (\r\n \r\n {errorBlock}\r\n {button}\r\n \r\n );\r\n};\r\n\r\nconst _renderAddToOrderTemplate = (addToOrderTemplate: IBuyboxAddToOrderTemplateViewProps): JSX.Element => {\r\n const { ContainerProps, errorBlock, button } = addToOrderTemplate;\r\n\r\n return (\r\n \r\n {errorBlock}\r\n {button}\r\n \r\n );\r\n};\r\n\r\nconst _renderAddToWishlist = (addToWishlist: IBuyboxAddToWishlistViewProps): JSX.Element => {\r\n const { ContainerProps, errorBlock, button } = addToWishlist;\r\n\r\n return (\r\n \r\n {errorBlock}\r\n {button}\r\n \r\n );\r\n};\r\n\r\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps, parent_props: IBuyboxViewProps): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n return (\r\n \r\n {/* {dropdowns.map(_renderConfigureDropdown, productDimension)} */}\r\n {dropdowns.map((dropdown, i) => {\r\n return _renderConfigureDropdown(dropdown, parent_props, i);\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) return undefined;\r\n return (\r\n <>\r\n {socialShare[0]}\r\n
\r\n \r\n );\r\n};\r\n\r\nconst _renderConfigureDropdown = (\r\n dropdown: IBuyboxProductConfigureDropdownViewProps,\r\n parent_props: IBuyboxViewProps,\r\n counter: any\r\n): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n let productDimensionColor = '';\r\n let productDimensionSize = '';\r\n let productDimensionType = '';\r\n let product = parent_props.data.product.result;\r\n if (product != undefined) {\r\n product.ExtensionProperties?.forEach(element => {\r\n if (element.Key == 'DimensionOne' && element.Value?.StringValue != undefined) {\r\n productDimensionColor = element.Value?.StringValue;\r\n }\r\n if (element.Key == 'DimensionThree' && element.Value?.StringValue != undefined) {\r\n productDimensionSize = element.Value?.StringValue;\r\n }\r\n if (element.Key == 'DimensionFour' && element.Value?.StringValue != undefined) {\r\n productDimensionType = element.Value?.StringValue;\r\n }\r\n });\r\n return (\r\n \r\n \r\n {counter == 0 && productDimensionColor != ''\r\n ? productDimensionColor\r\n : counter == 1 && productDimensionSize != ''\r\n ? productDimensionSize\r\n : counter == 2 && productDimensionType != ''\r\n ? productDimensionType\r\n : heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n {counter == 0 && productDimensionColor != ''\r\n ? productDimensionColor\r\n : counter == 1 && productDimensionSize != ''\r\n ? productDimensionSize\r\n : counter == 2 && productDimensionType != ''\r\n ? productDimensionType\r\n : heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n }\r\n};\r\n\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n const { ContainerProps, storeSelector, heading, description, errors, button, modal, productPickupOptionList } = findInStore;\r\n return (\r\n \r\n {storeSelector}\r\n {heading}\r\n {productPickupOptionList}\r\n {description}\r\n {errors}\r\n {button}\r\n {modal}\r\n \r\n );\r\n};\r\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {input}\r\n \r\n );\r\n};\r\n\r\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\r\n return (\r\n \r\n {heading}\r\n {input}\r\n \r\n );\r\n};\r\n\r\nconst _renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\r\n const { ContainerProps, errors, input } = shopSimilarItem;\r\n return (\r\n \r\n {errors}\r\n {input}\r\n \r\n );\r\n};\r\nexport default BuyboxView;\r\n","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IHeaderProps } from '../definition-extensions/header.ext.props.autogenerated';\r\nimport { IHeaderViewProps } from '@msdyn365-commerce-modules/header/src/modules/header/./header';\r\n\r\nconst headerView: React.FC> = (props: IHeaderViewProps & IHeaderProps<{}>) => {\r\n const {\r\n HeaderTag,\r\n HeaderContainer,\r\n HeaderTopBarContainer,\r\n MobileMenuContainer,\r\n MobileMenuBodyContainer,\r\n MobileMenuLinksContainer,\r\n Divider\r\n } = props;\r\n return (\r\n \r\n \r\n \r\n {props.navIcon}\r\n {props.logo}\r\n {_renderReactFragment(props.search)}\r\n {props.preferredStore}\r\n {_renderDesktopAccountBlock(props)}\r\n {props.wishListIconDesktop}\r\n \r\n {props.cartIcon}\r\n {_renderReactFragment(props.siteOptions)}\r\n \r\n \r\n \r\n { props.MobileMenuHeader }\r\n {_renderReactFragment(props.menuBar)}\r\n \r\n { props.accountLinks ? props.accountLinks.map(link => link) : false }\r\n { props.siteOptions }\r\n { props.wishListIconMobile }\r\n { props.signInLink }\r\n { props.signOutLink }\r\n \r\n \r\n \r\n {_renderReactFragment(props.menuBar)}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction _renderDesktopAccountBlock(props: IHeaderViewProps): JSX.Element | null {\r\n const {\r\n AccountInfoDropdownParentContainer,\r\n AccountInfoDropdownPopoverConentContainer,\r\n accountInfoDropdownButton,\r\n signOutLink,\r\n signInLink,\r\n accountLinks\r\n } = props;\r\n\r\n if (AccountInfoDropdownParentContainer) {\r\n if (AccountInfoDropdownPopoverConentContainer) {\r\n return (\r\n \r\n {accountInfoDropdownButton}\r\n \r\n { accountLinks ? accountLinks.map(link => link) : false }\r\n {signOutLink}\r\n \r\n \r\n );\r\n } else if (signInLink) {\r\n return (\r\n \r\n {signInLink}\r\n \r\n );\r\n }\r\n }\r\n props.context.telemetry.error('Header content is empty, module wont render.');\r\n return null;\r\n}\r\n\r\nfunction _renderReactFragment(items: React.ReactNode[]): JSX.Element | null {\r\n return (\r\n <>\r\n {items && items.length > 0 ? items.map((slot: React.ReactNode, index: number) => {\r\n return (\r\n {slot}\r\n );\r\n }) : null}\r\n \r\n );\r\n}\r\n\r\nexport default headerView;\r\n","import {Node} from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport {\r\n\tIBuyboxAddToCartViewProps,\r\n\tIBuyboxAddToOrderTemplateViewProps,\r\n\tIBuyboxAddToWishlistViewProps,\r\n\tIBuyboxKeyInPriceViewProps,\r\n\tIBuyboxProductConfigureDropdownViewProps,\r\n\tIBuyboxProductConfigureViewProps,\r\n\tIBuyboxProductQuantityViewProps,\r\n\tIBuyboxShopSimilarLookViewProps\r\n} from '@msdyn365-commerce-modules/buybox/src/common';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./buybox';\r\nimport {\r\n\tIBuyboxFindInStoreViewProps\r\n} from '@msdyn365-commerce-modules/buybox/src/modules/buybox/components/buybox-find-in-store';\r\nimport { AttributeValue, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport {getAttributeValuesAsync} from \"@msdyn365-commerce/retail-proxy/dist/DataActions/ProductsDataActions.g\";\r\nimport {ReactNode, useState} from 'react';\r\n\r\n\r\n/* Private Functions */\r\nconst _getExtensionProperties = (product: SimpleProduct|undefined): null|{} => {\r\n\tif (product === undefined || !product.ExtensionProperties) return null;\r\n\t//we have product data, proceed to extract the usable attributes\r\n\tlet count = 0;\r\n\tlet final = {};\t\t//final return for our data\r\n\r\n\twhile (product.ExtensionProperties && product.ExtensionProperties[count] !== undefined){\r\n\t\tconst ep_key = product.ExtensionProperties[count].Key;\r\n\t\tlet ep_val: any;\r\n\r\n\t\tObject.keys(product.ExtensionProperties[count].Value!).forEach((item) => {\r\n\t\t\tif (product.ExtensionProperties![count].Value![item] !== undefined){\r\n\t\t\t\tep_val = product.ExtensionProperties![count].Value![item];\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (ep_key && ep_val) final[ep_key] = ep_val;\t//false switches don't pass this\r\n\t\tcount++;\r\n\t}\r\n\treturn final;\r\n}\r\nconst _renderSearchName = (ExtensionProps: {}|null): JSX.Element|null => {\r\n\tif (ExtensionProps && ExtensionProps[\"SearchName\"]){\r\n\t\treturn

{ExtensionProps[\"SearchName\"]}

;\r\n\t} else {\r\n\t\treturn null\r\n\t}\r\n}\r\nconst _renderLevelScale = (ExtensionProps: {}|null): JSX.Element|null => {\r\n\tif (ExtensionProps && ExtensionProps[\"LevelId\"]){\r\n\t\treturn (\r\n\t\t\t
{ExtensionProps[\"LevelId\"]}
\r\n\t\t)\r\n\t} else {\r\n\t\treturn null\r\n\t}\r\n};\r\nconst _formatPricing = (PriceRaw:number|null, ExtensionProps: {}|null, price: ReactNode|undefined, channelId:number) => {\r\n\t//if there's no price object, price number, EP, or Suppress flag is here, show nothing\r\n\tif(!price || !PriceRaw) return null;\r\n\tif(ExtensionProps && ExtensionProps['IsSupressPrice']) return null;\r\n\tif([5637145352,5637145370].includes(channelId)){\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t
{price}
\r\n\t\t\t\t

Price includes VAT

\r\n\t\t\t\r\n\t\t)\r\n\t} else {\r\n\t\treturn
{price}
\r\n\t}\r\n}\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element|null => {\r\n\tif (!socialShare || socialShare.length === 0) return null;\r\n\treturn (<>\r\n\t\t{socialShare[0]}\r\n\t\t
\r\n\t);\r\n};\r\nconst _renderConfigure = (configure: IBuyboxProductConfigureViewProps, ExtensionProps: Object|null): JSX.Element => {\r\n\tconst {ContainerProps, dropdowns} = configure;\r\n\treturn (\r\n\t\t\r\n\t\t\t{dropdowns.map((dropdown: IBuyboxProductConfigureDropdownViewProps, i: number) => {\r\n\t\t\t\treturn _renderConfigureDropdown(dropdown, ExtensionProps, i);\r\n\t\t\t})}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderConfigureDropdown = (\r\n\tdropdown: IBuyboxProductConfigureDropdownViewProps, ExtensionProps: Object|null, count: number,\r\n): JSX.Element => {\r\n\tconst dimensionOverrideKeys = ['DimensionOne', 'DimensionThree', 'DimensionFour'];\r\n\tconst {ContainerProps, LabelContainerProps, heading, errors, select} = dropdown;\r\n\t//if we have an overide use it, otherwise use the default\r\n\tconst headingLabel = (ExtensionProps && ExtensionProps[dimensionOverrideKeys[count]]) || heading;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{headingLabel}{errors}\r\n\t\t\t{select}\r\n\t\t\r\n\t);\r\n}\r\nconst _renderKeyInPrice = (keyInPrice: IBuyboxKeyInPriceViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, input } = keyInPrice;\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}\r\n\t\t\t{input}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n\tconst { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\treturn (\r\n\t\t\r\n\t\t\t{heading}{errors}\r\n\t\t\t{input}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderAddToCart = (addToCart: IBuyboxAddToCartViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToCart;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderAddToOrderTemplate = (addToOrderTemplate: IBuyboxAddToOrderTemplateViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToOrderTemplate;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderAddToWishlist = (addToWishlist: IBuyboxAddToWishlistViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errorBlock, button } = addToWishlist;\r\n\treturn {errorBlock} {button};\r\n};\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n\tconst {\r\n\t\tContainerProps,\r\n\t\tstoreSelector,\r\n\t\theading,\r\n\t\tdescription,\r\n\t\terrors,\r\n\t\tbutton,\r\n\t\tmodal,\r\n\t\tproductPickupOptionList\r\n\t} = findInStore;\r\n\treturn (\r\n\t\t\r\n\t\t\t{storeSelector} {heading} {productPickupOptionList} {description} {errors} {button} {modal}\r\n\t\t\r\n\t);\r\n};\r\nconst _renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\r\n\tconst { ContainerProps, errors, input } = shopSimilarItem;\r\n\treturn {errors} {input};\r\n};\r\nconst _renderHtmlField = (fieldKey:string, ExtensionProps:Object|null):JSX.Element|null => {\r\n\tif(ExtensionProps === null) return null;\r\n\tif(ExtensionProps[fieldKey]){\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t

{fieldKey.replace('Product', '')}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t)\r\n\t} else {\r\n\t\treturn null;\r\n\t}\r\n}\r\n\r\n//Injection of deleted dimensions\r\nfunction inject_dimensions(dimensions: any, type_dimension: any) {\r\n\tlet dropDowns = document.getElementsByClassName('ms-buybox__dropdown');\r\n\t//Get the dropdown html by using ID\r\n\tconst valves = document.getElementById('valves');\r\n\tconst material = document.getElementById('material');\r\n\r\n\tfor (let i = 0; i < dropDowns.length; i++) {\r\n\t\tlet dropDown_for = dropDowns[i].firstElementChild?.getAttribute('for');\r\n\t\tlet dimension_type;\r\n\t\tif (dropDown_for != null) {\r\n\t\t\tlet search_against = 'ms-buybox__dropown-quantity-input-';\r\n\t\t\tdimension_type = dropDown_for.slice(dropDown_for.indexOf(search_against) + search_against.length);\r\n\t\t\tif (dimensions !== undefined && dimension_type == type_dimension.toString()) {\r\n\t\t\t\tlet $element = dropDowns[i].lastChild as HTMLDivElement;\r\n\t\t\t\tif ($element.classList.contains('msc-swatch-container')) {\r\n\t\t\t\t\t//SWATCH\r\n\t\t\t\t\tlet $options = $element.children as HTMLCollection;\r\n\t\t\t\t\tfor (let z = 0; z < dimensions.length; z++) {\r\n\t\t\t\t\t\tlet is_exist = false;\r\n\t\t\t\t\t\tfor (let y = 0; y < $options.length; y++) {\r\n\t\t\t\t\t\t\tif ($options[y].textContent == dimensions[z].VALUE) {\r\n\t\t\t\t\t\t\t\tis_exist = true;\r\n\t\t\t\t\t\t\t\t//Remove duplicate\r\n\t\t\t\t\t\t\t\tif ($options[y].textContent == material?.textContent) {\r\n\t\t\t\t\t\t\t\t\tmaterial && material.remove();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (!is_exist) {\r\n\t\t\t\t\t\t\t//PUSH the value\r\n\t\t\t\t\t\t\tlet option_elem = document.createElement('button');\r\n\t\t\t\t\t\t\toption_elem.textContent = dimensions[z].VALUE;\r\n\t\t\t\t\t\t\toption_elem.setAttribute('disabled', '');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item__unselected');\r\n\t\t\t\t\t\t\toption_elem.classList.add('msc-swatch-container__item__uncolored');\r\n\t\t\t\t\t\t\toption_elem.setAttribute('id', 'material');\r\n\t\t\t\t\t\t\t$element.appendChild(option_elem);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t//DROPDOWN\r\n\t\t\t\t\tlet $select = dropDowns[i].lastChild as HTMLSelectElement;\r\n\t\t\t\t\tlet $options = $select.options as HTMLOptionsCollection;\r\n\t\t\t\t\tfor (let z = 0; z < dimensions.length; z++) {\r\n\t\t\t\t\t\tlet is_exist = false;\r\n\t\t\t\t\t\tfor (let y = 0; y < $options.length; y++) {\r\n\t\t\t\t\t\t\tif ($options[y].text == dimensions[z].VALUE) {\r\n\t\t\t\t\t\t\t\tis_exist = true;\r\n\t\t\t\t\t\t\t\t//Remove duplicate\r\n\t\t\t\t\t\t\t\tif ($options[y].text == valves?.textContent) {\r\n\t\t\t\t\t\t\t\t\tvalves && valves.remove();\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (!is_exist) {\r\n\t\t\t\t\t\t\t//PUSH the value in the dropDown\r\n\t\t\t\t\t\t\tlet option_elem = document.createElement('option');\r\n\t\t\t\t\t\t\toption_elem.text = dimensions[z].VALUE;\r\n\t\t\t\t\t\t\toption_elem.setAttribute('disabled', '');\r\n\t\t\t\t\t\t\toption_elem.setAttribute('id', 'valves');\r\n\t\t\t\t\t\t\t$select.options.add(option_elem);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n/* Main Exported Function */\r\nconst BuyboxView: React.FC = props => {\r\n\t/* Only destructuring repeated or complicated props\r\n\t * Totally removed MediaGalleryContainerProps & description (not using OOtB) */\r\n\tconst {\r\n\t\taddToCart,\r\n\t\taddToOrderTemplate,\r\n\t\taddToWishlist,\r\n\t\tconfigure,\r\n\t\tfindInStore,\r\n\t\tkeyInPrice,\r\n\t\tprice,\r\n\t\tProductInfoContainerProps,\r\n\t\tquantity,\r\n\t\tshopSimilarLook,\r\n\t\tshopSimilarDescription,\r\n\t} = props;\r\n\r\n\tconst ExtensionProps = _getExtensionProperties(props.data.product.result);\r\n\t//Attribute Function Chain\r\n\tconst [productAttribute, setProductAttribute] = useState([]);\r\n\tconst _getAttributesAsync = async (props: IBuyboxViewProps) => {\r\n\t\tconst getAttribute:AttributeValue[] = await getAttributeValuesAsync(\r\n\t\t\t{ callerContext: props.context.actionContext },\r\n\t\t\tprops.data.product.result?.RecordId!,\r\n\t\t\tprops.context.request.apiSettings.channelId,\r\n\t\t\tprops.context.request.apiSettings.catalogId\r\n\t\t);\r\n\t\tsetProductAttribute(getAttribute);\r\n\t}\r\n\tconst renderProductAttributes = () => {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t

Product Attributes

\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{productAttribute.map(attr => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{attr.TextValue !== '' && (\r\n\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
{attr.Name}{attr.TextValue}
\r\n\t\t\t\r\n\t\t);\r\n\t};\r\n\tconst PriceRaw = ( props.data.product.result?.Price || null);\r\n\r\n\t// Get Attribute Call\r\n\tReact.useEffect(() => {\r\n\t\t_getAttributesAsync(props);\r\n\t\tprops.data.productDimensions.result?.forEach(dimension => {\r\n\t\t\tlet dimension_type = dimension.DimensionTypeValue;\r\n\t\t\tlet dimension_values: any = '';\r\n\t\t\tdimension.ExtensionProperties?.forEach(value => {\r\n\t\t\t\tif (value.Key == 'AllDimensions') dimension_values = value.Value?.StringValue;\r\n\t\t\t});\r\n\t\t\tif (dimension_values !== '') {\r\n\t\t\t\tdimension_values = JSON.parse(dimension_values);\r\n\t\t\t\tinject_dimensions(dimension_values, dimension_type);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
{props.mediaGallery}
\r\n\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t{props.title}\r\n\t\t\t\t\t\t{_renderSearchName(ExtensionProps)}\r\n\t\t\t\t\t\t{_renderLevelScale(ExtensionProps)}\r\n\t\t\t\t\t\t{_formatPricing(PriceRaw, ExtensionProps, price, props.context.request.apiSettings.channelId)}\r\n\t\t\t\t\t\t{_renderSocialShare(props.slots && props.slots.socialShare)}\r\n\t\t\t\t\t\t{configure && _renderConfigure(configure, ExtensionProps)}\r\n\t\t\t\t\t\t{props.unitOfMeasure}\r\n\t\t\t\t\t\t{props.bulkPurchaseLink}\r\n\t\t\t\t\t\t{/*{description}*/}\r\n\t\t\t\t\t\t{props.rating}\r\n\t\t\t\t\t\t{keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n\t\t\t\t\t\t{quantity && _renderQuantity(quantity)}\r\n\t\t\t\t\t\t{props.inventoryLabel}\r\n\t\t\t\t\t\t{addToCart && _renderAddToCart(addToCart)}\r\n\t\t\t\t\t\t{findInStore && _renderFindInStore(findInStore)}\r\n\t\t\t\t\t\t{addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n\t\t\t\t\t\t{addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n\t\t\t\t\t\t{shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n\t\t\t\t\t\t{shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\tFind a Dealer\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t{['ProductDescription', 'ProductFeatures', 'ProductSpecification'].map((item) => {\r\n\t\t\t\t\treturn _renderHtmlField(item, ExtensionProps)\r\n\t\t\t\t})}\r\n\t\t\t\t{productAttribute && renderProductAttributes()}\r\n\t\t\t
\r\n\t\t
\r\n\t)\r\n};\r\nexport default BuyboxView;","/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IHeaderProps } from '../definition-extensions/header.ext.props.autogenerated';\r\nimport { IHeaderViewProps } from '@msdyn365-commerce-modules/header/src/modules/header/./header';\r\n\r\nconst headerView: React.FC> = (props: IHeaderViewProps & IHeaderProps<{}>) => {\r\n const {\r\n HeaderTag,\r\n HeaderContainer,\r\n HeaderTopBarContainer,\r\n MobileMenuContainer,\r\n MobileMenuBodyContainer,\r\n MobileMenuLinksContainer,\r\n Divider\r\n } = props;\r\n return (\r\n \r\n \r\n \r\n {props.navIcon}\r\n {props.logo}\r\n {_renderReactFragment(props.search)}\r\n {props.preferredStore}\r\n {_renderDesktopAccountBlock(props)}\r\n {props.wishListIconDesktop}\r\n \r\n {props.cartIcon}\r\n {_renderReactFragment(props.siteOptions)}\r\n \r\n \r\n \r\n { props.MobileMenuHeader }\r\n {_renderReactFragment(props.menuBar)}\r\n \r\n { props.accountLinks ? props.accountLinks.map(link => link) : false }\r\n { props.siteOptions }\r\n { props.wishListIconMobile }\r\n { props.signInLink }\r\n { props.signOutLink }\r\n \r\n \r\n \r\n {_renderReactFragment(props.menuBar)}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction _renderDesktopAccountBlock(props: IHeaderViewProps): JSX.Element | null {\r\n const {\r\n AccountInfoDropdownParentContainer,\r\n AccountInfoDropdownPopoverConentContainer,\r\n accountInfoDropdownButton,\r\n signOutLink,\r\n signInLink,\r\n accountLinks\r\n } = props;\r\n\r\n if (AccountInfoDropdownParentContainer) {\r\n if (AccountInfoDropdownPopoverConentContainer) {\r\n return (\r\n \r\n {accountInfoDropdownButton}\r\n \r\n { accountLinks ? accountLinks.map(link => link) : false }\r\n {signOutLink}\r\n \r\n \r\n );\r\n } else if (signInLink) {\r\n return (\r\n \r\n {signInLink}\r\n \r\n );\r\n }\r\n }\r\n props.context.telemetry.error('Header content is empty, module wont render.');\r\n return null;\r\n}\r\n\r\nfunction _renderReactFragment(items: React.ReactNode[]): JSX.Element | null {\r\n return (\r\n <>\r\n {items && items.length > 0 ? items.map((slot: React.ReactNode, index: number) => {\r\n return (\r\n {slot}\r\n );\r\n }) : null}\r\n \r\n );\r\n}\r\n\r\nexport default headerView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILoyaltySignUpViewProps } from './loyalty-sign-up';\n\nconst LoyaltySignUpView: React.FC = props => {\n const {\n LoyaltySignUp,\n heading,\n memberHeading,\n signInLink,\n signUpText,\n signUpButton,\n detailsLink,\n termsLink,\n loading,\n infoMessageBar\n } = props;\n\n if (loading) {\n props.context.telemetry.error('LoyaltySignUp data is empty, module wont render');\n return null;\n }\n\n return (\n \n {infoMessageBar}\n {memberHeading}\n {heading}\n {detailsLink}\n {signUpText}\n {termsLink}\n {signUpButton}\n {signInLink}\n \n );\n};\n\nexport default LoyaltySignUpView;\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 { ICheckoutCustomerAccountPaymentViewProps, IAccountPaymentEditViewForm, IAccountPaymentSummaryViewForm } from './index';\n\nexport const SummaryForm: React.FC = ({\n formProps,\n label,\n paymentAmount,\n addPaymentButton,\n appliedLine,\n bottomBorder\n}) => (\n \n <>\n {label}\n {paymentAmount}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nexport const EditForm: React.FC = ({\n formProps,\n inputLabel,\n inputAmount,\n addPaymentButton,\n customerName,\n customerAccountNumber,\n customerSince,\n accountCredit,\n alert,\n accountDetails,\n appliedLine,\n bottomBorder\n}) => (\n \n <>\n {customerName}\n {customerAccountNumber}\n {customerSince}\n {accountCredit}\n {accountDetails}\n {inputLabel}\n {alert}\n {inputAmount}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nconst CheckoutCustomerAccountView: React.FC = props => {\n const { checkoutCustomerAccount, checkoutErrorRef, summaryView, editView, moduleState, alert } = props;\n return (\n \n {alert}\n {moduleState.isReady && summaryView && }\n {!moduleState.isReady && editView && }\n \n );\n};\n\nexport default CheckoutCustomerAccountView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node, Waiting } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n ICheckoutViewProps,\n ILineItem,\n ILineItemDeliveryGroup,\n ILineItems,\n IOrderSummary,\n IPickUpAtStore,\n IEmailDelivery,\n IInvoicePaymentSummary\n} from './index';\n\nexport const PickUpAtStoreComponent: React.FC = ({ PickUpAtStore, label, location }) => (\n \n {label}\n {location}\n \n);\n\nexport const EmailDeliveryComponent: React.FC = ({ EmailDelivery, label }) => {label};\n\nexport const LineItemComponent: React.FC = ({ LineItem, item, pickUpAtStore, emailDelivery }) => (\n \n {item}\n {pickUpAtStore && }\n {emailDelivery && }\n \n);\n\nexport const LineItemGroupComponent: React.FC = ({ LineItemDeliveryGroup, LineItemList, heading, lineItems }) => (\n \n {heading}\n \n {lineItems.map(lineItem => (\n \n ))}\n \n \n);\n\nexport const LineItemGroupComponentWithMultiplePickUp: React.FC = ({\n LineItemDeliveryGroup,\n LineItemList,\n heading,\n lineItems,\n lineItemWraper,\n lineItemWraperIcon\n}) => (\n \n {lineItemWraperIcon}\n {lineItemWraper}\n {heading}\n \n {lineItems.map(lineItem => (\n \n ))}\n \n \n);\n\nexport const LineItemComponentWithMultiplePickUp: React.FC = ({ LineItem, item, pickUpAtStore, emailDelivery }) => (\n \n {item}\n {emailDelivery && }\n \n);\n\nexport const PickUpAtStoreComponentWithMultiplePickUp: React.FC = ({ PickUpAtStore, label, location }) => (\n \n {label}\n {location}\n \n);\n\nexport const LineItemsComponent: React.FC = ({\n LineItems,\n Header,\n heading,\n editLink,\n itemsForPickup,\n itemsForShip,\n itemsForEmail,\n itemsGroupWithMulitplePickupMode\n}) => (\n \n \n {heading}\n {editLink}\n \n {itemsGroupWithMulitplePickupMode === undefined && itemsForPickup && }\n {itemsGroupWithMulitplePickupMode === undefined && itemsForEmail && }\n {itemsGroupWithMulitplePickupMode === undefined && itemsForShip && }\n {itemsGroupWithMulitplePickupMode !== undefined\n ? itemsGroupWithMulitplePickupMode.map((item, index) => {\n return ;\n })\n : null}\n \n);\n\nconst OrderSummaryComponent: React.FC = ({ heading, lines }) => (\n
\n {heading}\n
\n {lines && (\n <>\n {lines.subtotal}\n {lines.shipping}\n {lines.otherCharge}\n {lines.tax}\n {lines.totalDiscounts}\n {lines.loyalty}\n {lines.customerAccount}\n {lines.giftCard}\n {lines.orderTotal}\n \n )}\n
\n
\n);\n\nconst PaymentSummaryComponent: React.FC = ({ heading, lines }) => (\n
\n {heading}\n
\n {lines && (\n <>\n {lines.invoices}\n {lines.giftCard}\n {lines.loyalty}\n {lines.orderTotal}\n \n )}\n
\n
\n);\n\nconst CheckoutView: React.FC = props => {\n const {\n isPaymentVerificationRedirection,\n shouldEnableSinglePaymentAuthorizationCheckout,\n canShow,\n checkoutProps,\n headerProps,\n hasSalesOrder,\n hasInvoiceLine,\n bodyProps,\n mainProps,\n mainControlProps,\n sideProps,\n sideControlFirstProps,\n sideControlSecondProps,\n termsAndConditionsProps,\n orderConfirmation,\n loading,\n alert,\n title,\n guidedForm,\n orderSummary,\n invoicePaymentSummary,\n lineItems,\n placeOrderButton,\n termsAndConditions,\n keepShoppingButton,\n checkoutExpressPaymentContainer,\n checkoutErrorRef\n } = props;\n\n return (\n \n {!hasSalesOrder && !checkoutExpressPaymentContainer && {title}}\n {!hasSalesOrder && isPaymentVerificationRedirection && shouldEnableSinglePaymentAuthorizationCheckout && !alert && !loading && (\n \n )}\n {!hasSalesOrder && (\n \n {loading}\n {alert}\n {canShow && (\n <>\n \n {checkoutExpressPaymentContainer}\n {checkoutExpressPaymentContainer && {title}}\n {guidedForm}\n {termsAndConditions}\n \n {placeOrderButton}\n {keepShoppingButton}\n \n \n \n {!hasInvoiceLine\n ? orderSummary && \n : invoicePaymentSummary && }\n \n {termsAndConditions}\n {placeOrderButton}\n {keepShoppingButton}\n \n {lineItems && }\n \n {termsAndConditions}\n {placeOrderButton}\n {keepShoppingButton}\n \n \n \n )}\n \n )}\n {hasSalesOrder && orderConfirmation}\n \n );\n};\n\nexport default CheckoutView;\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 { 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\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","/*!\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 { 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\n const contentBlockLinks = links && ArrayExtensions.hasElements(links) && (\n \n );\n const contentBlockText = paragraph && (\n \n );\n\n let contentBlockImageSettings: Msdyn365.IImageSettings | undefined;\n\n if (image && image.imageSettings && !image.imageSettings.backgroundColor && this.props.config.backgroundColor) {\n contentBlockImageSettings = {\n ...image?.imageSettings,\n backgroundColor: this.props.config.backgroundColor\n };\n } else {\n contentBlockImageSettings = image?.imageSettings;\n }\n\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings ?? {},\n imageSettings: contentBlockImageSettings\n };\n\n const contentBlockImage = (\n \n );\n\n const contentBlockContainerStyle: React.CSSProperties | undefined = this.props.config.backgroundColor\n ? { backgroundColor: this.props.config.backgroundColor }\n : undefined;\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 style: contentBlockContainerStyle\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\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 MsDyn365 from '@msdyn365-commerce/core';\nimport { ICartlinesViewProps, ICartResources, ICartViewProps, IOrderSummaryErrors } from '@msdyn365-commerce-modules/cart';\nimport { ICartLineItemViewProps } from '@msdyn365-commerce-modules/cart/dist/types/modules/cart/components/cart-line-items-promotion';\nimport { IInvoiceSummaryLines } from '@msdyn365-commerce-modules/invoice-payment-summary';\nimport { IOrderSummaryLines } from '@msdyn365-commerce-modules/order-summary-utilities';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n Button,\n getPayloadObject,\n getTelemetryAttributes,\n INodeProps,\n ITelemetryContent,\n Node,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst CartView: React.FC = (props: ICartViewProps) => (\n
\n {props.title}\n {props.promotionOptions && _renderPromotions(props.promotionOptions)}\n {props.cart?.hasInvoiceLine || props.multiplePickUpEnabled ? (\n _renderCartLinesGroup(props, props.resources)\n ) : (\n \n {_renderCartlines(\n props.cartlines,\n props.resources,\n props.storeSelector,\n props.backToShoppingButton,\n props.waitingComponent,\n props.cartLoadingStatus,\n props.cartDataResult,\n props.telemetryContent,\n props.multiplePickUpEnabled,\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n \n )}\n {props.orderSummaryHeading && (\n \n {props.orderSummaryHeading}\n {props.cart?.hasInvoiceLine\n ? _renderInvoiceSummarylines(props.invoiceSummaryLineitems, props.OrderSummaryItems, props)\n : _renderOrderSummarylines(props.orderSummaryLineitems, props.OrderSummaryItems, props)}\n {_renderErrorBlock(props.OrderSummaryErrors)}\n {props.checkoutAsSignInUserButton}\n {props.checkoutAsGuestButton}\n {props.expressCheckoutButton && ArrayExtensions.hasElements(props.expressCheckoutButton) ? (\n {props.expressCheckoutButton}\n ) : null}\n {props.backToShoppingButton}\n {props.createTemplateFromCartButton}\n \n )}\n {props.storeSelector}\n
\n);\n\nconst _renderPromotions = (promotions: ICartLineItemViewProps): JSX.Element | undefined => {\n return (\n <>\n \n {promotions.promotionMessage}\n {promotions.promotionSeeAllLink}\n {promotions.promotionDialog}\n \n \n );\n};\n\nconst _renderCartlines = (\n cartLines: ICartlinesViewProps[] | undefined,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n backToShoppingButton: React.ReactNode,\n waitingComponent: React.ReactNode,\n cartLoadingStatus: string,\n cartDataResult: boolean,\n telemetryContent?: ITelemetryContent,\n mulitplePickUp?: boolean,\n emailDeliveryModeCode?: string\n): JSX.Element[] | JSX.Element => {\n const { emptyCartText } = resources;\n\n if (cartLoadingStatus) {\n return <>{cartLoadingStatus};\n }\n if (cartLines) {\n return cartLines.map((cartLine, index) => {\n return (\n
\n {cartLine.cartline}\n {mulitplePickUp ? null : _renderBOPISBlock(cartLine, resources, storeSelector, telemetryContent, emailDeliveryModeCode)}\n {mulitplePickUp ? (\n \n {_renderGroupBOPISBlock(cartLine, resources, storeSelector, telemetryContent, emailDeliveryModeCode)}\n {cartLine.addToOrderTemplate}\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n ) : cartLine.addToOrderTemplate ? (\n \n {cartLine.addToOrderTemplate}\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n ) : (\n <>\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n )}\n
\n );\n });\n }\n return cartDataResult ? (\n
\n

{emptyCartText}

\n {backToShoppingButton}\n
\n ) : (\n <>{waitingComponent}\n );\n};\n\n/**\n * On Toggle function.\n * @param cartLine -Cartline.\n * @param isBopisSelected -Boolean.\n * @returns Set state of button.\n */\nconst onToggleBopisHandler = (cartLine: ICartlinesViewProps, isBopisSelected: boolean) => () => {\n cartLine.pickUpInStore && cartLine.pickUpInStore.callbacks.toggleBopis(!isBopisSelected);\n};\n\n/**\n * On change store function.\n * @param cartLine -CartLine items prop.\n * @returns Set state of button.\n */\nconst onChangeStoreHandler = (cartLine: ICartlinesViewProps) => () => {\n cartLine.pickUpInStore && cartLine.pickUpInStore.callbacks.toggleBopis(true);\n};\n\nconst _renderBOPISBlock = (\n cartLine: ICartlinesViewProps,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n telemetryContent?: ITelemetryContent,\n emailDeliveryModeCode?: string\n): JSX.Element | null => {\n // If it is electronic item cart line, then return null for BOPISBlock.\n if (!cartLine.pickUpInStore || !storeSelector || cartLine.data?.cartline.DeliveryMode === emailDeliveryModeCode) {\n return null;\n }\n\n const {\n shipInsteadDisplayText,\n shipToAddressDisplayText,\n pickItUpDisplayText,\n pickUpAtStoreWithLocationText,\n changeStoreDisplayText\n } = resources;\n\n const isBopisSelected = cartLine.pickUpInStore.isBopisSelected;\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.PickupInStore);\n const puckUpinStoreAttribute = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n \n
\n {isBopisSelected ? (\n {pickUpAtStoreWithLocationText}\n ) : (\n {shipToAddressDisplayText}\n )}\n
\n {isBopisSelected && (\n
\n {cartLine.pickUpInStore.orgUnitName}\n \n
\n )}\n \n {isBopisSelected ? shipInsteadDisplayText : pickItUpDisplayText}\n \n
\n );\n};\n\nconst _renderErrorBlock = (errorData: IOrderSummaryErrors | undefined): JSX.Element | null => {\n if (!errorData || errorData.errors.length === 0) {\n return null;\n }\n return (\n \n {errorData.header}\n {errorData.errors}\n \n );\n};\n\nconst _renderOrderSummarylines = (\n orderSummaryLines: IOrderSummaryLines | undefined,\n OrderSummaryItems: INodeProps,\n props: ICartViewProps\n): JSX.Element | null => {\n if (!orderSummaryLines) {\n return null;\n }\n return (\n \n {props.promoCode}\n {orderSummaryLines.subtotal}\n {orderSummaryLines.shipping}\n {orderSummaryLines.otherCharge}\n {orderSummaryLines.tax}\n {orderSummaryLines.totalDiscounts ? orderSummaryLines.totalDiscounts : null}\n {orderSummaryLines.orderTotal}\n \n );\n};\n\nconst _renderInvoiceSummarylines = (\n invoiceSummaryLines: IInvoiceSummaryLines | undefined,\n OrderSummaryItems: INodeProps,\n props: ICartViewProps\n): JSX.Element | null => {\n if (!invoiceSummaryLines) {\n props.context.telemetry.error('InvoiceSummary content is empty, module wont render');\n return null;\n }\n return (\n \n {invoiceSummaryLines.invoices}\n {invoiceSummaryLines.giftCard}\n {invoiceSummaryLines.loyalty}\n {invoiceSummaryLines.orderTotal}\n \n );\n};\n\nconst _renderCartLinesGroup = (props: ICartViewProps, resources: ICartResources): JSX.Element | undefined => {\n if (props.cartLinesGroup && props.cartLinesGroup.length > 0) {\n return (\n
\n {props.cartLinesGroup.map(cartlines => {\n return (\n
\n {_renderCartLinesGroupHeader(\n cartlines[0],\n props.storeSelector,\n resources,\n _countItems(cartlines),\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n {_renderCartlines(\n cartlines,\n props.resources,\n props.storeSelector,\n props.backToShoppingButton,\n props.waitingComponent,\n props.cartLoadingStatus,\n props.cartDataResult,\n props.telemetryContent,\n props.multiplePickUpEnabled,\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n
\n );\n })}\n
\n );\n }\n return props.cartDataResult ? (\n
\n
\n

{props.resources.emptyCartText}

\n {props.backToShoppingButton}\n
\n
\n ) : (\n <>{props.waitingComponent}\n );\n};\nconst _renderCartLinesGroupHeader = (\n cartLine: ICartlinesViewProps,\n storeSelector: React.ReactNode | undefined,\n resources: ICartResources,\n count: number,\n emailDeliveryModeCode?: string\n) => {\n const isBopisSelected = cartLine.pickUpInStore?.isBopisSelected;\n const { pickUpText, shippingText, emailshippingText, payInvoicesDisplayText } = resources;\n let groupTitle: string;\n\n groupTitle = isBopisSelected ? pickUpText : shippingText;\n if (cartLine.data && cartLine.data.cartline.IsInvoiceLine) {\n groupTitle = payInvoicesDisplayText;\n } else if (!StringExtensions.isNullOrEmpty(emailDeliveryModeCode)) {\n groupTitle = cartLine.data && cartLine.data.cartline.DeliveryMode === emailDeliveryModeCode ? emailshippingText : groupTitle;\n }\n\n return (\n <>\n
\n

\n

{groupTitle}

\n {_renderCartLinesGroupTitle(cartLine, resources, count)}\n
\n \n );\n};\n\nconst _renderGroupBOPISBlock = (\n cartLine: ICartlinesViewProps,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n telemetryContent?: ITelemetryContent,\n emailDeliveryModeCode?: string\n): JSX.Element | null => {\n // If it is electronic item cart line, then return null for GroupBOPISBlock.\n if (!cartLine.pickUpInStore || !storeSelector || cartLine.data?.cartline.DeliveryMode === emailDeliveryModeCode) {\n return null;\n }\n\n const { changeStoreDisplayText, shipInsteadDisplayText, pickItUpDisplayText } = resources;\n\n const isBopisSelected = cartLine.pickUpInStore.isBopisSelected;\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.PickupInStore);\n const puckUpinStoreAttribute = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n <>\n {isBopisSelected ? (\n \n ) : null}\n \n {isBopisSelected ? shipInsteadDisplayText : pickItUpDisplayText}\n \n \n );\n};\n\nconst _countItems = (cartLine: ICartlinesViewProps[]): number => {\n let countItem = 0;\n countItem = cartLine.reduce((count, item) => {\n return count + (item.data?.cartline.Quantity || 0);\n }, 0);\n return countItem;\n};\n\nconst _renderCartLinesGroupTitle = (cartLine: ICartlinesViewProps, resources: ICartResources, count: number) => {\n const isBopisSelected = cartLine.pickUpInStore?.isBopisSelected;\n const { itemLabel, itemsLabel } = resources;\n const suffix = count > 1 ? itemsLabel : itemLabel;\n return (\n <>\n \n {isBopisSelected ? (\n

\n {cartLine.pickUpInStore?.deliveryOption}\n {', '}\n {cartLine.pickUpInStore?.orgUnitName}\n

\n ) : null}\n

\n ({count}\n {` `}\n {suffix})\n

\n
\n \n );\n};\n\nexport default CartView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n IGroup,\n IGroupDelivery,\n IGroups,\n IHeader,\n IList,\n IOrderHistoryViewProps,\n IOrderInformation,\n ISalesOrder\n} from '@msdyn365-commerce-modules/order-management';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport const OrderHistoryOrderInfomation: React.FC = ({\n orderInformationProps,\n salesId,\n receiptId,\n channelName,\n createdDate,\n count,\n amount,\n channelReferenceId\n}) => (\n \n {channelName}\n {salesId}\n {receiptId}\n {createdDate}\n {count}\n {amount}\n {channelReferenceId}\n \n);\n\nexport const OrderHistoryGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n trackingInfo\n}) => (\n \n {heading}\n {count}\n {processing}\n {address}\n {trackingInfo}\n \n);\n\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {salesLines && (\n \n {salesLines.map(salesLine => (\n {salesLine.salesLine}\n ))}\n \n )}\n \n);\n\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group, index) => (\n \n ))}\n \n);\n\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel, extraActions }) => (\n \n {heading}\n {orderCountLabel}\n {extraActions}\n \n);\n\nexport const OrderHistorySalesOder: React.FC = ({\n salesOrderProps,\n orderInfomation,\n groups,\n orderDetailsLink,\n expandProductsButton\n}) => (\n \n {orderInfomation && }\n {groups && }\n {expandProductsButton}\n {orderDetailsLink}\n \n);\n\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders }) => (\n \n {salesOrders && salesOrders.map((salesOrder, index) => )}\n \n);\n\nconst OrderHistoryView: React.FC = ({\n orderHistoryProps,\n header,\n alert,\n loading,\n emptyMessage,\n backToShoppingLink,\n list,\n table,\n moreButton\n}) => (\n \n {header && }\n {loading}\n {alert && (\n <>\n {alert}\n {backToShoppingLink}\n \n )}\n {emptyMessage && (\n \n {emptyMessage}\n {backToShoppingLink}\n \n )}\n {list && }\n {table}\n {moreButton && moreButton}\n \n);\n\nexport default OrderHistoryView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IHistogramItemViewProps, IRatingsHistogramViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst RatingsHistogramView: React.FC = props => {\n const { heading, histogramItems, histogramProps, moduleProps } = props;\n return (\n \n {heading}\n \n {histogramItems.map(item => {\n return histogramItem(item);\n })}\n \n \n );\n};\n\nconst histogramItem = (props: IHistogramItemViewProps) => {\n return (\n \n {props.starLabel}\n {props.bar}\n {props.percentage}\n \n );\n};\n\nexport default RatingsHistogramView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IReviewModalViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\nimport {\n IReportReviewModalViewProps,\n IReviewCardViewProps,\n IReviewsListState,\n IReviewsListViewProps\n} from '@msdyn365-commerce-modules/ratings-reviews/src/modules/reviews-list';\nimport { IModuleProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst ReviewsListview: React.FC = props => {\n const {\n averageRating,\n filterByDropdown,\n moduleProps,\n noReviewsMessage,\n noReviewsWithFilterMessage,\n pageControls,\n refineReviewsProps,\n reportReviewModal,\n reviewsListProps,\n reviewCards,\n reviewCount,\n reviewModal,\n sortByDropdown,\n state,\n userReview\n } = props;\n\n if (!userReview && reviewCards.length === 0 && !state.isFilterApplied) {\n return {noReviewsMessage};\n }\n\n return (\n \n {averageRating}\n {reviewCount}\n \n {sortByDropdown}\n {filterByDropdown}\n \n \n {userReview && buildReviewCard(userReview)}\n {reviewCards.map(review => {\n return buildReviewCard(review);\n })}\n \n {reviewCards.length === 0 && state.isFilterApplied && noReviewsWithFilterMessage}\n {pageControls}\n {createReviewModal(reviewModal, moduleProps)}\n {createReportModal(reportReviewModal, state)}\n \n );\n};\n\nconst buildReviewCard = (props: IReviewCardViewProps) => {\n return (\n \n \n {props.rating}\n {props.name}\n {props.date}\n \n \n \n {props.reviewTitle}\n {props.reviewText}\n \n \n {props.responseName}\n {props.responseDate}\n {props.responseText}\n \n \n {props.ratingHelpfulLabel}\n {props.like}\n {props.dislike}\n {props.edit}\n {props.report}\n \n \n \n );\n};\n\nconst createReviewModal = (props: IReviewModalViewProps, moduleProps: IModuleProps): JSX.Element => {\n return (\n \n {props.modalHeader}\n \n \n \n {props.rating}\n {props.ratingLabel}\n \n \n {props.titleLabel}\n {props.titleInput}\n \n \n {props.textLabel}\n {props.textInput}\n \n {props.privacyPolicyUrl}\n {props.error}\n \n \n \n {props.submitButton}\n {props.cancelButton}\n \n \n );\n};\n\nconst createReportModal = (props: IReportReviewModalViewProps, state: IReviewsListState): JSX.Element => {\n return (\n \n {state.reported ? props.headerSubmitted : props.header}\n \n {state.reported ? props.reportSubmittedMessage : [props.reportMessage, props.radioButtons, props.error]}\n \n {state.reported ? props.succesfulButton : [props.submitButton, props.cancelButton]}\n \n );\n};\n\nexport default ReviewsListview;\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 { IHeader, IMapViewProps } from './map';\n\n/**\n * Render the heading.\n * @param param0 -- Heading props.\n * @param param0.headerProps -- Heading Props.\n * @param param0.heading -- Heading Node.\n * @returns -- Returns the node.\n */\nconst MapHeader: React.FC = ({ headerProps, heading }) => {heading};\n\n/**\n * Renders the map view props.\n * @param param0 -- Map view props.\n * @param param0.ModuleProps -- Module props.\n * @param param0.Header -- Header props.\n * @param param0.MapProps -- Map props.\n * @returns -- Returns the map module.\n */\nconst MapView: React.FC = ({ ModuleProps, Header, MapProps }) => (\n \n {Header && }\n \n \n);\n\nexport default MapView;\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 { IHelp, IOrderSummary, IPaymentMethods } from '../../common';\nimport { IGroup, IGroupDelivery, IGroups } from '../../common/get-groups';\nimport { IOrderInformation } from '../../common/get-order-information';\nimport { ISalesLine } from '../../common/get-sales-line';\nimport { ICheckoutOrderConfirmationViewProps } from './checkout-order-confirmation';\n\nexport const OrderConfirmationOrderInfomation: React.FC = ({\n orderInformationProps,\n receiptEmail,\n createdDate,\n channelReferenceId\n}) => (\n \n {channelReferenceId}\n {receiptEmail}\n \n);\n\nexport const OrderConfirmationSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton }) => (\n {salesLine}\n);\n\nexport const OrderConfirmationGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n pickupDateTimeslot,\n trackingInfo\n}) => (\n \n {heading}\n {count}\n {address}\n {pickupDateTimeslot}\n \n);\n\nexport const OrderConfirmationGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {delivery && }\n {salesLines && (\n \n {salesLines.map(salesLine => (\n \n ))}\n \n )}\n \n);\n\nexport const OrderConfirmationGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group, index) => (\n \n ))}\n \n);\n\nexport const OrderConfirmationOrderSummary: React.FC = ({\n orderSummaryProps,\n heading,\n subtotal,\n shipping,\n tax,\n totalAmount,\n earnedPoints\n}) => (\n \n {heading}\n {subtotal}\n {shipping}\n {tax}\n {totalAmount}\n {earnedPoints}\n \n);\n\nexport const OrderConfirmationPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\n \n {title}\n {methods}\n \n);\n\nexport const OrderConfirmationHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\n \n {needHelpLabel}\n {helpLineNumberLabel}\n {contactNumber}\n \n);\n\nconst OrderConfirmationView: React.FC = ({\n moduleProps,\n heading,\n backToShoppingLink,\n alert,\n loading,\n orderInfomation,\n orderSummary,\n payment,\n help,\n groups\n}) => {\n return (\n \n {heading}\n {alert}\n {loading}\n {orderInfomation && }\n {backToShoppingLink}\n {groups && }\n {orderSummary && }\n {payment && }\n {help && }\n \n );\n};\n\nexport default OrderConfirmationView;\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 { IHelp, IOrderSummary, IPaymentMethods } from '../../common';\nimport { IGroup, IGroupDelivery, IGroups } from '../../common/get-groups';\nimport { IOrderInformation } from '../../common/get-order-information';\nimport { ISalesLine } from '../../common/get-sales-line';\nimport { IOrderConfirmationViewProps } from './order-confirmation';\n\nexport const OrderConfirmationOrderInfomation: React.FC = ({\n orderInformationProps,\n receiptEmail,\n createdDate,\n channelReferenceId\n}) => (\n \n {createdDate}\n {channelReferenceId}\n {receiptEmail}\n \n);\n\nexport const OrderConfirmationSalesLine: React.FC = ({ salesLineProps, salesLine, buyAgainButton }) => (\n {salesLine}\n);\n\nexport const OrderConfirmationGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n trackingInfo,\n pickupDateTimeslot\n}) => (\n \n {heading}\n {address}\n {pickupDateTimeslot}\n \n);\n\nexport const OrderConfirmationGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {delivery && }\n {delivery && delivery.shippingItemsToYou}\n {salesLines && (\n \n {salesLines.map((salesLine: ISalesLine) => (\n \n ))}\n \n )}\n \n);\n\nexport const OrderConfirmationGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group: IGroup, index: number) => (\n \n ))}\n \n);\n\nexport const OrderConfirmationOrderSummary: React.FC = ({\n orderSummaryProps,\n heading,\n subtotal,\n shipping,\n tax,\n totalAmount,\n earnedPoints\n}) => (\n \n {heading}\n {subtotal}\n {shipping}\n {tax}\n {totalAmount}\n {earnedPoints}\n \n);\n\nexport const OrderConfirmationPayment: React.FC = ({ paymentMethodsProps, title, methods }) => (\n \n {title}\n {methods}\n \n);\n\nexport const OrderConfirmationHelp: React.FC = ({ helpProps, needHelpLabel, helpLineNumberLabel, contactNumber }) => (\n \n {needHelpLabel}\n {helpLineNumberLabel}\n {contactNumber}\n \n);\n\nconst OrderConfirmationView: React.FC = ({\n moduleProps,\n heading,\n backToShoppingLink,\n alert,\n loading,\n orderInfomation,\n orderSummary,\n payment,\n help,\n groups\n}) => {\n return (\n \n {heading}\n {alert}\n {loading}\n {orderInfomation && }\n {backToShoppingLink}\n {groups && }\n {payment && }\n {orderSummary && }\n {help && }\n \n );\n};\n\nexport default OrderConfirmationView;\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 { IGroup, IGroupDelivery, IGroups } from '../../common/get-groups';\nimport { IOrderInformation } from '../../common/get-order-information';\nimport { ISalesLine } from '../../common/get-sales-line';\nimport { ISalesOrder } from './components/get-sales-order';\nimport { IHeader, IList, IOrderHistoryViewProps } from './order-history';\n\nexport const OrderHistoryOrderInfomation: React.FC = ({\n orderInformationProps,\n salesId,\n receiptId,\n channelName,\n createdDate,\n count,\n amount,\n channelReferenceId\n}) => (\n \n {channelName}\n {salesId}\n {receiptId}\n {createdDate}\n {count}\n {amount}\n {channelReferenceId}\n \n);\n\nexport const OrderHistoryGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n trackingInfo\n}) => (\n \n {heading}\n {count}\n {processing}\n {address}\n {trackingInfo}\n \n);\n\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {delivery && }\n {salesLines && (\n \n {salesLines.map((salesLine: ISalesLine) => (\n {salesLine.salesLine}\n ))}\n \n )}\n \n);\n\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group: IGroup, index: number) => (\n \n ))}\n \n);\n\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel, extraActions }) => (\n \n {heading}\n {orderCountLabel}\n {extraActions}\n \n);\n\nexport const OrderHistorySalesOder: React.FC = ({\n salesOrderProps,\n orderInfomation,\n groups,\n orderDetailsLink,\n expandProductsButton\n}) => (\n \n {orderInfomation && }\n {groups && }\n {expandProductsButton}\n {orderDetailsLink}\n \n);\n\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders }) => (\n \n {salesOrders && salesOrders.map((salesOrder: ISalesOrder, index: number) => )}\n \n);\n\nconst OrderHistoryView: React.FC = ({\n orderHistoryProps,\n header,\n alert,\n loading,\n emptyMessage,\n backToShoppingLink,\n list,\n table,\n moreButton\n}) => (\n \n {header && }\n {loading}\n {alert && (\n <>\n {alert}\n {backToShoppingLink}\n \n )}\n {emptyMessage && (\n <>\n {emptyMessage}\n {backToShoppingLink}\n \n )}\n {list && }\n {table}\n {moreButton && moreButton}\n \n);\n\nexport default OrderHistoryView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getRichTextHtml } from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\n/**\n * Product specification table row.\n */\nexport interface IProductSpecificationTableRow {\n productName?: string;\n cellData?: React.ReactNode;\n className?: string;\n}\n\n/**\n * Product specification table row component.\n * @param props - For product specification table row.\n * @param props.productName - Product name.\n * @param props.cellData - Cell data.\n * @param props.className - Class name.\n * @returns - Returns JSX element.\n */\nexport const ProductSpecificationTableRow: React.FC = ({ productName, cellData, className }) => (\n \n \n {/* eslint-disable-next-line react/no-danger */}\n \n \n {cellData}\n \n);\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 { AttributeValue } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { Drawer, IModuleProps, INodeProps, Module } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { reaction } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { validateCatalogId } from '@msdyn365-commerce-modules/retail-actions';\nimport { AttributesForSelectedVariantInput, getAttributesForSelectedVariant } from '../..';\nimport { ProductSpecificationTableRow } from './components/product-specification-table-stucture';\nimport { IProductSpecificationData } from './product-specification.data';\nimport { displayStyle, IProductSpecificationProps } from './product-specification.props.autogenerated';\n\n/**\n * Maintain Drawer State.\n */\nexport interface IProductSpecificationState {\n isDrawerOpen: boolean;\n isAdditionalMediaDrawerOpen: boolean;\n drawerListId: number | undefined;\n}\n\n/**\n * Product specification view props.\n */\nexport interface IProductSpecificationViewProps extends IProductSpecificationProps<{}> {\n ProductSpecification: IModuleProps;\n ProductSpecificationTableProps: INodeProps;\n ProductSpecificationTableBodyProps: INodeProps;\n productSpecificationResult?: (JSX.Element | null)[];\n\n title?: React.ReactNode;\n isAccrodion?: boolean;\n handleText?(event: Msdyn365.ContentEditableEvent): void;\n}\n\n/**\n * Check for display style either accordion or table.\n */\nexport interface IProductSpecificationExtentedProps extends IProductSpecificationProps {\n displayStyle?: displayStyle;\n}\n\n/**\n *\n * ProductSpecification component.\n * @extends {React.Component>}\n */\n@observer\nclass ProductSpecification extends React.Component {\n public constructor(props: IProductSpecificationExtentedProps) {\n super(props);\n this.state = {\n isDrawerOpen: false,\n isAdditionalMediaDrawerOpen: false,\n drawerListId: undefined\n };\n }\n\n public async componentDidMount(): Promise {\n const { context, data, telemetry } = this.props;\n const catalogId = Msdyn365.getCatalogId(this.props.context.request);\n validateCatalogId(catalogId);\n reaction(\n () => (data.product.result ? data.product.result.RecordId : null),\n () => {\n if (context && data.product.result) {\n const actionInput = new AttributesForSelectedVariantInput(\n data.product.result.RecordId,\n\n +context.actionContext.requestContext.apiSettings.channelId,\n data.product.result,\n catalogId\n );\n\n getAttributesForSelectedVariant(actionInput, this.props.context.actionContext).catch((error: Error) => {\n telemetry.error(error.message);\n telemetry.debug('Unable to update attributes for Product');\n telemetry.error(error.message);\n });\n }\n }\n );\n }\n\n public shouldComponentUpdate(nextProps: IProductSpecificationExtentedProps, nextState: IProductSpecificationState): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element | null {\n let data: IProductSpecificationData;\n try {\n data = this.props.data;\n } catch (error) {\n this.props.telemetry.error(`Something went wrong ------${error}`);\n return
{error}
;\n }\n\n if (!data.productSpecificationData.result || data.productSpecificationData.result.length <= 0) {\n this.props.telemetry.error('Product specification content is empty, module wont render.');\n return null;\n }\n\n const { heading, className } = this.props.config;\n const { productSpecificationData } = this.props.data;\n const isAccrodion = this.props.config.displayStyle === displayStyle.accordion;\n const viewProps = {\n ...this.props,\n handleText: this.handleHeadingChange,\n ProductSpecification: {\n moduleProps: this.props,\n className: classnames('ms-product-specification', className)\n },\n ProductSpecificationTableProps: isAccrodion\n ? {\n moduleProps: this.props,\n className: classnames('ms-product-specification__accordion', className)\n }\n : {\n className: classnames('ms-product-specification__table table-striped table-bordered'),\n tag: 'table'\n },\n isAccrodion,\n ProductSpecificationTableBodyProps: isAccrodion\n ? {}\n : {\n className: '',\n tag: 'tbody'\n },\n title: heading?.text && (\n \n ),\n productSpecificationResult:\n productSpecificationData.result && (isAccrodion ? this._createDrawerBody(data) : this._createTableBody(data))\n } as IProductSpecificationViewProps;\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Handle Heading Text Change.\n * @param event - Current event.\n */\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent): void => {\n this.props.config.heading!.text = event.target.value;\n };\n\n private _createTableBody(content: IProductSpecificationData): (JSX.Element | null)[] {\n const tableRows = content.productSpecificationData.result!.map((product, index) => {\n const cellData: JSX.Element | null = this._renderProductCell(product);\n\n if (!cellData) {\n return null;\n }\n\n return (\n <>\n \n \n );\n });\n\n if (this.props.context.request.app?.config?.OmniChannelMedia && this.props.data.additionalMediaLocations.result?.length) {\n tableRows.push(this._createAdditionalMediaDrawer());\n }\n\n return tableRows;\n }\n\n private _createDrawerBody(content: IProductSpecificationData): (JSX.Element | null)[] {\n const accordionItemContainer: IModuleProps = {\n moduleProps: this.props,\n className: 'ms-product-specification-title'\n };\n\n const drawers = content.productSpecificationData.result!.map(product => {\n const cellData: JSX.Element | null = this._renderProductCell(product);\n if (!cellData) {\n return null;\n }\n return (\n \n \n
{cellData}
\n \n
\n );\n });\n\n if (this.props.context.request.app?.config?.OmniChannelMedia && this.props.data.additionalMediaLocations.result?.length) {\n drawers.push(this._createAdditionalMediaDrawer());\n }\n\n return drawers;\n }\n private _createAdditionalMediaDrawer(): JSX.Element {\n const accordionItemContainer: IModuleProps = {\n moduleProps: this.props,\n className: 'ms-product-specification-title'\n };\n\n return (\n \n {\n this.setState(prevState => ({\n ...prevState,\n isAdditionalMediaDrawerOpen: !prevState.isAdditionalMediaDrawerOpen\n }));\n }}\n >\n
\n \n
\n \n
\n );\n }\n\n private readonly _toggle = (drawerListId: number | undefined) => (): void => {\n if (this.state.drawerListId !== drawerListId) {\n this.setState({ drawerListId, isDrawerOpen: true });\n } else {\n this.setState({ drawerListId: undefined, isDrawerOpen: false });\n }\n };\n\n private _renderProductCell(product: AttributeValue): JSX.Element | null {\n switch (product.DataTypeValue) {\n case 0: // None\n // Return span here instead of null so the row still shows\n return ;\n case 1: // Currency\n return this._renderCurrencyCell(product);\n case 2: // DateTime\n return this._renderDateTimeCell(product);\n case 3: // Decimal\n return this._renderDecimalCell(product);\n case 4: // Integer\n return this._renderIntegerCell(product);\n case 5: // Text\n return this._renderTextCell(product);\n case 6: // TrueFalse\n return this._renderTrueFalseCell(product);\n case 40: // Video\n this.props.telemetry.warning('Got video specification type, not supported yet so skipping line');\n return null;\n case 41: // Image\n this.props.telemetry.warning('Got image specification type, not supported yet so skipping line');\n return null;\n default:\n this.props.telemetry.warning(`Got unknown specification type ${product.DataTypeValue} so skipping line`);\n return null;\n }\n }\n\n private _renderCurrencyCell(product: AttributeValue): JSX.Element | null {\n if (product.CurrencyValue !== null && product.CurrencyValue !== undefined) {\n return (\n \n {product.CurrencyCode}\n {product.CurrencyValue}\n \n );\n }\n\n return null;\n }\n\n private _renderDateTimeCell(product: AttributeValue): JSX.Element | null {\n if (product.DateTimeOffsetValue?.toUTCString) {\n return {product.DateTimeOffsetValue.toUTCString()};\n }\n\n return null;\n }\n\n private _renderIntegerCell(product: AttributeValue): JSX.Element | null {\n if (product.IntegerValue !== null && product.IntegerValue !== undefined) {\n return {product.IntegerValue};\n }\n\n return null;\n }\n\n private _renderDecimalCell(product: AttributeValue): JSX.Element | null {\n if (product.FloatValue !== null && product.FloatValue !== undefined) {\n return {product.FloatValue};\n }\n\n return null;\n }\n\n private _renderTextCell(product: AttributeValue): JSX.Element | null {\n if (product.TextValue !== null && product.TextValue !== undefined) {\n // eslint-disable-next-line react/no-danger\n return ;\n }\n\n return null;\n }\n\n private _renderTrueFalseCell(product: AttributeValue): JSX.Element | null {\n // TODO 20369885 setting to default value is needed to work around a platform bug where\n // config string value does not get its default value.\n if (product.BooleanValue) {\n return {this.props.resources.trueValueText ? this.props.resources.trueValueText : 'Yes'};\n }\n return {this.props.resources.falseValueText ? this.props.resources.falseValueText : 'No'};\n }\n}\n\nexport default ProductSpecification;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ArrayExtensions, ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IProductSpecificationViewProps } from './product-specification';\n\nconst ProductSpecificationView: React.FC = props => {\n const { ProductSpecification, ProductSpecificationTableProps, ProductSpecificationTableBodyProps, productSpecificationResult } = props;\n const rowdata =\n productSpecificationResult &&\n ArrayExtensions.hasElements(productSpecificationResult) &&\n productSpecificationResult.filter(row => !ObjectExtensions.isNullOrUndefined(row));\n\n return rowdata && ArrayExtensions.hasElements(rowdata) ? (\n \n {props.title}\n \n {rowdata}\n \n \n ) : null;\n};\n\nexport default ProductSpecificationView;\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 { IHistogramItemViewProps } from './component/components';\nimport { IRatingsHistogramViewProps } from './ratings-histogram';\n\nconst RatingsHistogramView: React.FC = props => {\n const { heading, histogramItems, histogramProps, moduleProps } = props;\n\n return (\n \n {heading}\n \n {histogramItems.map(item => {\n return histogramItem(item);\n })}\n \n \n );\n};\n\nconst histogramItem = (props: IHistogramItemViewProps) => {\n return (\n \n {props.starLabel}\n {props.bar}\n {props.percentage}\n \n );\n};\n\nexport default RatingsHistogramView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IModuleProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IReviewModalViewProps } from '../../common/review-modal';\nimport { IReportReviewModalViewProps } from './components/report-review-modal';\nimport { IReviewCardViewProps } from './components/review-card';\nimport { IReviewsListState, IReviewsListViewProps } from './reviews-list';\n\nconst ReviewsListview: React.FC = props => {\n const {\n averageRating,\n filterByDropdown,\n heading,\n moduleProps,\n noReviewsMessage,\n noReviewsWithFilterMessage,\n pageControls,\n refineReviewsProps,\n reportReviewModal,\n reviewsListProps,\n reviewCards,\n reviewCount,\n reviewModal,\n sortByDropdown,\n state,\n userReview\n } = props;\n\n if (!userReview && reviewCards.length === 0 && !state.isFilterApplied) {\n return {noReviewsMessage};\n }\n\n return (\n \n {heading}\n {averageRating}\n {reviewCount}\n \n {sortByDropdown}\n {filterByDropdown}\n \n \n {userReview && buildReviewCard(userReview)}\n {reviewCards.map(review => {\n return buildReviewCard(review);\n })}\n \n {reviewCards.length === 0 && state.isFilterApplied && noReviewsWithFilterMessage}\n {pageControls}\n {createReviewModal(reviewModal, moduleProps)}\n {createReportModal(reportReviewModal, state)}\n \n );\n};\n\nconst buildReviewCard = (props: IReviewCardViewProps) => {\n return (\n \n \n {props.rating}\n {props.name}\n \n \n \n {props.reviewTitle}\n {props.date}\n {props.reviewText}\n \n \n {props.responseName}\n {props.responseDate}\n {props.responseText}\n \n \n {props.ratingHelpfulLabel}\n {props.like}\n {props.dislike}\n {props.edit}\n {props.report}\n \n \n \n );\n};\n\nconst createReviewModal = (props: IReviewModalViewProps, moduleProps: IModuleProps): JSX.Element => {\n return (\n \n {props.modalHeader}\n \n \n \n {props.rating}\n {props.ratingLabel}\n \n \n {props.titleLabel}\n {props.titleInput}\n \n \n {props.textLabel}\n {props.textInput}\n \n {props.privacyPolicyUrl}\n {props.error}\n \n \n \n {props.submitButton}\n {props.cancelButton}\n \n \n );\n};\n\nconst createReportModal = (props: IReportReviewModalViewProps, state: IReviewsListState): JSX.Element => {\n return (\n \n {state.reported ? props.headerSubmitted : props.header}\n \n {state.reported ? props.reportSubmittedMessage : [props.reportMessage, props.radioButtons, props.error]}\n \n {state.reported ? props.succesfulButton : [props.submitButton, props.cancelButton]}\n \n );\n};\n\nexport default ReviewsListview;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IModuleProps, Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IReviewModalViewProps } from '../../common/review-modal';\nimport { IWriteReviewViewProps } from './write-review';\n\nconst WriteReviewView: React.FC = props => {\n const { heading, signInMessage, signInButton, modalToggle, reviewModal, moduleProps } = props;\n const isAuthenticated = props.context.request.user.isAuthenticated;\n return (\n \n {heading}\n {!isAuthenticated ? (\n <>\n {signInMessage}\n {signInButton}\n \n ) : (\n <>\n {modalToggle}\n {createReviewModal(reviewModal, moduleProps)}\n \n )}\n \n );\n};\n\nconst createReviewModal = (props: IReviewModalViewProps, moduleProps: IModuleProps): JSX.Element => {\n return (\n \n {props.modalHeader}\n \n \n \n {props.rating}\n {props.ratingLabel}\n \n \n {props.titleLabel}\n {props.titleInput}\n \n \n {props.textLabel}\n {props.textInput}\n \n {props.privacyPolicyUrl}\n {props.error}\n \n \n \n {props.submitButton}\n {props.cancelButton}\n \n \n );\n};\n\nexport default WriteReviewView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { ISocialShareConfig, ISocialShareProps, orientation } from './social-share.props.autogenerated';\n\nexport interface ISocialShareViewProps extends ISocialShareProps {\n isConsentGiven: boolean;\n SocialShareItemElements: React.ReactNode[];\n SocialShare: IModuleProps;\n SocialShareList: INodeProps;\n SocialShareItem: INodeProps;\n SocialShareItemCustomization: INodeProps;\n}\n\n/**\n *\n * SocialShare component.\n * @extends {React.PureComponent>}\n */\nclass SocialShare extends React.PureComponent> {\n constructor(props: ISocialShareProps) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { slots } = this.props;\n\n if (!slots || !ArrayExtensions.hasElements(slots.socialShareItems)) {\n this.props.context.telemetry.error('No social media is enable for sharing, module wont render');\n return null;\n }\n\n const isConsentGiven =\n this.props.context.request &&\n this.props.context.request.cookies &&\n this.props.context.request.cookies.isConsentGiven &&\n this.props.context.request.cookies.isConsentGiven();\n\n if (!isConsentGiven && !this.props.context.request.params.isEditor) {\n return null;\n }\n\n const viewprops = {\n ...this.props,\n SocialShare: {\n moduleProps: this.props,\n className: classnames('ms-social-share', this.props.config.className)\n },\n SocialShareList: {\n 'data-title': this.props.config.caption,\n className: `ms-social-share-ul ${this.props.config.caption && 'caption'} ${\n this.props.config.orientation === orientation.vertical ? 'vertical' : ''\n }`,\n tag: 'ul',\n role: 'group'\n },\n SocialShareItem: {\n className: 'ms-social-share-li',\n tag: 'li',\n tabIndex: '0',\n role: 'link'\n },\n SocialShareItemElements: slots && slots.socialShareItems.length > 0 && slots.socialShareItems\n };\n\n return this.props.renderView(viewprops) as React.ReactElement;\n }\n}\n\nexport default SocialShare;\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 React, { ReactNode } from 'react';\n\nimport { ISocialShareViewProps } from './social-share';\n\nexport const SocialShareView: React.FC = props => {\n const { SocialShareList, SocialShareItemElements, SocialShareItem, SocialShare } = props;\n if (SocialShareItemElements.length === 0) {\n props.context.telemetry.error('Social media list is empty, module wont render');\n return null;\n }\n return (\n \n \n {SocialShareItemElements.map((SocialShareElement: ReactNode, index: number) => {\n return (\n \n {SocialShareElement}\n \n );\n })}\n \n \n );\n};\n\nexport default SocialShareView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ISelectedStoreViewProps, IStoreSelectorViewProps } from './index';\n\n/**\n * Renders the pickup Delivery options.\n * @param props -- Selected store view props.\n * @returns -- HTML.\n */\nconst renderDeliveryOptions: React.FC = props => {\n const { canSelectLocation, deliveryOptions, pickUpDeliveryOptionButton, pickupModes } = props;\n\n return (\n <>\n {/* eslint-disable-next-line no-nested-ternary -- Need this.*/}\n {canSelectLocation ? (ArrayExtensions.hasElements(deliveryOptions) ? pickupModes : pickUpDeliveryOptionButton) : false}\n \n );\n};\n\n/**\n * Render the selected store.\n * @param props -- Selected store view props.\n * @returns -- HTML.\n */\nconst renderSelectedStore: React.FC = props => {\n const {\n storeDetailsMain,\n storeHeader,\n storeName,\n storeDetailsCloseButton,\n storeDistance,\n storeDetailsAvailabilityContainer,\n productAvailability,\n stockStatus,\n isCurrentLocation,\n currentLocation,\n isPreferredStore,\n preferredStoreButton,\n removePreferredStoreButton\n } = props;\n\n return (\n \n \n {storeDetailsCloseButton}\n {storeName}\n {storeDistance}\n \n \n {productAvailability}\n {stockStatus}\n \n {isCurrentLocation ? currentLocation : renderDeliveryOptions(props)}\n {isPreferredStore ? preferredStoreButton : removePreferredStoreButton}\n \n );\n};\n\n/**\n * Render the body of the popup.\n * @param props -- Store selector view props.\n * @returns -- Returns the html.\n */\nconst renderBody: React.FC = props => {\n const {\n BodyContainerProps,\n locationsMessage,\n search,\n state,\n spinner,\n locationsList,\n noLocationsMessage,\n maps,\n bodyWrapperProps,\n storeResultContainerProps,\n mapContainerProps,\n isMobileView,\n storeDetailsModal,\n selectedLocation\n } = props;\n\n if (isMobileView) {\n return (\n \n {locationsMessage}\n {search}\n \n \n {state.isSearchInProgress ? spinner : <>{locationsList ? locationsList : noLocationsMessage}}\n {maps}\n {selectedLocation && renderSelectedStore(selectedLocation)}\n \n \n \n );\n }\n\n return (\n \n \n \n {locationsMessage}\n {search}\n {state.isSearchInProgress ? spinner : <>{locationsList ? locationsList : noLocationsMessage}}\n \n {maps}\n \n \n );\n};\n\n/**\n * Store selector view props.\n * @param props - Store selector view props.\n * @returns - HTML.\n */\nconst StoreSelectorView: React.FC = props => {\n const {\n FooterContainerProps,\n HeaderContainerProps,\n HeaderProps,\n ModuleProps,\n\n terms\n } = props;\n\n return (\n \n {HeaderProps}\n {renderBody(props)}\n {terms}\n \n );\n};\n\nexport default StoreSelectorView;\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 { ISubscribeViewProps } from './subscribe';\n\n/**\n * Override form action and button action below.\n * @param event - The form event.\n */\nconst onSubmit = (event: React.FormEvent): void => {\n event.preventDefault();\n};\n\n/**\n * View component.\n * @param props - The view properties.\n * @returns - Returns nothing.\n */\nexport const subscribeView: React.FC = props => {\n const { subscribe, subscribeContainer, heading, text, subscribeForm, emailInput, submitButton } = props;\n return (\n \n \n {heading}\n {text}\n \n \n \n {props.submitButtonLabelText}\n \n \n \n \n );\n};\n\nexport default subscribeView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n getTelemetryObject,\n Heading,\n IComponentNodeProps,\n INodeProps,\n ISingleSlideCarouselProps,\n ITelemetryContent,\n NodeTag,\n SingleSlideCarousel\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { ITileListProps, ITitleData } from './tile-list.props.autogenerated';\n\n/**\n * Tile-list view props.\n */\nexport interface ITileListViewProps extends ITileListProps<{}> {\n title?: React.ReactNode;\n tiles: React.ReactNode[];\n tileItemContainer: INodeProps;\n tileListContainer: INodeProps;\n tileListHeading: INodeProps;\n singleSlideCarouselComponentProps: INodeProps;\n}\n\n/**\n *\n * TileList component.\n * @extends {React.PureComponent>}\n */\nexport class TileList 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 private static _createHeading(heading?: ITitleData): React.ReactNode | null {\n if (!heading || !heading.text || StringExtensions.isNullOrWhitespace(heading.text)) {\n return null;\n }\n return ;\n }\n public constructor(props: ITileListProps<{}>) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { resources } = this.props;\n const { title, className } = this.props.config;\n const propsCarousel: IComponentNodeProps = {\n tag: SingleSlideCarousel,\n className: this.props.config.className ?? '',\n flipperPrevLabel: resources.flipperPrevious,\n flipperNextLabel: resources.flipperNext,\n parentId: this.props.id,\n telemetryContent: this._telemetryContent,\n vertical: false\n };\n\n const viewProps = {\n ...this.props,\n title: TileList._createHeading(title),\n singleSlideCarouselComponentProps: propsCarousel,\n tileItemContainer: {\n tag: 'li' as NodeTag,\n className: 'ms-tile__item',\n role: 'listitem'\n },\n tileListContainer: { className: classnames('ms-tile-list', className) },\n tileListHeading: { className: 'ms-tile-list__heading' },\n tiles: this.props.slots.content\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n}\n\nexport default TileList;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { ITileListViewProps } from './tile-list';\n\n/**\n * View component.\n * @param props - The view properties.\n * @returns Returns props.\n */\nexport const tileListView: React.FC = props => {\n const { title, tiles, tileListContainer, tileListHeading, tileItemContainer, singleSlideCarouselComponentProps } = props;\n return (\n \n {title}\n \n {tiles.map((tileItem: ReactNode, index: number) => {\n const keyIndex = `tile-list-item__${index}`;\n return (\n \n {tileItem}\n \n );\n })}\n \n \n );\n};\n\nexport default tileListView;\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 { ICheckoutCustomerAccountPaymentViewProps } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/checkout-customer-account-payment';\nimport { IAccountPaymentEditViewForm } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/components/get-account-payment-form-edit-mode';\nimport { IAccountPaymentSummaryViewForm } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-customer-account-payment/components/get-account-payment-form-summary-mode';\n\nexport const SummaryForm: React.FC = ({\n formProps,\n label,\n addPaymentButton,\n appliedLine,\n bottomBorder,\n paymentAmountInput\n}) => (\n \n <>\n {label}\n {paymentAmountInput}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nexport const EditForm: React.FC = ({\n formProps,\n inputLabel,\n inputAmount,\n addPaymentButton,\n customerName,\n customerAccountNumber,\n customerSince,\n accountCredit,\n alert,\n accountDetails,\n appliedLine,\n bottomBorder\n}) => (\n \n <>\n {customerName}\n {customerAccountNumber}\n {customerSince}\n {accountCredit}\n {accountDetails}\n {inputLabel}\n {alert}\n {inputAmount}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nconst CheckoutCustomerAccountView: React.FC = props => {\n const { checkoutCustomerAccount, checkoutErrorRef, summaryView, editView, moduleState, alert } = props;\n return (\n \n {alert}\n {moduleState.isReady && summaryView && }\n {!moduleState.isReady && editView && }\n \n );\n};\n\nexport default CheckoutCustomerAccountView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n IGroup,\n IGroupDelivery,\n IGroups,\n IHeader,\n IList,\n IOrderHistoryViewProps,\n IOrderInformation,\n ISalesOrder\n} from '@msdyn365-commerce-modules/order-management';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport const OrderHistoryOrderInfomation: React.FC = ({\n orderInformationProps,\n salesId,\n receiptId,\n channelName,\n createdDate,\n count,\n amount,\n channelReferenceId\n}) => (\n \n {channelName}\n {salesId}\n {receiptId}\n {createdDate}\n {count}\n {amount}\n {channelReferenceId}\n \n);\n\nexport const OrderHistoryGroupDelivery: React.FC = ({\n deliveryProps,\n heading,\n count,\n processing,\n address,\n trackingInfo\n}) => (\n \n {heading}\n {count}\n {processing}\n {address}\n {trackingInfo}\n \n);\n\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\n \n {salesLines && (\n \n {salesLines.map(salesLine => (\n {salesLine.salesLine}\n ))}\n \n )}\n \n);\n\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\n \n {groups.map((group, index) => (\n \n ))}\n \n);\n\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel, extraActions }) => (\n \n {heading}\n {orderCountLabel}\n {extraActions}\n \n);\n\nexport const OrderHistorySalesOder: React.FC = ({\n salesOrderProps,\n orderInfomation,\n groups,\n orderDetailsLink,\n expandProductsButton\n}) => (\n \n
\n {orderInfomation.placedBy && {orderInfomation.placedBy}}\n
{orderInfomation && }
\n
\n {groups && }\n {expandProductsButton}\n {orderDetailsLink}\n
\n);\n\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders }) => (\n \n {salesOrders && salesOrders.map((salesOrder, index) => )}\n \n);\n\nconst OrderHistoryView: React.FC = ({\n orderHistoryProps,\n header,\n alert,\n loading,\n emptyMessage,\n backToShoppingLink,\n list,\n table,\n moreButton\n}) => (\n \n {header && }\n {loading}\n {alert && (\n <>\n {alert}\n {backToShoppingLink}\n \n )}\n {emptyMessage && (\n \n {emptyMessage}\n {backToShoppingLink}\n \n )}\n {list && }\n {table}\n {moreButton && moreButton}\n \n);\n\nexport default OrderHistoryView;\n"],"names":["armstrong","React","xmlns","viewBox","fill","d","bach","conn","connselmer","holton","king","leblanc","ludwig","ludwig_musser","musser","scherl","stroke","strokeWidth","strokeMiterlimit","selmer","yanagisawa","BrandHero","render","_this$props$context$r","_this$props$config$im","h1Text","brandLogo","image","className","this","props","config","contentBlockTitle","Msdyn365","tag","text","imageProps","gridSettings","context","request","imageSettings","brandHeroImage","Object","assign","requestContext","preserveImageSpace","editProps","key","moduleType","typeName","imagePropertyName","moduleId","id","layout","msdyn365__moduleLayout","shouldSkipToMainImage","logos","telemetry","error","brandHeroBlockProps","_objectSpread","title","moduleClass","brandHeroContainer","moduleProps","classnames","imageContainer","detailsContainer","renderView","Module","Node","YoutubeEmbed","headingText","headingTag","paragraph","youTubeEmbedTitle","youTubeEmbedText","youTubeEmbedProps","youTubeEmbedContainer","youTubeURL","youTubeTitle","src","frameBorder","allow","referrerPolicy","allowFullScreen","_renderConfigureDropdown","dropdown","ExtensionProps","count","ContainerProps","LabelContainerProps","heading","errors","select","headingLabel","_renderShopSimilarItem","shopSimilarItem","input","addToCart","addToOrderTemplate","addToWishlist","configure","findInStore","keyInPrice","price","ProductInfoContainerProps","quantity","shopSimilarLook","shopSimilarDescription","product","undefined","ExtensionProperties","final","ep_key","Key","ep_val","keys","Value","forEach","item","_getExtensionProperties","data","result","productAttribute","setProductAttribute","useState","_props$data$productDi","async","_props$data$product$r","getAttribute","getAttributeValuesAsync","callerContext","actionContext","RecordId","apiSettings","channelId","catalogId","_getAttributesAsync","productDimensions","dimension","_dimension$ExtensionP","dimension_type","DimensionTypeValue","dimension_values","value","_value$Value","StringValue","JSON","parse","dimensions","type_dimension","dropDowns","document","getElementsByClassName","valves","getElementById","material","i","length","_dropDowns$i$firstEle","dropDown_for","firstElementChild","search_against","slice","indexOf","toString","$element","lastChild","classList","contains","$options","children","z","is_exist","y","textContent","VALUE","remove","option_elem","createElement","setAttribute","add","appendChild","$select","options","inject_dimensions","mediaGallery","_renderSearchName","toLowerCase","_renderLevelScale","_formatPricing","includes","socialShare","slots","_renderConfigure","dropdowns","map","unitOfMeasure","bulkPurchaseLink","rating","_renderKeyInPrice","_renderQuantity","inventoryLabel","errorBlock","button","_renderAddToCart","storeSelector","description","modal","productPickupOptionList","_renderFindInStore","_renderAddToOrderTemplate","_renderAddToWishlist","href","_renderHtmlField","fieldKey","replace","dangerouslySetInnerHTML","__html","attr","TextValue","scope","Name","_renderReactFragment","items","slot","index","HeaderTag","HeaderContainer","HeaderTopBarContainer","MobileMenuContainer","MobileMenuBodyContainer","MobileMenuLinksContainer","Divider","preferredStore","AccountInfoDropdownParentContainer","AccountInfoDropdownPopoverConentContainer","accountInfoDropdownButton","signOutLink","signInLink","accountLinks","link","_renderDesktopAccountBlock","wishListIconDesktop","cartIcon","siteOptions","style","menuBar","navIcon","search","MobileMenuHeader","wishListIconMobile","_renderLongFields","_product$ExtensionPro","_vals","_titles","_results","element","_element$Value","push","_renderCollapse","html","searchName","_product$ExtensionPro2","_element$Value2","_element$Value3","_renderCurrencyCode","_currencyCode","_product$ExtensionPro3","_element$Value4","_element$Value5","_element$Value6","scaleLevel","scaleClass","_product$ExtensionPro4","_element$Value7","_element$Value8","_element$Value9","toLocaleLowerCase","_showPrice","showPrice","_product$ExtensionPro5","_element$Value10","BooleanValue","parent_props","_renderSocialShare","counter","productDimensionColor","productDimensionSize","productDimensionType","_product$ExtensionPro6","_element$Value11","_element$Value13","_element$Value15","_element$Value12","_element$Value14","_element$Value16","recordID","channelID","catelogID","_getAttriAsync","attribute","logo","_props$data$product$r2","PriceRaw","Price","LoyaltySignUp","memberHeading","signUpText","signUpButton","detailsLink","termsLink","loading","infoMessageBar","SummaryForm","_ref","formProps","label","paymentAmount","addPaymentButton","appliedLine","bottomBorder","EditForm","_ref2","inputLabel","inputAmount","customerName","customerAccountNumber","customerSince","accountCredit","alert","accountDetails","checkoutCustomerAccount","checkoutErrorRef","summaryView","editView","moduleState","ref","isReady","PickUpAtStoreComponent","PickUpAtStore","location","EmailDeliveryComponent","EmailDelivery","LineItemComponent","_ref3","LineItem","pickUpAtStore","emailDelivery","LineItemGroupComponent","_ref4","LineItemDeliveryGroup","LineItemList","lineItems","lineItem","LineId","LineItemGroupComponentWithMultiplePickUp","_ref5","lineItemWraper","lineItemWraperIcon","LineItemComponentWithMultiplePickUp","_ref6","PickUpAtStoreComponentWithMultiplePickUp","_ref7","LineItemsComponent","_ref8","LineItems","Header","editLink","itemsForPickup","itemsForShip","itemsForEmail","itemsGroupWithMulitplePickupMode","OrderSummaryComponent","_ref9","lines","subtotal","shipping","otherCharge","tax","totalDiscounts","loyalty","customerAccount","giftCard","orderTotal","PaymentSummaryComponent","_ref10","invoices","isPaymentVerificationRedirection","shouldEnableSinglePaymentAuthorizationCheckout","canShow","checkoutProps","headerProps","hasSalesOrder","hasInvoiceLine","bodyProps","mainProps","mainControlProps","sideProps","sideControlFirstProps","sideControlSecondProps","termsAndConditionsProps","orderConfirmation","guidedForm","orderSummary","invoicePaymentSummary","placeOrderButton","termsAndConditions","keepShoppingButton","checkoutExpressPaymentContainer","Waiting","assembleNode","itemIndex","_item$links","renderHeading","additionalContentHeading","onEdit","event","handleAdditionalTextChange","subtext","renderParagraph","additionalContentParagraphText","links","ctaLink","renderLinks","linkIndex","editableLink","ariaLabel","linkText","linkUrl","destinationUrl","openInNewTab","role","onTextChange","handleAdditionalLinkTextChange","additionalContentItemContainer","additionalContentItemLinks","contentBlockAdditionalContent","additionalContent","reactNodes","additionalContentNode","additionalContentItems","ContentCardLinks","constructor","_mapEditableLinks","linkdata","editableLinks","payLoad","getPayloadObject","telemetryContent","contentAction","etext","attributes","getTelemetryAttributes","btnClass","additionalProperties","onClick","onTelemetryClick","ContentBlock","getTelemetryObject","telemetryPageName","friendlyName","handleTextChange","target","handleParagraphChange","handleLinkTextChange","Number","_heading$tag","imageAriaLabel","contentBlockLinks","ArrayExtensions","hasElements","LinksComponent","contentBlockText","contentBlockImageSettings","backgroundColor","contentBlockImage","contentBlockContainerStyle","contentBlockviewProps","contentBlockContainer","contentBlockAnchorTag","imageLink","_getImageLink","handleAdditionalParagraphChange","handleAdditionalText","handleAdditionalParagraph","additionalContentObject","actionableRegion","renderAdditionalContent","_additionalContent$ad","_renderPromotions","promotions","promotionMessageWrapper","promotionMessage","promotionSeeAllLink","promotionDialog","_renderCartlines","cartLines","resources","backToShoppingButton","waitingComponent","cartLoadingStatus","cartDataResult","mulitplePickUp","emailDeliveryModeCode","emptyCartText","cartLine","MsDyn365","isBrowser","cartline","_renderBOPISBlock","_renderGroupBOPISBlock","onToggleBopisHandler","isBopisSelected","pickUpInStore","callbacks","toggleBopis","onChangeStoreHandler","_cartLine$data","DeliveryMode","shipInsteadDisplayText","shipToAddressDisplayText","pickItUpDisplayText","pickUpAtStoreWithLocationText","changeStoreDisplayText","TelemetryConstant","PickupInStore","puckUpinStoreAttribute","orgUnitName","Button","_renderErrorBlock","errorData","Wrapper","header","_renderOrderSummarylines","orderSummaryLines","OrderSummaryItems","promoCode","_renderInvoiceSummarylines","invoiceSummaryLines","_renderCartLinesGroup","cartLinesGroup","cartlines","_props$context$action2","_props$context$action3","cartlineId","_renderCartLinesGroupHeader","_countItems","channel","EmailDeliveryModeCode","multiplePickUpEnabled","_cartLine$pickUpInSto","pickUpText","shippingText","emailshippingText","payInvoicesDisplayText","groupTitle","IsInvoiceLine","StringExtensions","isNullOrEmpty","_renderCartLinesGroupTitle","_cartLine$data2","countItem","reduce","_item$data","Quantity","_cartLine$pickUpInSto2","_cartLine$pickUpInSto3","_cartLine$pickUpInSto4","itemLabel","itemsLabel","suffix","deliveryOption","_props$cart","_props$context$action","_props$cart2","renderModuleAttributes","promotionOptions","cart","CartlinesWrapper","orderSummaryHeading","OrderSummaryWrapper","invoiceSummaryLineitems","orderSummaryLineitems","OrderSummaryErrors","checkoutAsSignInUserButton","checkoutAsGuestButton","expressCheckoutButton","ExpressCheckoutSectionWrapper","createTemplateFromCartButton","OrderHistoryOrderInfomation","orderInformationProps","salesId","receiptId","channelName","createdDate","amount","channelReferenceId","OrderHistoryGroupDelivery","deliveryProps","processing","address","trackingInfo","OrderHistoryGroup","groupProps","delivery","salesLinesProps","salesLines","salesLine","OrderHistoryGroups","groupsProps","groups","group","OrderHistoryHeader","orderCountLabel","extraActions","OrderHistorySalesOder","salesOrderProps","orderInfomation","orderDetailsLink","expandProductsButton","OrderHistoryList","listProps","salesOrders","salesOrder","orderHistoryProps","emptyMessage","backToShoppingLink","list","table","moreButton","histogramItem","buttonProps","starLabel","bar","percentage","histogramItems","histogramProps","buildReviewCard","cardProps","name","date","cardBodyProps","reviewProps","reviewTitle","reviewText","responseProps","responseName","responseDate","responseText","controlsProps","ratingHelpfulLabel","like","dislike","edit","report","createReviewModal","modalHeader","modalBody","form","inputRow","ratingLabel","titleLabel","titleInput","textLabel","textInput","privacyPolicyUrl","modalFooter","submitButton","cancelButton","createReportModal","state","reported","headerSubmitted","reportSubmittedMessage","reportMessage","radioButtons","succesfulButton","averageRating","filterByDropdown","noReviewsMessage","noReviewsWithFilterMessage","pageControls","refineReviewsProps","reportReviewModal","reviewsListProps","reviewCards","reviewCount","reviewModal","sortByDropdown","userReview","isFilterApplied","review","MapHeader","ModuleProps","MapProps","OrderConfirmationOrderInfomation","receiptEmail","OrderConfirmationSalesLine","salesLineProps","buyAgainButton","OrderConfirmationGroupDelivery","pickupDateTimeslot","OrderConfirmationGroup","OrderConfirmationGroups","OrderConfirmationOrderSummary","orderSummaryProps","totalAmount","earnedPoints","OrderConfirmationPayment","paymentMethodsProps","methods","OrderConfirmationHelp","helpProps","needHelpLabel","helpLineNumberLabel","contactNumber","payment","help","shippingItemsToYou","ProductSpecificationTableRow","productName","cellData","getRichTextHtml","ProductSpecification","super","handleHeadingChange","_toggle","drawerListId","setState","isDrawerOpen","isAdditionalMediaDrawerOpen","validateCatalogId","reaction","actionInput","AttributesForSelectedVariantInput","getAttributesForSelectedVariant","catch","message","debug","shouldComponentUpdate","nextProps","nextState","productSpecificationData","isAccrodion","displayStyle","viewProps","handleText","ProductSpecificationTableProps","ProductSpecificationTableBodyProps","productSpecificationResult","_createDrawerBody","_createTableBody","content","_this$props$data$addi","tableRows","_renderProductCell","app","OmniChannelMedia","additionalMediaLocations","_createAdditionalMediaDrawer","_this$props$context$r2","_this$props$data$addi2","accordionItemContainer","drawers","_product$Name","Drawer","collapseProps","timeout","isOpen","openGlyph","closeGlyph","glyphPlacement","toggleButtonText","onToggle","additionalDownloadsText","prevState","mediaLocation","Uri","download","AltText","DataTypeValue","_renderCurrencyCell","_renderDateTimeCell","_renderDecimalCell","_renderIntegerCell","_renderTextCell","_renderTrueFalseCell","warning","CurrencyValue","CurrencyCode","_product$DateTimeOffs","DateTimeOffsetValue","toUTCString","IntegerValue","FloatValue","trueValueText","falseValueText","__decorate","observer","rowdata","filter","row","ObjectExtensions","isNullOrUndefined","signInMessage","signInButton","modalToggle","isAuthenticated","user","SocialShare","socialShareItems","cookies","isConsentGiven","params","isEditor","viewprops","SocialShareList","caption","orientation","SocialShareItem","tabIndex","SocialShareItemElements","SocialShareView","SocialShareElement","renderSelectedStore","storeDetailsMain","storeHeader","storeName","storeDetailsCloseButton","storeDistance","storeDetailsAvailabilityContainer","productAvailability","stockStatus","isCurrentLocation","currentLocation","isPreferredStore","preferredStoreButton","removePreferredStoreButton","canSelectLocation","deliveryOptions","pickUpDeliveryOptionButton","pickupModes","renderDeliveryOptions","FooterContainerProps","HeaderContainerProps","HeaderProps","terms","BodyContainerProps","locationsMessage","spinner","locationsList","noLocationsMessage","maps","bodyWrapperProps","storeResultContainerProps","mapContainerProps","isMobileView","storeDetailsModal","selectedLocation","isSearchInProgress","renderBody","onSubmit","preventDefault","subscribeView","_subscribeForm$classN","_emailInput$className","_submitButton$classNa","subscribe","subscribeContainer","subscribeForm","emailInput","submitButtonLabelText","TileList","_telemetryContent","isNullOrWhitespace","Heading","_this$props$config$cl","propsCarousel","SingleSlideCarousel","flipperPrevLabel","flipperPrevious","flipperNextLabel","flipperNext","parentId","vertical","_createHeading","singleSlideCarouselComponentProps","tileItemContainer","tileListContainer","tileListHeading","tiles","tileListView","tileItem","keyIndex","paymentAmountInput","placedBy"],"sourceRoot":""}