{"version":3,"file":"static/js/49.3a682a13955acf225fc1.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/baseComponents/product-detail/b2b-additional-details.tsx?5de0","webpack://Msdyn365.Commerce.Online/./src/themes/absoluteoutdoors/views/buybox.view.tsx?0e12","webpack://Msdyn365.Commerce.Online/./src/themes/aquaglide/views/buybox.view.tsx?2ee7","webpack://Msdyn365.Commerce.Online/./src/themes/arborbb/views/buybox.view.tsx?cfbe","webpack://Msdyn365.Commerce.Online/./src/themes/basetheme/views/buybox.view.tsx?43a6","webpack://Msdyn365.Commerce.Online/./src/themes/connellyb2b/views/buybox.view.tsx?fec3","webpack://Msdyn365.Commerce.Online/./src/themes/freedom23/views/buybox.view.tsx?1263","webpack://Msdyn365.Commerce.Online/./src/themes/hosports-b2b/views/buybox.view.tsx?a165","webpack://Msdyn365.Commerce.Online/./src/themes/liquid23/views/buybox.view.tsx?2f4f","webpack://Msdyn365.Commerce.Online/./src/themes/obrien23/views/buybox.view.tsx?9c82","webpack://Msdyn365.Commerce.Online/./src/themes/obrienb2b/views/buybox.view.tsx?3c58","webpack://Msdyn365.Commerce.Online/./src/themes/watersportdiscounts/views/buybox.view.tsx?f1fd"],"sourcesContent":["/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport * as React from 'react';\r\n// @ts-ignore\r\nimport {Helmet} from \"react-helmet\";\r\n// @ts-ignore\r\nimport {ModelYear} from \"./../../themes/kent/utilities/constants\";\r\n// @ts-ignore\r\nimport {GetProductFromItemNumber} from \"./../../themes/kent/utilities/functions\";\r\n//@ts-ignore\r\nimport {GetFromParse} from \"./../../themes/kent/utilities/parse\";\r\nimport Shaper from \"./shaper\";\r\nimport TechFeatures from \"./tech-features\";\r\nimport Specs from \"./specs\";\r\nimport SpecTable from \"./spec-table\";\r\nimport VideoBox from \"./../video-box/./video-box\";\r\nimport DetailImages from \"./detail-images\";\r\n//@ts-ignore\r\nimport ScrollFadeIn from './../scroll-fade/./scroll-fade';\r\n\r\n\r\ninterface IState {\r\n product?:any;\r\n localizedContent?:any;\r\n video?:any;\r\n parentProduct?:any;\r\n}\r\n\r\ninterface IProps {\r\n itemNumber?:any;\r\n year?:any;\r\n}\r\n\r\n/**\r\n *\r\n * HosportsMain component\r\n * @extends {React.Component}\r\n */\r\n\r\nclass B2bAdditionalDetails extends React.Component {\r\n public state: IState;\r\n\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {};\r\n }\r\n\r\n public componentDidMount = async() => {\r\n let itemNumber = this.props.itemNumber;\r\n if(itemNumber){\r\n let itemNumberIsolated = itemNumber.slice(2);\r\n let product = await GetProductFromItemNumber(itemNumberIsolated);\r\n if(product && product.attributes){\r\n let video:any = null;\r\n video = product.attributes.video;\r\n let parentProduct = null;\r\n if(product.attributes.parentProducts && product.attributes.parentProducts[0]){\r\n parentProduct = await GetFromParse('Products'+this.props.year ? this.props.year : ModelYear, product.attributes.parentProducts[0]);\r\n video = parentProduct.attributes.video;\r\n }\r\n this.setState({\r\n product:product,\r\n video:video,\r\n parentProduct:parentProduct\r\n })\r\n }\r\n }\r\n }\r\n public render(): JSX.Element {\r\n if(!this.state.product) return ;\r\n return (\r\n
\r\n {this.state.product && this.state.product.attributes &&\r\n <>\r\n \r\n \r\n {this.state.video &&\r\n \r\n }\r\n \r\n \r\n \r\n \r\n }\r\n
\r\n\r\n );\r\n }\r\n}\r\n\r\nexport default B2bAdditionalDetails;\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 {\r\n AddToWishlistComponent,\r\n IWishlistActionErrorResult } from '@msdyn365-commerce/components';\r\nimport { SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport {\r\n getConfigureErrors,\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxCallbacks,\r\n IBuyboxCommonResources,\r\n IBuyboxData,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps,\r\n IBuyboxResources as IBuyboxExtentionResources,\r\n IBuyboxShopSimilarLookViewProps,\r\n IBuyboxState,\r\n IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { IncrementalQuantity, ITelemetryContent, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IBuyboxProps as IBuyboxExtentionProps, IBuyboxProps } from '../definition-extensions/buybox.ext.props.autogenerated';\r\n//import { renderAddToOrderTemplateButton } from './components/buybox-add-to-order-template';\r\n\r\n/**\r\n * DescriptionText.\r\n */\r\nenum DescriptionText {\r\n Shop = 'More ways to shop',\r\n Price = 'Price',\r\n Description = 'Description',\r\n Find = 'Pickup and Delivery Methods',\r\n SKU = 'SKU: '\r\n}\r\n\r\n/**\r\n * RenderQuantity.\r\n * @param quantityComponent - QuantityComponent.\r\n * @param callbacks - Callbacks.\r\n * @param props - Props.\r\n * @param state - State.\r\n * @param extentionResources - ExtentionResources.\r\n * @param quantityLimitsMessages - QuantityLimitsMessages.\r\n * @param max - Max.\r\n * @param telemetryContent - TelemetryContent.\r\n * @param unitOfMeasure - Unit Of Measure.\r\n * @returns -- Returns.\r\n */\r\nconst renderQuantity = (\r\n quantityComponent: IBuyboxProductQuantityViewProps,\r\n callbacks: IBuyboxCallbacks,\r\n props: IBuyboxProps,\r\n state: IBuyboxState,\r\n extentionResources: IBuyboxExtentionResources,\r\n quantityLimitsMessages: React.ReactNode,\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n max: number | undefined,\r\n telemetryContent?: ITelemetryContent,\r\n unitOfMeasure?: React.ReactNode): JSX.Element => {\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\r\n\r\n const {\r\n resources\r\n } = props;\r\n\r\n const\r\n {\r\n quantity\r\n } = state;\r\n\r\n /**\r\n * OnChange.\r\n * @param newValue - NewValue.\r\n * @returns -- Returns.\r\n */\r\n function onChangeHandler(newValue: number): boolean {\r\n return callbacks.updateQuantity(newValue);\r\n }\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n\r\n \r\n {unitOfMeasure}\r\n {quantityLimitsMessages}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderAddToCart.\r\n * @param addToCart - AddToCart.\r\n * @returns -- Returns.\r\n */\r\nconst renderAddToCart = (addToCart: IBuyboxAddToCartViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\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\n/**\r\n * RenderFindInStore.\r\n * @param findInStore - FindInStore.\r\n * @returns -- Returns.\r\n */\r\nconst renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, storeSelector, heading, description, errors, button, modal, productPickupOptionList } = findInStore;\r\n\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\n/**\r\n * RenderAddToOrderTemplate.\r\n * @param props - Buybox view props.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @returns -- Returns.\r\n \r\nconst renderAddToOrderTemplate = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n state: IBuyboxState, callbacks: IBuyboxCallbacks): JSX.Element | null => {\r\n const product = props.data.product.result;\r\n if (!props.addToOrderTemplate || !product) {\r\n return null;\r\n }\r\n\r\n const orderTemplateButton = renderAddToOrderTemplateButton(props, state, callbacks, product);\r\n\r\n return (\r\n \r\n {props.addToOrderTemplate.errorBlock}\r\n {orderTemplateButton}\r\n \r\n );\r\n};\r\n*/\r\n\r\n/**\r\n * Add to wishlist failed function.\r\n * @param callbacks -Buybox callbacks.\r\n * @param resources -Buybox resources.\r\n * @param product -Simple product.\r\n * @returns Update error state.\r\n */\r\nconst onAddToWishlistFailed = (callbacks: IBuyboxCallbacks,\r\n resources: IBuyboxCommonResources, product: SimpleProduct | undefined) => (result: IWishlistActionErrorResult) => {\r\n callbacks.updateErrorState({\r\n errorHost: 'WISHLIST',\r\n configureErrors: result.status === 'MISSINGDIMENSION' ? getConfigureErrors(result.missingDimensions, resources, product?.IsGiftCard) : {}\r\n });\r\n};\r\n\r\n/**\r\n * RenderAddToWishlist.\r\n * @param props - Buybox view props.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @param product - Product data.\r\n * @returns -- Returns.\r\n */\r\nconst renderAddtoWishlistButton = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n state: IBuyboxState, callbacks: IBuyboxCallbacks, product: SimpleProduct): React.ReactNode => {\r\n const { context, resources } = props;\r\n const wishlists = props.data.wishlists.result;\r\n const isShowWishlitButtonText = true;\r\n return (\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderAddToWishlist.\r\n * @param props - Buybox viewprops.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @returns -- Returns.\r\n */\r\nconst renderAddToWishlist = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n state: IBuyboxState, callbacks: IBuyboxCallbacks): JSX.Element | null => {\r\n const product = props.data.product.result;\r\n if (!props.addToWishlist || !product) {\r\n return null;\r\n }\r\n\r\n const wishlistButton = renderAddtoWishlistButton(props, state, callbacks, product);\r\n return (\r\n \r\n {props.addToWishlist.errorBlock}\r\n {wishlistButton}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RRenderShopSimilarItem.\r\n * @param shopSimilarItem - ShopSimilarItem.\r\n * @returns -- Returns.\r\n */\r\nconst renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, errors, input } = shopSimilarItem;\r\n\r\n return (\r\n \r\n {errors}\r\n {input}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderConfigureDropdown.\r\n * @param dropdown - Buybox product configure dropdown view props.\r\n * @returns -- Returns JSX.Element.\r\n */\r\nconst renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n \r\n {select}\r\n {errors}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderConfigure.\r\n * @param configure - Buybox product configure view props.\r\n * @returns -- Returns JSX.Element.\r\n */\r\nconst renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\r\n};\r\n\r\n/**\r\n * BuyboxView.\r\n * @param props - Props.\r\n * @returns -- Returns.\r\n */\r\nconst buyboxView: React.FC> = props => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ModuleProps,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n MediaGalleryContainerProps,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n ProductInfoContainerProps,\r\n addToCart,\r\n //addToOrderTemplate,\r\n addToWishlist,\r\n configure,\r\n //description,\r\n findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating,\r\n shopSimilarLook,\r\n shopSimilarDescription,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n max,\r\n unitOfMeasure,\r\n callbacks,\r\n state,\r\n resources,\r\n quantityLimitsMessages,\r\n telemetryContent } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n let skuText: string = DescriptionText.SKU;\r\n skuText += props.data.product.result?.ItemId;\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n \r\n \r\n {price}\r\n \r\n \r\n
\r\n {skuText}\r\n
\r\n {rating}\r\n
\r\n \r\n {/* description */}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n
\r\n
\r\n {configure && renderConfigure(configure)}\r\n
\r\n
Sizing
\r\n View Sizing Charts\r\n
\r\n
\r\n {quantity && renderQuantity(quantity, callbacks, props, state, resources, quantityLimitsMessages, max, telemetryContent, unitOfMeasure)}\r\n \r\n
\r\n {renderAddToCart(addToCart)}\r\n {findInStore && renderFindInStore(findInStore)}\r\n {addToWishlist && renderAddToWishlist(props, state, callbacks)}\r\n {/* addToOrderTemplate && renderAddToOrderTemplate(props, state, callbacks) */}\r\n
\r\n \r\n {findInStore?.productPickupOptionList ?
\r\n {findInStore.productPickupOptionList}\r\n
: null}\r\n \r\n \r\n \r\n {shopSimilarLook && renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && renderShopSimilarItem(shopSimilarDescription)}\r\n \r\n \r\n {ArrayExtensions.hasElements(props.slots.productSpecification) ? \r\n {props.slots.productSpecification[0]}\r\n : null}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default buyboxView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport * as React from 'react';\r\n\r\n//@ts-ignore\r\nimport {Link} from 'react-scroll'\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps\r\n} from '@msdyn365-commerce-modules/buybox';\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToWishlist, configure, findInStore, quantity, price, title, rating } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n
\r\n {title}\r\n {price}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n\r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {findInStore && _renderFindInStore(findInStore)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n
\r\n Check Out Our Retailers\r\n
\r\n
\r\n
\r\n
\r\n );\r\n\r\n\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\r\n};\r\n\r\n\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 _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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n};\r\n\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n const { ContainerProps, storeSelector, heading, description, errors, button } = findInStore;\r\n\r\n return (\r\n \r\n {storeSelector}\r\n {heading}\r\n {description}\r\n {errors}\r\n {button}\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\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\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\n\r\nimport { IBuyboxAddToCartViewProps, IBuyboxAddToOrderTemplateViewProps, IBuyboxAddToWishlistViewProps, IBuyboxKeyInPriceViewProps, IBuyboxProductConfigureDropdownViewProps, IBuyboxProductConfigureViewProps, IBuyboxProductQuantityViewProps, IBuyboxShopSimilarLookViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToOrderTemplate, addToWishlist, configure, /* description , findInStore,*/ quantity, price, title, rating, inventoryLabel, shopSimilarLook, keyInPrice,\r\n shopSimilarDescription, unitOfMeasure } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n {price}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {unitOfMeasure}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n \r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n {inventoryLabel}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\r\n {/*description*/}\r\n {/*findInStore && _renderFindInStore(findInStore)*/}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n <>\r\n {socialShare[0]}\r\n \r\n );\r\n};\r\n\r\n\r\n// This makes Style Change to Quality in Buybox !important!\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n {select}\r\n \r\n {heading}\r\n {errors}\r\n \r\n \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\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\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\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\r\n return (\r\n \r\n \r\n {heading}\r\n \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\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\n\r\nimport { IBuyboxAddToCartViewProps, IBuyboxAddToOrderTemplateViewProps, IBuyboxAddToWishlistViewProps, IBuyboxKeyInPriceViewProps, IBuyboxProductConfigureDropdownViewProps, IBuyboxProductConfigureViewProps, IBuyboxProductQuantityViewProps, IBuyboxShopSimilarLookViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToOrderTemplate, addToWishlist, configure, /* description , findInStore,*/ quantity, price, title, rating, inventoryLabel, shopSimilarLook, keyInPrice,\r\n shopSimilarDescription, unitOfMeasure } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n {price}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {unitOfMeasure}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n \r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n {inventoryLabel}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\r\n {/*description*/}\r\n {/*findInStore && _renderFindInStore(findInStore)*/}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n <>\r\n {socialShare[0]}\r\n \r\n );\r\n};\r\n\r\n\r\n// This makes Style Change to Quality in Buybox !important!\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n {select}\r\n \r\n {heading}\r\n {errors}\r\n \r\n \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\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\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\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\r\n return (\r\n \r\n \r\n {heading}\r\n \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\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\n\r\nimport { IBuyboxAddToCartViewProps, IBuyboxAddToOrderTemplateViewProps, IBuyboxAddToWishlistViewProps, IBuyboxKeyInPriceViewProps, IBuyboxProductConfigureDropdownViewProps, IBuyboxProductConfigureViewProps, IBuyboxProductQuantityViewProps, IBuyboxShopSimilarLookViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\n//import B2bAdditionalDetails from '../../../baseComponents/product-detail/./b2b-additional-details';\r\n\r\n\r\n// DescriptionText.\r\n \r\n// enum DescriptionText {\r\n// Shop = 'More ways to shop',\r\n// Price = 'Price',\r\n// Description = 'Description',\r\n// Find = 'Pickup and Delivery Methods',\r\n// SKU = 'SKU: '\r\n// }\r\n \r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToOrderTemplate, addToWishlist, configure, /* description , findInStore,*/ quantity, price, title, rating, inventoryLabel, shopSimilarLook, keyInPrice,\r\n shopSimilarDescription, unitOfMeasure } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n //const itemNumber = props.data.product.result && props.data.product.result.ItemId;\r\n\r\n // let skuText: string = DescriptionText.SKU;\r\n // skuText += props.data.product.result?.ItemId;\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n {price}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {unitOfMeasure}\r\n {/*
\r\n {skuText}\r\n
*/}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n \r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n {inventoryLabel}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\r\n {/*description*/}\r\n {/*findInStore && _renderFindInStore(findInStore)*/}\r\n
\r\n {/* */}\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n <>\r\n {socialShare[0]}\r\n \r\n );\r\n};\r\n\r\n\r\n// This makes Style Change to Quality in Buybox !important!\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \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\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\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\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\r\n return (\r\n \r\n \r\n {heading}\r\n \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\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 * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport * as React from 'react';\r\n\r\n//@ts-ignore\r\n//import {Link} from 'react-scroll'\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps,\r\n} from '@msdyn365-commerce-modules/buybox';\r\n\r\nconst BuyboxView: React.FC = (props) => {\r\n const {\r\n ModuleProps,\r\n MediaGalleryContainerProps,\r\n ProductInfoContainerProps,\r\n addToCart,\r\n addToWishlist,\r\n configure,\r\n findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating,\r\n } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n return (\r\n \r\n {props.mediaGallery}\r\n \r\n
\r\n {title}\r\n {price}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)\r\n }\r\n
\r\n\r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {findInStore && _renderFindInStore(findInStore)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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 _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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return {dropdowns.map(_renderConfigureDropdown)};\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n};\r\n\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n const { ContainerProps, storeSelector, heading, description, errors, button } = findInStore;\r\n\r\n return (\r\n \r\n {storeSelector}\r\n {heading}\r\n {description}\r\n {errors}\r\n {button}\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\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\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\n\r\nimport { IBuyboxAddToCartViewProps, IBuyboxAddToOrderTemplateViewProps, IBuyboxAddToWishlistViewProps, IBuyboxKeyInPriceViewProps, IBuyboxProductConfigureDropdownViewProps, IBuyboxProductConfigureViewProps, IBuyboxProductQuantityViewProps, IBuyboxShopSimilarLookViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\nimport B2bAdditionalDetails from '../../../baseComponents/product-detail/./b2b-additional-details';\r\n\r\n \r\n// DescriptionText.\r\n \r\nenum DescriptionText {\r\nShop = 'More ways to shop',\r\nPrice = 'Price',\r\nDescription = 'Description',\r\nFind = 'Pickup and Delivery Methods',\r\nSKU = 'SKU: '\r\n}\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToOrderTemplate, addToWishlist, configure, /* description , findInStore,*/ quantity, price, title, rating, inventoryLabel, shopSimilarLook, keyInPrice,\r\n shopSimilarDescription, unitOfMeasure } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n const itemNumber = props.data.product.result && props.data.product.result.ItemId;\r\n\r\n let skuText: string = DescriptionText.SKU;\r\n skuText += props.data.product.result?.ItemId;\r\n\r\n\r\n return (\r\n \r\n
\r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n {price}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {unitOfMeasure}\r\n
\r\n {skuText}\r\n
\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n\r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n {inventoryLabel}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\r\n {/*description*/}\r\n {/*findInStore && _renderFindInStore(findInStore)*/}\r\n
\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n <>\r\n {socialShare[0]}\r\n \r\n );\r\n};\r\n\r\n\r\n// This makes Style Change to Quality in Buybox !important!\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n\r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \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\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\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\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\r\n return (\r\n \r\n \r\n {heading}\r\n \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\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 * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport * as React from 'react';\r\n\r\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n//@ts-ignore\r\nimport { Link } from 'react-scroll';\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n// eslint-disable-next-line no-duplicate-imports\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToOrderTemplateViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps\r\n} from '@msdyn365-commerce-modules/buybox';\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const {\r\n ModuleProps,\r\n MediaGalleryContainerProps,\r\n ProductInfoContainerProps,\r\n addToCart,\r\n addToOrderTemplate,\r\n addToWishlist,\r\n configure,\r\n findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating\r\n } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n return (\r\n \r\n {props.mediaGallery}\r\n \r\n
\r\n {title}\r\n {price}\r\n
\r\n {// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n //@ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n\r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {findInStore && _renderFindInStore(findInStore)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n
\r\n \r\n Check Out Our Retailers\r\n \r\n
\r\n
\r\n
\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 _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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 _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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return {dropdowns.map(_renderConfigureDropdown)};\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n};\r\n\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n const { ContainerProps, storeSelector, heading, description, errors, button } = findInStore;\r\n\r\n return (\r\n \r\n {storeSelector}\r\n {heading}\r\n {description}\r\n {errors}\r\n {button}\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\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\nexport default BuyboxView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport * as React from 'react';\r\n\r\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n//@ts-ignore\r\nimport { Link } from 'react-scroll';\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n// eslint-disable-next-line no-duplicate-imports\r\nimport {\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxAddToWishlistViewProps,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps\r\n} from '@msdyn365-commerce-modules/buybox';\r\n\r\n/**\r\n * DescriptionText.\r\n */\r\n// enum DescriptionText {\r\n// Shop = 'More ways to shop',\r\n// Price = 'Price',\r\n// Description = 'Description',\r\n// Find = 'Pickup and Delivery Methods',\r\n// SKU = 'SKU: '\r\n// }\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const {\r\n ModuleProps,\r\n MediaGalleryContainerProps,\r\n ProductInfoContainerProps,\r\n addToCart,\r\n addToWishlist,\r\n configure,\r\n findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating\r\n } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n // let skuText: string = DescriptionText.SKU;\r\n // skuText += props.data.product.result?.ItemId;\r\n\r\n return (\r\n \r\n {props.mediaGallery}\r\n \r\n
\r\n {title}\r\n {price}\r\n
\r\n {/*
\r\n {skuText}\r\n
*/}\r\n {// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n\r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {findInStore && _renderFindInStore(findInStore)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n
\r\n \r\n Check Out Our Retailers\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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 _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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return {dropdowns.map(_renderConfigureDropdown)};\r\n};\r\n\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n {select}\r\n \r\n );\r\n};\r\n\r\nconst _renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n const { ContainerProps, storeSelector, heading, description, errors, button } = findInStore;\r\n\r\n return (\r\n \r\n {storeSelector}\r\n {heading}\r\n {description}\r\n {errors}\r\n {button}\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\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\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\n\r\nimport { IBuyboxAddToCartViewProps, IBuyboxAddToOrderTemplateViewProps, IBuyboxAddToWishlistViewProps, IBuyboxKeyInPriceViewProps, IBuyboxProductConfigureDropdownViewProps, IBuyboxProductConfigureViewProps, IBuyboxProductQuantityViewProps, IBuyboxShopSimilarLookViewProps } from '@msdyn365-commerce-modules/buybox';\r\nimport { IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { IBuyboxFindInStoreViewProps } from '@msdyn365-commerce-modules/buybox/src/modules/buybox/./components/buybox-find-in-store';\r\n\r\nconst BuyboxView: React.FC = props => {\r\n const { ModuleProps, MediaGalleryContainerProps, ProductInfoContainerProps, addToCart, addToOrderTemplate, addToWishlist, configure, /* description , findInStore,*/ quantity, price, title, rating, inventoryLabel, shopSimilarLook, keyInPrice,\r\n shopSimilarDescription, unitOfMeasure } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n {price}\r\n {keyInPrice && _renderKeyInPrice(keyInPrice)}\r\n {unitOfMeasure}\r\n
\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n
\r\n \r\n {rating}\r\n {configure && _renderConfigure(configure)}\r\n {inventoryLabel}\r\n
\r\n {quantity && _renderQuantity(quantity)}\r\n {addToCart && _renderAddToCart(addToCart)}\r\n {addToOrderTemplate && _renderAddToOrderTemplate(addToOrderTemplate)}\r\n {addToWishlist && _renderAddToWishlist(addToWishlist)}\r\n
\r\n\r\n {_renderSocialShare(props.slots && props.slots.socialShare)}\r\n {shopSimilarLook && _renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && _renderShopSimilarItem(shopSimilarDescription)}\r\n\r\n {/*description*/}\r\n {/*findInStore && _renderFindInStore(findInStore)*/}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\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): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(_renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderSocialShare = (socialShare: React.ReactNode[]): JSX.Element | undefined => {\r\n if (!socialShare || socialShare.length === 0) {\r\n return undefined;\r\n }\r\n\r\n return (\r\n <>\r\n {socialShare[0]}\r\n \r\n );\r\n};\r\n\r\n\r\n// This makes Style Change to Quality in Buybox !important!\r\nconst _renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \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\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\n\r\nconst _renderQuantity = (quantity: IBuyboxProductQuantityViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, input, errors } = quantity;\r\n\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\r\n return (\r\n \r\n \r\n {heading}\r\n \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\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\n// import {\r\n// //AddToWishlistComponent,\r\n// IWishlistActionErrorResult } from '@msdyn365-commerce/components';\r\n// import { SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport {\r\n //getConfigureErrors,\r\n IBuyboxAddToCartViewProps,\r\n IBuyboxCallbacks,\r\n //IBuyboxCommonResources,\r\n IBuyboxData,\r\n IBuyboxFindInStoreViewProps,\r\n IBuyboxProductConfigureDropdownViewProps,\r\n IBuyboxProductConfigureViewProps,\r\n IBuyboxProductQuantityViewProps,\r\n IBuyboxResources as IBuyboxExtentionResources,\r\n IBuyboxShopSimilarLookViewProps,\r\n IBuyboxState,\r\n IBuyboxViewProps } from '@msdyn365-commerce-modules/buybox';\r\n//import { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\r\n\r\nimport { IncrementalQuantity, ITelemetryContent, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nimport { IBuyboxProps as IBuyboxExtentionProps, IBuyboxProps } from '../definition-extensions/buybox.ext.props.autogenerated';\r\n\r\n//import { IBuyboxProps } from '../definition-extensions/buybox.ext.props.autogenerated';\r\n//import { renderAddToOrderTemplateButton } from './components/buybox-add-to-order-template';\r\n\r\n/**\r\n * DescriptionText.\r\n */\r\n// enum DescriptionText {\r\n// Shop = 'More ways to shop',\r\n// Price = 'Price',\r\n// Description = 'Description',\r\n// Find = 'Pickup and Delivery Methods',\r\n// SKU = 'SKU: '\r\n// }\r\n\r\n/**\r\n * RenderQuantity.\r\n * @param quantityComponent - QuantityComponent.\r\n * @param callbacks - Callbacks.\r\n * @param props - Props.\r\n * @param state - State.\r\n * @param extentionResources - ExtentionResources.\r\n * @param quantityLimitsMessages - QuantityLimitsMessages.\r\n * @param max - Max.\r\n * @param telemetryContent - TelemetryContent.\r\n * @param unitOfMeasure - Unit Of Measure.\r\n * @returns -- Returns.\r\n */\r\nconst renderQuantity = (\r\n quantityComponent: IBuyboxProductQuantityViewProps,\r\n callbacks: IBuyboxCallbacks,\r\n props: IBuyboxProps,\r\n state: IBuyboxState,\r\n extentionResources: IBuyboxExtentionResources,\r\n quantityLimitsMessages: React.ReactNode,\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n max: number | undefined,\r\n telemetryContent?: ITelemetryContent,\r\n unitOfMeasure?: React.ReactNode): JSX.Element => {\r\n\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, LabelContainerProps, heading, errors } = quantityComponent;\r\n\r\n const {\r\n resources\r\n } = props;\r\n\r\n const\r\n {\r\n quantity\r\n } = state;\r\n\r\n /**\r\n * OnChange.\r\n * @param newValue - NewValue.\r\n * @returns -- Returns.\r\n */\r\n function onChangeHandler(newValue: number): boolean {\r\n return callbacks.updateQuantity(newValue);\r\n }\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n {errors}\r\n \r\n\r\n \r\n {unitOfMeasure}\r\n {quantityLimitsMessages}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderAddToCart.\r\n * @param addToCart - AddToCart.\r\n * @returns -- Returns.\r\n */\r\nconst renderAddToCart = (addToCart: IBuyboxAddToCartViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\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\n/**\r\n * RenderFindInStore.\r\n * @param findInStore - FindInStore.\r\n * @returns -- Returns.\r\n */\r\nconst renderFindInStore = (findInStore: IBuyboxFindInStoreViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, storeSelector, heading, description, errors, button, modal, productPickupOptionList } = findInStore;\r\n\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\n/**\r\n * RenderAddToOrderTemplate.\r\n * @param props - Buybox view props.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @returns -- Returns.\r\n \r\nconst renderAddToOrderTemplate = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n state: IBuyboxState, callbacks: IBuyboxCallbacks): JSX.Element | null => {\r\n const product = props.data.product.result;\r\n if (!props.addToOrderTemplate || !product) {\r\n return null;\r\n }\r\n\r\n const orderTemplateButton = renderAddToOrderTemplateButton(props, state, callbacks, product);\r\n\r\n return (\r\n \r\n {props.addToOrderTemplate.errorBlock}\r\n {orderTemplateButton}\r\n \r\n );\r\n};\r\n*/\r\n\r\n/**\r\n * Add to wishlist failed function.\r\n * @param callbacks -Buybox callbacks.\r\n * @param resources -Buybox resources.\r\n * @param product -Simple product.\r\n * @returns Update error state.\r\n */\r\n// const onAddToWishlistFailed = (callbacks: IBuyboxCallbacks,\r\n// resources: IBuyboxCommonResources, product: SimpleProduct | undefined) => (result: IWishlistActionErrorResult) => {\r\n// callbacks.updateErrorState({\r\n// errorHost: 'WISHLIST',\r\n// configureErrors: result.status === 'MISSINGDIMENSION' ? getConfigureErrors(result.missingDimensions, resources, product?.IsGiftCard) : {}\r\n// });\r\n// };\r\n\r\n/**\r\n * RenderAddToWishlist.\r\n * @param props - Buybox view props.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @param product - Product data.\r\n * @returns -- Returns.\r\n */\r\n// const renderAddtoWishlistButton = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n// state: IBuyboxState, callbacks: IBuyboxCallbacks, product: SimpleProduct): React.ReactNode => {\r\n// const { context, resources } = props;\r\n// const wishlists = props.data.wishlists.result;\r\n// const isShowWishlitButtonText = true;\r\n// return (\r\n// \r\n// );\r\n// };\r\n\r\n/**\r\n * RenderAddToWishlist.\r\n * @param props - Buybox viewprops.\r\n * @param state - Buybox state.\r\n * @param callbacks - Buybox callbacks.\r\n * @returns -- Returns.\r\n */\r\n// const renderAddToWishlist = (props: IBuyboxViewProps & IBuyboxExtentionProps,\r\n// state: IBuyboxState, callbacks: IBuyboxCallbacks): JSX.Element | null => {\r\n// const product = props.data.product.result;\r\n// if (!props.addToWishlist || !product) {\r\n// return null;\r\n// }\r\n\r\n// const wishlistButton = renderAddtoWishlistButton(props, state, callbacks, product);\r\n// return (\r\n// \r\n// {props.addToWishlist.errorBlock}\r\n// {wishlistButton}\r\n// \r\n// );\r\n// };\r\n\r\n/**\r\n * RRenderShopSimilarItem.\r\n * @param shopSimilarItem - ShopSimilarItem.\r\n * @returns -- Returns.\r\n */\r\nconst renderShopSimilarItem = (shopSimilarItem: IBuyboxShopSimilarLookViewProps): JSX.Element => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ContainerProps, errors, input } = shopSimilarItem;\r\n\r\n return (\r\n \r\n {errors}\r\n {input}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderConfigureDropdown.\r\n * @param dropdown - Buybox product configure dropdown view props.\r\n * @returns -- Returns JSX.Element.\r\n */\r\nconst renderConfigureDropdown = (dropdown: IBuyboxProductConfigureDropdownViewProps): JSX.Element => {\r\n const { ContainerProps, LabelContainerProps, heading, errors, select } = dropdown;\r\n\r\n return (\r\n \r\n \r\n {heading}\r\n \r\n {select}\r\n {errors}\r\n \r\n );\r\n};\r\n\r\n/**\r\n * RenderConfigure.\r\n * @param configure - Buybox product configure view props.\r\n * @returns -- Returns JSX.Element.\r\n */\r\nconst renderConfigure = (configure: IBuyboxProductConfigureViewProps): JSX.Element => {\r\n const { ContainerProps, dropdowns } = configure;\r\n\r\n return (\r\n \r\n {dropdowns.map(renderConfigureDropdown)}\r\n \r\n );\r\n};\r\n\r\nconst _renderDescriptionBlock = (description: string): React.ReactFragment | undefined => {\r\n\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n
\r\n );\r\n};\r\n\r\n/**\r\n * BuyboxView.\r\n * @param props - Props.\r\n * @returns -- Returns.\r\n */\r\nconst buyboxView: React.FC> = props => {\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n const { ModuleProps,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n MediaGalleryContainerProps,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n ProductInfoContainerProps,\r\n addToCart,\r\n //addToOrderTemplate,\r\n //addToWishlist,\r\n configure,\r\n //description,\r\n findInStore,\r\n quantity,\r\n price,\r\n title,\r\n rating,\r\n shopSimilarLook,\r\n shopSimilarDescription,\r\n // eslint-disable-next-line @typescript-eslint/naming-convention -- Dependency from Buybox.tsx file\r\n max,\r\n unitOfMeasure,\r\n callbacks,\r\n state,\r\n resources,\r\n quantityLimitsMessages,\r\n telemetryContent,\r\n slots } = props;\r\n const productDescription = props.data.product.result && props.data.product.result.Description;\r\n // let skuText: string = DescriptionText.SKU;\r\n // skuText += props.data.product.result?.ItemId;\r\n\r\n return (\r\n \r\n \r\n {props.mediaGallery}\r\n \r\n \r\n {title}\r\n \r\n \r\n {price}\r\n \r\n \r\n {/*
\r\n {skuText}\r\n
*/}\r\n {rating}\r\n
\r\n \r\n {/* description */}\r\n
\r\n\r\n {slots && slots.buyboxOverride && slots.buyboxOverride.map((children: React.ReactNode) => {\r\n return children;\r\n })}\r\n\r\n {\r\n // @ts-ignore\r\n _renderDescriptionBlock(productDescription)}\r\n\r\n
\r\n
\r\n
{configure && renderConfigure(configure)}
\r\n {quantity && renderQuantity(quantity, callbacks, props, state, resources, quantityLimitsMessages, max, telemetryContent, unitOfMeasure)}\r\n \r\n
\r\n {renderAddToCart(addToCart)}\r\n {findInStore && renderFindInStore(findInStore)}\r\n {/*addToWishlist && renderAddToWishlist(props, state, callbacks) */}\r\n {/* addToOrderTemplate && renderAddToOrderTemplate(props, state, callbacks) */}\r\n
\r\n \r\n {findInStore?.productPickupOptionList ?
\r\n {findInStore.productPickupOptionList}\r\n
: null}\r\n \r\n \r\n \r\n {shopSimilarLook && renderShopSimilarItem(shopSimilarLook)}\r\n {shopSimilarDescription && renderShopSimilarItem(shopSimilarDescription)}\r\n \r\n \r\n {/* {ArrayExtensions.hasElements(props.slots.productSpecification) ? \r\n {props.slots.productSpecification[0]}\r\n : null} */}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default buyboxView;\r\n"],"names":["B2bAdditionalDetails","React","constructor","props","super","componentDidMount","async","itemNumber","this","itemNumberIsolated","slice","product","GetProductFromItemNumber","attributes","video","parentProduct","parentProducts","GetFromParse","year","setState","state","render","className","ScrollFadeIn","DetailImages","Specs","VideoBox","autoPlay","muted","fullWidth","controls","TechFeatures","SpecTable","Shaper","DescriptionText","onAddToWishlistFailed","callbacks","resources","result","updateErrorState","errorHost","configureErrors","status","getConfigureErrors","missingDimensions","IsGiftCard","renderAddToWishlist","data","addToWishlist","wishlistButton","renderAddtoWishlistButton","context","wishlists","AddToWishlistComponent","addToWishlistButtonText","removeFromWishlistButtonText","addToWishlistMessage","removedFromWishlistMessage","addItemToWishlistError","removeItemFromWishlistError","nameOfWishlist","id","typeName","onError","getSelectedProduct","selectedProduct","showButtonText","showButtonTooltip","Node","Object","assign","ContainerProps","errorBlock","renderShopSimilarItem","shopSimilarItem","errors","input","renderConfigureDropdown","dropdown","LabelContainerProps","heading","select","_props$data$product$r","ModuleProps","MediaGalleryContainerProps","ProductInfoContainerProps","addToCart","configure","findInStore","quantity","price","title","rating","shopSimilarLook","shopSimilarDescription","max","unitOfMeasure","quantityLimitsMessages","telemetryContent","productDescription","Description","skuText","SKU","ItemId","Module","mediaGallery","description","dangerouslySetInnerHTML","__html","dropdowns","map","renderConfigure","href","renderQuantity","quantityComponent","extentionResources","IncrementalQuantity","currentCount","onChange","newValue","updateQuantity","inputQuantityAriaLabel","decrementButtonAriaLabel","incrementButtonAriaLabel","minQuantityText","maxQuantityText","button","renderAddToCart","storeSelector","modal","productPickupOptionList","renderFindInStore","ArrayExtensions","hasElements","slots","productSpecification","_renderDescriptionBlock","_renderAddToCart","_renderAddToWishlist","_renderConfigure","_renderConfigureDropdown","_renderFindInStore","_renderQuantity","Link","to","smooth","_renderAddToOrderTemplate","addToOrderTemplate","_renderSocialShare","socialShare","length","_renderKeyInPrice","keyInPrice","_renderShopSimilarItem","inventoryLabel","buyboxOverride","children"],"sourceRoot":""}