{"version":3,"file":"static/js/29.c2b7a53d7510759eef62.chunk.js","mappings":"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","sources":["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/alphabet-list/alphabet-list.tsx?2a42","webpack://Citta2.0/./src/modules/checkout-section-container/components/loading.tsx?edc6","webpack://Citta2.0/./src/modules/checkout-section-container/checkout-section-container.tsx?5c75","webpack://Citta2.0/./src/modules/citta-productpdf-specification/citta-productpdf-specification.tsx?4ff0","webpack://Citta2.0/./src/modules/alphabet-list/alphabet-list.view.tsx?271d","webpack://Citta2.0/./src/modules/checkout-section-container/checkout-section-container.view.tsx?de8f","webpack://Citta2.0/./src/modules/citta-productpdf-specification/citta-productpdf-specification.view.tsx?8ccf","webpack://Citta2.0/./src/modules/business-partner-promotion/business-partner-promotion.view.tsx?1ff2"],"sourcesContent":["/*!\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","/*!\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 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. 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\nconst Loading: React.FC = () =>
    ;\r\n\r\nexport default Loading;\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 { IModuleStateManager, IModuleStateProps, withModuleState } from '@msdyn365-commerce-modules/checkout-utilities';\r\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport classname from 'classnames';\r\nimport get from 'lodash/get';\r\nimport { reaction } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport { ICheckoutSectionContainerData } from './checkout-section-container.data';\r\nimport { ICheckoutSectionContainerProps } from './checkout-section-container.props.autogenerated';\r\nimport LoadingComponent from './components/loading';\r\nimport ReCAPTCHA from 'react-google-recaptcha';\r\nimport * as MsDyn365 from '@msdyn365-commerce/core';\r\nimport FingerprintJS, { Agent as PublicAgent } from '@fingerprintjs/fingerprintjs-pro';\r\n\r\nexport interface ICheckoutSectionContainerModuleProps extends ICheckoutSectionContainerProps, IModuleStateProps {\r\n enableControl: boolean;\r\n}\r\n\r\nexport enum PaymentType {\r\n Adyen = 'checkout-payment-instrument',\r\n PayByAccount = 'citta-checkout-customer-account-payment'\r\n}\r\nexport interface ICheckoutSectionContainerItem {\r\n id: string;\r\n loading?: React.ReactNode;\r\n itemProps: INodeProps;\r\n item: React.ReactNode;\r\n accordion: React.ReactNode\r\n}\r\n\r\nexport interface ICheckoutSectionContainerState {\r\n activeAccordion: string;\r\n}\r\n\r\nexport interface ICheckoutSectionContainerState {\r\n reCaptchaChecked: boolean;\r\n rCCError: boolean;\r\n activeAccordion: string;\r\n fingerPrintError: boolean;\r\n fpClient: PublicAgent | null;\r\n requestId:string\r\n}\r\n\r\nexport interface ICheckoutSectionContainerViewProps extends ICheckoutSectionContainerProps<{}> {\r\n className: string;\r\n checkoutPlainContainerProps: IModuleProps;\r\n items: ICheckoutSectionContainerItem[];\r\n // accordion: React.ReactNode;\r\n reCaptcha: React.ReactNode;\r\n fingerPrintError: React.ReactNode;\r\n\r\n}\r\n/**\r\n *\r\n * CheckoutPlainContainer component\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nexport class CheckoutPlainContainer extends React.Component {\r\n\r\n public constructor(props: ICheckoutSectionContainerModuleProps) {\r\n super(props);\r\n this.state = {\r\n activeAccordion: PaymentType.PayByAccount,\r\n reCaptchaChecked: false,\r\n rCCError: false,\r\n fingerPrintError: false,\r\n fpClient:null,\r\n requestId: ''\r\n };\r\n\r\n }\r\n private _recaptchaRef: React.RefObject = React.createRef();\r\n private recaptchaErrorMessage: string | undefined;\r\n public async componentDidMount(): Promise {\r\n const items = this.getItems();\r\n const childIds = items.map((item: React.ReactNode) => get(item, 'props.id'));\r\n\r\n if(this.props.config.reCaptchaOption){\r\n FingerprintJS.load({\r\n apiKey: \"SavNfJLiPxQvtGc0eGD5\",\r\n endpoint: [\r\n \"https://fp.cittadesign.com\",\r\n FingerprintJS.defaultEndpoint\r\n ],\r\n scriptUrlPattern: [\r\n \"https://fp.cittadesign.com/web/v//loader_v.js\",\r\n FingerprintJS.defaultScriptUrlPattern\r\n ]\r\n })\r\n .then(fpClient => this.setState({ fpClient }))\r\n .catch(error => console.error('FingerprintJS initialization failed:', error));\r\n }\r\n this.props.moduleState.init({\r\n onEdit: this.onEdit,\r\n onCancel: this.onCancel,\r\n onSubmit: this.onSubmit,\r\n childIds,\r\n }\r\n );\r\n\r\n reaction(\r\n () => this.props.moduleState.isReady,\r\n () => {\r\n this.onContainerReady();\r\n }\r\n );\r\n\r\n reaction(\r\n () => this.props.moduleState.shouldSubmitContainer,\r\n () => {\r\n this.onSubmit();\r\n }\r\n );\r\n }\r\n\r\n public componentDidUpdate(): void {\r\n if (!this.props.moduleState.hasExternalSubmitGroup) {\r\n return;\r\n }\r\n /**\r\n * Review all modules to updating status if one of the modules has error\r\n */\r\n const { childIds, hasError, getModule } = this.props.moduleState;\r\n const hasReadyItems = childIds.some((childId: string) => {\r\n const state = getModule(childId);\r\n return !!state && state.isReady;\r\n });\r\n if (hasReadyItems && hasError) {\r\n this.onEdit();\r\n }\r\n }\r\n public render(): JSX.Element | null {\r\n const {\r\n enableControl,\r\n moduleState,\r\n config: { width, paymentAccordion, creditCardIcon }\r\n } = this.props;\r\n const items = this.getItems();\r\n if (!items.length) {\r\n this.props.context.telemetry.error('Checkout section content is empty, module wont render');\r\n return null;\r\n }\r\n\r\n const moduleClassName = classname(\r\n 'ms-checkout-section-container',\r\n {\r\n 'has-initialized': moduleState.hasInitialized,\r\n 'is-ready': moduleState.isReady,\r\n 'is-updating': !moduleState.isReady,\r\n container: width === 'container',\r\n 'col-12 fullwidth': width === 'fluid'\r\n },\r\n this.props.config.className\r\n );\r\n\r\n const viewProps: ICheckoutSectionContainerViewProps = {\r\n ...this.props,\r\n\r\n className: moduleClassName,\r\n reCaptcha: this._renderReCaptcha(),\r\n fingerPrintError: this._renderFingerPrintErrorMessage(),\r\n checkoutPlainContainerProps: {\r\n moduleProps: this.props,\r\n className: moduleClassName\r\n },\r\n items: items.map((item: React.ReactNode) => {\r\n const childId = get(item, 'props.id');\r\n const childTypeName = get(item, \"props.typeName\");\r\n const state = moduleState.getModule(childId);\r\n const customerInfo = get(this.props, 'data.customerInformation.result');\r\n const platform = get(this.props, 'context.request.app.platform');\r\n const isAllowOnAccountPayment = customerInfo && customerInfo.AllowOnAccountPayment && platform &&\r\n (platform.enableCustomerAccountPayment === 'all' ||\r\n (platform.enableCustomerAccountPayment === 'b2b' && customerInfo.IsB2b === true) ||\r\n (platform.enableCustomerAccountPayment === 'b2c' && customerInfo.IsB2b === false))\r\n // Modules has not completed initializing or it's disable \r\n\r\n // let isPayment = childTypeName ===PaymentType.PayByAccount || childTypeName ===PaymentType.Adyen\r\n const hidden = state.hasModuleState && (!state.hasInitialized || state.isDisabled || state.isSkipped) || (isAllowOnAccountPayment && paymentAccordion ? this.state.activeAccordion !== childTypeName : '');\r\n\r\n return {\r\n id: childId,\r\n loading: state.hasModuleState && !state.hasInitialized && ,\r\n itemProps: {\r\n 'data-type-name': state.typeName,\r\n className: classname('ms-checkout-section-container__item', {\r\n hidden: hidden,\r\n initialized: state.hasInitialized,\r\n disabled: state.isDisabled,\r\n skipped: state.isSkipped,\r\n ready: state.isReady,\r\n updating: state.isUpdating,\r\n pending: state.isPending\r\n })\r\n },\r\n accordion: isAllowOnAccountPayment && paymentAccordion ? this._renderAccordionItem(item, creditCardIcon) : null,\r\n item: React.cloneElement(item as React.ReactElement, { enableControl })\r\n };\r\n })\r\n };\r\n return this.props.renderView(viewProps) as React.ReactElement;\r\n }\r\n\r\n private _renderReCaptcha(): React.ReactNode {\r\n if (this.props.config.reCaptchaOption) {\r\n return (\r\n
    \r\n
    \r\n {this.state.rCCError ? this._renderRecaptchaAlert('recaptcha-error') : ''}\r\n this._submit()}\r\n />\r\n
    \r\n
    \r\n );\r\n }\r\n return null;\r\n }\r\n\r\n private _renderFingerPrintErrorMessage(): React.ReactNode {\r\n if (this.state.fingerPrintError) {\r\n return (\r\n
    \r\n

    Error message

    \r\n

    \r\n {this.props.config.fingerPrintErrorMessage}\r\n

    \r\n
    \r\n )\r\n }\r\n return null\r\n }\r\n\r\n private _renderRecaptchaAlert(className: string): JSX.Element {\r\n\r\n if (this.props.config.reCaptchaOption) {\r\n if (!this.state.reCaptchaChecked) {\r\n this.recaptchaErrorMessage = this.props.resources.recaptchaErrorMessage;\r\n }\r\n }\r\n\r\n const rCCError = this.state.rCCError;\r\n return (\r\n <>\r\n {rCCError && (\r\n \r\n {\r\n this.recaptchaErrorMessage &&\r\n <>\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n private async _submit(): Promise {\r\n const { fpClient } = this.state;\r\n if (!fpClient) {\r\n console.error('FingerprintJS client not initialized');\r\n return;\r\n }\r\n try {\r\n const result = await fpClient.get();\r\n this.setState({ requestId: result.requestId });\r\n } catch (error) {\r\n console.error('Fingerprint collection failed:', error);\r\n }\r\n \r\n const recaptchaValue = this._recaptchaRef.current?.getValue();\r\n this.clearError();\r\n if (!recaptchaValue) {\r\n this.setState({\r\n rCCError: true\r\n });\r\n this._recaptchaRef.current?.reset();\r\n } else {\r\n const res = this.props.config.turnOnFingerPrint && await MsDyn365.commerceApiRequest(\r\n this.props.context.request,\r\n 'GetFingerprint',\r\n 'post',\r\n {\r\n myInputValue: this.state.requestId\r\n }\r\n ) as any;\r\n const suspectScore: number = this.props.config.turnOnFingerPrint && res.data.result && res.data.result.data.result || 0;\r\n const suspectScoreThreshold: number = this.props.config.suspectScoreThreshold || 90;\r\n const isBlocked: boolean = suspectScore > suspectScoreThreshold;\r\n if (this.props.config.turnOnFingerPrint && isBlocked) {\r\n this.setState({\r\n fingerPrintError: true\r\n })\r\n } else {\r\n this.getActiveChildModuleStates().forEach(state => {\r\n !state.isReady && state.onSubmit && state.onSubmit();\r\n });\r\n }\r\n this._recaptchaRef.current?.reset();\r\n }\r\n }\r\n\r\n private getItems = (): React.ReactNode[] => {\r\n const { slots } = this.props;\r\n return (slots && slots.primary && slots.primary.length && slots.primary) || [];\r\n };\r\n\r\n private _renderAccordionItem(item: any, creditCardIcon: any): React.ReactNode {\r\n const childTypeName = get(item, 'props.typeName');\r\n let slotName: string = '';\r\n switch (childTypeName) {\r\n case PaymentType.PayByAccount:\r\n slotName = 'Charge to Account';\r\n break;\r\n case PaymentType.Adyen:\r\n slotName = 'Credit Card';\r\n break;\r\n default: null\r\n }\r\n return (\r\n
    \r\n this.updateAccordion(childTypeName)} />\r\n
    {slotName}
    \r\n {childTypeName === PaymentType.Adyen ?
    \"\"
    : null}\r\n
    \r\n )\r\n }\r\n\r\n public updateAccordion(newValue: string): void {\r\n if (this.state.activeAccordion === PaymentType.PayByAccount) {\r\n this.props.moduleState.getModuleByTypeName(this.state.activeAccordion).onSkip();\r\n }\r\n this.setState({ activeAccordion: newValue });\r\n this.props.moduleState.getModuleByTypeName(newValue).onUpdating();\r\n if (newValue === PaymentType.PayByAccount) {\r\n this.props.moduleState.getModuleByTypeName(PaymentType.Adyen).onDisable()\r\n } else {\r\n this.props.moduleState.getModuleByTypeName(PaymentType.PayByAccount).onDisable()\r\n }\r\n }\r\n\r\n private getActiveChildModuleStates = (): IModuleStateManager[] => {\r\n const { childIds, getModule } = this.props.moduleState;\r\n return childIds\r\n .map(getModule)\r\n .filter((state): state is IModuleStateManager => !!state && !state.isDisabled && state.hasModuleState);\r\n };\r\n\r\n private clearError = (): void => {\r\n // Clear error before action, otherwise it will rise conflict;\r\n this.getActiveChildModuleStates().forEach(state => {\r\n state.hasError && state.setHasError(false);\r\n });\r\n };\r\n\r\n private onSubmit = (): void => {\r\n if (this.props.config.reCaptchaOption) {\r\n this._recaptchaRef.current?.execute()\r\n } else {\r\n this.clearError();\r\n this.getActiveChildModuleStates().forEach(state => {\r\n !state.isReady && state.onSubmit && state.onSubmit();\r\n });\r\n }\r\n };\r\n\r\n private onCancel = (): void => {\r\n this.clearError();\r\n this.getActiveChildModuleStates().forEach(state => {\r\n !state.isReady && state.onCancel && state.onCancel();\r\n });\r\n };\r\n\r\n private onEdit = (): void => {\r\n const {\r\n config: { paymentAccordion }, data\r\n } = this.props;\r\n const isAllowOnAccountPayment = data.customerInformation.result?.AllowOnAccountPayment\r\n this.getActiveChildModuleStates().forEach(state => {\r\n (state.isReady || state.isSkipped) && state.onEdit && state.onEdit();\r\n });\r\n isAllowOnAccountPayment && paymentAccordion && this.props.moduleState.getModuleByTypeName(PaymentType.Adyen).onDisable()\r\n };\r\n\r\n private onContainerReady = (): void => {\r\n this.getActiveChildModuleStates().forEach(state => {\r\n state.isReady && state.onContainerReady && state.onContainerReady();\r\n });\r\n };\r\n}\r\n\r\nexport default withModuleState(CheckoutPlainContainer);\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\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\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport get from 'lodash/get';\r\nimport { ICheckoutSectionContainerItem, ICheckoutSectionContainerViewProps } from './checkout-section-container';\r\n\r\nconst ItemComponent: React.FC = ({ loading, itemProps, item, accordion }) =>\r\n accordion? \r\n (\r\n
    \r\n {loading}\r\n {accordion}\r\n {item}\r\n
    \r\n ) :\r\n (\r\n <>\r\n {loading}\r\n {item}\r\n \r\n );\r\n\r\nconst CheckoutSectionContainerView: React.FC = ({ checkoutPlainContainerProps, items,reCaptcha, fingerPrintError }) => (\r\n \r\n {items.map(item => (\r\n \r\n ))}\r\n {reCaptcha}\r\n {fingerPrintError}\r\n \r\n);\r\n\r\nexport default CheckoutSectionContainerView;\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","/*!\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"],"names":["BusinessPartnerPromotionTermsParagraph","_ref","title","description","className","titleClassName","React","moduleClassName","BusinessPartnerPromotion","constructor","props","super","onCheckBoxChange","event","this","setState","termsOfServiceChecked","target","checked","onToggleTermOfServiceModal","termsOfServiceModalOpened","state","onSubmit","async","_data$b2bUserInformat","_data$b2bUserInformat2","context","data","resources","errorMessageText","promoteToSellerSubmitSuccessMessage","businessPartnerId","b2bUserInformation","result","BusinessPartnerId","promoteToSellerAsync","callerContext","actionContext","showSubmitButton","showTermsOfService","errorMessage","undefined","notificationMessage","_unused","render","config","heading","termsOfService","authorizationErrorMessage","canSubmit","isAdminUser","error","status","btnEnabled","viewProps","_objectSpread","businessPartnerPromotionProps","moduleProps","classnames","Text","Object","assign","renderNotificationBar","sellerDescriptions","renderSellerDescriptions","termsOfServiceCheckbox","type","termsOfServiceLinkText","onChange","termsOfServiceAgreementText","role","onClick","termsOfServiceModal","Modal","isOpen","horizontalPosition","verticalPosition","autoFocus","fade","toggle","ModalHeader","termsOfServiceModalHeading","ModalBody","MsDyn365","text","submitButton","Button","submitRequestLabel","disabled","renderView","notificationBar","Alert","color","results","map","idx1","_description$bulletPo","key","bulletPoints","bulletPoint","idx2","label","user","ObjectExtensions","isNullOrUndefined","StringExtensions","isNullOrEmpty","IsAdmin","AlphabetList","alphapetContainer","letterItems","_renderLetter","alphabetItemsDetails","displayTwoColumns","letterToSplitAt","_renderSplitColumn","_renderSingleColumn","_renderItem","alphabetItemDetail","_alphabetItemDetail$s","letter","subMenus","item","href","link","openInNewTab","name","leftSide","leftListNode","rightListNode","forEach","alphabetItem","push","listNode","Loading","PaymentType","CheckoutPlainContainer","_recaptchaRef","getItems","slots","primary","length","getActiveChildModuleStates","childIds","getModule","moduleState","filter","isDisabled","hasModuleState","clearError","hasError","setHasError","_this$_recaptchaRef$c","reCaptchaOption","current","execute","isReady","onCancel","onEdit","_data$customerInforma","paymentAccordion","isAllowOnAccountPayment","customerInformation","AllowOnAccountPayment","isSkipped","getModuleByTypeName","Adyen","onDisable","onContainerReady","activeAccordion","PayByAccount","reCaptchaChecked","rCCError","fingerPrintError","fpClient","requestId","get","FingerprintJS","apiKey","endpoint","scriptUrlPattern","then","catch","console","init","reaction","shouldSubmitContainer","componentDidUpdate","hasExternalSubmitGroup","some","childId","enableControl","width","creditCardIcon","items","telemetry","classname","hasInitialized","container","reCaptcha","_renderReCaptcha","_renderFingerPrintErrorMessage","checkoutPlainContainerProps","childTypeName","customerInfo","platform","enableCustomerAccountPayment","IsB2b","hidden","id","loading","LoadingComponent","itemProps","typeName","initialized","skipped","ready","updating","isUpdating","pending","isPending","accordion","_renderAccordionItem","_renderRecaptchaAlert","ReCAPTCHA","ref","sitekey","reCaptchaSiteKey","size","_submit","fingerPrintErrorMessage","recaptchaErrorMessage","_this$_recaptchaRef$c2","recaptchaValue","getValue","_this$_recaptchaRef$c4","res","turnOnFingerPrint","request","myInputValue","isBlocked","suspectScoreThreshold","reset","_this$_recaptchaRef$c3","slotName","style","updateAccordion","src","alt","newValue","onSkip","onUpdating","__decorate","observer","withModuleState","CittaProductpdfSpecification","content","pdfSpecificationContent","_getProductSpecificationContent","pdfSpecificationTitle","productSku","product","ItemId","CittaProductpdfSpecificationViewProps","PdfSpecificationContainer","PdfSpecificationContentContainer","PdfSpecificationContent","tag","rel","PdfSpecificationContentShow","ProductSku","specificationTitle","productSpec","productSpecificationData","contentText","spec","TextValue","Name","Module","ItemComponent","Node","_ref2"],"sourceRoot":""}