{"version":3,"file":"static/js/13.6044efebfd7e7089886a.chunk.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/checkout-errors/checkout-errors.ts?76ea","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-autosuggest.ts?c1a8","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/actions/get-state-provinces.ts?22e9","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-common.ts?28a4","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-format.data.ts?9349","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-module.data.ts?71e1","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-format.ts?7184","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/address-meta-data.ts?9de9","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-alert.tsx?2ada","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-button.tsx?c936","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-checkbox.tsx?9b93","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-dropdown.tsx?6365","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-error-message.tsx?1852","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-error-title.tsx?6c7f","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-input.tsx?194a","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-label.tsx?cf31","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-add.tsx?b2ae","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-billing-checkbox.tsx?f409","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-billing-heading.tsx?4c4d","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-detail-item.tsx?3037","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-error-alert.tsx?3261","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/mands-c-checkout-billing-address.tsx?4afd","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/common/components/address-show.tsx?131a","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-billing-address/mands-c-checkout-billing-address.view.tsx?acc8","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-section-container/components/loading.tsx?5373","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-section-container/mands-c-checkout-section-container.tsx?e1c5","webpack://Msdyn365.Commerce.Online/./src/modules/mands-c-checkout-section-container/mands-c-checkout-section-container.view.tsx?7df8","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-apple-pay/checkout-apple-pay.data.ts?c986","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-apple-pay/checkout-apple-pay.tsx?f243","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-apple-pay/checkout-apple-pay.view.tsx?222d","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-customer-account-payment/components/get-account-payment-form-edit-mode.tsx?83e6","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-customer-account-payment/components/get-account-payment-form-summary-mode.tsx?5675","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-customer-account-payment/checkout-customer-account-payment.tsx?de67","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-customer-account-payment/checkout-customer-account-payment.view.tsx?79c6","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-express-payment-container/checkout-express-payment-container.tsx?1d63","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-express-payment-container/checkout-express-payment-container.view.tsx?4299","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-express/checkout-express.tsx?cc8c","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-express/checkout-express.view.tsx?134b","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-google-pay/checkout-google-pay.tsx?5941","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-google-pay/checkout-google-pay.view.tsx?b92f","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-guest-profile/components/get-add-contact-info.tsx?c9f6","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-guest-profile/components/get-show-contact-info.tsx?e9b5","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-guest-profile/checkout-guest-profile.tsx?c2ce","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-guest-profile/checkout-guest-profile.view.tsx?2e47","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-payment-instrument/checkout-payment-instrument.tsx?17da","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-payment-instrument/checkout-payment-instrument.view.tsx?cb45","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-payment-instrument/components/payment-information.tsx?213f","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/components/checkout-pickup-group.tsx?9de7","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/components/checkout-pickup-utility.ts?b7eb","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/components/checkout-pickup-date-dropdown.tsx?e5a3","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/components/checkout-pickup-timeslot-dropdown.tsx?aef8","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/checkout-pickup.tsx?28aa","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-pickup/checkout-pickup.view.tsx?d64e","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-section-container/components/loading.tsx?2e57","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-section-container/checkout-section-container.tsx?c853","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-section-container/checkout-section-container.view.tsx?b4ab","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-terms-and-conditions/components/checkout-terms-and-conditions.check-box.tsx?3b17","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-terms-and-conditions/components/checkout-terms-and-conditions.error-message.tsx?c6a5","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-terms-and-conditions/components/checkout-terms-and-conditions.error-title.tsx?f908","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-terms-and-conditions/checkout-terms-and-conditions.tsx?9243","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-terms-and-conditions/checkout-terms-and-conditions.view.tsx?26e8"],"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 { IActionContext } from '@msdyn365-commerce/core';\r\nimport { CheckoutModule, getCheckoutState, ICheckoutState } from '@msdyn365-commerce/global-state/';\r\n\r\nexport async function focusOnCheckoutError(checkoutErrorRef: React.RefObject, ctx: IActionContext): Promise {\r\n const checkoutState: ICheckoutState = await getCheckoutState(ctx).catch((error: Error) => {\r\n ctx.telemetry.exception(error);\r\n throw error;\r\n });\r\n\r\n checkoutErrorRef.current && checkoutErrorRef.current.scrollIntoView();\r\n await checkoutState.updateCheckoutErrorFocus({ newCheckoutErrorFocus: CheckoutModule.None });\r\n}\r\n","// tslint:disable:no-reference\r\n/// \r\n\r\nimport { IStoreSelectorStateManager } from '@msdyn365-commerce-modules/bopis-utilities';\r\nimport { ITelemetry } from '@msdyn365-commerce/core';\r\nimport { IAutoSuggestOptions } from './address-autosuggest.data';\r\n/**\r\n *\r\n * Auto Suggest\r\n */\r\nexport class AutoSuggest {\r\n public readonly excludedAddressFields: string[] = ['ThreeLetterISORegionName', 'Name', 'AddressTypeValue', 'Phone'];\r\n private telemetry: ITelemetry;\r\n private countryCode?: string;\r\n private bingMapsApiKey?: string;\r\n private defaultLanguageId?: string;\r\n private autoSuggestManager: Microsoft.Maps.AutosuggestManager | undefined;\r\n private autoSuggestOptions: IAutoSuggestOptions;\r\n\r\n constructor(\r\n telemetry: ITelemetry,\r\n autoSuggestOptions: IAutoSuggestOptions,\r\n BingMapsApiKey?: string,\r\n countryCode?: string,\r\n defaultLanguageId?: string\r\n ) {\r\n this.telemetry = telemetry;\r\n this.autoSuggestOptions = autoSuggestOptions;\r\n this.bingMapsApiKey = BingMapsApiKey;\r\n this.countryCode = countryCode;\r\n this.defaultLanguageId = defaultLanguageId;\r\n }\r\n\r\n public attachAutoSuggest = (\r\n inputId: string,\r\n containerId: string,\r\n selectedSuggestionCallback: (result: Microsoft.Maps.ISuggestionResult) => void\r\n ): void => {\r\n if (!this.autoSuggestManager) {\r\n Microsoft.Maps.loadModule('Microsoft.Maps.AutoSuggest', {\r\n callback: () => {\r\n const options = { ...this.autoSuggestOptions, countryCode: this.countryCode };\r\n this.autoSuggestManager = new Microsoft.Maps.AutosuggestManager(options);\r\n this.autoSuggestManager.attachAutosuggest(inputId, containerId, selectedSuggestionCallback);\r\n document.querySelector(inputId)?.setAttribute('role', 'combobox');\r\n setTimeout(() => {\r\n document.querySelector(inputId)?.setAttribute('type', 'text');\r\n }, 0);\r\n },\r\n errorCallback: () => {\r\n if (this.telemetry) {\r\n this.telemetry.debug('Unable to attach map auto suggest.');\r\n }\r\n },\r\n credentials: this.bingMapsApiKey\r\n });\r\n }\r\n };\r\n\r\n public changeAutoSuggestionCountryCode = (countryCode?: string): void => {\r\n if (this.autoSuggestManager) {\r\n this.autoSuggestOptions.countryCode = countryCode;\r\n this.autoSuggestManager.setOptions(this.autoSuggestOptions);\r\n }\r\n };\r\n\r\n public disposeAutoSuggest = (): void => {\r\n this.autoSuggestManager?.detachAutosuggest();\r\n this.autoSuggestManager?.dispose();\r\n this.autoSuggestManager = undefined;\r\n };\r\n // eslint-disable-next-line @typescript-eslint/naming-convention\r\n public _loadMapAPI = async (storeSelectorStateManager: IStoreSelectorStateManager): Promise => {\r\n await storeSelectorStateManager.loadMapApi({\r\n key: this.bingMapsApiKey,\r\n lang: this.countryCode,\r\n market: this.defaultLanguageId\r\n });\r\n };\r\n}\r\n","import { buildCacheKey } from '@msdyn365-commerce-modules/retail-actions';\r\nimport {\r\n CacheType,\r\n createObservableDataAction,\r\n IAction,\r\n IActionContext,\r\n IActionInput,\r\n ICommerceApiSettings\r\n} from '@msdyn365-commerce/core';\r\nimport { getStateProvincesAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/StoreOperationsDataActions.g';\r\nimport { StateProvinceInfo } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\r\n\r\n/**\r\n * Input class for get state provinces data action\r\n */\r\nexport class GetStateProvincesInput implements IActionInput {\r\n public countryRegionId: string;\r\n private apiSettings: ICommerceApiSettings;\r\n\r\n constructor(countryRegionId: string, apiSettings: ICommerceApiSettings) {\r\n this.countryRegionId = countryRegionId;\r\n this.apiSettings = apiSettings;\r\n }\r\n\r\n public getCacheKey = () => buildCacheKey(`StateProvinceInfo-${this.countryRegionId}`, this.apiSettings);\r\n public getCacheObjectType = () => 'StateProvinceInfo';\r\n public dataCacheType = (): CacheType => 'request';\r\n}\r\n\r\nexport async function getStateProvinceAction(input: GetStateProvincesInput, ctx: IActionContext): Promise {\r\n return getStateProvincesAsync({ callerContext: ctx, queryResultSettings: {} }, input.countryRegionId);\r\n}\r\n\r\nexport const getStateProvinceActionDataAction = createObservableDataAction({\r\n action: >getStateProvinceAction\r\n});\r\n\r\nexport default getStateProvinceActionDataAction;\r\n","import { addAddress, AddressManagementInput, updateAddress, updatePrimaryAddress } from '@msdyn365-commerce-modules/retail-actions';\r\nimport { IActionInput, ICoreContext, IObservableAction, ITelemetry } from '@msdyn365-commerce/core';\r\nimport { Address, CountryRegionInfo, StateProvinceInfo } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\r\n\r\nimport { getStateProvinceAction, GetStateProvincesInput } from '../actions/get-state-provinces';\r\nimport { IAddressResource, IAddressResponse } from './address-module.data';\r\n\r\n/**\r\n *\r\n * Address common\r\n */\r\nexport class AddressCommon {\r\n private context: ICoreContext;\r\n private resources: IAddressResource;\r\n private telemetry: ITelemetry;\r\n\r\n constructor(context: ICoreContext, resources: IAddressResource, telemetry: ITelemetry) {\r\n this.context = context;\r\n this.resources = resources;\r\n this.telemetry = telemetry;\r\n }\r\n\r\n public getDefaultCountryRegionId = (countryRegionId: string, countryRegions: CountryRegionInfo[], market?: string): string => {\r\n const marketISOCode = market || 'US';\r\n const currentCountryRegion = countryRegions.find(countryRegion => (countryRegion.ISOCode || '') === marketISOCode);\r\n return (currentCountryRegion && currentCountryRegion.CountryRegionId) || countryRegionId;\r\n };\r\n\r\n public parseRetailException = (resources: IAddressResource): IAddressResponse => {\r\n return {\r\n errorTitle: resources.addressErrorMessageTitle,\r\n errorMessage: resources.addressGenericErrorMessage\r\n };\r\n };\r\n\r\n public isAuthenticatedFlow = (): boolean => {\r\n return this.context.request.user.isAuthenticated;\r\n };\r\n\r\n public getStateProvinces = async (countryRegionId: string): Promise => {\r\n let response: StateProvinceInfo[] = [];\r\n if (this.context && this.context.actionContext) {\r\n try {\r\n const input = new GetStateProvincesInput(countryRegionId, this.context.request.apiSettings);\r\n response = await getStateProvinceAction(input, this.context.actionContext);\r\n } catch (error) {\r\n if (this.telemetry) {\r\n this.telemetry.error(`Error encountered ${error}`);\r\n this.telemetry.debug('Unable to get state provinces');\r\n }\r\n }\r\n }\r\n return Promise.resolve(response);\r\n };\r\n\r\n // For any address, check for common requried field else treat it as invalid\\empty address.\r\n public isEmpty = (address: Address): boolean => {\r\n if (address && address.ThreeLetterISORegionName && address.State && address.City) {\r\n return false;\r\n }\r\n\r\n return true;\r\n };\r\n\r\n public addCustomerAddress = (address: Address): Promise => {\r\n return this.submitCustomerAddress(addAddress, address);\r\n };\r\n\r\n public updateCustomerAddress = (address: Address): Promise => {\r\n return this.submitCustomerAddress(updateAddress, address);\r\n };\r\n\r\n public updateCustomerPrimaryAddress = (address: Address): Promise => {\r\n return this.submitCustomerAddress(updatePrimaryAddress, address);\r\n };\r\n\r\n private submitCustomerAddress = (addressAction: IObservableAction, address: Address): Promise => {\r\n address.AddressTypeValue = address.AddressTypeValue || 7; // 7 sets it to HOME by default\r\n\r\n const input = new AddressManagementInput(address);\r\n return this.execAddressAction(addressAction, input, address);\r\n };\r\n\r\n private execAddressAction = async (\r\n addressAction: IObservableAction,\r\n input: IActionInput | IActionInput[],\r\n address: Address\r\n ): Promise => {\r\n let response: IAddressResponse = {};\r\n\r\n if (this.context && this.context.actionContext) {\r\n try {\r\n const addresses = await addressAction(input, this.context.actionContext);\r\n if (addresses.length > 0) {\r\n response.address = address.RecordId ? address : addresses[addresses.length - 1];\r\n } else {\r\n response.address = address;\r\n }\r\n response.customerAddresses = addresses;\r\n } catch (error) {\r\n if (this.telemetry) {\r\n this.telemetry.error(`Error encountered ${error}`);\r\n this.telemetry.debug('Unable to exec address action');\r\n }\r\n response = this.parseRetailException(this.resources);\r\n }\r\n }\r\n return Promise.resolve(response);\r\n };\r\n}\r\n","export enum AddressItemDisplayType {\r\n Input = 'Input',\r\n Dropdown = 'Dropdown',\r\n Checkbox = 'Checkbox'\r\n}\r\n\r\nexport enum AddressValidationRuleType {\r\n Required = 'Required',\r\n Format = 'Format'\r\n}\r\n\r\nexport enum AddressItemType {\r\n Name = 1001,\r\n Phone = 1002,\r\n // VSI - Customizatio HouseNumber\r\n HouseNumber = 1005,\r\n // END\r\n IsPrimary = 1003,\r\n AddressTypeValue = 1004,\r\n ZipCode = 1,\r\n City = 2,\r\n County = 3,\r\n State = 4,\r\n ThreeLetterISORegionName = 5,\r\n Street = 6,\r\n District = 7,\r\n StreetNumber = 8,\r\n BuildingCompliment = 9,\r\n Postbox = 10,\r\n House_RU = 21,\r\n Flat_RU = 22,\r\n CountryOKSMCode_RU = 23\r\n}\r\n\r\nexport interface IAddressItem {\r\n name: string;\r\n type: AddressItemType;\r\n label: string;\r\n maxLength: number;\r\n displayType: AddressItemDisplayType;\r\n validationRules?: IAddressValidationRule[];\r\n isNewLine: boolean;\r\n}\r\n\r\nexport interface IAddressValidationRule {\r\n type: AddressValidationRuleType;\r\n regEx: string;\r\n message: string;\r\n}\r\n\r\nexport interface IAddressDropdownsData {\r\n [index: string]: { key?: string | number; value?: string }[];\r\n}\r\n","import { Heading } from '@msdyn365-commerce-modules/data-types';\r\nimport { Address } from '@msdyn365-commerce/retail-proxy';\r\n\r\nexport enum AddressOperation {\r\n Add = 'Add',\r\n Show = 'Show',\r\n Update = 'Update',\r\n List = 'List'\r\n}\r\n\r\nexport enum AddressType {\r\n Shipping = 'Shipping',\r\n Billing = 'Billing',\r\n Company = 'Company'\r\n}\r\n\r\nexport interface IDropdownDisplayData {\r\n [index: string]: { key?: string; value?: string }[];\r\n}\r\n\r\nexport interface IAddressResponse {\r\n errorTitle?: string;\r\n errorMessage?: string;\r\n customerAddresses?: Address[];\r\n address?: Address;\r\n}\r\n\r\nexport interface IAddressConfig {\r\n heading?: Heading;\r\n primaryAddressSectionHeading?: Heading;\r\n otherAddressSectionHeading?: Heading;\r\n addAddressHeading?: Heading;\r\n editAddressHeading?: Heading;\r\n}\r\n\r\nexport interface IAddressResource {\r\n addressChangeCheckboxAriaLabel?: string;\r\n addressAddButtonText: string;\r\n addressAddButtonAriaLabel: string;\r\n addressPrimaryButtonText: string;\r\n addressPrimaryButtonAriaLabel: string;\r\n addressEditButtonText: string;\r\n addressEditButtonAriaLabel: string;\r\n addressRemoveButtonText: string;\r\n addressRemoveButtonAriaLabel: string;\r\n addressSaveButtonText: string;\r\n addressSaveButtonAriaLabel: string;\r\n addressCancelButtonText: string;\r\n addressCancelButtonAriaLabel: string;\r\n addressStateDefaultSelectionText: string;\r\n addressNameLabel: string;\r\n addressNameLabelOptional?: string;\r\n addressNameRequiredErrorMessage: string;\r\n addressPhoneLabel: string;\r\n addressPhoneLabelOptional?: string;\r\n addressPhoneRequiredErrorMessage: string;\r\n addressZipCodeLabel: string;\r\n addressZipCodeLabelOptional?: string;\r\n addressZipCodeRequiredErrorMessage: string;\r\n addressCityLabel: string;\r\n addressCityLabelOptional?: string;\r\n addressCityRequiredErrorMessage: string;\r\n addressCountyLabel: string;\r\n addressCountyLabelOptional?: string;\r\n addressCountyRequiredErrorMessage: string;\r\n addressStateLabel: string;\r\n addressStateLabelOptional?: string;\r\n addressStateRequiredErrorMessage: string;\r\n addressThreeLetterISORegionNameLabel: string;\r\n addressThreeLetterISORegionNameLabelOptional?: string;\r\n addressThreeLetterISORegionNameRequiredErrorMessage: string;\r\n addressStreetRequiredErrorMessage: string;\r\n addressDistrictLabel: string;\r\n addressDistrictLabelOptional?: string;\r\n addressDistrictRequiredErrorMessage: string;\r\n addressStreetNumberLabel: string;\r\n addressStreetNumberLabelOptional?: string;\r\n addressStreetNumberRequiredErrorMessage: string;\r\n addressBuildingComplimentLabel: string;\r\n addressBuildingComplimentLabelOptional?: string;\r\n addressBuildingComplimentRequiredErrorMessage: string;\r\n addressPostboxLabel: string;\r\n addressPostboxLabelOptional?: string;\r\n addressPostboxRequiredErrorMessage: string;\r\n addressHouseRULabel: string;\r\n addressHouseRULabelOptional?: string;\r\n addressHouseRURequiredErrorMessage: string;\r\n addressFlatRULabel: string;\r\n addressFlatRULabelOptional?: string;\r\n addressFlatRURequiredErrorMessage: string;\r\n addressCountryOKSMCodeRULabel: string;\r\n addressCountryOKSMCodeRURequiredErrorMessage: string;\r\n addressErrorMessageTitle: string;\r\n addressGenericErrorMessage: string;\r\n addressEmptyListAddressMessage: string;\r\n // VSI - House Number\r\n addressHouseNumberLabel: string;\r\n addressHouseNumberRequiredErrorMessage: string;\r\n // END\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 { get, set } from 'mobx';\r\n\r\nimport {\r\n Address,\r\n AddressPurpose,\r\n CountryRegionInfo,\r\n StateProvinceInfo\r\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\r\n\r\nimport { AddressItemType, IAddressDropdownsData, IAddressItem, IAddressValidationRule } from './address-format.data';\r\nimport { AddressMetaData } from './address-meta-data';\r\n\r\n/**\r\n *\r\n * Retail Service Address format parser\r\n */\r\nexport class AddressFormat {\r\n private countryRegionsInfo?: CountryRegionInfo[];\r\n private addressPurposes?: AddressPurpose[];\r\n private addressMetaData: AddressMetaData;\r\n\r\n constructor(countryRegionsInfo: CountryRegionInfo[], addressMetaData: AddressMetaData, addressPurposes: AddressPurpose[]) {\r\n this.countryRegionsInfo = countryRegionsInfo;\r\n this.addressMetaData = addressMetaData;\r\n this.addressPurposes = addressPurposes;\r\n }\r\n\r\n public getAddressFormat(countryRegionId: string): IAddressItem[] {\r\n const countryRegionInfo = this._getCountryRegionInfo(countryRegionId);\r\n if (countryRegionInfo) {\r\n return this._getAddressDisplayFormat(countryRegionInfo);\r\n }\r\n return [];\r\n }\r\n\r\n public getCountryFormat(): { key?: string; value?: string }[] {\r\n return (this.countryRegionsInfo || []).map(countryRegion => {\r\n return {\r\n key: countryRegion.CountryRegionId,\r\n value: countryRegion.ShortName\r\n };\r\n });\r\n }\r\n\r\n public getStateFormat(stateProvinceInfo?: StateProvinceInfo[]): { key?: string; value?: string }[] {\r\n return (stateProvinceInfo || []).map(state => {\r\n return {\r\n key: state.StateId,\r\n value: state.StateName\r\n };\r\n });\r\n }\r\n\r\n public getAddressTypeFormat(): { key?: number; value?: string }[] {\r\n return (this.addressPurposes || []).map(addressPurpose => {\r\n return {\r\n key: addressPurpose.AddressType,\r\n value: addressPurpose.Description\r\n };\r\n });\r\n }\r\n\r\n public getPrefilledAddressDropdownData = (\r\n stateDefaultSelectionText: string,\r\n stateProvinceInfo?: StateProvinceInfo[]\r\n ): IAddressDropdownsData => {\r\n const defaultStateText = {\r\n key: '',\r\n value: stateDefaultSelectionText\r\n };\r\n const dropdownData: IAddressDropdownsData = {};\r\n\r\n dropdownData[AddressItemType[AddressItemType.ThreeLetterISORegionName]] = this.getCountryFormat();\r\n dropdownData[AddressItemType[AddressItemType.State]] = this.getStateFormat(stateProvinceInfo);\r\n dropdownData[AddressItemType[AddressItemType.State]].unshift(defaultStateText);\r\n dropdownData[AddressItemType[AddressItemType.AddressTypeValue]] = this.getAddressTypeFormat();\r\n\r\n return dropdownData;\r\n };\r\n\r\n public getTwoLetterISORegionName = (countryRegionId: string): string | undefined => {\r\n const countryRegionInfo = this._getCountryRegionInfo(countryRegionId);\r\n\r\n return countryRegionInfo!.ISOCode;\r\n };\r\n\r\n public validateAddressFormat = (\r\n address: Address,\r\n validationError: Address,\r\n countryRegionId: string,\r\n propertyName?: string\r\n ): boolean => {\r\n let isValid: boolean = true;\r\n let validationtor;\r\n const addressFormat = this.getAddressFormat(address.ThreeLetterISORegionName || countryRegionId);\r\n\r\n addressFormat.forEach(addressFormatItem => {\r\n if (!propertyName || (propertyName && addressFormatItem.name === propertyName)) {\r\n validationtor = this._inputValidation(addressFormatItem, validationError, address);\r\n if (validationtor !== undefined) {\r\n isValid = validationtor;\r\n }\r\n }\r\n });\r\n\r\n return isValid;\r\n };\r\n\r\n public getTranformedAddress = (result: Microsoft.Maps.ISuggestionResult, stateProvinceInfo?: StateProvinceInfo[]): Address => {\r\n const address: Address = {};\r\n\r\n // Zip Code\r\n if (result.address.postalCode !== undefined) {\r\n address.ZipCode = result.address.postalCode;\r\n } else {\r\n address.ZipCode = '';\r\n }\r\n\r\n // State\r\n if (stateProvinceInfo) {\r\n const selectedState = stateProvinceInfo.find(state => state.StateName === result.address.adminDistrict);\r\n if (!selectedState) {\r\n address.State = '';\r\n address.StateName = result.address.adminDistrict;\r\n } else {\r\n address.State = selectedState.StateId;\r\n address.StateName = selectedState.StateName;\r\n }\r\n }\r\n\r\n // Street\r\n if (result.address.addressLine !== undefined) {\r\n address.Street = result.address.addressLine;\r\n } else {\r\n address.Street = ' ';\r\n }\r\n\r\n // City\r\n if (result.address.locality !== undefined) {\r\n address.City = result.address.locality;\r\n } else {\r\n address.City = '';\r\n }\r\n\r\n // District\r\n if (result.address.district !== undefined) {\r\n address.DistrictName = result.address.district;\r\n address.CountyName = result.address.district;\r\n } else {\r\n address.DistrictName = '';\r\n }\r\n\r\n // formatted Address\r\n address.FullAddress = result.address.formattedAddress;\r\n\r\n return address;\r\n };\r\n\r\n private _inputValidation(addressFormatItem: IAddressItem, validationError: Address, address: Address): boolean | undefined {\r\n set(validationError, { [addressFormatItem.name]: null });\r\n for (const validationRule of addressFormatItem.validationRules || []) {\r\n if (!this._validateRegEx(address, addressFormatItem.name, validationRule)) {\r\n set(validationError, { [addressFormatItem.name]: validationRule.message });\r\n return false;\r\n }\r\n }\r\n return undefined;\r\n }\r\n private _validateRegEx = (address: Address, propertyName: string, validationRule: IAddressValidationRule): boolean => {\r\n if (validationRule.regEx && validationRule.regEx.length > 0) {\r\n const regex = new RegExp(validationRule.regEx);\r\n return regex.test(get(address, propertyName) || '');\r\n }\r\n return true;\r\n };\r\n\r\n private _getCountryRegionInfo(countryRegionId: string): CountryRegionInfo | undefined {\r\n return (this.countryRegionsInfo || []).find(countryRegion => {\r\n return (countryRegion.CountryRegionId || '').toLowerCase() === countryRegionId.toLowerCase();\r\n });\r\n }\r\n\r\n private _getAddressDisplayFormat(countryRegionInfo: CountryRegionInfo): IAddressItem[] {\r\n const addressDisplayItem: IAddressItem[] = [];\r\n\r\n if (countryRegionInfo && countryRegionInfo.AddressFormatLines) {\r\n const AddressTypeItem = this._extendAddressDisplayFormat(AddressItemType.AddressTypeValue, true);\r\n if (AddressTypeItem) {\r\n addressDisplayItem.push(AddressTypeItem);\r\n }\r\n\r\n const nameDisplayItem = this._extendAddressDisplayFormat(AddressItemType.Name, true);\r\n if (nameDisplayItem) {\r\n addressDisplayItem.push(nameDisplayItem);\r\n }\r\n // VSI - Customization HouseNumber\r\n const houseNumberDisplayItem = this._extendAddressDisplayFormat(AddressItemType.HouseNumber, false);\r\n if (houseNumberDisplayItem) {\r\n addressDisplayItem.push(houseNumberDisplayItem);\r\n }\r\n // END\r\n countryRegionInfo.AddressFormatLines.forEach(formatLine => {\r\n if (formatLine.AddressComponentNameValue) {\r\n const addressItem = this.addressMetaData.getItemFormat(formatLine.AddressComponentNameValue);\r\n if (addressItem) {\r\n addressItem.isNewLine = formatLine.NewLine || false;\r\n addressDisplayItem.push(addressItem);\r\n }\r\n }\r\n });\r\n\r\n const phoneDisplayItem = this._extendAddressDisplayFormat(AddressItemType.Phone, false);\r\n if (phoneDisplayItem) {\r\n addressDisplayItem.push(phoneDisplayItem);\r\n }\r\n\r\n const isPrimaryDisplayItem = this._extendAddressDisplayFormat(AddressItemType.IsPrimary, false);\r\n if (isPrimaryDisplayItem) {\r\n addressDisplayItem.push(isPrimaryDisplayItem);\r\n }\r\n }\r\n\r\n return addressDisplayItem;\r\n }\r\n\r\n private _extendAddressDisplayFormat(type: AddressItemType, isNewLine: boolean): IAddressItem | undefined {\r\n const addressItem = this.addressMetaData.getItemFormat(type);\r\n if (addressItem) {\r\n addressItem.isNewLine = isNewLine;\r\n }\r\n return addressItem;\r\n }\r\n}\r\n","import {\r\n AddressItemDisplayType,\r\n AddressItemType,\r\n AddressValidationRuleType,\r\n IAddressItem,\r\n IAddressValidationRule\r\n} from './address-format.data';\r\nimport { IAddressResource } from './address-module.data';\r\n\r\n/**\r\n * Address meta data\r\n */\r\nexport class AddressMetaData {\r\n private metaData: IAddressItem[] = [];\r\n private resources: IAddressResource;\r\n private requiredFieldRegEx: string = '\\\\S';\r\n private resourcesPrefix: string = 'address';\r\n private maxLength: number = 64;\r\n private requiredFields: AddressItemType[];\r\n private excludedTypes: AddressItemType[];\r\n\r\n constructor(resources: IAddressResource, excluded?: AddressItemType[], required?: AddressItemType[]) {\r\n this.resources = resources || {};\r\n this.excludedTypes = excluded || [];\r\n // VSI - Customization HouseNumber\r\n this.requiredFields =\r\n required !== undefined\r\n ? required\r\n : [\r\n AddressItemType.AddressTypeValue,\r\n AddressItemType.Name,\r\n AddressItemType.ZipCode,\r\n AddressItemType.City,\r\n AddressItemType.State,\r\n AddressItemType.ThreeLetterISORegionName,\r\n AddressItemType.Street,\r\n AddressItemType.HouseNumber\r\n ];\r\n // END\r\n this._init();\r\n }\r\n\r\n public getItemFormat(id: number): IAddressItem | undefined {\r\n return this.metaData.find(item => {\r\n return item.type === id;\r\n });\r\n }\r\n\r\n private _init(): void {\r\n this._addItem(AddressItemType.Name, AddressItemDisplayType.Input);\r\n // VSI - Customization HouseNumber\r\n this._addItem(AddressItemType.HouseNumber, AddressItemDisplayType.Input);\r\n // END\r\n this._addItem(AddressItemType.Phone, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.ZipCode, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.City, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.County, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.State, AddressItemDisplayType.Dropdown);\r\n this._addItem(AddressItemType.ThreeLetterISORegionName, AddressItemDisplayType.Dropdown);\r\n this._addItem(AddressItemType.Street, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.District, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.StreetNumber, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.BuildingCompliment, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.Postbox, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.House_RU, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.Flat_RU, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.CountryOKSMCode_RU, AddressItemDisplayType.Input);\r\n this._addItem(AddressItemType.AddressTypeValue, AddressItemDisplayType.Dropdown);\r\n this._addItem(AddressItemType.IsPrimary, AddressItemDisplayType.Checkbox);\r\n }\r\n\r\n private _addItem(type: AddressItemType, displayType: AddressItemDisplayType): void {\r\n if (this.excludedTypes.includes(type)) {\r\n return;\r\n }\r\n\r\n const nameKey = AddressItemType[type].replace('_', '');\r\n\r\n // find out if currentItem is required field\r\n const validationRules = this._validationRules(type, nameKey);\r\n let isRequired = false;\r\n validationRules.forEach(rule => {\r\n if (rule.type === AddressValidationRuleType.Required) {\r\n isRequired = true;\r\n }\r\n });\r\n\r\n // if no optional string is provided in resource file, use the original label text\r\n const optionalString =\r\n this.resources[`${this.resourcesPrefix}${nameKey}LabelOptional`] || this.resources[`${this.resourcesPrefix}${nameKey}Label`];\r\n const item: IAddressItem = {\r\n type,\r\n displayType,\r\n name: AddressItemType[type],\r\n label: isRequired ? this.resources[`${this.resourcesPrefix}${nameKey}Label`] : optionalString,\r\n maxLength: this.maxLength,\r\n validationRules: validationRules,\r\n isNewLine: true\r\n };\r\n\r\n this.metaData.push(item);\r\n }\r\n\r\n private _validationRules(type: AddressItemType, name: string): IAddressValidationRule[] {\r\n const validationRules: IAddressValidationRule[] = [];\r\n\r\n for (const ruleType of Object.keys(AddressValidationRuleType)) {\r\n const key = `${this.resourcesPrefix}${name}${ruleType}`;\r\n const message = this.resources[`${key}ErrorMessage`];\r\n switch (ruleType) {\r\n case AddressValidationRuleType.Required: {\r\n if (this.requiredFields.find((itemType: AddressItemType) => itemType === type)) {\r\n validationRules.push(this._validationRule(ruleType, this.requiredFieldRegEx, message));\r\n }\r\n break;\r\n }\r\n default:\r\n }\r\n }\r\n return validationRules;\r\n }\r\n\r\n private _validationRule(type: AddressValidationRuleType, regEx: string, message: string): IAddressValidationRule {\r\n return {\r\n type,\r\n regEx,\r\n message\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 * as React from 'react';\r\n\r\nexport interface IAdressAlert {\r\n message?: string;\r\n}\r\n\r\nconst AdressAlert: React.FC = ({ message }) => (\r\n \r\n {message && <>{message}}\r\n \r\n);\r\n\r\nexport default AdressAlert;\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 { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface IAddressButton {\r\n className: string;\r\n text: string;\r\n ariaLabel: string;\r\n disabled?: boolean;\r\n telemetryContent?: ITelemetryContent;\r\n onClick(event: React.MouseEvent): void;\r\n}\r\n\r\nconst AddressButton: React.FC = ({ className, text, ariaLabel, disabled, telemetryContent, onClick }) => {\r\n const payLoad = getPayloadObject('click', telemetryContent!, text);\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default AddressButton;\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 { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface IAdressCheckbox {\r\n id?: string;\r\n name?: string;\r\n className: string;\r\n type: string;\r\n isChecked: boolean;\r\n autoFocus?: boolean;\r\n additionalAddributes?: object;\r\n telemetryContent?: ITelemetryContent;\r\n onChange(event: React.ChangeEvent): void;\r\n}\r\n\r\nconst AdressCheckbox: React.FC = ({\r\n id,\r\n name,\r\n className,\r\n type,\r\n isChecked,\r\n additionalAddributes,\r\n telemetryContent,\r\n autoFocus,\r\n onChange\r\n}) => {\r\n const payLoad = getPayloadObject('click', telemetryContent!, name!);\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default AdressCheckbox;\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\nexport interface IAdressDropdown {\r\n id: string;\r\n name: string;\r\n className: string;\r\n value: string | number;\r\n additionalAddributes?: object;\r\n displayData: { key?: string | number; value?: string }[];\r\n onChange(event: React.ChangeEvent): void;\r\n}\r\n\r\nconst getDropdownItem = (key?: string | number, value?: string, selectedValue?: string | number): React.ReactNode => {\r\n let isSelected: boolean;\r\n if (typeof key === 'number') {\r\n isSelected = key === selectedValue;\r\n } else {\r\n isSelected = typeof selectedValue === 'string' && (key || '').toLowerCase() === (selectedValue || '').toLowerCase();\r\n }\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst AdressDropdown: React.FC = ({ id, name, className, value, additionalAddributes, displayData, onChange }) => (\r\n \r\n);\r\n\r\nexport default AdressDropdown;\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\nexport interface IAdressErrorMessage {\r\n message: string;\r\n}\r\n\r\nconst AdressErrorMessage: React.FC = ({ message }) =>

{message}

;\r\n\r\nexport default AdressErrorMessage;\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\nexport interface IAdressErrorTitle {\r\n title: string;\r\n}\r\n\r\nconst AdressErrorTitle: React.FC = ({ title }) =>

{title}

;\r\n\r\nexport default AdressErrorTitle;\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 { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\n\r\nexport interface IAdressInput {\r\n id?: string;\r\n name?: string;\r\n className: string;\r\n type: string;\r\n value: string;\r\n maxLength?: number;\r\n autoFocus?: boolean;\r\n additionalAddributes?: object;\r\n telemetryContent?: ITelemetryContent;\r\n onChange(event: React.ChangeEvent): void;\r\n}\r\n\r\nconst AdressInput: React.FC = ({\r\n id,\r\n name,\r\n className,\r\n type,\r\n value,\r\n maxLength,\r\n additionalAddributes,\r\n autoFocus,\r\n telemetryContent,\r\n onChange\r\n}) => {\r\n const payLoad = getPayloadObject('click', telemetryContent!, name!);\r\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport default AdressInput;\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\nexport interface IAdressLabel {\r\n id: string;\r\n text: string;\r\n}\r\n\r\nconst AdressLabel: React.FC = ({ id, text }) => (\r\n \r\n);\r\n\r\nexport default AdressLabel;\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 classname from 'classnames';\r\nimport { get } from 'mobx';\r\nimport * as React from 'react';\r\n\r\nimport { Heading as HeadingData } from '@msdyn365-commerce-modules/data-types';\r\nimport { Heading, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport { Address } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\r\n\r\nimport { AddressType, IAddressResource, IAddressResponse } from '../../common/address-module.data';\r\nimport {\r\n AddressItemDisplayType,\r\n AddressItemType,\r\n AddressValidationRuleType,\r\n IAddressDropdownsData,\r\n IAddressItem,\r\n IAddressValidationRule\r\n} from '../address-format.data';\r\nimport AddressAlertComponent from './address-alert';\r\nimport AddressButtonComponent from './address-button';\r\nimport AdressCheckboxComponent from './address-checkbox';\r\nimport AdressDropdownComponent from './address-dropdown';\r\nimport AddressErrorMessageComponent from './address-error-message';\r\nimport AddressErrorTitleComponent from './address-error-title';\r\nimport AddressInputComponent from './address-input';\r\nimport AddressLabelComponent from './address-label';\r\n\r\nexport interface IAddressAddInputProps {\r\n isUpdating?: boolean;\r\n hasError?: boolean;\r\n hasExternalSubmitGroup?: boolean;\r\n addressType: AddressType;\r\n addressFormat: IAddressItem[];\r\n defaultCountryRegionId: string;\r\n defaultAddressType: number;\r\n selectedAddress?: Address;\r\n dropdownDisplayData: IAddressDropdownsData;\r\n resources: IAddressResource;\r\n addressActionResponse?: IAddressResponse;\r\n addAddressHeading?: HeadingData;\r\n editAddressHeading?: HeadingData;\r\n validationError?: object;\r\n telemetryContent?: ITelemetryContent;\r\n onInputChange(event: React.ChangeEvent): void;\r\n onDropdownChange(event: React.ChangeEvent): void;\r\n onSave?(): void;\r\n onCancel?(): void;\r\n}\r\n\r\nexport interface IAddressError {\r\n AddressError: INodeProps;\r\n title: React.ReactNode;\r\n message: React.ReactNode;\r\n}\r\n\r\nexport interface IAddressAddItem {\r\n key: string;\r\n AddressItem: INodeProps;\r\n label: React.ReactNode;\r\n alert: React.ReactNode;\r\n input: React.ReactNode;\r\n}\r\n\r\nexport interface IAddressAddUpdateProps {\r\n AddressForm: INodeProps;\r\n heading: React.ReactNode;\r\n items: IAddressAddItem[];\r\n hasError: boolean;\r\n error: IAddressError;\r\n isShowSaveButton: boolean;\r\n saveButton: React.ReactNode;\r\n isShowCancelButton: boolean;\r\n cancelButton: React.ReactNode;\r\n}\r\n\r\nconst getRequriedAttribute = (validationRules?: IAddressValidationRule[]): object => {\r\n const requriedRule = (validationRules || []).find(validationRule => {\r\n return validationRule.type === AddressValidationRuleType.Required;\r\n });\r\n\r\n return requriedRule ? { 'aria-required': true } : {};\r\n};\r\n\r\nconst getAddessItems = (selectedAddress: Address, props: IAddressAddInputProps): IAddressAddItem[] => {\r\n const {\r\n addressFormat,\r\n addressType,\r\n dropdownDisplayData,\r\n defaultCountryRegionId,\r\n defaultAddressType,\r\n validationError = {},\r\n onInputChange,\r\n onDropdownChange\r\n } = props;\r\n\r\n // @ts-ignore\r\n return addressFormat.map((addressFormatItem, index) => {\r\n const elementId = `${addressType.toLowerCase()}_address${addressFormatItem.name.toLowerCase()}`;\r\n const errorMessage = get(validationError, addressFormatItem.name);\r\n const className = classname('msc-address-form__item', `msc-address-form__item-${addressFormatItem.name.toLowerCase()}`, {\r\n 'msc-address-form__item-newline': addressFormatItem.isNewLine,\r\n 'address-form__item-invalid': errorMessage\r\n });\r\n let input;\r\n\r\n if (addressFormatItem.displayType === AddressItemDisplayType.Input) {\r\n input = (\r\n \r\n );\r\n } else if (addressFormatItem.displayType === AddressItemDisplayType.Checkbox) {\r\n input = (\r\n \r\n );\r\n } else {\r\n const displayData = dropdownDisplayData[addressFormatItem.name];\r\n let selectedValue = selectedAddress[addressFormatItem.name];\r\n\r\n if (addressFormatItem.type === AddressItemType.ThreeLetterISORegionName) {\r\n selectedValue = selectedValue || defaultCountryRegionId;\r\n }\r\n\r\n if (addressFormatItem.type === AddressItemType.AddressTypeValue) {\r\n selectedValue = selectedValue || defaultAddressType;\r\n }\r\n\r\n input = (\r\n \r\n );\r\n }\r\n\r\n return {\r\n key: addressFormatItem.name,\r\n AddressItem: { className: className, id: `${elementId}_container` },\r\n label: ,\r\n alert: ,\r\n input: input\r\n };\r\n });\r\n};\r\n\r\nexport const AddressAddUpdate = (props: IAddressAddInputProps): IAddressAddUpdateProps => {\r\n const {\r\n editAddressHeading,\r\n addAddressHeading,\r\n selectedAddress = {},\r\n resources,\r\n hasError,\r\n onCancel,\r\n onSave,\r\n hasExternalSubmitGroup,\r\n isUpdating,\r\n addressActionResponse,\r\n telemetryContent\r\n } = props;\r\n const heading = selectedAddress.RecordId ? editAddressHeading : addAddressHeading;\r\n\r\n return {\r\n AddressForm: { className: 'msc-address-form' },\r\n heading: heading && ,\r\n items: getAddessItems(selectedAddress, props),\r\n isShowSaveButton: !hasExternalSubmitGroup,\r\n saveButton: onSave && (\r\n \r\n ),\r\n isShowCancelButton: !hasExternalSubmitGroup,\r\n cancelButton: onCancel && (\r\n \r\n ),\r\n hasError: hasError || false,\r\n error: {\r\n AddressError: { className: 'msc-address-form__error' },\r\n title: addressActionResponse && addressActionResponse.errorTitle && (\r\n \r\n ),\r\n message: addressActionResponse && addressActionResponse.errorMessage && (\r\n \r\n )\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 { ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport AddressInputComponent from './address-input';\r\n\r\nexport interface IAddressBillingCheckbox {\r\n isChecked: boolean;\r\n value: string;\r\n ariaLabel: string;\r\n text: string;\r\n telemetryContent?: ITelemetryContent;\r\n onChange(event: React.ChangeEvent): void;\r\n}\r\n\r\nexport const AddressBillingCheckbox: React.FC = ({\r\n isChecked,\r\n value,\r\n ariaLabel,\r\n text,\r\n telemetryContent,\r\n onChange\r\n}) => {\r\n const additionalAttributes = {\r\n checked: isChecked,\r\n 'aria-checked': isChecked\r\n };\r\n\r\n return (\r\n \r\n );\r\n};\r\nexport default AddressBillingCheckbox;\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\nexport interface IAddressBillingHeading {\r\n text: string;\r\n}\r\n\r\nexport const AddressBillingHeading: React.FC = ({ text }) => (\r\n

{text}

\r\n);\r\n\r\nexport default IAddressBillingHeading;\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 classname from 'classnames';\r\nimport * as React from 'react';\r\n\r\nexport interface IAddressDetailItem {\r\n isNewLine: boolean;\r\n isShowLabel: boolean;\r\n labelText: string;\r\n name: string;\r\n value: string;\r\n}\r\n\r\nconst AddressDetailItem: React.FC = ({ isNewLine, isShowLabel, labelText, name, value }) => {\r\n const className = `msc-address-detail__item msc-address-detail__item-${name.toLowerCase()}`;\r\n const isEmpty = !(value && value.length > 0);\r\n const mainClass = isShowLabel\r\n ? `msc-address-detail__item msc-address-detail__item-address-detail_${labelText}`\r\n : classname(className, { 'msc-address-detail__item-empty': isEmpty, 'msc-address-detail__item-newline': isNewLine });\r\n return (\r\n \r\n {isShowLabel && (\r\n <>\r\n {labelText}\r\n \r\n \r\n )}\r\n {value}\r\n \r\n );\r\n};\r\n\r\nexport default AddressDetailItem;\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\n\r\n/**\r\n * The payment error.\r\n */\r\nexport interface IPaymentError {\r\n title: string;\r\n message: string;\r\n className?: string;\r\n}\r\n\r\n/**\r\n * The payment error.\r\n * @param param0 - First param.\r\n * @param param0.title - Title.\r\n * @param param0.message - Message.\r\n * @param param0.className - ClassName.\r\n * @returns React node.\r\n */\r\nexport const ErrorComponent: React.FC = ({ title, message, className = 'ms-checkout-payment-instrument' }) => (\r\n
\r\n

{title}

\r\n

{message}

\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\n/// \n\n/* eslint-disable no-duplicate-imports */\nimport classnames from 'classnames';\nimport { action, computed, observable, reaction, set } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { IModuleStateProps, withModuleState, EnabledPaymentsForOBO } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport { Address, AddressPurpose, CountryRegionInfo, StateProvinceInfo } from '@msdyn365-commerce/retail-proxy';\n\nimport { CheckoutModule, ErrorLocation, IGiftCardExtend } from '@msdyn365-commerce/global-state';\nimport { AutoSuggest } from './common/address-autosuggest';\nimport { IAutoSuggestOptions } from './common/address-autosuggest.data';\nimport { AddressCommon } from './common/address-common';\nimport { AddressFormat } from './common/address-format';\nimport { AddressItemType } from './common/address-format.data';\nimport { AddressMetaData } from './common/address-meta-data';\nimport { AddressOperation, AddressType, IAddressResource, IAddressResponse } from './common/address-module.data';\nimport { AddressAddUpdate, IAddressAddUpdateProps } from './common/components/address-add';\nimport { AddressBillingCheckbox } from './common/components/address-billing-checkbox';\nimport { AddressBillingHeading } from './common/components/address-billing-heading';\nimport { AddressShow, IAddressShowProps } from './common/components/address-show';\nimport { IMandsCCheckoutBillingAddressData } from './mands-c-checkout-billing-address.data';\nimport { IMandsCCheckoutBillingAddressProps } from './mands-c-checkout-billing-address.props.autogenerated';\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ErrorComponent } from '../mands-c-checkout-billing-address/common/components/address-error-alert';\nimport { focusOnCheckoutError } from './checkout-errors/checkout-errors';\n\nexport interface IProps extends IMandsCCheckoutBillingAddressProps, IModuleStateProps {}\n\nexport interface ICheckoutBillingAddressViewState {\n isShowAddress: boolean;\n isShowAddOrUpdateAddress: boolean;\n isShowSameAsShippingCheckbox: boolean;\n errorMessage?: string;\n}\n\nexport interface ICheckoutBillingAddressViewProps extends IProps {\n className: string;\n currentOperation: AddressOperation;\n selectedAddress?: Address;\n addUpdateAddress: Address;\n countryRegionId: string;\n stateProvinceInfo?: StateProvinceInfo[];\n validationError: object;\n addressActionResponse?: IAddressResponse;\n viewState: ICheckoutBillingAddressViewState;\n CheckoutBillingAddress: IModuleProps;\n sameAsShippingCheckbox: React.ReactNode;\n heading: React.ReactNode;\n showAddress: IAddressShowProps;\n showAddOrUpdateAddress: IAddressAddUpdateProps;\n alert?: React.ReactNode;\n checkoutErrorRef?: React.RefObject;\n}\n\n/**\n *\n * CheckoutBillingAddress component\n * @extends {React.PureComponent>}\n */\n// @ts-ignore\n@withModuleState\n@observer\nclass CheckoutBillingAddress extends React.Component {\n @observable private currentOperation: AddressOperation;\n @observable private isBillingAddressSameAsShipping: boolean;\n @observable private selectedAddress?: Address;\n @observable private addUpdateAddress: Address & { HouseNumber?: string };\n @observable private countryRegionId: string = 'USA';\n @observable private stateProvinceInfo?: StateProvinceInfo[];\n @observable private validationError: object;\n @observable private addressActionResponse?: IAddressResponse;\n\n private addressCommon: AddressCommon;\n private addressFormat: AddressFormat;\n private countryRegions: CountryRegionInfo[];\n private addressPurposes: AddressPurpose[];\n private readonly resources: IAddressResource;\n\n private defaultAddressType: number = 6; // Default to Home\n // private addRenderRef: React.RefObject;\n private telemetryContent?: ITelemetryContent;\n private autoSuggest?: AutoSuggest;\n private readonly checkoutErrorRef: React.RefObject = React.createRef();\n constructor(props: IProps) {\n super(props);\n const { context, data, resources, telemetry } = this.props;\n\n this.addUpdateAddress = {};\n this.validationError = {};\n this.isBillingAddressSameAsShipping = false;\n this.resources = resources;\n this.currentOperation = AddressOperation.List;\n this.addressPurposes = data.addressPurposes.result || [];\n this.countryRegions = data.countryRegions.result || [];\n this.stateProvinceInfo = data.countryStates.result || [];\n this.addressCommon = new AddressCommon(context, resources, telemetry);\n this.addressFormat = new AddressFormat(\n this.countryRegions,\n new AddressMetaData({ ...resources }, this._getAddressFormatExcludeList()),\n this.addressPurposes\n );\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n // this.addRenderRef = React.createRef();\n this.state = {\n isShowAddress: false,\n isShowAddOrUpdateAddress: false,\n isShowSameAsShippingCheckbox: false,\n errorMessage: ''\n };\n }\n\n public async componentDidMount(): Promise {\n const {\n context: {\n telemetry,\n actionContext: {\n requestContext: { channel }\n }\n },\n config: { autoSuggestionEnabled, autoSuggestOptions }\n } = this.props;\n\n this.props.data.checkout.then(() => {\n this._setDefaultCountryRegionId();\n this._initModuleState();\n });\n\n reaction(\n () => this.countryRegionId,\n () => this._getStateProvinces()\n );\n\n reaction(\n () => this.currentOperation,\n () => {\n this._getStateProvinces();\n }\n );\n\n reaction(\n () => this.props.data.checkout.result && this.props.data.checkout.result.shippingAddress,\n shippingAddress => {\n if (this.props.moduleState.isUpdating) {\n if (shippingAddress && this.isBillingAddressSameAsShipping) {\n this.isBillingAddressSameAsShipping = true;\n this._updateCurrentOperation(AddressOperation.Show, shippingAddress);\n } else if (shippingAddress && this.isBillingAddressSameAsShipping) {\n this._updateCurrentOperation(AddressOperation.Show, shippingAddress);\n }\n }\n }\n );\n\n reaction(\n () => this.isBillingAddressRequried,\n isBillingAddressRequried => {\n if (isBillingAddressRequried) {\n if (this.props.moduleState.isDisabled) {\n this.onEdit();\n }\n } else {\n // tslint:disable-next-line:no-floating-promises\n this.props.data.checkout.result?.removeBillingAddress({});\n this.props.moduleState.onDisable();\n }\n }\n );\n\n if (autoSuggestionEnabled) {\n if (channel && !channel.BingMapsApiKey) {\n telemetry.error('BingMapsApiKey is missing.');\n return;\n }\n\n if (channel && !channel.BingMapsEnabled) {\n telemetry.error('Map is disabled from HQ.');\n return;\n }\n\n const options: IAutoSuggestOptions = { ...autoSuggestOptions };\n this.autoSuggest = new AutoSuggest(\n telemetry,\n options,\n channel?.BingMapsApiKey,\n channel?.ChannelCountryRegionISOCode,\n channel?.DefaultLanguageId\n );\n\n // Customer doesn't have any address. Then add view will be loaded directly. Code for the same to handle that\n if (\n this.props.data.storeSelectorStateManager.result &&\n (this.currentOperation === AddressOperation.Add || this.currentOperation === AddressOperation.Update)\n ) {\n await this.autoSuggest?._loadMapAPI(await this.props.data.storeSelectorStateManager);\n }\n\n reaction(\n () =>\n this.props.data.storeSelectorStateManager.result?.loadMapApi &&\n (this.currentOperation === AddressOperation.Add || this.currentOperation === AddressOperation.Update),\n async () => {\n await this.autoSuggest?._loadMapAPI(await this.props.data.storeSelectorStateManager);\n }\n );\n\n reaction(\n () => this.props.data.storeSelectorStateManager.result?.isMapApiLoaded,\n async () => {\n await this._attachMapAutoSuggest();\n }\n );\n }\n if (this.props.data.checkout.result?.shouldEnableCheckoutErrorDisplayMessaging) {\n reaction(\n () => this.props.data.checkout.result?.checkoutError,\n checkoutError => {\n if (\n checkoutError &&\n checkoutError.errorLocation === ErrorLocation.CheckoutBillingAddress &&\n checkoutError.errorMessage\n ) {\n this._setErrorMessage(checkoutError.errorMessage);\n }\n }\n );\n reaction(\n () => this.props.data.checkout.result?.checkoutErrorFocus,\n checkoutErrorFocus => {\n if (checkoutErrorFocus === CheckoutModule.CheckoutBillingAddress) {\n focusOnCheckoutError(this.checkoutErrorRef, this.props.context.actionContext);\n }\n }\n );\n }\n }\n\n public async componentDidUpdate(): Promise {\n if (this.currentOperation === AddressOperation.Add || this.currentOperation === AddressOperation.Update) {\n if (this.props.data.storeSelectorStateManager.result?.isMapApiLoaded) {\n await this._attachMapAutoSuggest();\n }\n } else {\n this.autoSuggest?.disposeAutoSuggest();\n }\n }\n\n public render(): JSX.Element | null {\n if (!this.isBillingAddressRequried || this._shouldHideBillingAddressForOBO) {\n return null;\n }\n\n const {\n resources,\n moduleState: { hasError }\n } = this.props;\n const errorMessage = this.state.errorMessage;\n\n const { renderView, config } = this.props;\n\n const viewProps = {\n ...this.props,\n currentOperation: this.currentOperation,\n selectedAddress: this.selectedAddress,\n addUpdateAddress: this.addUpdateAddress,\n countryRegionId: this.countryRegionId,\n stateProvinceInfo: this.stateProvinceInfo,\n validationError: this.validationError,\n addressActionResponse: this.addressActionResponse,\n className: config.className,\n viewState: {\n isShowAddress: this.selectedAddress && this.currentOperation === AddressOperation.Show,\n isShowAddOrUpdateAddress: this.currentOperation !== AddressOperation.Show,\n isShowSameAsShippingCheckbox: this.isCartContainsItemsForShipping && this.props.moduleState.isUpdating\n },\n CheckoutBillingAddress: {\n moduleProps: this.props,\n className: classnames('ms-checkout-billing-address', config.className)\n },\n heading: ,\n alert: hasError && errorMessage && ,\n checkoutErrorRef: this.checkoutErrorRef,\n // tslint:disable-next-line: max-line-length\n sameAsShippingCheckbox: (\n \n ),\n showAddress: this._renderShowAddress(),\n showAddOrUpdateAddress: this._renderAddOrUpdateAddress()\n };\n\n return renderView(viewProps) as React.ReactElement;\n }\n private _renderAddOrUpdateAddress = (): IAddressAddUpdateProps => {\n return AddressAddUpdate({\n resources: this.resources,\n addressType: AddressType.Billing,\n addressFormat: this.addressFormat.getAddressFormat(this.addUpdateAddress.ThreeLetterISORegionName || this.countryRegionId),\n defaultCountryRegionId: this.countryRegionId,\n defaultAddressType: this.defaultAddressType,\n selectedAddress: this.addUpdateAddress,\n validationError: this.validationError,\n addressActionResponse: this.addressActionResponse,\n dropdownDisplayData: this.addressFormat.getPrefilledAddressDropdownData(\n this.resources.addressStateDefaultSelectionText,\n this.stateProvinceInfo\n ),\n telemetryContent: this.telemetryContent,\n onInputChange: this._onAddressAddUpdateInputChange,\n onDropdownChange: this._onAddressAddUpdateDropdownChange,\n hasExternalSubmitGroup: this.props.moduleState.hasExternalSubmitGroup,\n onSave: this._onSubmitAddress,\n onCancel: this._resetView\n });\n };\n\n private _renderShowAddress(): IAddressShowProps | null {\n if (this.selectedAddress) {\n return AddressShow({\n address: this.selectedAddress,\n addressFormat: this.addressFormat.getAddressFormat(this.selectedAddress.ThreeLetterISORegionName || ''),\n addressPurposes: this.addressPurposes\n });\n }\n\n return null;\n }\n\n private _onCountryChange = (countryRegionId: string) => {\n this.countryRegionId = countryRegionId;\n const twoLetterISORegionName = this.addressFormat.getTwoLetterISORegionName(countryRegionId);\n set(this.addUpdateAddress, { ['ThreeLetterISORegionName']: countryRegionId });\n set(this.addUpdateAddress, { ['TwoLetterISORegionName']: twoLetterISORegionName });\n this.autoSuggest?.changeAutoSuggestionCountryCode(twoLetterISORegionName);\n this._clearAddressFields();\n };\n\n private _getAddressFormatExcludeList = (): AddressItemType[] => {\n const { config } = this.props;\n const addressFormatExcludeList: AddressItemType[] = [];\n\n if (!config.showAddressType) {\n addressFormatExcludeList.push(AddressItemType.AddressTypeValue);\n }\n\n addressFormatExcludeList.push(AddressItemType.IsPrimary);\n\n return addressFormatExcludeList;\n };\n\n private _attachMapAutoSuggest = async (): Promise => {\n const {\n data: {\n storeSelectorStateManager: { result: storeSelectorStateManager }\n }\n } = this.props;\n\n if (storeSelectorStateManager?.isMapApiLoaded) {\n this.autoSuggest?.attachAutoSuggest('#billing_addressstreet', '#billing_addressstreet_container', this._onSuggestionSelected);\n }\n };\n\n @action\n private readonly _onSuggestionSelected = async (result: Microsoft.Maps.ISuggestionResult): Promise => {\n this._clearAddressFields();\n const address = this.addressFormat.getTranformedAddress(result, this.stateProvinceInfo);\n set(this.addUpdateAddress, { Street: '' });\n set(this.addUpdateAddress, { ZipCode: address.ZipCode });\n set(this.addUpdateAddress, { CountyName: address.CountyName });\n set(this.addUpdateAddress, { City: address.City });\n set(this.addUpdateAddress, { State: address.State });\n set(this.addUpdateAddress, { DistrictName: address.DistrictName });\n set(this.addUpdateAddress, { FullAddress: address.FullAddress });\n // Bing autosuggest put the complete address in the Street input box. Updating the street input box to show only street address.\n setTimeout(() => {\n set(this.addUpdateAddress, { Street: address.Street });\n }, 0);\n };\n\n @action\n private readonly _clearAddressFields = (): void => {\n const addressFormatItem = this.addressFormat.getAddressFormat(\n this.addUpdateAddress.ThreeLetterISORegionName || this.countryRegionId\n );\n addressFormatItem.forEach(format => {\n if (this.addUpdateAddress[format.name] !== undefined && !this.autoSuggest?.excludedAddressFields.includes(format.name)) {\n this.addressFormat[format.name] = '';\n }\n });\n this._clearValidation();\n };\n\n @action\n private readonly _clearValidation = (): void => {\n this.validationError = {};\n };\n\n private onAddressAddUpdate = (name: string, value: string) => {\n set(this.addUpdateAddress, { [name]: value });\n this.addressFormat.validateAddressFormat(this.addUpdateAddress, this.validationError, this.countryRegionId, name);\n };\n\n private _onAddressAddUpdateInputChange = (event: React.ChangeEvent): void => {\n const value = (event.target.value || '').replace(new RegExp('[<>]', 'gi'), '');\n this.onAddressAddUpdate(event.target.name, value);\n };\n\n private _onAddressAddUpdateDropdownChange = (event: React.ChangeEvent): void => {\n this.onAddressAddUpdate(event.target.name, event.target.value);\n\n if (event.target.name === AddressItemType[AddressItemType.ThreeLetterISORegionName]) {\n this._onCountryChange(event.target.value);\n }\n };\n\n private _getStateProvinces = (): void => {\n if (\n !this.countryRegionId ||\n !(this.currentOperation === AddressOperation.Add || this.currentOperation === AddressOperation.Update)\n ) {\n return;\n }\n\n // tslint:disable-next-line:no-floating-promises\n this.addressCommon.getStateProvinces(this.countryRegionId).then((result: StateProvinceInfo[]) => {\n const stateInfo = result.some(state => state.StateId === this.addUpdateAddress.State);\n // Reset state if selected state not found in the list.\n if (!stateInfo) {\n set(this.addUpdateAddress, { ['State']: '' });\n }\n this.stateProvinceInfo = result;\n });\n };\n\n private _initModuleState = (): void => {\n this.props.moduleState.init({\n status: this.isBillingAddressRequried ? 'updating' : 'disabled',\n onEdit: this.onEdit,\n onCancel: this.onCancel,\n onSubmit: this.onSubmit\n });\n\n const { billingAddress, isBillingAddressSameAsShippingAddress } = this.props.data.checkout.result || {};\n\n if (this.isBillingAddressRequried) {\n if (billingAddress) {\n this.isBillingAddressSameAsShipping = isBillingAddressSameAsShippingAddress || false;\n this._updateCurrentOperation(AddressOperation.Show, billingAddress);\n this._updateModuleState();\n } else if (this.isCartContainsItemsForShipping) {\n this.isBillingAddressSameAsShipping = true;\n this._updateCurrentOperation(AddressOperation.Show, this.shippingAddress);\n } else {\n this.isBillingAddressSameAsShipping = false;\n this._updateCurrentOperation(AddressOperation.Add);\n }\n }\n };\n\n private _setDefaultCountryRegionId(): void {\n const { request } = this.props.context;\n const market = request && request.channel && request.channel.ChannelCountryRegionISOCode;\n\n this.countryRegionId = this.addressCommon.getDefaultCountryRegionId(this.countryRegionId, this.countryRegions, market);\n }\n\n private _onBillingAddressSameAsShippingChange = (event: React.ChangeEvent) => {\n this.isBillingAddressSameAsShipping = event.currentTarget.checked;\n\n if (this.isBillingAddressSameAsShipping && this.shippingAddress) {\n this._updateCurrentOperation(AddressOperation.Show, this.shippingAddress);\n } else {\n this._updateCurrentOperation(AddressOperation.Add, this.billingAddress);\n }\n };\n\n @computed get isCartContainsItemsForShipping(): boolean {\n const { request } = this.props.context;\n const multiplePickupStoreSwitchName = 'Dynamics.AX.Application.RetailMultiplePickupDeliveryModeFeature';\n const { channelDeliveryOptionConfig, featureState } = this.props.data;\n const retailMultiplePickUpOptionEnabled = featureState?.result?.find(feature => feature.Name === multiplePickupStoreSwitchName)\n ?.IsEnabled;\n\n const pickupDeliveryModeCode = request && request.channel && request.channel.PickupDeliveryModeCode;\n const emailDeliveryModeCode = request && request.channel && request.channel.EmailDeliveryModeCode;\n\n // if hasInvoiceLine is true, there are only invoices no items in cart and return false here\n return this.props.data.checkout.result?.checkoutCart.hasInvoiceLine\n ? false\n : retailMultiplePickUpOptionEnabled\n ? ((this.props.data.checkout.result && this.props.data.checkout.result.checkoutCart.cart.CartLines) || []).some(cartLine =>\n cartLine.DeliveryMode && cartLine.DeliveryMode !== ''\n ? cartLine.DeliveryMode !==\n channelDeliveryOptionConfig.result?.PickupDeliveryModeCodes?.find(\n deliveryMode => deliveryMode === cartLine.DeliveryMode\n ) && cartLine.DeliveryMode !== emailDeliveryModeCode\n : cartLine\n )\n : ((this.props.data.checkout.result && this.props.data.checkout.result.checkoutCart.cart.CartLines) || []).some(cartLine =>\n cartLine.DeliveryMode && cartLine.DeliveryMode !== ''\n ? cartLine.DeliveryMode !== pickupDeliveryModeCode && cartLine.DeliveryMode !== emailDeliveryModeCode\n : cartLine\n );\n }\n\n @computed get billingAddress(): Address | undefined {\n return this.props.data.checkout.result && this.props.data.checkout.result.billingAddress;\n }\n\n @computed get shippingAddress(): Address | undefined {\n return this.props.data.checkout.result && this.props.data.checkout.result.shippingAddress;\n }\n\n @computed get getLoyaltyAmount(): number {\n const checkoutState = this.props.data.checkout.result;\n return checkoutState && checkoutState.loyaltyAmount ? checkoutState.loyaltyAmount : 0;\n }\n\n @computed get getGiftCardTotalAmount(): number {\n const checkoutState = this.props.data.checkout.result;\n if (!checkoutState || !checkoutState.giftCardExtends) {\n return 0;\n }\n return checkoutState.giftCardExtends.reduce((count: number, giftCard: IGiftCardExtend) => {\n return count + (giftCard.Balance || 0);\n }, 0);\n }\n\n @computed get shouldPaidByCard(): boolean {\n const {\n data: { checkout },\n config\n } = this.props;\n if (!checkout.result) {\n return false;\n }\n\n const checkoutResult = checkout.result;\n const cart = checkoutResult.checkoutCart.cart;\n if (!cart || !cart.CartLines || !cart.CartLines.length) {\n return false;\n }\n\n const { paymentTenderType, tokenizedPaymentCard } = checkoutResult;\n const isPaidByOtherPaymentSource = config.paymenTenderType !== paymentTenderType && tokenizedPaymentCard;\n\n // Use payment card when it is not free or gift card balance + Loyalty amount can not cover the total amount\n const amountDue = (cart.TotalAmount || 0) - this.getGiftCardTotalAmount - this.getLoyaltyAmount;\n\n return amountDue > 0 && !isPaidByOtherPaymentSource;\n }\n\n @computed get isBillingAddressRequried(): boolean {\n return this.shouldPaidByCard;\n }\n\n @computed private get _shouldHideBillingAddressForOBO(): boolean {\n return Msdyn365.isOboRequest(this.props.context.request) && EnabledPaymentsForOBO.PaymentInstrument === 0;\n }\n\n private _onSubmitAddress = (): void => {\n if (!this.addressFormat.validateAddressFormat(this.addUpdateAddress, this.validationError, this.countryRegionId)) {\n this.props.moduleState.setHasError(true);\n if (\n this.props.data.checkout.result?.shouldEnableSinglePaymentAuthorizationCheckout &&\n this.props.data.checkout.result?.isPaymentSectionContainerHasError\n ) {\n this.props.data.checkout.result.updateIsBillingAddressHasError({ newIsBillingAddressHasError: true });\n }\n\n return;\n }\n\n this._setBillingAddress(this.addUpdateAddress);\n this._updateCurrentOperation(AddressOperation.Show, this.addUpdateAddress);\n this._updateModuleState();\n };\n\n private onSubmit = (): void => {\n switch (this.currentOperation) {\n case AddressOperation.Add:\n case AddressOperation.Update:\n this.props.telemetry.information('Billing address submit for Add or Update operation.');\n this._onSubmitAddress();\n break;\n case AddressOperation.Show:\n this.props.telemetry.information('Billing address submit for Show operation.');\n if (this.selectedAddress) {\n this._setBillingAddress(this.selectedAddress);\n this._updateCurrentOperation(AddressOperation.Show, this.selectedAddress);\n this._updateModuleState();\n }\n break;\n default:\n this.props.telemetry.error('Invalid operation');\n }\n };\n\n private onCancel = (): void => {\n switch (this.currentOperation) {\n case AddressOperation.Add:\n case AddressOperation.Update:\n this.props.telemetry.information('Billing address cancel for Add or Update operation.');\n this._resetView();\n this._clearAddressFields();\n break;\n case AddressOperation.Show:\n this.props.telemetry.information('Billing address cancel for Show operation.');\n // @ts-ignore: Compiler not reconizing property form extending class\n this._resetView();\n break;\n default:\n this.props.telemetry.error('Invalid operation');\n }\n };\n\n private onEdit = (): void => {\n this.props.telemetry.information('Billing address onEdit is called.');\n if (this.isBillingAddressSameAsShipping && this.shippingAddress && this.isCartContainsItemsForShipping) {\n this._updateCurrentOperation(AddressOperation.Show, this.shippingAddress);\n } else {\n this._updateCurrentOperation(AddressOperation.Add, this.billingAddress);\n }\n this.props.moduleState.onUpdating();\n };\n\n private _setBillingAddress = (address: Address): void => {\n if (this.props.data.checkout.result) {\n const newBillingAddress: Address & { HouseNumber?: string } = { ...address };\n // VSI - Customization House Number\n newBillingAddress.Street = `${this.addUpdateAddress.HouseNumber} | ${this.addUpdateAddress.Street}`;\n delete newBillingAddress.HouseNumber;\n // END\n if (address.ThreeLetterISORegionName && !newBillingAddress.TwoLetterISORegionName) {\n newBillingAddress.TwoLetterISORegionName = this.addressFormat.getTwoLetterISORegionName(address.ThreeLetterISORegionName);\n }\n\n // tslint:disable-next-line:no-floating-promises\n this.props.data.checkout.result.updateBillingAddress({\n newBillingAddress,\n additionalProperties: { isBillingAddressSameAsShippingAddress: this.isBillingAddressSameAsShipping }\n });\n }\n };\n\n private _resetView = () => {\n this._updateCurrentOperation(AddressOperation.Show, this.billingAddress);\n this._updateModuleState();\n };\n\n private _updateCurrentOperation = (operation: AddressOperation, selectedAddress?: Address) => {\n this.currentOperation = operation;\n this.selectedAddress = selectedAddress;\n\n if (this.currentOperation === AddressOperation.Add || this.currentOperation === AddressOperation.Update) {\n this.addUpdateAddress = { ...this.selectedAddress } || {};\n // VSI-CUSTOMIZATION: Update Operation House | Street\n if (this.addUpdateAddress.Street?.split('|') && this.addUpdateAddress.Street?.split('|').length > 1) {\n set(this.addUpdateAddress, { ['HouseNumber']: this.addUpdateAddress.Street?.split('|')[0]?.trim() });\n this.addUpdateAddress.Street = this.addUpdateAddress.Street?.split('|')[1]?.trim();\n }\n // set(this.addUpdateAddress, {['Street']: this.addUpdateAddress.Street?.split('|')[1]?.trim()});\n // VSI - Update Operation Customizaiton\n set(this.addUpdateAddress, {\n ['ThreeLetterISORegionName']: this.addUpdateAddress.ThreeLetterISORegionName || this.countryRegionId\n });\n set(this.addUpdateAddress, { ['AddressTypeValue']: this.addUpdateAddress.AddressTypeValue || this.defaultAddressType });\n }\n };\n\n private _updateModuleState = () => {\n if (this.currentOperation === AddressOperation.Show) {\n this.props.moduleState.onReady();\n } else {\n this.props.moduleState.onUpdating();\n }\n };\n @action\n private readonly _setErrorMessage = (errorMessage: string): void => {\n this.props.telemetry.error(errorMessage);\n this.props.moduleState.setHasError(true);\n this.props.moduleState.onUpdating();\n this.setState({\n errorMessage\n });\n };\n}\n\nexport default CheckoutBillingAddress;\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\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\r\nimport { Address, AddressPurpose } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\r\n\r\nimport { AddressItemType, IAddressItem } from '../../common/address-format.data';\r\nimport AddressDetailItemComponent from './address-detail-item';\r\n\r\nexport interface IAddressShowItem {\r\n key: string;\r\n description: React.ReactNode;\r\n}\r\n\r\nexport interface IAddressShowProps {\r\n AddressDetail: INodeProps;\r\n items: IAddressShowItem[];\r\n}\r\n\r\nexport interface IAddressShowInputProps {\r\n addressFormat: IAddressItem[];\r\n address: Address;\r\n addressPurposes: AddressPurpose[];\r\n}\r\n\r\nexport const AddressShow = (props: IAddressShowInputProps): IAddressShowProps => {\r\n const { addressFormat, addressPurposes, address } = props;\r\n\r\n return {\r\n AddressDetail: { className: 'msc-address-detail' },\r\n items: addressFormat.map(item => {\r\n if (item.name === AddressItemType[AddressItemType.AddressTypeValue]) {\r\n const addressType = addressPurposes.find(\r\n addressTypeValue => addressTypeValue.AddressType.toString() === (address[item.name] || '').toString()\r\n );\r\n if (addressType) {\r\n const addressTypeDescription = addressType.Description || '';\r\n return {\r\n key: item.name,\r\n description: (\r\n \r\n )\r\n };\r\n }\r\n }\r\n return {\r\n key: item.name,\r\n description: (\r\n \r\n )\r\n };\r\n })\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\n/* eslint-disable no-duplicate-imports */\nimport * as React from 'react';\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\n\nimport { IAddressAddItem, IAddressAddUpdateProps } from '../mands-c-checkout-shipping-address/common/components/address-add';\nimport { IAddressShowItem, IAddressShowProps } from '../mands-c-checkout-shipping-address/common/components/address-show';\nimport { ICheckoutBillingAddressViewProps } from './mands-c-checkout-billing-address';\n\n/**\n * Address show component.\n * @param param0 - Root param.\n * @param param0.AddressDetail - Address detail.\n * @param param0.items - IAddressShowItem[].\n * @returns - Address Node.\n */\nconst AddressShow: React.FC = ({ AddressDetail, items }) => {\n return (\n \n {items.map((item: IAddressShowItem) => {\n return <>{item.description};\n })}\n \n );\n};\n\n/**\n * Address Add Update Component.\n * @param param0 - Root param.\n * @param param0.AddressForm - Address form.\n * @param param0.heading - Address Heading.\n * @param param0.items - IAddressAddItem[].\n * @param param0.hasError - Boolean.\n * @param param0.error - IAddressError.\n * @param param0.isShowSaveButton - Boolean.\n * @param param0.saveButton - Save button.\n * @param param0.isShowCancelButton - Boolean.\n * @param param0.cancelButton - Cancel button.\n * @returns - AddressForm Node.\n */\nconst AddressAddUpdate: React.FC = ({\n AddressForm,\n heading,\n items,\n hasError,\n error,\n isShowSaveButton,\n saveButton,\n isShowCancelButton,\n cancelButton\n}) => {\n return (\n \n {heading}\n {items.map((item: IAddressAddItem) => {\n const { AddressItem, key, label, alert, input } = item;\n return (\n \n {label}\n {alert}\n {input}\n \n );\n })}\n {hasError && (\n \n {error.title}\n {error.message}\n \n )}\n {isShowSaveButton && saveButton}\n {isShowCancelButton && cancelButton}\n \n );\n};\n\n/**\n * Checkout Billing Address View Component.\n * @param props - Props.\n * @returns - CheckoutBillingAddress Module.\n */\nconst CheckoutBillingAddressView: React.FC = props => {\n const {\n checkoutErrorRef,\n alert,\n CheckoutBillingAddress,\n viewState,\n heading,\n sameAsShippingCheckbox,\n showAddress,\n showAddOrUpdateAddress\n } = props;\n\n return (\n \n {heading}\n {alert}\n {viewState.isShowSameAsShippingCheckbox && sameAsShippingCheckbox}\n {viewState.isShowAddress && }\n {viewState.isShowAddOrUpdateAddress && }\n \n );\n};\n\nexport default CheckoutBillingAddressView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport * as React from 'react';\n\nconst Loading: React.FC = () =>
;\n\nexport default Loading;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport { IModuleStateManager, IModuleStateProps, withModuleState } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport classname from 'classnames';\nimport get from 'lodash/get';\nimport { reaction } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\nimport { IMandsCCheckoutSectionContainerProps } from './mands-c-checkout-section-container.props.autogenerated';\nimport LoadingComponent from './components/loading';\n\nexport interface ICheckoutSectionContainerModuleProps extends IMandsCCheckoutSectionContainerProps<{}>, IModuleStateProps {\n enableControl: boolean;\n}\n\nexport interface ICheckoutSectionContainerItem {\n id: string;\n loading?: React.ReactNode;\n itemProps: INodeProps;\n item: React.ReactNode;\n}\n\nexport interface ICheckoutSectionContainerViewProps extends IMandsCCheckoutSectionContainerProps<{}> {\n className: string;\n checkoutPlainContainerProps: IModuleProps;\n items: ICheckoutSectionContainerItem[];\n}\n\n/**\n *\n * CheckoutPlainContainer component\n * @extends {React.Component}\n */\n@observer\nexport class CheckoutPlainContainer extends React.Component {\n public componentDidMount(): void {\n const items = this.getItems();\n const childIds = items.map((item: React.ReactNode) => get(item, 'props.id'));\n this.props.moduleState.init({\n onEdit: this.onEdit,\n onCancel: this.onCancel,\n onSubmit: this.onSubmit,\n childIds\n });\n\n reaction(\n () => this.props.moduleState.isReady,\n () => {\n this.onContainerReady();\n }\n );\n\n reaction(\n () => this.props.moduleState.shouldSubmitContainer,\n () => {\n this.onSubmit();\n }\n );\n }\n\n public componentDidUpdate(): void {\n if (!this.props.moduleState.hasExternalSubmitGroup) {\n return;\n }\n /**\n * Review all modules to updating status if one of the modules has error\n */\n const { childIds, hasError, getModule } = this.props.moduleState;\n const hasReadyItems = childIds.some((childId: string) => {\n const state = getModule(childId);\n return !!state && state.isReady;\n });\n if (hasReadyItems && hasError) {\n this.onEdit();\n }\n }\n\n public render(): JSX.Element | null {\n const {\n enableControl,\n moduleState,\n config: { width }\n } = this.props;\n\n const items = this.getItems();\n if (!items.length) {\n this.props.context.telemetry.error('Checkout section content is empty, module wont render');\n return null;\n }\n\n const moduleClassName = classname(\n 'ms-checkout-section-container',\n {\n 'has-initialized': moduleState.hasInitialized,\n 'is-ready': moduleState.isReady,\n 'is-updating': !moduleState.isReady,\n container: width === 'container',\n 'col-12 fullwidth': width === 'fluid'\n },\n this.props.config.className\n );\n\n const viewProps: ICheckoutSectionContainerViewProps = {\n ...this.props,\n\n className: moduleClassName,\n checkoutPlainContainerProps: {\n moduleProps: this.props,\n className: moduleClassName\n },\n items: items.map((item: React.ReactNode) => {\n const childId = get(item, 'props.id');\n const state = moduleState.getModule(childId);\n // Modules has not completed initializing or it's disable\n const hidden = state.hasModuleState && (!state.hasInitialized || state.isDisabled || state.isSkipped);\n return {\n id: childId,\n loading: state.hasModuleState && !state.hasInitialized && ,\n itemProps: {\n 'data-type-name': state.typeName,\n className: classname('ms-checkout-section-container__item', {\n hidden: hidden,\n initialized: state.hasInitialized,\n disabled: state.isDisabled,\n skipped: state.isSkipped,\n ready: state.isReady,\n updating: state.isUpdating,\n pending: state.isPending\n })\n },\n item: React.cloneElement(item as React.ReactElement, { enableControl })\n };\n })\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n private getItems = (): React.ReactNode[] => {\n const { slots } = this.props;\n return (slots && slots.primary && slots.primary.length && slots.primary) || [];\n };\n\n private getActiveChildModuleStates = (): IModuleStateManager[] => {\n const { childIds, getModule } = this.props.moduleState;\n return childIds\n .map(getModule)\n .filter((state): state is IModuleStateManager => !!state && !state.isDisabled && state.hasModuleState);\n };\n\n private clearError = (): void => {\n // Clear error before action, otherwise it will rise conflict;\n this.getActiveChildModuleStates().forEach(state => {\n state.hasError && state.setHasError(false);\n });\n };\n\n private onSubmit = (): void => {\n this.props.telemetry.information('Section container onSubmit is called.');\n this.clearError();\n this.getActiveChildModuleStates().forEach(state => {\n !state.isReady && state.onSubmit && state.onSubmit();\n });\n };\n\n private onCancel = (): void => {\n this.props.telemetry.information('Section container onCancel is called.');\n this.clearError();\n this.getActiveChildModuleStates().forEach(state => {\n !state.isReady && state.onCancel && state.onCancel();\n });\n };\n\n private onEdit = (): void => {\n this.props.telemetry.information('Section container onEdit is called.');\n this.getActiveChildModuleStates().forEach(state => {\n (state.isReady || state.isSkipped) && state.onEdit && state.onEdit();\n });\n };\n\n private onContainerReady = (): void => {\n this.props.telemetry.information('Section container onContainerReady is called.');\n this.getActiveChildModuleStates().forEach(state => {\n state.isReady && state.onContainerReady && state.onContainerReady();\n });\n };\n}\n\nexport default withModuleState(CheckoutPlainContainer);\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\n/* eslint-disable no-duplicate-imports */\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\nimport { ICheckoutSectionContainerItem, ICheckoutSectionContainerViewProps } from './mands-c-checkout-section-container';\n\nconst ItemComponent: React.FC = ({ loading, itemProps, item }) => (\n <>\n {loading}\n {item}\n \n);\n\nconst CheckoutSectionContainerView: React.FC = ({ checkoutPlainContainerProps, items }) => (\n \n {items.map(item => (\n \n ))}\n \n);\n\nexport default CheckoutSectionContainerView;\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { ICheckoutState } from '@msdyn365-commerce/global-state';\nimport {\n AsyncResult, CardPaymentAcceptPoint\n} from '@msdyn365-commerce/retail-proxy';\n\nexport enum ApplePayButtonState {\n Unknown,\n NotAvailable,\n Available\n};\n\n/**\n * Interface for checkout apple pay data.\n */\nexport interface ICheckoutApplePayData {\n checkout?: AsyncResult;\n cardPaymentAcceptPoint?: AsyncResult;\n}","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport { getCheckoutState, IGiftCardExtend } from '@msdyn365-commerce/global-state';\nimport {\n getDeliveryOptionsAsync,\n retrieveCardPaymentAcceptResultAsync\n} from '@msdyn365-commerce/retail-proxy/dist/DataActions/CartsDataActions.g';\nimport {\n Address,\n CardPaymentAcceptResult,\n Cart,\n FilterDeliveryModeOption\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport classNames from 'classnames';\nimport * as React from 'react';\n\nimport { CardPaymentAcceptPoint } from '@msdyn365-commerce/retail-proxy';\nimport { EnabledPaymentsForOBO } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { computed } from 'mobx';\nimport { ObjectExtensions, QueryResultSettingsProxy, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { ApplePayButtonState, ICheckoutApplePayData } from './checkout-apple-pay.data';\nimport { ICheckoutApplePayProps } from './checkout-apple-pay.props.autogenerated';\nimport { PlaceOrder } from '../../common/place-order';\nimport { ErrorComponent } from '../../common';\nimport { getThreeLetterCountryCode } from '../../common/country-codes';\n\nenum ApplePayPaymentAuthorizationResult {\n STATUS_SUCCESS = 0,\n STATUS_FAILURE = 1\n}\n\ninterface IApplePayLine {\n label: string;\n type: string;\n amount: string;\n}\n\ninterface IValidationEvent {\n validationUrl: string;\n}\n\ninterface IResult {\n newTotal: IApplePayLine;\n}\n\ninterface IAuthorizeEvent {\n paymentToken: string;\n shippingContact?: IShippingContactSelectedEvent;\n}\n\ninterface IAuthorizeResult {\n resultCode: ApplePayPaymentAuthorizationResult;\n}\n\ninterface IPaymentMethodEvent {\n type?: string;\n}\n\n/**\n * An interface that describes the shipping method for delivering physical goods.\n * Link to Apple doc - https://developer.apple.com/documentation/apple_pay_on_the_web/applepayshippingmethod\n */\ninterface IApplePayShippingMethod {\n /**\n * A short description of the shipping method.\n */\n label?: string;\n\n /**\n * The nonnegative cost associated with this shipping method.\n */\n amount?: string;\n\n /**\n * Additional description of the shipping method.\n */\n detail?: string;\n\n /**\n * A client-defined value used to identify this shipping method.\n */\n identifier?: string;\n}\n\n/**\n * Contact information fields to use for billing and shipping contact information.\n * Link to Apple doc - https://developer.apple.com/documentation/apple_pay_on_the_web/applepaypaymentcontact\n */\ninterface IShippingContactSelectedEvent {\n /**\n * A phone number for the contact.\n */\n phoneNumber?: string;\n\n /**\n * An email address for the contact.\n */\n emailAddress?: string;\n\n /**\n * The contact’s given name.\n */\n givenName?: string;\n\n /**\n * The contact’s family name.\n */\n familyName?: string;\n\n /**\n * The street portion of the address for the contact.\n */\n addressLines?: string[];\n\n /**\n * Additional information associated with the location, typically defined at the city or town level (such as district or neighborhood), in a postal address.\n */\n subLocality?: string;\n\n /**\n * The city for the contact.\n */\n locality?: string;\n\n /**\n * The zip code or postal code, where applicable, for the contact.\n */\n postalCode?: string;\n\n /**\n * The subAdministrative area (such as a county or other region) in a postal address.\n */\n subAdministrativeArea?: string;\n\n /**\n * The state for the contact.\n */\n administrativeArea?: string;\n\n /**\n * The name of the country or region for the contact.\n */\n country?: string;\n\n /**\n * The contact’s two-letter ISO 3166 country code.\n */\n countryCode?: string;\n}\n\ninterface IShippingMethodSelectedEvent {\n /**\n * The identifier of selected shipping method.\n */\n id: string;\n}\n\ninterface IAppleSessionHandler {\n onAuthorize(authorizeEvent: IAuthorizeEvent): Promise;\n onCancel(): void;\n onPaymentMethodUpdate(paymentMethodEvent: IPaymentMethodEvent): Promise;\n onValidation(validationEvent: IValidationEvent): Promise;\n\n onShippingContactSelected?(shippingContactSelectedEvent: IShippingContactSelectedEvent): Promise;\n onShippingMethodSelected?(shippingMethodSelectedEvent: IShippingMethodSelectedEvent): Promise;\n}\n\nexport interface ICheckoutApplePayViewProps extends ICheckoutApplePayProps<{}> {\n className?: string;\n checkoutApplePay: IModuleProps;\n applePayButton?: React.ReactNode;\n alert?: React.ReactNode;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ndeclare const window: any;\n\nexport interface ICheckoutApplePayModuleProps extends ICheckoutApplePayProps {}\n\ninterface ICheckoutApplePayState {\n applePayButtonState: ApplePayButtonState;\n paymentConnectorId?: string;\n lineDisplayName?: string;\n errorMessage?: string;\n shippingContact?: Address;\n shippingMethodId?: string;\n}\n/**\n *\n * CheckoutApplePay component\n * @extends {React.Component}\n */\nexport class CheckoutApplePay extends React.Component {\n private readonly moduleClassName: string = 'ms-checkout-apple-pay';\n private readonly applePaySdkId = 'd365-apple-pay-sdk';\n private readonly zeroAmount: number = 0;\n\n @computed private get getLoyaltyAmount(): number {\n const {\n data: { checkout }\n } = this.props;\n const checkoutState = checkout?.result;\n return checkoutState?.loyaltyAmount ? checkoutState.loyaltyAmount : this.zeroAmount;\n }\n\n @computed private get getGiftCardTotalAmount(): number {\n const {\n data: { checkout }\n } = this.props;\n const checkoutState = checkout?.result;\n if (!checkoutState || !checkoutState.giftCardExtends) {\n return this.zeroAmount;\n }\n return checkoutState.giftCardExtends.reduce((count: number, giftCard: IGiftCardExtend) => {\n return count + (giftCard.Balance || this.zeroAmount);\n }, 0);\n }\n\n @computed private get getCustomerAccountAmount(): number {\n const {\n data: { checkout }\n } = this.props;\n const checkoutState = checkout?.result;\n\n return checkoutState?.customerAccountAmount ?? this.zeroAmount;\n }\n\n @computed private get amountDue(): number {\n const {\n data: { checkout }\n } = this.props;\n\n const cart = checkout?.result?.checkoutCart.cart;\n if (!cart || !cart.AmountDue) {\n return this.zeroAmount;\n }\n\n return Math.max(\n this.zeroAmount,\n cart.AmountDue - this.getGiftCardTotalAmount - this.getLoyaltyAmount - this.getCustomerAccountAmount\n );\n }\n\n @computed private get merchantName(): string {\n return this.state.lineDisplayName || '';\n }\n\n public constructor(props: ICheckoutApplePayProps) {\n super(props);\n this.state = {\n applePayButtonState: ApplePayButtonState.Unknown\n };\n }\n\n public async componentDidMount() {\n const {\n data: { cardPaymentAcceptPoint },\n telemetry\n } = this.props;\n\n // load JS portion of payment connector for ApplePay\n await cardPaymentAcceptPoint;\n\n if (cardPaymentAcceptPoint?.result !== undefined) {\n this.loadPaymentConnectorSdk(cardPaymentAcceptPoint.result);\n\n // load official ApplePay JS SDK.\n const script = document.createElement('script');\n script.onload = () => {\n let isApplePayAvailable = false;\n if (typeof window.isApplePayAvailable === 'function') {\n isApplePayAvailable = window.isApplePayAvailable();\n }\n\n telemetry.information(`is Apple Pay available: ${isApplePayAvailable}`);\n return this.setState({\n applePayButtonState: isApplePayAvailable ? ApplePayButtonState.Available : ApplePayButtonState.NotAvailable,\n paymentConnectorId: cardPaymentAcceptPoint.result?.PaymentConnectorId\n });\n };\n\n script.src = 'https://applepay.cdn-apple.com/jsapi/v1/apple-pay-sdk.js';\n script.async = false;\n script.onerror = () => telemetry.error('unable to load Apple Pay SDK');\n document.body.appendChild(script);\n } else {\n telemetry.error('unable to get Apple Pay connector SDK');\n }\n }\n\n public render(): JSX.Element | null {\n const {\n config: { className },\n resources,\n telemetry\n } = this.props;\n\n if (this.props.context.request.user.isOBORequest && EnabledPaymentsForOBO.ExpressPayment === 0) {\n telemetry.information('isOBORequest is enabled, apple pay module wont render');\n return null;\n }\n\n let applePayButton: React.ReactNode;\n switch (this.state.applePayButtonState) {\n case ApplePayButtonState.Available:\n applePayButton = (\n
\n );\n break;\n\n case ApplePayButtonState.Unknown:\n case ApplePayButtonState.NotAvailable:\n default:\n applePayButton =
;\n break;\n }\n\n const viewProps: ICheckoutApplePayViewProps = {\n ...this.props,\n ...this.state,\n className,\n checkoutApplePay: {\n moduleProps: this.props,\n className: classNames(this.moduleClassName, className)\n },\n alert: this.state.errorMessage && (\n \n ),\n applePayButton\n };\n\n return this.props.renderView(viewProps);\n }\n\n /**\n * Handler for Apple Pay button.\n */\n public handlePayButton = async () => {\n const { config, resources, telemetry } = this.props;\n\n const handler: IAppleSessionHandler = {\n onAuthorize: this.authorizePayment,\n onCancel: this.cancelPayment,\n onPaymentMethodUpdate: this.updatePaymentMethod,\n onValidation: this.validateMerchant\n };\n\n // Set shipping related callbacks if corresponding options enabled.\n if (config.shouldRequestShippingAddress) {\n handler.onShippingContactSelected = this.shippingContactSelected;\n handler.onShippingMethodSelected = this.shippingMethodSelected;\n }\n\n try {\n // calling connector JS to create payment session.\n const displayName = window.CreateApplePaySession(handler, this.amountDue.toString());\n this.setState({\n lineDisplayName: displayName\n });\n } catch (error) {\n this.showErrorMessage(resources.genericErrorMessage);\n telemetry.error(`unable to create Apple Pay session: ${error}`);\n }\n };\n\n /**\n * Call CSU checkout API with Apple Pay token.\n * @param paymentToken {string} The gateway payment token\n */\n private checkout = async (paymentToken: string) => {\n const {\n data: { checkout },\n context: { actionContext }\n } = this.props;\n const { paymentConnectorId } = this.state;\n\n const checkoutState = await getCheckoutState(actionContext);\n const cartState = checkoutState.checkoutCart;\n\n const channelConfiguration = actionContext.requestContext.channel;\n if (!channelConfiguration) {\n throw new Error('unable to get channel configuration');\n }\n\n if (checkout !== null) {\n const cardPaymentAcceptResult: CardPaymentAcceptResult = {\n AccessCode: paymentToken,\n Settings: {\n PaymentConnectorId: paymentConnectorId\n }\n };\n\n await checkout?.result?.updateCardPaymentAcceptResult({ newCardPaymentAcceptResult: cardPaymentAcceptResult });\n await PlaceOrder(\n actionContext,\n checkoutState,\n undefined, // orderedProducts\n true, // redirect,\n cartState.cart.Version,\n false // isPaymentVerificationRedirection\n );\n }\n };\n\n /**\n * Load JS SDK from payment connector.\n * @param cardPaymentAcceptPoint {CardPaymentAcceptPoint} The card payment accept point object from CSU.\n */\n private loadPaymentConnectorSdk = (cardPaymentAcceptPoint: CardPaymentAcceptPoint) => {\n if (!cardPaymentAcceptPoint.AcceptPageContent) {\n this.props.telemetry.error(`Card payment accept page content can't be null or empty`);\n return;\n }\n\n const connectorSdk: string = cardPaymentAcceptPoint.AcceptPageContent || '';\n const sdk = document.createElement('script');\n sdk.id = this.applePaySdkId;\n sdk.type = 'text/javascript';\n sdk.appendChild(document.createTextNode(connectorSdk));\n document.body.appendChild(sdk);\n };\n\n /**\n * Validate Apple Pay merchant account with gateway.\n * @param validationEvent {IValidationEvent} The object containing merchant validation data.\n * @returns The response from CSU with validated data.\n */\n private validateMerchant = async (validationEvent: IValidationEvent): Promise => {\n const {\n data: { checkout, cardPaymentAcceptPoint },\n resources,\n telemetry\n } = this.props;\n\n telemetry.information('starting merchant validation for Apple Pay');\n const validationUrl = validationEvent?.validationUrl || '';\n if (!validationUrl) {\n telemetry.error(`Apple Pay validation failed: url can't be null or empty`);\n return Promise.reject('Validation url can not be null or empty');\n }\n\n const cartId = checkout?.result?.checkoutCart.cart.Id || '';\n if (!cartId) {\n telemetry.error(`Apple Pay validation failed: cart can't be null or empty`);\n return Promise.reject('Cart identifier can not be null or empty');\n }\n\n const paymentConnectorId = cardPaymentAcceptPoint?.result?.PaymentConnectorId || '';\n if (!paymentConnectorId) {\n telemetry.error(`Apple Pay validation failed: payment connector identifier can't be null or empty`);\n return Promise.reject('Connector identifier can not be null or empty');\n }\n\n const validationObject = {\n domainName: window.location.hostname,\n validationUrl: validationUrl\n };\n const validationBody = JSON.stringify(validationObject);\n const validationData = await retrieveCardPaymentAcceptResultAsync(\n { callerContext: this.props.context.actionContext },\n btoa(validationBody),\n [],\n cartId,\n { PaymentConnectorId: paymentConnectorId }\n ).catch(error => {\n this.showErrorMessage(resources.genericErrorMessage);\n telemetry.error(`Apple Pay validation failed: ${error}`);\n return Promise.reject(error);\n });\n\n telemetry.information('merchant validation for Apple Pay completed');\n return Promise.resolve(JSON.stringify(validationData));\n };\n\n /**\n * Authorize Apple Pay token by calling checkout API.\n * @param authorizeEvent {IAuthorizeEvent} The object containing authorization information.\n * @returns The authorization result.\n */\n private authorizePayment = async (authorizeEvent: IAuthorizeEvent): Promise => {\n const { resources, telemetry } = this.props;\n\n telemetry.information('starting authorization for Apple Pay');\n try {\n await this.updateContactInfo(authorizeEvent.shippingContact);\n await this.checkout(btoa(JSON.stringify(authorizeEvent)));\n telemetry.information('Apple Pay authorization completed');\n return Promise.resolve({ resultCode: ApplePayPaymentAuthorizationResult.STATUS_SUCCESS });\n } catch (error) {\n this.showErrorMessage(resources.genericErrorMessage);\n telemetry.error(`Apple Pay authorization failed: ${error as string}`);\n return Promise.reject(error as string);\n }\n };\n\n /**\n * Callback to notify Apple Pay sheet was closed/canceled.\n */\n private cancelPayment = (): void => {\n this.props.telemetry.information('Apple Pay popup canceled');\n };\n\n /**\n * The callback for Apple Pay payment method confirmation.\n * @param paymentMethodEvent {IPaymentMethodEvent} The payment method event object.\n * @returns The transaction result object.\n */\n private updatePaymentMethod = async (paymentMethodEvent: IPaymentMethodEvent): Promise => {\n return Promise.resolve({\n newTotal: {\n label: this.merchantName,\n type: 'final',\n amount: `${this.amountDue}`\n }\n });\n };\n\n /**\n * The callback for Apple Pay shipping contact confirmation.\n * @param shippingContact {IShippingContactSelectedEvent} The shipping contact event object.\n * @returns The transaction result object.\n */\n private shippingContactSelected = async (shippingContact: IShippingContactSelectedEvent): Promise => {\n const { resources, telemetry } = this.props;\n\n // construct Address object from Apple Pay shipping contact.\n const shippingAddress: Address = this.getAddressFromShippingContact(shippingContact);\n const shippingMethods = await this.getShippingMethods(shippingAddress);\n if (ObjectExtensions.isNullOrUndefined(shippingMethods) || shippingMethods.length === 0) {\n return Promise.reject();\n }\n\n try {\n const shippingMethodId = shippingMethods.at(0)?.identifier || '';\n await this.updateShippingInfo(shippingMethodId, shippingAddress);\n\n // save shipping contact to update shipping method later.\n this.setState({\n shippingContact: shippingAddress,\n shippingMethodId: shippingMethodId\n });\n } catch (e) {\n telemetry.error(`unable to update shipping info after shipping method change: ${e}`);\n this.showErrorMessage(resources.genericErrorMessage);\n }\n\n return Promise.resolve({\n newShippingMethods: shippingMethods,\n newTotal: {\n label: this.merchantName,\n type: 'final',\n amount: `${this.amountDue}`\n }\n });\n };\n\n /**\n * The callback for Apple Pay shipping method confirmation.\n * @param shippingMethodSelectedEvent {IShippingMethodSelectedEvent} The shipping method event object.\n * @returns The transaction result object.\n */\n private shippingMethodSelected = async (shippingMethod: IShippingMethodSelectedEvent): Promise => {\n const { resources, telemetry } = this.props;\n\n try {\n await this.updateShippingInfo(shippingMethod.id, this.state.shippingContact);\n\n // save selected shipping method.\n this.setState({ shippingMethodId: shippingMethod.id });\n } catch (e) {\n telemetry.error(`unable to update address after shipping method change: ${e}`);\n this.showErrorMessage(resources.genericErrorMessage);\n }\n\n return Promise.resolve({\n newTotal: {\n label: this.merchantName,\n type: 'final',\n amount: `${this.amountDue}`\n }\n });\n };\n\n /**\n * Helper function to obtain shipping methods available for Apple contact address.\n * @param address {Address} The shipping address.\n * @returns The cart delivery options.\n */\n private getShippingMethods = async (address: Address): Promise => {\n const {\n context: { actionContext },\n data: { checkout },\n telemetry\n } = this.props;\n\n const cartId = (checkout?.result?.checkoutCart?.cart as Cart).Id;\n const deliveryOptionFilter: FilterDeliveryModeOption = FilterDeliveryModeOption.FilterOutNonCarrierDeliveryMode;\n const appleDeliveryOptions: IApplePayShippingMethod[] = [];\n try {\n const deliveryOptions = await getDeliveryOptionsAsync(\n {\n callerContext: actionContext,\n queryResultSettings: QueryResultSettingsProxy.getPagingFromInputDataOrDefaultValue(actionContext)\n },\n cartId,\n address,\n [],\n deliveryOptionFilter,\n false\n );\n deliveryOptions.forEach(element =>\n appleDeliveryOptions.push({\n label: element.Description,\n amount: `${element.ShippingChargeAmount}`,\n detail: element.Description,\n identifier: element.Code\n })\n );\n } catch (e) {\n telemetry.error('unable to get delivery options for Apple Pay contact');\n }\n\n return appleDeliveryOptions;\n };\n\n /**\n * Helper function to convert Apple Pay shipping contact into Address object.\n * @param shippingContact {IShippingContactSelectedEvent} The shipping contact provided by Apple Pay SDK.\n * @returns The Address object.\n */\n private getAddressFromShippingContact = (shippingContact: IShippingContactSelectedEvent) => {\n const shippingAddress: Address = {\n ThreeLetterISORegionName: getThreeLetterCountryCode(shippingContact?.countryCode || ''),\n Name: this.getContactName(shippingContact),\n Street: shippingContact?.addressLines?.at(0),\n StreetNumber: shippingContact?.addressLines?.at(1),\n City: shippingContact?.locality,\n State: shippingContact?.administrativeArea,\n ZipCode: shippingContact?.postalCode\n };\n\n return shippingAddress;\n };\n\n /**\n * Helper function to return formatted contact name.\n * @param shippingContact {IShippingContactSelectedEvent} The shipping contact provided by Apple Pay SDK.\n * @returns The formatted contact name, i.e. 'Test User', 'Test', 'User' or empty string if both given and family names are missing.\n */\n private getContactName = (shippingContact: IShippingContactSelectedEvent) => {\n const givenName = shippingContact?.givenName || '';\n const familyName = shippingContact?.familyName || '';\n return `${givenName}${\n StringExtensions.isNullOrWhitespace(givenName) || StringExtensions.isNullOrWhitespace(familyName) ? '' : ' '\n }${familyName}`;\n };\n\n private updateContactInfo = async (shippingContact?: IShippingContactSelectedEvent) => {\n const {\n data: { checkout },\n telemetry\n } = this.props;\n\n if (shippingContact) {\n const shippingAddress: Address = this.getAddressFromShippingContact(shippingContact);\n const shippingMethodId = this.state.shippingMethodId || '';\n await this.updateShippingInfo(shippingMethodId, shippingAddress);\n const newGuestCheckoutEmail = shippingContact.emailAddress || '';\n if (!StringExtensions.isNullOrWhitespace(newGuestCheckoutEmail)) {\n await checkout?.result?.updateGuestCheckoutEmail({ newGuestCheckoutEmail });\n } else {\n telemetry.warning('email address missing in shipping contact from Apple');\n }\n } else {\n telemetry.information('no shipping information provided');\n }\n };\n\n /**\n * Update shipping information on cart.\n * @param shippingMethodId {string} The identifier for shipping method.\n * @param shippingAddress {Address} The shipping address.\n */\n private updateShippingInfo = async (shippingMethodId: string, shippingAddress?: Address) => {\n const {\n data: { checkout }\n } = this.props;\n\n const updateCartDeliverySpecificationInput = {\n deliveryModeId: shippingMethodId,\n shippingAddress: shippingAddress\n };\n\n const result = await checkout?.result?.checkoutCart.updateCartDeliverySpecification(updateCartDeliverySpecificationInput);\n if (result?.status !== 'SUCCESS') {\n throw new Error(result?.errorDetails?.LocalizedMessage);\n }\n };\n\n /**\n * Shows error message on screen next to Apple Pay button.\n * @param message {string} The error message to show.\n */\n private showErrorMessage = (message: string) => {\n this.setState({\n errorMessage: message\n });\n };\n}\n\nexport default CheckoutApplePay;\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';\nimport { ICheckoutApplePayViewProps } from './checkout-apple-pay';\n\nconst CheckoutApplePayView: React.FC = props => {\n const { checkoutApplePay, applePayButton, alert } = props;\n\n return (\n \n {alert}\n {applePayButton}\n \n );\n};\n\nexport default CheckoutApplePayView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Customer } from '@msdyn365-commerce/retail-proxy';\nimport { Alert, Button, INodeProps, NodeTag, getLocaleBasedCustomizedPrice, ILocalizedPrice } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutCustomerAccountPaymentResources } from '../checkout-customer-account-payment.props.autogenerated';\n\nexport interface IGetAccountPaymentEditViewFormInput {\n resources: ICheckoutCustomerAccountPaymentResources;\n customizedAmt: string;\n amount: number;\n amountVariable: string;\n maxAmount: number;\n customer: Customer | undefined;\n customerCreatedDate: string;\n availableCredit: string;\n showCreditLimit: boolean;\n errorMessage: string | undefined;\n creditSectionIsExpanded: boolean;\n orderTotal: string;\n excessCredit: string | undefined;\n appliedAmount: string | undefined;\n locale: string;\n onAddPayment(): Promise;\n onChangePaymentAmount(customizedAmt: string, paymentAmount: number, amountVariable: string): void;\n onToggleCreditSection(): void;\n onRemovePayment(): Promise;\n skipOnChangeLogic?: boolean;\n}\n\nexport interface IAccountPaymentEditViewForm {\n formProps: INodeProps;\n inputLabel: React.ReactNode;\n inputAmount: React.ReactNode;\n addPaymentButton: React.ReactNode;\n customerName: React.ReactNode;\n customerAccountNumber: React.ReactNode;\n customerSince: React.ReactNode;\n accountCredit: React.ReactNode;\n alert: React.ReactNode;\n accountDetails: React.ReactNode;\n appliedLine: React.ReactNode;\n bottomBorder: React.ReactNode;\n}\n\n/**\n * On Add Account Payment Function.\n * @param onAddPayment -On Add Payment Function.\n * @returns Call of Add payment function.\n */\nconst onAddAccountPayment = (onAddPayment: () => Promise) => async (event: React.SyntheticEvent): Promise => {\n event.preventDefault();\n await onAddPayment();\n};\n\n/**\n * On Change Amount Function.\n * @param onChangePaymentAmount -On Change Payment Amount Function.\n * @returns Call of Change payment Amount function.\n */\nconst onChangeAmountHandler = (\n customizedAmt: string,\n paymentAmount: number,\n amountVariable: string,\n locale: string,\n onChangePaymentAmount: (customizedAmt: string, paymentAmount: number, amountVariable: string) => void\n) => (event: React.ChangeEvent) => {\n const value = event.target.value;\n const customState: ILocalizedPrice = {\n customizedAmount: customizedAmt,\n amountVariable: amountVariable,\n paymentAmount: paymentAmount\n };\n const returnModifiedState = getLocaleBasedCustomizedPrice(value, customState, locale, keyCode);\n customizedAmt = returnModifiedState.customizedAmount as string;\n paymentAmount = returnModifiedState.paymentAmount as number;\n amountVariable = returnModifiedState.amountVariable as string;\n onChangePaymentAmount(customizedAmt, paymentAmount, amountVariable);\n keyCode = 0;\n};\n\nlet keyCode: number = 0;\nexport const getAccountPaymentFormEditMode = (options: IGetAccountPaymentEditViewFormInput): IAccountPaymentEditViewForm => {\n const {\n resources,\n onAddPayment,\n amount,\n customizedAmt,\n amountVariable,\n onChangePaymentAmount,\n maxAmount,\n customer,\n customerCreatedDate,\n availableCredit,\n showCreditLimit,\n errorMessage,\n onToggleCreditSection,\n creditSectionIsExpanded,\n orderTotal,\n excessCredit,\n onRemovePayment,\n appliedAmount,\n locale,\n skipOnChangeLogic\n } = options;\n\n const {\n addPaymentButtonLabel,\n inputAmountLabel,\n inputAmountAriaLabel,\n customerSinceLabel,\n accountCreditLabel,\n creditDetailsSectionLabel,\n orderTotalLabel,\n availableCreditLabel,\n creditExcessLabel,\n appliedCustomerAccountPaymentLabel,\n removeCustomerAccountPaymentLabel,\n accountCreditDetails\n } = resources;\n\n const inputLabel = (\n \n {inputAmountLabel}\n \n );\n\n const formProps = {\n className: 'ms-checkout-customer-account__form-edit',\n onSubmit: onAddAccountPayment(onAddPayment),\n tag: 'form' as NodeTag\n };\n\n const addPaymentButton = (\n maxAmount || amount < 0 || Number.isNaN(amount)}\n >\n {addPaymentButtonLabel}\n \n );\n\n const inputAmount = (\n onChangePaymentAmount(value, Number(value), value)\n : onChangeAmountHandler(customizedAmt, amount, amountVariable, locale, onChangePaymentAmount)\n }\n onKeyDown={event => (keyCode = event.which)}\n aria-label={inputAmountAriaLabel}\n aria-valuemin={0}\n aria-valuemax={maxAmount}\n aria-valuenow={amount}\n min={0}\n max={maxAmount}\n />\n );\n\n const customerName =
{customer?.Name}
;\n\n const customerAccountNumber =
#{customer?.AccountNumber}
;\n\n const customerSince = (\n
\n {customerSinceLabel}\n {customerCreatedDate}\n
\n );\n\n const accountCredit = (\n <>\n {accountCreditLabel}\n {showCreditLimit && {availableCredit}}\n \n \n );\n\n const accountDetails = creditSectionIsExpanded ? (\n
\n <>\n
\n \n \n {creditDetailsSectionLabel}\n \n
\n \n
\n {availableCreditLabel}\n {availableCredit}\n
\n
\n {orderTotalLabel}\n {orderTotal}\n
\n
\n {creditExcessLabel}\n {excessCredit ?? '0'}\n
\n
\n ) : (\n undefined\n );\n\n const alert = (\n \n {errorMessage}\n \n );\n\n const appliedLine = appliedAmount ? (\n
\n {appliedCustomerAccountPaymentLabel}\n {appliedAmount}\n \n {removeCustomerAccountPaymentLabel}\n \n
\n ) : (\n undefined\n );\n\n const bottomBorder =
;\n\n return {\n formProps,\n inputLabel,\n inputAmount,\n addPaymentButton,\n customerName,\n customerAccountNumber,\n customerSince,\n accountCredit,\n alert,\n accountDetails,\n appliedLine,\n bottomBorder\n };\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Button, INodeProps, NodeTag } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutCustomerAccountPaymentResources } from '../checkout-customer-account-payment.props.autogenerated';\n\nexport interface IGetAccountPaymentSummaryViewFormInput {\n resources: ICheckoutCustomerAccountPaymentResources;\n amount: number;\n appliedAmount: string | undefined;\n}\n\nexport interface IAccountPaymentSummaryViewForm {\n formProps: INodeProps;\n label: React.ReactNode;\n paymentAmount: React.ReactNode;\n addPaymentButton: React.ReactNode;\n appliedLine: React.ReactNode;\n bottomBorder: React.ReactNode;\n alert?: React.ReactNode;\n paymentAmountInput?: React.ReactNode;\n}\n\nexport const getAccountPaymentFormSummaryMode = (options: IGetAccountPaymentSummaryViewFormInput): IAccountPaymentSummaryViewForm => {\n const { resources, amount, appliedAmount } = options;\n\n const { addPaymentButtonLabel, inputAmountSummaryLabel, appliedCustomerAccountPaymentLabel, inputAmountAriaLabel } = resources;\n\n const label = (\n \n );\n\n const formProps = {\n className: 'ms-checkout-customer-account__form-summary',\n tag: 'form' as NodeTag\n };\n\n const paymentAmount = ;\n\n const paymentAmountInput = (\n \n );\n\n const addPaymentButton = (\n \n );\n\n const appliedLine = appliedAmount ? (\n
\n {appliedCustomerAccountPaymentLabel}\n {appliedAmount}\n
\n ) : (\n undefined\n );\n\n const bottomBorder =
;\n\n return {\n formProps,\n label,\n paymentAmount,\n addPaymentButton,\n appliedLine,\n bottomBorder,\n paymentAmountInput\n };\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { isChannelTypeB2B } from '@msdyn365-commerce/core';\nimport { CustomerBalances } from '@msdyn365-commerce/retail-proxy';\nimport { IModuleStateManager, withModuleState } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport { CheckoutModule, ErrorLocation } from '@msdyn365-commerce/global-state';\nimport classnames from 'classnames';\nimport get from 'lodash/get';\nimport { action, computed, reaction, when } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { ICheckoutCustomerAccountPaymentData } from './checkout-customer-account-payment.data';\nimport { ICheckoutCustomerAccountPaymentProps } from './checkout-customer-account-payment.props.autogenerated';\nimport { getAccountPaymentFormEditMode, IAccountPaymentEditViewForm } from './components/get-account-payment-form-edit-mode';\nimport { getAccountPaymentFormSummaryMode, IAccountPaymentSummaryViewForm } from './components/get-account-payment-form-summary-mode';\nimport { ErrorComponent } from '../../common/error';\nimport { focusOnCheckoutError } from '../../checkout-errors';\n\nexport interface ICheckoutCustomerAccountPaymentViewProps\n extends ICheckoutCustomerAccountPaymentProps {\n checkoutCustomerAccount: IModuleProps;\n summaryView: IAccountPaymentSummaryViewForm;\n editView: IAccountPaymentEditViewForm;\n moduleState: IModuleStateManager;\n alert?: React.ReactNode;\n checkoutErrorRef?: React.RefObject;\n}\n\nexport interface ICheckoutCustomerAccountPaymentState {\n paymentAmount: number;\n isCreditSectionExpanded: boolean;\n customizedAmt: string;\n amountVariable: string;\n errorMessage?: string;\n handleSaveAndContinue?: boolean;\n}\n\n/**\n *\n * CheckoutCustomerAccount component.\n * @extends {React.Component>}\n */\n// @ts-expect-error\n@withModuleState\n@observer\nexport class CheckoutCustomerAccountPayment extends React.Component<\n ICheckoutCustomerAccountPaymentViewProps,\n ICheckoutCustomerAccountPaymentState\n> {\n private readonly defaultLocale: string = 'en-us';\n @computed get isCustomerAccountPaymentEnabled(): boolean {\n const customerInfo = get(this.props, 'data.customerInformation.result');\n const request = get(this.props, 'context.request');\n const b2bChannel = isChannelTypeB2B(request);\n const platform = get(this.props, 'context.request.app.platform');\n\n return (\n customerInfo &&\n customerInfo.AllowOnAccountPayment === true &&\n platform &&\n (platform.enableCustomerAccountPayment === 'all' ||\n (platform.enableCustomerAccountPayment === 'b2b' && b2bChannel) ||\n (platform.enableCustomerAccountPayment === 'b2c' && !b2bChannel))\n );\n }\n\n @computed get getLoyaltyAmount(): number {\n const checkoutState = this.props.data.checkout.result;\n if (!checkoutState || !checkoutState.loyaltyAmount) {\n return 0;\n }\n return checkoutState.loyaltyAmount;\n }\n\n @computed get maxPaymentAmount(): number {\n const cart = this.props.data.checkout.result ? this.props.data.checkout.result.checkoutCart.cart : undefined;\n if (!cart) {\n return 0;\n }\n\n // Use customer account after loyalty.\n const amountDue = Math.max(0, (cart.TotalAmount || 0) - this.getLoyaltyAmount);\n\n // If the user has a mandatory credit limit, then the max amount must not be more than that\n if (this.props.data.customerInformation?.result?.MandatoryCreditLimit) {\n return Math.min(this.getAvailableCredit(this.props.data.creditBalances?.result), amountDue);\n }\n return amountDue;\n }\n\n @computed get errorMessage(): string | undefined {\n if (this.state.paymentAmount > this.maxPaymentAmount) {\n return this.props.resources.invalidAmountExceedAmountDueMessage;\n }\n\n if (this.state.paymentAmount < 0) {\n return this.props.resources.invalidAmountNegativeMessage;\n }\n\n return undefined;\n }\n\n @computed get currencyCode(): string | undefined {\n return get(this.props, 'context.request.channel.Currency');\n }\n\n @computed get availableCredit(): number {\n const creditBalances = get(this.props, 'data.creditBalances.result');\n\n return creditBalances ? this.getAvailableCredit(creditBalances) : 0;\n }\n\n @computed get orderTotal(): number {\n const orderTotal = get(this.props, 'data.checkout.result.checkoutCart.cart.TotalAmount');\n\n return orderTotal ? orderTotal : 0;\n }\n\n @computed get formattedExcessCredit(): string | undefined {\n const excessCredit = this.availableCredit - this.orderTotal;\n return excessCredit < 0 ? this.props.context.cultureFormatter.formatCurrency(excessCredit, this.currencyCode) : undefined;\n }\n\n @computed get isDataReady(): boolean {\n return (this.props.data.checkout.result && this.props.data.checkout.status) === 'SUCCESS';\n }\n\n private readonly baseClassName: string = 'ms-checkout-customer-account';\n\n private readonly checkoutErrorRef: React.RefObject = React.createRef();\n\n public constructor(props: ICheckoutCustomerAccountPaymentViewProps) {\n super(props);\n const locale = get(this.props, 'context.request.locale') || this.defaultLocale;\n this.state = {\n paymentAmount: this.maxPaymentAmount,\n isCreditSectionExpanded: false,\n customizedAmt: new Intl.NumberFormat(locale).format(this.maxPaymentAmount),\n amountVariable: this.maxPaymentAmount.toString(),\n handleSaveAndContinue: false\n };\n }\n\n public async componentDidMount(): Promise {\n when(\n () => this.isDataReady,\n async () => {\n await this.init();\n }\n );\n\n // When the cart.TotalAmount gets updated (like if selecting the delivery option adds a charge) we need to update the amount based on the new total amount.\n reaction(\n () =>\n this.props.data.checkout.result &&\n this.props.data.checkout.result.checkoutCart.cart &&\n this.props.data.checkout.result.checkoutCart.cart.TotalAmount,\n totalAmount => {\n this.updateMaxAmount(this.maxPaymentAmount);\n }\n );\n\n if (this.props.data.checkout.result?.shouldEnableCheckoutErrorDisplayMessaging) {\n reaction(\n () => this.props.data.checkout.result?.checkoutError,\n checkoutError => {\n if (\n checkoutError &&\n checkoutError.errorLocation === ErrorLocation.CheckoutCustomerAccountPayment &&\n checkoutError.errorMessage\n ) {\n this._setErrorMessage(checkoutError.errorMessage);\n }\n }\n );\n\n reaction(\n () => this.props.data.checkout.result?.checkoutErrorFocus,\n checkoutErrorFocus => {\n if (checkoutErrorFocus === CheckoutModule.CheckoutCustomerAccountPayment) {\n focusOnCheckoutError(this.checkoutErrorRef, this.props.context.actionContext);\n }\n }\n );\n }\n }\n\n public shouldComponentUpdate(\n nextProps: ICheckoutCustomerAccountPaymentProps,\n nextState: ICheckoutCustomerAccountPaymentState\n ): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element | null {\n const customerInfo = this.props.data.customerInformation?.result;\n\n if (!this.isCustomerAccountPaymentEnabled) {\n this.props.context.telemetry.information(\n 'customer account payments will not display, because the feature is disabled or not enabled for this type of customer'\n );\n return null;\n }\n\n const checkoutState = this.props.data.checkout.result;\n const cart = checkoutState ? checkoutState.checkoutCart.cart : undefined;\n const hasInvoiceLine = checkoutState?.checkoutCart.hasInvoiceLine;\n const creditBalances = this.props.data.creditBalances.result;\n\n if (!cart || hasInvoiceLine) {\n return null;\n }\n const resources = this.props.resources;\n const locale = get(this.props, 'context.request.locale') || this.defaultLocale;\n\n const customerSinceDate = new Date(customerInfo?.CreatedDateTime || 0).toLocaleDateString(locale);\n\n const hasError = this.props.moduleState.hasError;\n const errorMessage = this.state.errorMessage;\n\n const props = {\n ...this.props,\n checkoutErrorRef: this.checkoutErrorRef,\n checkoutCustomerAccount: {\n moduleProps: this.props,\n className: classnames(this.baseClassName)\n },\n alert: hasError && errorMessage && (\n \n ),\n editView: getAccountPaymentFormEditMode({\n onAddPayment: this.addPayment,\n resources,\n customizedAmt: this.state.customizedAmt,\n amountVariable: this.state.amountVariable,\n amount: this.state.paymentAmount,\n onChangePaymentAmount: this.onChangePaymentAmount,\n maxAmount: this.maxPaymentAmount,\n customer: customerInfo,\n customerCreatedDate: customerSinceDate,\n availableCredit: this.props.context.cultureFormatter.formatCurrency(\n this.getAvailableCredit(creditBalances),\n this.currencyCode\n ),\n showCreditLimit: customerInfo?.MandatoryCreditLimit || false,\n errorMessage: this.errorMessage,\n onToggleCreditSection: this.toggleCreditSection,\n creditSectionIsExpanded: this.state.isCreditSectionExpanded,\n orderTotal: this.props.context.cultureFormatter.formatCurrency(this.orderTotal, this.currencyCode),\n excessCredit: this.formattedExcessCredit,\n onRemovePayment: this.removePayment,\n appliedAmount:\n checkoutState && checkoutState.customerAccountAmount > 0\n ? this.props.context.cultureFormatter.formatCurrency(checkoutState.customerAccountAmount, this.currencyCode)\n : undefined,\n locale:\n this.props.context && this.props.context.request && this.props.context.request.locale\n ? this.props.context.request.locale\n : this.defaultLocale,\n skipOnChangeLogic: this.props.context.request.features?.skipCheckoutOnChangeLogic\n }),\n summaryView: getAccountPaymentFormSummaryMode({\n resources,\n amount: this.state.paymentAmount,\n appliedAmount:\n checkoutState && checkoutState.customerAccountAmount > 0\n ? this.props.context.cultureFormatter.formatCurrency(checkoutState.customerAccountAmount, this.currencyCode)\n : undefined\n })\n };\n\n return this.props.renderView(props) as React.ReactElement;\n }\n\n private readonly getAvailableCredit = (creditBalances: CustomerBalances | undefined) => {\n let availableCredit = 0;\n\n if (!creditBalances) {\n return 0;\n }\n\n if (creditBalances.InvoiceAccountCreditLimit === 0) {\n availableCredit = creditBalances.CreditLimit - creditBalances.Balance - creditBalances.PendingBalance;\n } else {\n availableCredit =\n creditBalances.InvoiceAccountCreditLimit -\n creditBalances.InvoiceAccountBalance -\n creditBalances.InvoiceAccountPendingBalance;\n }\n\n return availableCredit;\n };\n\n private readonly addPayment = async (): Promise => {\n const checkoutState = this.props.data.checkout.result;\n\n if (!checkoutState) {\n this.props.context.telemetry.error('checkout state not found');\n return;\n }\n\n this.setState({ handleSaveAndContinue: true });\n this._clearError();\n await checkoutState.updateCustomerAccountAmount({ newAmount: this.state.paymentAmount });\n this.props.context.telemetry.information('customer account payment amount updated');\n };\n\n private readonly toggleCreditSection = (): void => {\n this.setState({\n isCreditSectionExpanded: !this.state.isCreditSectionExpanded\n });\n };\n\n private readonly init = async (): Promise => {\n this.props.moduleState.init({\n onCancel: this.handleCancelOrSubmit,\n onSubmit: this.handleCancelOrSubmit,\n onEdit: this.onEdit\n });\n\n if (this.props.data.checkout.result && this.props.data.checkout.result.customerAccountAmount !== 0) {\n this.props.moduleState.onReady();\n }\n };\n\n private readonly onChangePaymentAmount = (customizedAmt: string, paymentAmount: number, amountVariable: string): void => {\n this.setState({\n customizedAmt: customizedAmt,\n paymentAmount: paymentAmount,\n amountVariable: amountVariable\n });\n };\n\n private readonly updateMaxAmount = (newAmount: number): void => {\n // If the user has already set an amount, we should not override that in the UI because it will be confusing.\n if (this.props.data.checkout.result && this.props.data.checkout.result.customerAccountAmount === 0) {\n this.setState({\n // We should never allow a negative amount.\n paymentAmount: Math.max(0, newAmount),\n customizedAmt: Math.max(0, newAmount).toString()\n });\n }\n };\n\n private readonly onEdit = (): void => {\n this.props.telemetry.information('Payment section customer account payment onEdit is called.');\n\n this.props.moduleState.onUpdating();\n };\n\n private readonly handleCancelOrSubmit = () => {\n const checkoutState = this.props.data.checkout.result;\n if (checkoutState && checkoutState.customerAccountAmount > 0) {\n this.setState({ handleSaveAndContinue: false });\n this.props.telemetry.information('Payment section customer account payment onSubmit is called.');\n\n if (\n Msdyn365.isOboRequest(this.props.context.request) &&\n checkoutState?.customerAccountAmount !== checkoutState?.checkoutCart.cart.TotalAmount\n ) {\n this._setErrorMessage(this.props.resources.invalidAmountForOBOMessage);\n } else {\n this.props.moduleState.onReady();\n }\n } else if (\n checkoutState?.customerAccountAmount === 0 &&\n !this.state.handleSaveAndContinue &&\n this.props.config.isCheckoutCustomerAccountPaymentRequired\n ) {\n this._setErrorMessage(this.props.resources.customerAccountCreditErrorMessage);\n } else {\n this.props.telemetry.information('Payment section customer account payment onCancel is called.');\n\n // Skip the module\n this.props.moduleState.onSkip();\n }\n };\n\n private readonly removePayment = async (): Promise => {\n const checkoutState = this.props.data.checkout.result;\n\n if (!checkoutState) {\n this.props.context.telemetry.error('checkout state not found');\n return;\n }\n\n this.setState({\n paymentAmount: 0\n });\n\n this.onChangePaymentAmount('', NaN, '0');\n\n this._clearError();\n await checkoutState.updateCustomerAccountAmount({ newAmount: 0 });\n this.props.context.telemetry.information('customer account payment removed');\n };\n\n @action\n private readonly _setErrorMessage = (errorMessage: string): void => {\n this.props.telemetry.error(errorMessage);\n this.props.moduleState.setHasError(true);\n this.props.moduleState.onUpdating();\n this.setState({\n errorMessage\n });\n };\n\n private readonly _clearError = (): void => {\n this.props.moduleState.setHasError(false);\n this.setState({\n errorMessage: ''\n });\n };\n}\n\nexport default CheckoutCustomerAccountPayment;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutCustomerAccountPaymentViewProps, IAccountPaymentEditViewForm, IAccountPaymentSummaryViewForm } from './index';\n\nexport const SummaryForm: React.FC = ({\n formProps,\n label,\n paymentAmount,\n addPaymentButton,\n appliedLine,\n bottomBorder\n}) => (\n \n <>\n {label}\n {paymentAmount}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nexport const EditForm: React.FC = ({\n formProps,\n inputLabel,\n inputAmount,\n addPaymentButton,\n customerName,\n customerAccountNumber,\n customerSince,\n accountCredit,\n alert,\n accountDetails,\n appliedLine,\n bottomBorder\n}) => (\n \n <>\n {customerName}\n {customerAccountNumber}\n {customerSince}\n {accountCredit}\n {accountDetails}\n {inputLabel}\n {alert}\n {inputAmount}\n {addPaymentButton}\n {appliedLine}\n {bottomBorder}\n \n \n);\n\nconst CheckoutCustomerAccountView: React.FC = props => {\n const { checkoutCustomerAccount, checkoutErrorRef, summaryView, editView, moduleState, alert } = props;\n return (\n \n {alert}\n {moduleState.isReady && summaryView && }\n {!moduleState.isReady && editView && }\n \n );\n};\n\nexport default CheckoutCustomerAccountView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { IModuleStateProps, EnabledPaymentsForOBO } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { IModuleProps, INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\nimport classname from 'classnames';\n\nimport { reaction } from 'mobx';\nimport { ICheckoutExpressPaymentContainerData } from './checkout-express-payment-container.data';\nimport {\n ICheckoutExpressPaymentContainerProps,\n ICheckoutExpressPaymentContainerHeadingData\n} from './checkout-express-payment-container.props.autogenerated';\nimport { WaitingComponent } from '../../common/waiting';\n\n/**\n * ICheckoutExpressPaymentContainerModuleProps interface.\n */\nexport interface ICheckoutExpressPaymentContainerModuleProps\n extends ICheckoutExpressPaymentContainerProps,\n IModuleStateProps {}\n\nexport interface ICheckoutExpressPaymentContainerViewProps\n extends ICheckoutExpressPaymentContainerProps<{}>,\n ICheckoutExpressPaymentContainerState {\n checkoutPlainContainerProps: IModuleProps;\n items: React.ReactNode[];\n isReady?: boolean;\n waiting?: React.ReactNode;\n title?: React.ReactNode;\n headerProps: INodeProps;\n}\n\n/**\n * Checkout Express Payment Container State.\n */\nexport interface ICheckoutExpressPaymentContainerState {\n isReady?: boolean;\n shouldHideExpressPaymentContainer?: boolean;\n}\n\n/**\n *\n * CheckoutExpressPaymentContainer component\n * @extends {React.PureComponent>}\n */\n@observer\nexport class CheckoutExpressPaymentContainer extends React.PureComponent<\n ICheckoutExpressPaymentContainerProps,\n ICheckoutExpressPaymentContainerState\n> {\n private readonly moduleClassName: string = 'ms-checkout-express-section-container';\n\n public constructor(props: ICheckoutExpressPaymentContainerModuleProps) {\n super(props);\n this.state = {\n isReady: false,\n shouldHideExpressPaymentContainer: this.props.data.checkout.result?.shippingAddressFromExpressCheckout ? true : false\n };\n }\n\n public componentDidMount(): void {\n reaction(\n () => this.props.data.checkout.result?.isExpressPaymentModulesReady,\n () => {\n const items = this._getItems();\n if (items.length === 0) {\n this.props.context.telemetry.error('Checkout express payment container content is empty, module wont render');\n } else {\n let isReady = true;\n\n for (const item of items) {\n // @ts-ignore\n if (item.key.includes('checkout-express')) {\n // @ts-ignore\n const extensionPropertyKey = `is${item.props.config.paymentTenderType}ExpressModuleReady`;\n\n const isModuleReady =\n this.props.data.checkout.result?.isExpressPaymentModulesReady?.find(\n property => property.Key === extensionPropertyKey\n )?.Value?.BooleanValue ?? false;\n isReady = isReady && isModuleReady;\n }\n }\n this.setState({ isReady });\n }\n }\n );\n\n reaction(\n () => this.props.data.checkout.result?.isExpressCheckoutApplied,\n isExpressCheckoutApplied => {\n this.setState({ shouldHideExpressPaymentContainer: isExpressCheckoutApplied });\n }\n );\n }\n\n public render(): JSX.Element | null {\n const {\n config: { checkoutExpressPaymentContainerHeading },\n resources: { checkoutExpressPaymentSectionLoadingMessage },\n data: { checkout }\n } = this.props;\n\n if (!checkout.result || checkout.result?.isExpressCheckoutApplied || checkout.result?.isPaymentVerificationRedirection) {\n this.props.context.telemetry.information('Other payment is applied, checkout express payment container module wont render');\n return null;\n }\n\n if (this.props.context.request.user.isOBORequest && EnabledPaymentsForOBO.ExpressPayment === 0) {\n this.props.context.telemetry.information('isOBORequest is enabled, Checkout express payment container module wont render');\n return null;\n }\n\n const items = this._getItems();\n if (items.length === 0) {\n this.props.context.telemetry.error('Checkout express payment container content is empty, module wont render');\n return null;\n }\n\n const shouldHideExpressPaymentContainerClassName: string = this.state.shouldHideExpressPaymentContainer ? 'hide' : '';\n\n const moduleClassName = classname(\n 'ms-checkout-express-payment-container',\n this.props.config.className,\n shouldHideExpressPaymentContainerClassName\n );\n\n const viewProps: ICheckoutExpressPaymentContainerViewProps = {\n ...this.props,\n\n checkoutPlainContainerProps: {\n moduleProps: this.props,\n className: moduleClassName\n },\n items: items,\n isReady: this.state.isReady,\n waiting: ,\n title: checkoutExpressPaymentContainerHeading && this._renderMsdyn365Text(checkoutExpressPaymentContainerHeading),\n headerProps: { className: 'ms-checkout-express-payment-container__head' }\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n private readonly _getItems = (): React.ReactNode[] => {\n const { slots } = this.props;\n return (slots && slots.primary && slots.primary.length && slots.primary) || [];\n };\n\n /**\n * Renders heading.\n * @param checkoutExpressPaymentContainerHeading - The checkout express container heading.\n * @returns React node.\n */\n private _renderMsdyn365Text(checkoutExpressPaymentContainerHeading: ICheckoutExpressPaymentContainerHeadingData): React.ReactNode {\n return (\n \n );\n }\n\n /**\n * Event handler for heading change event.\n * @param event - The content change event in heading element.\n * @returns The new heading value.\n */\n private _handleCheckoutExpressContainerHeadingChange = (event: Msdyn365.ContentEditableEvent) =>\n (this.props.config.checkoutExpressPaymentContainerHeading!.text = event.target.value);\n}\n\nexport default CheckoutExpressPaymentContainer;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ICheckoutExpressPaymentContainerViewProps } from './checkout-express-payment-container';\n\ninterface IContainerItemsComponent {\n isLoadingClassName: string;\n items: React.ReactNode[];\n}\n\nconst ContainerItemsComponent: React.FC = ({ isLoadingClassName, items }) => (\n
{items}
\n);\n\nconst CheckoutExpressPaymentContainerView: React.FC = ({\n checkoutPlainContainerProps,\n items,\n isReady,\n waiting,\n title,\n headerProps\n}) => {\n const isLoadingClassName: string = isReady ? 'showContainer' : 'notShowContainer';\n return (\n \n {title}\n {!isReady && waiting}\n \n \n );\n};\n\nexport default CheckoutExpressPaymentContainerView;\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 MsDyn365, { AsyncResultStatus, getUrlSync } from '@msdyn365-commerce/core';\nimport {\n Address,\n CardPaymentAcceptResult,\n CardType,\n CartsDataActions,\n StoreOperationsDataActions,\n TokenizedPaymentCard\n} from '@msdyn365-commerce/retail-proxy';\nimport { withModuleState, EnabledPaymentsForOBO } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { IModuleProps, INodeProps, Modal } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { get, isEmpty } from 'lodash';\nimport { action, computed, reaction, when } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { IGiftCardExtend } from '@msdyn365-commerce/global-state';\nimport { AsyncResultStatusCode, GetCheckoutReturnUrl, IExpressPaymentDetails } from '../../common';\nimport { AddPaymentFormComponent } from '../../common/add-payment-form';\nimport { ErrorComponent } from '../../common/error';\nimport { Iframe } from '../../common/iframe';\nimport { PaymentConnectorPostMessageType } from '../../common/payment-instrument-message';\nimport { WaitingComponent } from '../../common/waiting';\nimport getCardPaymentAcceptPointAction, { GetCardPaymentAcceptPointInput } from './actions/get-card-payment-accept-point';\nimport { ICheckoutExpressData } from './checkout-express.data';\nimport { ICheckoutExpressProps, IHeadingData } from './checkout-express.props.autogenerated';\n\n/**\n * Interface for CheckOutExpress Module Props.\n */\nexport interface ICheckoutExpressModuleProps extends ICheckoutExpressProps {}\n\n/**\n * Checkout Express State.\n */\ninterface ICheckoutExpressState {\n errorMessage?: string;\n isFetchingPaymentConnector?: boolean;\n paymentConnectorHeight?: number;\n isPaymentVerificationRequired?: boolean;\n paymentVerificationPostData?: string;\n isPaymentProcessing?: boolean;\n isOverlayModal?: boolean;\n terminalError?: Error;\n paymentConnectorId?: string;\n shouldHideExpressCheckout?: boolean;\n}\n\n/**\n * Checkout Express Overlay Modal.\n */\nexport interface ICheckoutExpressOverlayModal {\n modal: INodeProps;\n}\n\n/**\n * Checkout Express View Props.\n */\nexport interface ICheckoutExpressViewProps extends ICheckoutExpressProps<{}>, ICheckoutExpressState {\n className?: string;\n checkoutExpress: IModuleProps;\n waiting?: React.ReactNode;\n alert?: React.ReactNode;\n addPaymentForm?: React.ReactNode;\n overlayModal?: ICheckoutExpressOverlayModal;\n title?: React.ReactNode;\n shouldHideExpressCheckout?: boolean;\n}\n\nconst zeroAmount = 0;\nconst expressPaymentSectionClassName = 'msc-express-payment-container';\nconst expressPaymentSectionInCartPageClassName = 'msc-express-payment-container-in-cart-page';\nconst expressPaymentSectionTextBlockClassName = 'msc-express-payment-textblock';\n\n/**\n *\n * CheckoutExpress component.\n * @extends {React.Component>}\n */\n// @ts-expect-error - existing code.\n@withModuleState\n@observer\nexport class CheckoutExpress extends React.PureComponent {\n private readonly moduleClassName: string = 'ms-checkout-express';\n\n private readonly iframeRef: React.RefObject