{"version":3,"file":"static/js/7.1ccea964b562490c3337.chunk.js","mappings":"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","sources":["webpack://Citta2.0/./src/modules/alphabet-list/alphabet-list.tsx?2a42","webpack://Citta2.0/./src/modules/alphabet-list/alphabet-list.view.tsx?271d","webpack://Citta2.0/./src/modules/citta-product-attribute-companion-product/citta-product-attribute-companion-product.tsx?6020","webpack://Citta2.0/./src/modules/citta-product-attribute-companion-product/citta-product-attribute-companion-product.view.tsx?891b","webpack://Citta2.0/./src/modules/citta-productpdf-specification/citta-productpdf-specification.tsx?4ff0","webpack://Citta2.0/./src/modules/citta-productpdf-specification/citta-productpdf-specification.view.tsx?8ccf","webpack://Citta2.0/./src/themes/citta/citta.tsx?4a09","webpack://Citta2.0/./src/themes/citta/views/order-history.view.tsx?10df","webpack://Citta2.0/./src/modules/business-partner-promotion/components/terms-paragraph.tsx?1a9a","webpack://Citta2.0/./src/modules/business-partner-promotion/business-partner-promotion.tsx?df24","webpack://Citta2.0/./src/modules/business-partner-promotion/business-partner-promotion.view.tsx?1ff2","webpack://Citta2.0/./src/modules/place-holder-for-container-preview/place-holder-for-container-preview.tsx?605e","webpack://Citta2.0/./src/modules/back-top-footer/back-top-footer.tsx?f47e","webpack://Citta2.0/./src/modules/html-block/html-block.tsx?c080","webpack://Citta2.0/./src/modules/html-block/html-block.view.tsx?b072","webpack://Citta2.0/./src/modules/product-page-summary/product-page-summary.tsx?2924","webpack://Citta2.0/./src/modules/starter/starter.tsx?aade"],"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\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\r\n\r\nimport { IAlphabetListData } from './alphabet-list.data';\r\nimport { IAlphabetListProps, IAlphabetItemsDetailsData } from './alphabet-list.props.autogenerated';\r\n\r\nexport interface IAlphabetListViewProps extends IAlphabetListProps {\r\n alphapetContainer: IModuleProps;\r\n letterItems: React.ReactNode;\r\n}\r\n\r\n/**\r\n *\r\n * AlphabetList component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass AlphabetList extends React.PureComponent> {\r\n public render(): JSX.Element | null {\r\n\r\n const viewProps: IAlphabetListViewProps = {\r\n ...(this.props as IAlphabetListProps),\r\n alphapetContainer: {\r\n moduleProps: this.props,\r\n className: 'AlphabetList'\r\n },\r\n letterItems: this._renderLetter(this.props.config.alphabetItemsDetails, this.props.config.displayTwoColumns, this.props.config.letterToSplitAt)\r\n };\r\n\r\n return this.props.renderView(viewProps);\r\n }\r\n\r\n private _renderLetter(alphabetItemsDetails?: IAlphabetItemsDetailsData[], displayTwoColumns?: boolean, letterToSplitAt?: string): JSX.Element {\r\n console.log('displayTwoColumns', displayTwoColumns)\r\n if (displayTwoColumns) {\r\n return this._renderSplitColumn(alphabetItemsDetails, letterToSplitAt)\r\n }\r\n\r\n return this._renderSingleColumn(alphabetItemsDetails)\r\n }\r\n\r\n private _renderItem(alphabetItemDetail: IAlphabetItemsDetailsData): JSX.Element {\r\n return (\r\n
\r\n

{alphabetItemDetail.letter}

\r\n
\r\n
\r\n {alphabetItemDetail.subMenus?.map(item => {\r\n return (\r\n <>\r\n {item.name}\r\n \r\n )\r\n })}\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _renderSplitColumn(alphabetItemsDetails?: IAlphabetItemsDetailsData[], letterToSplitAt?: string): JSX.Element {\r\n let leftSide = true;\r\n const leftListNode: JSX.Element[] = [];\r\n const rightListNode: JSX.Element[] = [];\r\n alphabetItemsDetails?.forEach(alphabetItem => {\r\n\r\n if (alphabetItem.letter === letterToSplitAt) {\r\n leftSide = false\r\n }\r\n\r\n if (leftSide) {\r\n leftListNode.push(this._renderItem(alphabetItem))\r\n } else {\r\n rightListNode.push(this._renderItem(alphabetItem))\r\n }\r\n })\r\n\r\n return (\r\n
\r\n
{leftListNode}
\r\n
{rightListNode}
\r\n
\r\n )\r\n }\r\n\r\n private _renderSingleColumn(alphabetItemsDetails?: IAlphabetItemsDetailsData[]): JSX.Element {\r\n const listNode = alphabetItemsDetails?.map(alphabetItem => {\r\n return this._renderItem(alphabetItem)\r\n })\r\n\r\n return (\r\n <>\r\n {listNode}\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default AlphabetList;\r\n","/*!\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\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\n\r\nimport { IAlphabetListViewProps } from './alphabet-list';\r\n\r\nexport default (props: IAlphabetListViewProps) => {\r\n return ( \r\n \r\n {props.letterItems}\r\n \r\n );\r\n};\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\n/* eslint-disable no-duplicate-imports */\r\n\r\nimport MsDyn365 from '@msdyn365-commerce/core';\r\nimport { Button, IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport { ICittaProductAttributeCompanionProductData } from './citta-product-attribute-companion-product.data';\r\nimport { ICittaProductAttributeCompanionProductProps } from './citta-product-attribute-companion-product.props.autogenerated';\r\n\r\nexport interface ICittaProductAttributeCompanionProductViewProps extends ICittaProductAttributeCompanionProductProps {\r\n linkItem?: INodeProps;\r\n className?: string;\r\n contentBlockContainer: IModuleProps;\r\n}\r\n/**\r\n *\r\n * ContentCard component\r\n * @extends {React.PureComponent}\r\n */\r\n\r\nclass CittaProductAttributeCompanionProduct extends React.PureComponent> {\r\n //const attributeName\r\n public render(): JSX.Element | null {\r\n const {\r\n className\r\n } = this.props.config;\r\n\r\n const content: ICittaProductAttributeCompanionProductData = this.props.data;\r\n\r\n const attributes = content.attributes.result;\r\n const linkAttribute = attributes?.find(attribute => attribute.Name === this.props.config.attributeName);\r\n if (!linkAttribute || !linkAttribute.TextValue) {\r\n return null;\r\n }\r\n\r\n const attribute = linkAttribute.TextValue.split('|');\r\n const attributeName = attribute[0];\r\n const attributeLink = attribute[1];\r\n\r\n const contentBlockviewProps = {\r\n ...this.props,\r\n linkItem: this._renderLink(attributeLink, attributeName),\r\n contentBlockContainer: {\r\n moduleProps: this.props,\r\n className: classnames('product-attribute-companion-product', className),\r\n }\r\n };\r\n return this.props.renderView(contentBlockviewProps) as React.ReactElement;\r\n }\r\n\r\n private _renderLink = (linkUrl: String, attributeName: String) => {\r\n return (\r\n this._goToLink(linkUrl)}\r\n >\r\n {attributeName}\r\n \r\n )\r\n };\r\n\r\n private _goToLink = (linkUrl: String) => {\r\n if (MsDyn365.isBrowser && typeof window !== 'undefined') {\r\n const baseUrl = window.location.origin;\r\n if (baseUrl.length) {\r\n window.location.assign(`${baseUrl}/${linkUrl}`);\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport default CittaProductAttributeCompanionProduct;\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\n/* eslint-disable no-duplicate-imports */\r\nimport { Module } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { ICittaProductAttributeCompanionProductViewProps } from './citta-product-attribute-companion-product';\r\n\r\nconst ContentBlockView: React.FC = (props) => {\r\n const {\r\n contentBlockContainer,\r\n linkItem\r\n } = props;\r\n\r\n if (linkItem) {\r\n return (\r\n \r\n { /* @ts-ignore */ }\r\n {linkItem}\r\n \r\n );\r\n } else {\r\n return (null);\r\n }\r\n};\r\n\r\nexport default ContentBlockView;\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\n\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\n\r\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport { ICittaProductpdfSpecificationData } from './citta-productpdf-specification.data';\r\nimport { ICittaProductpdfSpecificationProps } from './citta-productpdf-specification.props.autogenerated';\r\n\r\nexport interface ICittaProductpdfSpecificationViewProps extends ICittaProductpdfSpecificationProps {\r\n PdfSpecificationContainer: IModuleProps;\r\n PdfSpecificationContentContainer: INodeProps;\r\n PdfSpecificationContent: INodeProps;\r\n PdfSpecificationContentShow: boolean;\r\n ProductSku: string | undefined;\r\n}\r\n\r\n/**\r\n *\r\n * CittaProductpdfSpecification component\r\n * @extends {React.Component>}\r\n */\r\n\r\n@observer\r\nclass CittaProductpdfSpecification extends React.Component> {\r\n public render(): JSX.Element | null {\r\n const { config } = this.props;\r\n\r\n const content: ICittaProductpdfSpecificationData = this.props.data;\r\n\r\n const pdfSpecificationContent = this._getProductSpecificationContent(content, config.pdfSpecificationTitle ? config.pdfSpecificationTitle : '');\r\n const productSku = content && content.product && content.product.result && content.product.result.ItemId;\r\n const CittaProductpdfSpecificationViewProps = {\r\n ...this.props,\r\n PdfSpecificationContainer: {\r\n moduleProps: this.props,\r\n className: 'pdf-specification'\r\n },\r\n PdfSpecificationContentContainer: {\r\n className: 'pdf-specification-content',\r\n 'aria-label': config.pdfSpecificationTitle\r\n },\r\n PdfSpecificationContent: {\r\n tag: 'a',\r\n href: pdfSpecificationContent,\r\n 'aria-label': `Click here to read ${config.pdfSpecificationTitle}`,\r\n target: '_blank',\r\n rel: \"noopener\"\r\n },\r\n PdfSpecificationContentShow : pdfSpecificationContent ? true : false,\r\n ProductSku: productSku\r\n };\r\n\r\n return this.props.renderView(CittaProductpdfSpecificationViewProps) as React.ReactElement;\r\n }\r\n\r\n private _getProductSpecificationContent(content: ICittaProductpdfSpecificationData, specificationTitle: string): string {\r\n const productSpec = content.productSpecificationData.result;\r\n let contentText = '';\r\n if (productSpec) {\r\n productSpec.some(spec => {\r\n if (spec.TextValue && spec.Name === specificationTitle) {\r\n contentText = spec.TextValue;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return contentText;\r\n }\r\n}\r\n\r\nexport default CittaProductpdfSpecification;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { ICittaProductpdfSpecificationViewProps } from './citta-productpdf-specification';\r\n\r\nexport default (props: ICittaProductpdfSpecificationViewProps) => {\r\n const {PdfSpecificationContainer, PdfSpecificationContentContainer, PdfSpecificationContentShow, PdfSpecificationContent} = props;\r\n const {pdfSpecificationTitle} = props.config;\r\n\r\n if (PdfSpecificationContentShow) {\r\n return (\r\n \r\n \r\n {pdfSpecificationTitle}\r\n \r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n};\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\n\r\nimport * as React from 'react';\r\n\r\n// TODO: Current build require at least one tsx file\r\nexport default () =>
;\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 {\r\n IGroup,\r\n IGroupDelivery,\r\n IGroups,\r\n IHeader,\r\n IList,\r\n IOrderHistoryResources,\r\n IOrderHistoryViewProps,\r\n IOrderInformation,\r\n ISalesOrder\r\n} from '@msdyn365-commerce-modules/order-management';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport const OrderHistoryOrderInfomation: React.FC = ({\r\n orderInformationProps,\r\n salesId,\r\n channelName,\r\n createdDate,\r\n count,\r\n amount,\r\n channelReferenceId,\r\n processingLabel,\r\n orderIdLabel\r\n}) => (\r\n \r\n {channelName}\r\n {_renderProcessStatus(salesId, orderIdLabel!, processingLabel!)}\r\n {createdDate}\r\n {count}\r\n {amount}\r\n {channelReferenceId}\r\n \r\n);\r\n\r\nfunction _renderProcessStatus(salesId: React.ReactNode, orderIdLabelText: string, processingLabelText: string): React.ReactNode {\r\n return (\r\n \r\n {typeof salesId === 'string' ? (orderIdLabelText?.concat(' ', processingLabelText!)) : salesId}\r\n \r\n );\r\n}\r\n\r\nexport const OrderHistoryGroupDelivery: React.FC = ({\r\n deliveryProps,\r\n heading,\r\n count,\r\n processing,\r\n address,\r\n trackingInfo\r\n}) => (\r\n \r\n {heading}\r\n {count}\r\n {processing}\r\n {address}\r\n {/* {trackingInfo} */}\r\n \r\n);\r\n\r\nexport const OrderHistoryGroup: React.FC = ({ groupProps, delivery, salesLinesProps, salesLines }) => (\r\n \r\n {delivery && }\r\n {salesLines && (\r\n \r\n {salesLines.map(salesLine => (\r\n {salesLine.salesLine}\r\n ))}\r\n \r\n )}\r\n \r\n);\r\n\r\nexport const OrderHistoryGroups: React.FC = ({ groupsProps, groups }) => (\r\n \r\n {groups.map((group, index) => (\r\n \r\n ))}\r\n \r\n);\r\n\r\nexport const OrderHistoryHeader: React.FC = ({ headerProps, heading, orderCountLabel }) => (\r\n \r\n {heading}\r\n {orderCountLabel}\r\n \r\n);\r\n\r\nexport const OrderHistorySalesOder: React.FC = ({ salesOrderProps, orderInfomation, groups, orderDetailsLink, ...resources }) => (\r\n \r\n {orderInfomation && }\r\n {groups && }\r\n {orderDetailsLink}\r\n \r\n);\r\n\r\nexport const OrderHistoryList: React.FC = ({ listProps, salesOrders, ...resources }) => (\r\n \r\n {salesOrders && salesOrders.map((salesOrder, index) => )}\r\n \r\n);\r\n\r\nconst OrderHistoryView: React.FC = ({\r\n orderHistoryProps,\r\n header,\r\n alert,\r\n loading,\r\n emptyMessage,\r\n backToShoppingLink,\r\n list,\r\n moreButton,\r\n resources\r\n}) => (\r\n \r\n {header && }\r\n {loading}\r\n {alert && (\r\n <>\r\n {alert}\r\n {backToShoppingLink}\r\n \r\n )}\r\n {emptyMessage && (\r\n <>\r\n {emptyMessage}\r\n {backToShoppingLink}\r\n \r\n )}\r\n {list && }\r\n {moreButton && moreButton}\r\n \r\n);\r\n\r\nexport default OrderHistoryView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IBusinessPartnerPromotionTermsParagraphProp {\n description: string;\n className: string;\n title?: string;\n titleClassName?: string;\n}\n\nexport const BusinessPartnerPromotionTermsParagraph: React.FC = ({\n title,\n description,\n className,\n titleClassName\n}) => {\n return (\n
  • \n {title &&

    {title}

    }\n

    {description}

    \n
  • \n );\n};\n\nexport default BusinessPartnerPromotionTermsParagraph;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport * as MsDyn365 from '@msdyn365-commerce/core';\nimport { Button, Alert, IModuleProps, Modal, ModalBody, ModalHeader } from '@msdyn365-commerce-modules/utilities';\nimport { promoteToSellerAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/BusinessPartnersDataActions.g';\nimport { BusinessPartnerUser } from '@msdyn365-commerce/retail-proxy';\nimport { ObjectExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Text } from '@msdyn365-commerce/core';\nimport { IBusinessPartnerPromotionData } from './business-partner-promotion.data';\nimport { IBusinessPartnerPromotionProps } from './business-partner-promotion.props.autogenerated';\nimport { BusinessPartnerPromotionTermsParagraph } from './components';\n\nexport interface IBusinessPartnerPromotionViewProps extends IBusinessPartnerPromotionProps {\n businessPartnerPromotionProps: IModuleProps;\n heading: React.ReactNode;\n notificationMessage?: React.ReactNode;\n sellerDescriptions: React.ReactNode[];\n termsOfServiceCheckbox: React.ReactNode;\n termsOfServiceModal: React.ReactNode;\n submitButton: React.ReactNode;\n}\n\nexport interface IBusinessPartnerPromotionState {\n showTermsOfService: boolean;\n showSubmitButton: boolean;\n termsOfServiceChecked: boolean;\n termsOfServiceModalOpened: boolean;\n errorMessage?: string;\n notificationMessage?: string;\n}\n\n/**\n * The class name root for the module.\n */\nexport const moduleClassName: string = 'ms-business-partner-promotion';\n\n/**\n *\n * BusinessPartnerPromotion component\n * @extends {React.PureComponent>}\n */\nclass BusinessPartnerPromotion extends React.Component<\n IBusinessPartnerPromotionProps,\n IBusinessPartnerPromotionState\n> {\n constructor(props: IBusinessPartnerPromotionProps) {\n super(props);\n this.state = {\n showTermsOfService: true,\n showSubmitButton: true,\n termsOfServiceChecked: false,\n termsOfServiceModalOpened: false,\n errorMessage: undefined,\n notificationMessage: undefined\n };\n }\n\n public render(): JSX.Element | null {\n const {\n showSubmitButton,\n showTermsOfService,\n termsOfServiceChecked,\n termsOfServiceModalOpened,\n errorMessage,\n notificationMessage\n } = this.state;\n const { resources, data, config } = this.props;\n const { heading, termsOfService } = config;\n const { authorizationErrorMessage } = resources;\n const { b2bUserInformation } = data;\n const canSubmit = this.isAdminUser(b2bUserInformation.result);\n let error: string | undefined = errorMessage;\n\n // do not show error message when the API is still in loading.\n if (!canSubmit && b2bUserInformation.status !== 'LOADING') {\n error = authorizationErrorMessage;\n }\n const btnEnabled = canSubmit && termsOfServiceChecked;\n\n const viewProps: IBusinessPartnerPromotionViewProps = {\n ...this.props,\n businessPartnerPromotionProps: {\n moduleProps: this.props,\n className: classnames(moduleClassName, moduleClassName)\n },\n heading: ,\n notificationMessage: this.renderNotificationBar(error, notificationMessage),\n sellerDescriptions: this.renderSellerDescriptions(),\n termsOfServiceCheckbox: showTermsOfService && (\n
    \n \n {resources.termsOfServiceAgreementText}\n \n {resources.termsOfServiceLinkText}\n \n
    \n ),\n termsOfServiceModal: (\n \n {resources.termsOfServiceModalHeading}\n \n \n \n \n ),\n submitButton: showSubmitButton && (\n
    \n \n {resources.submitRequestLabel}\n \n
    \n )\n };\n\n return this.props.renderView(viewProps);\n }\n\n private renderNotificationBar(errorMessage: string | undefined, notificationMessage: string | undefined): React.ReactNode {\n let notificationBar: React.ReactNode = null;\n if (errorMessage) {\n notificationBar = {errorMessage};\n } else if (notificationMessage) {\n notificationBar = {notificationMessage};\n }\n return notificationBar;\n }\n\n private renderSellerDescriptions(): React.ReactNode[] {\n const { config } = this.props;\n const results: React.ReactNode[] = [];\n const sellerDescriptions = config.sellerDescriptions;\n\n if (!sellerDescriptions) {\n return results;\n }\n\n return sellerDescriptions.map((description, idx1) => {\n return (\n
    \n \n
      \n {description.bulletPoints?.map((bulletPoint, idx2) => {\n return (\n \n );\n })}\n
    \n
    \n );\n });\n }\n\n private isAdminUser(user: BusinessPartnerUser | undefined): boolean {\n return (\n !ObjectExtensions.isNullOrUndefined(user) && !StringExtensions.isNullOrEmpty(user.BusinessPartnerId) && user.IsAdmin === true\n );\n }\n\n private readonly onCheckBoxChange = (event: React.ChangeEvent) => {\n this.setState({\n termsOfServiceChecked: event.target.checked\n });\n };\n\n private readonly onToggleTermOfServiceModal = () => {\n this.setState({\n termsOfServiceModalOpened: !this.state.termsOfServiceModalOpened\n });\n };\n\n private readonly onSubmit = async (event: React.MouseEvent) => {\n const { context, data, resources } = this.props;\n const { errorMessageText, promoteToSellerSubmitSuccessMessage } = resources;\n const businessPartnerId = data.b2bUserInformation.result?.BusinessPartnerId ?? '';\n\n try {\n await promoteToSellerAsync({ callerContext: context.actionContext }, businessPartnerId);\n this.setState({\n showSubmitButton: false,\n showTermsOfService: false,\n errorMessage: undefined,\n notificationMessage: promoteToSellerSubmitSuccessMessage\n });\n } catch {\n this.setState({\n showTermsOfService: true,\n showSubmitButton: true,\n errorMessage: errorMessageText,\n notificationMessage: undefined\n });\n }\n };\n}\n\nexport default BusinessPartnerPromotion;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IBusinessPartnerPromotionViewProps } from './business-partner-promotion';\n\n/**\n * View layout of business partner promotion module.\n * @param props - React props of the component.\n * @returns Functional component.\n */\nconst businessPartnersView: React.FC = props => {\n const {\n businessPartnerPromotionProps,\n heading,\n notificationMessage,\n sellerDescriptions,\n termsOfServiceCheckbox,\n termsOfServiceModal,\n submitButton\n } = props;\n return (\n \n {heading}\n {notificationMessage}\n {sellerDescriptions}\n {termsOfServiceCheckbox}\n {termsOfServiceModal}\n {submitButton}\n \n );\n};\n\nexport default businessPartnersView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { PlaceholderForContainerPreviewComponent } from '@msdyn365-commerce/core';\n\nexport default PlaceholderForContainerPreviewComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { BackToTop, getTelemetryObject, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IBackTopFooterProps } from './back-top-footer.props.autogenerated';\n\n/**\n *\n * BackTopFooter component.\n * @extends {React.PureComponent>}\n */\nclass BackTopFooter extends React.PureComponent> {\n private readonly editProps: Msdyn365.ITextEditProps = {\n requestContext: this.props.context.request,\n onEdit: (event: Msdyn365.ContentEditableEvent) => (this.props.config.backtoTopText = event.target.value)\n };\n\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IBackTopFooterProps<{}>) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n if (!this.props.config.destination) {\n this.props.telemetry.error('BackToTop.destination has not been provided, module wont render.');\n return null;\n }\n\n return (\n \n );\n }\n}\n\nexport default BackTopFooter;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\nimport * as MsDyn365 from '@msdyn365-commerce/core';\nimport classnames from 'classnames';\n\nimport { IHtmlBlockProps } from './html-block.props.autogenerated';\n\nexport interface IHtmlBlockViewProps extends IHtmlBlockProps<{}> {\n content?: React.ReactNode;\n className?: string;\n}\n\n/**\n *\n * HtmlBlock component\n * @extends {React.PureComponent>}\n */\nclass HtmlBlock extends React.PureComponent> {\n public render(): JSX.Element | null {\n const { content, className } = this.props.config;\n const text = content && (\n \n );\n const htmlBlockViewProps = {\n ...this.props,\n content: text,\n className: classnames('ms-html-block', className)\n };\n return this.props.renderView(htmlBlockViewProps) as React.ReactElement;\n }\n\n public handleTextChange = (event: MsDyn365.ContentEditableEvent) => (this.props.config.content = event.target.value);\n}\n\nexport default HtmlBlock;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\nimport { IHtmlBlockViewProps } from './html-block';\n\nconst HtmlBlockView: React.FC = props => (\n
    \n {props.content}\n
    \n);\n\nexport default HtmlBlockView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { HtmlHeadInclude, IAny, IGeneric } from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { IProductPageSummaryData } from './product-page-summary.data';\nimport { IProductPageSummaryProps } from './product-page-summary.props.autogenerated';\n\n/**\n *\n * ProductPageSummary component.\n * @extends {React.PureComponent}\n */\nclass ProductPageSummary extends React.PureComponent> {\n public render(): JSX.Element {\n if (this.props.data.productPageSummary.result === undefined) {\n throw new Error('PageSummaryData input to page-summary is undefined. Unable to generate page-summary');\n }\n let {\n data: {\n productPageSummary: {\n result: { title, description, keywords, sharingImageUrl, faviconUrl }\n }\n }\n } = this.props;\n\n const {\n config,\n context,\n data: {\n productPageSummary: {\n result: { canonicalUrl, productId, productBrand, price }\n }\n }\n } = this.props;\n\n // Product SEO metadata specific information - non-overridable\n const productName = title;\n const productDescription = description;\n const productImageUrl = sharingImageUrl;\n\n // Override values coming from data action if config values are provided\n title = config.title || title;\n description = config.description || description;\n keywords = config.keywords || keywords;\n sharingImageUrl = (config.sharingImage && config.sharingImage.src) || sharingImageUrl;\n faviconUrl = config.faviconUrl || faviconUrl;\n\n // Construct page title with suffix and prefix if provided from app settings\n const pageTitle = this._constructPageTitle(title, context && context.request && context.request.app);\n return (\n <>\n \n {pageTitle && {pageTitle}}\n {description && }\n {keywords && }\n {canonicalUrl && }\n {faviconUrl && }\n \n {this._renderProductMetadata(\n productName,\n productDescription,\n productImageUrl,\n canonicalUrl,\n productId,\n price,\n context.request.channel?.Currency,\n productBrand\n )}\n {!config.disableOgTags && this._renderOgTags(pageTitle, description, sharingImageUrl)}\n {!config.disableTwitterTags && this._renderTwitterTags(pageTitle, description, sharingImageUrl)}\n \n );\n }\n\n /**\n * Renders the facebook and other social media specific metadata tags.\n *\n * @param title Page title.\n * @param description Product description.\n * @param sharingImageUrl Primary product image url.\n */\n private _renderOgTags(title: string | undefined, description: string | undefined, sharingImageUrl: string | undefined): JSX.Element {\n return (\n \n {title && }\n {description && }\n {sharingImageUrl && }\n \n \n );\n }\n\n /**\n * Constructs and renders the JSON-LD tag used to output product specific metadata used by search engine crawlers.\n *\n * @param productName Product name.\n * @param description Product description.\n * @param sharingImageUrl Primary product image url.\n * @param canonicalUrl Product canonical url.\n * @param productId Master product id.\n * @param price Proudct price.\n * @param currencyCode Current channel currency code.\n * @param productBrand Product brand.\n */\n private _renderProductMetadata(\n productName: string | undefined,\n description: string | undefined,\n sharingImageUrl: string | undefined,\n canonicalUrl: string | undefined,\n productId: number | undefined,\n price: number | undefined,\n currencyCode: string | undefined,\n productBrand: string | undefined\n ): JSX.Element {\n // Construct the JSON-LD data that contains the product metadata information used by search enginge crawlers\n const productMetaData = JSON.stringify({\n '@context': 'http://schema.org',\n '@type': 'Product',\n name: productName,\n description,\n image: sharingImageUrl,\n sku: productId,\n brand: {\n '@type': 'Brand',\n name: productBrand\n },\n offers: {\n '@type': 'Offer',\n url: canonicalUrl,\n priceCurrency: currencyCode,\n price\n }\n });\n return (\n \n {/* eslint-disable-next-line react/no-danger -- Implementation is a copy.*/}\n