{"version":3,"file":"static/js/7f068bf6acf64e44e816.bundle.js","mappings":"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","sources":["webpack://mattressfirm/./src/common/buybox-components.tsx?42b4","webpack://mattressfirm/./src/common/buybox-product-configure.tsx?139c","webpack://mattressfirm/./src/common/buyboxInterface.ts?9d60","webpack://mattressfirm/./src/common/dropdown/dropdown.tsx?f1d3","webpack://mattressfirm/./src/common/dropdown/dropdown.props.ts?7676","webpack://mattressfirm/./src/common/utilities/error-utilities.ts?bb69","webpack://mattressfirm/./src/modules/recently-viewed/base/recently-viewed-product-item.ts?4982","webpack://mattressfirm/./src/modules/recently-viewed/base/recently-viewed-item.ts?54c9","webpack://mattressfirm/./src/modules/recently-viewed/recently-viewed-state.ts?c73b","webpack://mattressfirm/./src/modules/recently-viewed/recently-viewed-manager.ts?a2a8"],"sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n AddToCartComponent,\n AddToOrderTemplateComponent,\n AddToWishlistComponent,\n IAddToCartFailureResult,\n IAddToCartResources,\n IAddToOrderTemplateDialogResources,\n IDuplicateItemsWhenAddingToOrderTemplateDialogResources,\n IItemAddedToOrderTemplateDialogResources,\n IOrderTemplateActionErrorResult,\n IOrderTemplateNameDialogResources,\n IWishlistActionErrorResult,\n PriceComponent,\n RatingComponent\n} from '@msdyn365-commerce/components';\nimport { getUrlSync, IImageSettings } from '@msdyn365-commerce/core';\nimport { ICartActionResult, ICartState } from '@msdyn365-commerce/global-state';\nimport { ProductAvailableQuantity, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\nimport { ArrayExtensions, DeliveryMode, validateCatalogId } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n Alert,\n Button,\n format,\n getPayloadObject,\n getTelemetryAttributes,\n getTelemetryObject,\n Heading,\n ITelemetryContent,\n Node,\n Quantity,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport {\n IBuyboxAddToCartViewProps,\n IBuyboxAddToOrderTemplateViewProps,\n IBuyboxAddToWishlistViewProps,\n IBuyboxCallbacks,\n IBuyboxCommonData,\n IBuyboxCommonResources,\n IBuyboxErrorBlockProps,\n IBuyboxExtentedProps,\n IBuyboxKeyInPriceViewProps,\n IBuyboxProductQuantityViewProps,\n IBuyboxShopSimilarLookViewProps,\n IBuyboxState,\n IProductDetails,\n ShopSimiliarButtonType\n} from './buyboxInterface';\nimport { getConfigureErrors, getGenericError, getQuantityError } from './utilities/error-utilities';\n\nconst _getClassNamePrefix = (typeName: string): string => {\n return typeName.toLocaleLowerCase() === 'quickview' ? 'ms-quickView' : 'ms-buybox';\n};\n\nexport function getBuyBoxInventoryLabel(\n props: IBuyboxExtentedProps,\n productDetails?: IProductDetails\n): React.ReactElement | undefined {\n const { typeName } = props;\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const productAvailableQuantity = props.data.productAvailableQuantity?.result ?? productDetails?.productAvailableQuantity;\n\n const className = _getClassNamePrefix(typeName);\n if (!productAvailableQuantity || !ArrayExtensions.hasElements(productAvailableQuantity)) {\n return undefined;\n }\n const shippingInventory = productAvailableQuantity.find(shipping => shipping.deliveryType === DeliveryMode.shipping);\n\n if (shippingInventory) {\n let inventoryClassName: string;\n if (shippingInventory.StockLevelCode) {\n inventoryClassName = `${className}__inventory-label ${className}__inventory-code-${shippingInventory.StockLevelCode.toLowerCase()}`;\n } else {\n inventoryClassName = `${className}__inventory-label`;\n }\n return (\n
\n {shippingInventory.StockLevelLabel}\n
\n );\n }\n\n return undefined;\n}\n\nexport function getBuyboxProductTitle(\n props: IBuyboxExtentedProps,\n productDetails?: IProductDetails\n): React.ReactElement | undefined {\n const {\n config: { titleHeadingTag = 'h1' },\n typeName\n } = props;\n const className = _getClassNamePrefix(typeName);\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const product = props.data.product?.result ?? productDetails?.product ?? undefined;\n\n return product && ;\n}\n\nexport function getBuyboxProductDescription(\n props: IBuyboxExtentedProps,\n productDetails?: IProductDetails\n): React.ReactElement | undefined {\n const { typeName } = props;\n const className = _getClassNamePrefix(typeName);\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const product = props.data.product?.result ?? productDetails?.product ?? undefined;\n\n return product &&

{product.Description}

;\n}\n\n/**\n * Gets the react node for product unit of measure display.\n * @param {IBuyboxExtentedProps} props The buybox module props.\n * @param {IProductDetails} productDetails The product details to be displyed in buybox.\n * @returns {React.ReactElement} The node representing markup for unit of measure component.\n */\nexport function getBuyboxProductUnitOfMeasure(\n props: IBuyboxExtentedProps,\n productDetails?: IProductDetails\n): React.ReactElement | undefined {\n const { typeName } = props;\n const className = _getClassNamePrefix(typeName);\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access -- Do not need type check for appsettings\n if (\n props.context.app.config &&\n (!props.context.app.config.unitOfMeasureDisplayType || props.context.app.config.unitOfMeasureDisplayType === 'none')\n ) {\n return undefined;\n }\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const product = props.data.product?.result ?? productDetails?.product;\n if (!product || !product.DefaultUnitOfMeasure) {\n props.telemetry.warning('Missing defult unit of measureor theproduct');\n return undefined;\n }\n\n return (\n
\n {product.DefaultUnitOfMeasure}\n
\n );\n}\n\nlet telemetryContent: ITelemetryContent;\n\n/**\n * On add to cart failed function.\n * @param props -The buybox module props.\n * @param state -The buybox module state.\n * @param callbacks -The buybox module callbacks.\n * @param defaultMinimumKeyInPrice -The default minimum key in price.\n * @param defaultMaximumKeyInPrice -The default maximum key in price.\n * @param cart -The cart state.\n * @param product -The simple product.\n * @param productAvailability -The product available quantity.\n * @returns Update error state.\n */\nconst onAddToCartFailed = (\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks,\n defaultMinimumKeyInPrice: number,\n defaultMaximumKeyInPrice: number,\n cart: ICartState,\n product: SimpleProduct,\n productAvailability: ProductAvailableQuantity | undefined\n) => (result: IAddToCartFailureResult) => {\n let quantityErrorForState: string | undefined;\n let customAmountErrorForState: string | undefined;\n let otherErrorForState: string | undefined = getGenericError(\n result,\n cart,\n props.resources,\n props.context,\n product,\n productAvailability,\n undefined\n );\n\n if (result.failureReason === 'OUTOFSTOCK') {\n quantityErrorForState = result.failureReason === 'OUTOFSTOCK' ? getQuantityError(result.stockLeft, props.resources) : undefined;\n } else if (\n result.failureReason === 'CARTACTIONFAILED' &&\n result.cartActionResult &&\n (result.cartActionResult.substatus === 'MAXQUANTITY' || result.cartActionResult.substatus === 'QUANTITYLIMITS')\n ) {\n quantityErrorForState = getGenericError(result, cart, props.resources, props.context, product, productAvailability, undefined);\n otherErrorForState = undefined; // Prevent error duplication in otherError and quantityError\n }\n\n if (result.failureReason === 'INVALIDCUSTOMAMOUNT') {\n if (state.keyInPriceAmount === undefined || state.keyInPriceAmount < (props.config.minimumKeyInPrice || defaultMinimumKeyInPrice)) {\n const formatedAmountLimit = props.context.cultureFormatter.formatCurrency(\n props.config.minimumKeyInPrice || defaultMinimumKeyInPrice\n );\n customAmountErrorForState = props.resources.invalidSmallCustomAmountText.replace('{minAmount}', formatedAmountLimit);\n } else if (state.keyInPriceAmount > (props.config.maximumKeyInPrice || defaultMaximumKeyInPrice)) {\n const formatedAmountLimit = props.context.cultureFormatter.formatCurrency(\n props.config.maximumKeyInPrice || defaultMaximumKeyInPrice\n );\n customAmountErrorForState = props.resources.invalidLargeCustomAmountText.replace('{maxAmount}', formatedAmountLimit);\n }\n }\n\n callbacks.updateErrorState({\n errorHost: 'ADDTOCART',\n quantityError: quantityErrorForState,\n configureErrors:\n result.failureReason === 'MISSINGDIMENSION'\n ? getConfigureErrors(result.missingDimensions, props.resources, product?.IsGiftCard)\n : {},\n customAmountError: customAmountErrorForState,\n otherError: otherErrorForState\n });\n};\n\n/**\n * On Item Add To Cart function.\n * @param typeName -Type name.\n * @param callbacks -Buybox Callbacks.\n * @returns Change modal open.\n */\nconst onItemAddedToCart = (typeName: string, callbacks: IBuyboxCallbacks) => (result: ICartActionResult) => {\n if (typeName === 'quickview') {\n callbacks.changeModalOpen(false);\n }\n};\n\nexport function getBuyboxAddToCart(\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks,\n defaultMinimumKeyInPrice: number,\n defaultMaximumKeyInPrice: number,\n productDetails?: IProductDetails,\n hasAvailableProducts?: boolean\n): IBuyboxAddToCartViewProps {\n const { id, typeName, context, resources } = props;\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const product = props.data.product?.result ?? productDetails?.product;\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const cart = props.data.cart?.result ?? productDetails?.cart;\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const productAvailableQuantity = props.data.productAvailableQuantity?.result ?? productDetails?.productAvailableQuantity;\n\n const {\n quantity,\n errorState: { configureErrors, quantityError, customAmountError, otherError, errorHost },\n selectedProduct,\n isUpdatingDimension,\n isUpdatingDeliveryOptions,\n isServiceItem\n } = state;\n\n const productAvailability = state.productAvailableQuantity\n ? state.productAvailableQuantity.ProductAvailableQuantity\n : productAvailableQuantity && productAvailableQuantity.length > 0\n ? productAvailableQuantity[0].ProductAvailableQuantity\n : undefined;\n\n const dialogStrings: IAddToCartResources = {\n goToCartText: resources.buyBoxGoToCartText,\n continueShoppingText: resources.buyBoxContinueShoppingText,\n closeNotificationLabel: resources.closeNotificationLabel,\n headerItemOneText: resources.buyBoxSingleItemText,\n headerItemFormatText: resources.buyBoxMultiLineItemFormatText,\n headerMessageText: resources.buyBoxHeaderMessageText,\n freePriceText: resources.priceFree,\n originalPriceText: resources.originalPriceText,\n currentPriceText: resources.currentPriceText,\n addedQuantityText: resources.addedQuantityText\n };\n\n const defaultImageSettings: IImageSettings = {\n viewports: {\n xs: { q: 'w=240&h=240&m=6', w: 0, h: 0 },\n lg: { q: 'w=240&h=240&m=6', w: 0, h: 0 },\n xl: { q: 'w=240&h=240&m=6', w: 0, h: 0 }\n },\n lazyload: true\n };\n\n const isProductQuantityLoading = typeName !== 'quickview' && props.data.productAvailableQuantity.status === 'LOADING';\n if (isProductQuantityLoading) {\n callbacks.changeUpdatingDimension(false);\n }\n\n const isLoadingDeliveryOptions = typeName !== 'quickview' && props.data.deliveryOptions?.status === 'LOADING';\n if (isLoadingDeliveryOptions && callbacks.changeUpdatingDeliveryOptions) {\n callbacks.changeUpdatingDeliveryOptions(false);\n }\n\n telemetryContent = getTelemetryObject(props.context.request.telemetryPageName!, props.typeName, props.telemetry);\n\n // Check if the product delivery mode is electronic\n const emailDeliveryModeCode = props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode;\n // from quickview we are not getting deliveryoptions in props.data hence getting it from quickview state\n const deliveryOptions = typeName === 'quickview' ? state.productDeliveryOptions : props.data.deliveryOptions?.result;\n const isEmailDelivery =\n ArrayExtensions.hasElements(deliveryOptions?.DeliveryOptions) && deliveryOptions!.DeliveryOptions[0].Code === emailDeliveryModeCode;\n const className = _getClassNamePrefix(typeName);\n const isDisabled = isUpdatingDimension && typeName === 'quickview';\n\n return {\n ContainerProps: {\n className: `${className}__add-to-cart-container`\n },\n button: product && (\n \n ),\n errorBlock: (\n \n )\n };\n}\n\n/**\n * Get the React.ReactElement contains price.\n * @param props - The IBuyboxExtentedProps.\n * @param state - The buybox state.\n * @returns The React.ReactElement.\n */\nexport function getBuyboxProductPrice(props: IBuyboxExtentedProps, state: IBuyboxState): React.ReactElement | undefined {\n const { id, typeName, context, resources } = props;\n\n return (\n state.productPrice && (\n featureState.Name === 'Dynamics.AX.Application.RetailSearchPriceRangeFeature'\n )?.IsEnabled\n }\n isSalesAgreementPriceFeatureEnabled={\n props.data.featureState.result?.find(\n featureState => featureState.Name === 'Dynamics.AX.Application.RetailSalesAgreementPriceSupportFeature'\n )?.IsEnabled\n }\n priceResources={{\n priceRangeSeparator: resources.priceRangeSeparator,\n salesAgreementPricePrompt: resources.salesAgreementPricePrompt,\n salesAgreementExpirationDatePrompt: resources.salesAgreementExpirationDatePrompt,\n salesAgreementCommittedQuantityPrompt: resources.salesAgreementCommittedQuantityPrompt,\n salesAgreementRemainingQuantityPrompt: resources.salesAgreementRemainingQuantityPrompt\n }}\n freePriceText={resources.priceFree}\n originalPriceText={resources.originalPriceText}\n currentPriceText={resources.currentPriceText}\n />\n )\n );\n}\n\nexport function getBuyboxProductRating(\n props: IBuyboxExtentedProps,\n productDetails?: IProductDetails\n): React.ReactElement | undefined {\n const { id, typeName, context, resources } = props;\n\n // Since the data action can return no value, and the type is non-nullable due to backward compatibility reasons, the null check is required.\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const ratingsSummary = props.data.ratingsSummary?.result ?? productDetails?.ratingsSummary;\n if (!ratingsSummary || !ratingsSummary.averageRating) {\n return
;\n }\n const ratingComponent = (\n \n );\n\n return ratingComponent;\n}\n\nfunction generateAddToOrderTemplateDialogResources(resources: IBuyboxCommonResources): IAddToOrderTemplateDialogResources {\n return {\n addToOrderTemplateHeader: resources.addToOrderTemplateHeader,\n\n noOrderTemplatesMessage: resources.noOrderTemplatesMessage,\n noOrderTemplatesDescription: resources.noOrderTemplatesDescription,\n\n createAnOrderTemplateButtonText: resources.createAnOrderTemplateButtonText,\n createNewOrderTemplateButtonText: resources.createNewOrderTemplateButtonText,\n cancelOrderTemplateCreationButtonText: resources.cancelOrderTemplateCreationButtonText,\n\n selectTemplatesText: resources.selectTemplatesText,\n addToTemplateButtonText: resources.addToTemplateButtonText,\n lineItemsText: resources.lineItemsText\n };\n}\n\nfunction generateOrderTemplateNameDialogResources(resources: IBuyboxCommonResources): IOrderTemplateNameDialogResources {\n return {\n orderTemplateHeaderLabel: resources.createOrderTemplateHeader,\n orderTemplateTitleLabel: resources.orderTemplateTitle,\n orderTemplateNameAriaLabel: resources.orderTemplateNameAriaLabel,\n orderTemplateDescription: resources.createOrderTemplateDescription,\n\n defaultOrderTemplateName: resources.defaultOrderTemplateName,\n\n orderTemplateButtonLabel: resources.createOrderTemplateButtonText,\n orderTemplateCancelButtonLabel: resources.cancelNewOrderTemplateCreationButtonText\n };\n}\n\nfunction generateItemAddedToOrderTemplateDialogResources(resources: IBuyboxCommonResources): IItemAddedToOrderTemplateDialogResources {\n return {\n viewOrderTemplateButtonText: resources.viewOrderTemplateButtonText,\n continueShoppingButtonText: resources.continueShoppingButtonText,\n itemAddedToOrderTemplateHeaderItemOneText: resources.itemAddedToOrderTemplateHeaderItemOneText,\n itemAddedToOrderTemplateHeaderItemFormatText: resources.itemAddedToOrderTemplateHeaderItemFormatText,\n itemAddedToOrderTemplateHeaderMessageText: resources.itemAddedToOrderTemplateHeaderMessageText,\n freePriceText: resources.priceFree,\n originalPriceText: resources.originalPriceText,\n currentPriceText: resources.currentPriceText\n };\n}\n\nfunction generateDuplicateItemsWhenAddingToOrderTemplateDialogResources(\n resources: IBuyboxCommonResources\n): IDuplicateItemsWhenAddingToOrderTemplateDialogResources {\n return {\n duplicatedProductsHeader: resources.duplicatedProductsHeader,\n duplicatedProductsDescription: resources.duplicatedProductsDescription,\n updateQuantityButtonText: resources.updateQuantityButtonText,\n cancelDuplicateItemsButtonText: resources.cancelDuplicateItemsButtonText\n };\n}\n\n/**\n * Add to order template failed function.\n * @param callbacks -Buybox callbacks.\n * @param resources -Buybox common resources.\n * @param product -Simple product.\n * @returns Update error state.\n */\nconst onAddToOrderTemplateFailed = (callbacks: IBuyboxCallbacks, resources: IBuyboxCommonResources, product: SimpleProduct | undefined) => (\n result: IOrderTemplateActionErrorResult\n) => {\n callbacks.updateErrorState({\n errorHost: 'ORDER_TEMPLATE',\n configureErrors:\n result.status === 'MISSING_DIMENSION' ? getConfigureErrors(result.missingDimensions, resources, product?.IsGiftCard) : {}\n });\n};\n\nexport function getBuyboxProductAddToOrderTemplate(\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks,\n isMultipleCatalogsFeatureEnabled?: boolean,\n catalogId?: number\n): IBuyboxAddToOrderTemplateViewProps | undefined {\n const {\n id,\n typeName,\n context,\n data: {\n orderTemplates: { result: orderTemplates },\n customerInformation: { result: customerInformation }\n },\n resources\n } = props;\n\n const product = props.data.product?.result;\n\n const {\n errorState: { configureErrors, quantityError, customAmountError, otherError, errorHost },\n quantity\n } = state;\n\n // If custom amount is selected, add-to-orderTemplate is disabled\n if (state.isCustomPriceSelected) {\n return undefined;\n }\n const className = _getClassNamePrefix(typeName);\n\n return {\n ContainerProps: {\n className: `${className}__add-to-order-template-container`\n },\n button: product && orderTemplates && (\n \n ),\n errorBlock: (\n \n )\n };\n}\n\n/**\n * Renders add to comparison button for the given product.\n * @param productComparisonButton - React element of the button.\n * @param product - Product information.\n * @param catalogId - Current catalog.\n * @param state - Buybox state.\n * @returns React element of the button.\n */\nexport function getBuyboxProductComparisonButton(\n productComparisonButton: React.ReactNode,\n product: SimpleProduct,\n catalogId: number,\n state: IBuyboxState\n): JSX.Element | undefined {\n if (state.isCustomPriceSelected) {\n return undefined;\n }\n\n validateCatalogId(catalogId);\n return React.cloneElement(productComparisonButton as React.ReactElement, { product, catalogId });\n}\n\n/**\n * Add to wishlist failed function.\n * @param callbacks -Buybox callbacks.\n * @param resources -Buybox resources.\n * @param product -Simple product.\n * @returns Update error state.\n */\nconst onAddToWishlistFailed = (callbacks: IBuyboxCallbacks, resources: IBuyboxCommonResources, product: SimpleProduct | undefined) => (\n result: IWishlistActionErrorResult\n) => {\n callbacks.updateErrorState({\n errorHost: 'WISHLIST',\n configureErrors:\n result.status === 'MISSINGDIMENSION' ? getConfigureErrors(result.missingDimensions, resources, product?.IsGiftCard) : {}\n });\n};\n\nexport function getBuyboxProductAddToWishlist(\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks,\n productDetails?: IProductDetails\n): IBuyboxAddToWishlistViewProps | undefined {\n const {\n id,\n typeName,\n context,\n data: {\n wishlists: { result: wishlists }\n },\n resources\n } = props;\n\n const product = props.data.product?.result ? props.data.product.result : productDetails?.product;\n\n const {\n errorState: { configureErrors, quantityError, customAmountError, otherError, errorHost },\n selectedProduct\n } = state;\n\n // If custom amount is selected, add-to-wishlist is disabled\n if (state.isCustomPriceSelected) {\n return undefined;\n }\n\n const className = _getClassNamePrefix(typeName);\n\n return {\n ContainerProps: {\n className: `${className}__add-to-wishlist-container`\n },\n button: product && (\n \n ),\n errorBlock: (\n \n )\n };\n}\n\n/**\n * On quantity change function.\n * @param callbacks -Buybox callbacks.\n * @returns Update quantity.\n */\nconst onQuantityChangeHandler = (callbacks: IBuyboxCallbacks) => (newValue: number) => {\n if (callbacks.updateQuantity) {\n callbacks.updateQuantity(newValue);\n }\n};\n\nexport function getBuyboxProductQuantity(\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks\n): IBuyboxProductQuantityViewProps {\n const { resources, typeName } = props;\n\n const {\n quantity,\n min,\n max,\n errorState: { quantityError }\n } = state;\n\n const className = _getClassNamePrefix(typeName);\n\n return {\n ContainerProps: {\n className: `${className}__quantity`\n },\n LabelContainerProps: {\n tag: 'label',\n className: `${className}__product-quantity-label`,\n htmlFor: `${className}__product-quantity-input`\n },\n heading:
{resources.productQuantityHeading}
,\n errors: quantityError && (\n \n \n ),\n input: (\n \n )\n };\n}\n\nexport function getBuyboxShopSimilarButton(\n props: IBuyboxExtentedProps,\n buttonType: ShopSimiliarButtonType\n): IBuyboxShopSimilarLookViewProps {\n const { resources, context, typeName } = props;\n const product = props.data.product?.result;\n\n const className = _getClassNamePrefix(typeName);\n const navigationUrl = (shopSimiliarButtonType: ShopSimiliarButtonType) => () => {\n const searchURL = getUrlSync('search', context && context.actionContext);\n const separator = searchURL!.includes('?') ? '&' : '?';\n document.location.href = `${searchURL}${separator}productId=${product &&\n product.RecordId}&recommendation=${shopSimiliarButtonType}`;\n };\n const telemetryText =\n buttonType === ShopSimiliarButtonType.Looks ? TelemetryConstant.ShopSimliarLooks : TelemetryConstant.ShopSimliarDescription;\n const payLoad = getPayloadObject('click', telemetryContent, telemetryText);\n const attribute = getTelemetryAttributes(telemetryContent, payLoad);\n const text = buttonType === ShopSimiliarButtonType.Looks ? resources.shopSimilarLooksText : resources.shopSimilarDescriptionText;\n\n return {\n ContainerProps: {\n className: `${className}__shopsimilar${buttonType}`\n },\n input: (\n \n {text}\n \n )\n };\n}\n\n/**\n * On price change function.\n * @param callbacks -Buybox callbacks.\n * @returns Update key in price.\n */\nconst onPriceChangeHandler = (callbacks: IBuyboxCallbacks) => (event: React.ChangeEvent) => {\n const value = event.currentTarget.value;\n callbacks.updateKeyInPrice(value.length > 0 ? Number(value) : Number.parseFloat(value));\n};\n\nexport function getBuyboxKeyInPrice(\n props: IBuyboxExtentedProps,\n state: IBuyboxState,\n callbacks: IBuyboxCallbacks\n): IBuyboxKeyInPriceViewProps {\n const { config, resources } = props;\n\n const {\n errorState: {}\n } = state;\n\n const className = _getClassNamePrefix(props.typeName);\n\n return {\n ContainerProps: {\n className: `${className}__key_in_price`\n },\n LabelContainerProps: {\n tag: 'label',\n className: `${className}__key_in_price-label`,\n htmlFor: `${className}__key_in_price`\n },\n heading:
{resources.buyboxKeyInPriceLabelHeading}
,\n input: (\n \n )\n };\n}\n\nexport const BuyboxErrorBlock: React.FC = ({\n showError,\n configureErrors,\n quantityError,\n customAmountError,\n otherError,\n resources\n}) => {\n let errorMessages: (string | undefined)[] = [];\n\n errorMessages = Object.values(configureErrors).filter(message => message !== undefined);\n\n if (quantityError) {\n errorMessages.push(quantityError);\n }\n\n if (customAmountError) {\n errorMessages.push(customAmountError);\n }\n\n if (otherError) {\n errorMessages.push(otherError);\n }\n\n return (\n 0} color='danger' assertive aria-label={resources.buyboxErrorMessageHeader}>\n \n {errorMessages.map((message, index) => {\n return (\n
\n {message}\n
\n );\n })}\n
\n );\n};\n\nexport function getQuantityLimitsMessages(\n props: IBuyboxExtentedProps,\n state: IBuyboxState\n): React.ReactElement | undefined {\n const { resources } = props;\n\n const { min, max } = state;\n\n if (!_isOrderQuantityLimitsFeatureEnabled(props) && !_isChannelLimitsFeatureEnabled(props)) {\n return undefined;\n }\n\n return (\n \n {_renderMaxLabel(props, max, resources.maxQuantityText)}\n {_renderMinLabel(props, min, resources.minQuantityText)}\n \n );\n}\n\nexport const RetailDefaultOrderQuantityLimitsFeatureName: string = 'Dynamics.AX.Application.RetailDefaultOrderQuantityLimitsFeature';\nexport const EcommerceQuantityLimitConfigurationsFeatureName: string =\n 'Dynamics.AX.Application.EcommerceQuantityLimitConfigurationsFeature';\nexport const RevertToSiteBuilderOrderQuantityLimitsSettingsCRTFeatureName: string = 'RevertToSiteBuilderOrderQuantityLimitsSettings';\n\nconst _renderMaxLabel = (\n props: IBuyboxExtentedProps,\n max: number | undefined,\n maxQuantityText: string\n): React.ReactElement | undefined => {\n const { resources, typeName } = props;\n const className = _getClassNamePrefix(typeName);\n if (max && max !== 0 && max !== Number.MAX_VALUE) {\n return (\n

\n {resources.informationIconText}\n