{"version":3,"file":"static/js/50.1ad50dd2931891a6d7fd.chunk.js","mappings":"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","sources":["webpack://Citta2.0/./src/modules/business-account-address/business-account-address.tsx?299e","webpack://Citta2.0/./src/modules/business-account-address/business-account-address.view.tsx?5078","webpack://Citta2.0/./src/common/address-format.data.ts?6cbf","webpack://Citta2.0/./src/common/components/address-button.tsx?7f7b","webpack://Citta2.0/./src/common/components/address-error-message.tsx?89ad","webpack://Citta2.0/./src/common/components/address-error-title.tsx?3926","webpack://Citta2.0/./src/common/components/address-input.tsx?8073","webpack://Citta2.0/./src/common/address-common.ts?cf4b","webpack://Citta2.0/./src/common/address-format.ts?4f04","webpack://Citta2.0/./src/common/address-meta-data.ts?c6e6","webpack://Citta2.0/./src/common/address-module.data.ts?697a","webpack://Citta2.0/./src/common/components/address-checkbox.tsx?eb1a","webpack://Citta2.0/./src/common/components/address-add.tsx?e6a6","webpack://Citta2.0/./src/common/components/address-alert.tsx?10d1","webpack://Citta2.0/./src/common/components/address-dropdown.tsx?f24b","webpack://Citta2.0/./src/common/components/address-label.tsx?6864"],"sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Address, AddressPurpose, CountryRegionInfo, StateProvinceInfo } from '@msdyn365-commerce/retail-proxy';\nimport { ObjectExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observable, reaction, set } from 'mobx';\nimport * as React from 'react';\n\nimport { AddressCommon } from '../../common/address-common';\nimport { AddressFormat } from '../../common/address-format';\nimport { AddressItemDisplayType, AddressItemType, AddressValidationRuleType, IAddressItem } 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 { IBusinessAccountAddressData } from './business-account-address.data';\nimport { IBusinessAccountAddressProps } from './business-account-address.props.autogenerated';\n\n/**\n * Interface for IBusinessAccountAddressExtendedProps.\n */\nexport interface IBusinessAccountAddressExtendedProps extends IBusinessAccountAddressProps {\n hasError: boolean;\n isRequired: boolean;\n resetAddress: boolean;\n updateForm(errors: boolean, currentAddress?: Address): void;\n}\n\n/**\n * Interface for IBusinessAccountAddressState.\n */\nexport interface IBusinessAccountAddressState {\n countryId?: string;\n states?: StateProvinceInfo[];\n}\n\n/**\n * Interface for IBusinessAccountAddressViewProps.\n */\nexport interface IBusinessAccountAddressViewProps {\n className: string;\n currentOperation: AddressOperation;\n selectedAddress?: Address;\n addUpdateAddress: Address;\n addressListSelectedAddress: Address;\n countryRegionId: string;\n stateProvinceInfo?: StateProvinceInfo[];\n customerAddresses: Address[];\n validationError: object;\n addressActionResponse?: IAddressResponse;\n BusinessAccountAddress: IModuleProps;\n isUpdating: boolean;\n hasError: boolean;\n showAddOrUpdateAddress: IAddressAddUpdateProps;\n}\n\n/**\n *\n * Address component.\n * @extends {React.Component, IBusinessAccountAddressState>}\n */\nclass BusinessAccountAddress extends React.Component {\n @observable private addUpdateAddress: Address;\n\n @observable private countryRegionId: string = 'USA';\n\n @observable private stateProvinceInfo?: StateProvinceInfo[];\n\n @observable private readonly validationError: object;\n\n private readonly addressActionResponse?: IAddressResponse;\n\n private readonly isUpdating?: boolean;\n\n private readonly addressCommon: AddressCommon;\n\n private addressFormat: AddressFormat;\n\n private countryRegions: CountryRegionInfo[] = [];\n\n private addressPurposes: AddressPurpose[] = [];\n\n private readonly resources: IAddressResource;\n\n private readonly defaultAddressType: number = 0; // Default to None (This value set in HQ as Business)\n\n private readonly shouldAutoFocus?: boolean = false;\n\n private readonly excludedList: AddressItemType[] = [AddressItemType.Name, AddressItemType.AddressTypeValue, AddressItemType.IsPrimary]; // Default to hiding Name and AddressType inputs\n\n private readonly telemetryContent: ITelemetryContent;\n\n public constructor(props: IBusinessAccountAddressExtendedProps) {\n super(props);\n\n const { context, data, resources, telemetry } = this.props;\n this.addUpdateAddress = {};\n this.resources = resources;\n this.countryRegions = data.countryRegions.result || [];\n this.addressPurposes = data.addressPurposes.result || [];\n this.stateProvinceInfo = data.countryStates.result || [];\n this.addressFormat = new AddressFormat(\n this.countryRegions,\n new AddressMetaData({ ...resources }, this.excludedList, props.isRequired ? undefined : []),\n this.addressPurposes\n );\n this.addressCommon = new AddressCommon(context, resources, telemetry);\n this.validationError = {};\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public componentDidMount(): void {\n // Initializing data props\n this._dataInitialize(this.props);\n\n this._setDefaultCountryRegionId();\n }\n\n public shouldComponentUpdate(nextProps: IBusinessAccountAddressExtendedProps, nextState: IBusinessAccountAddressState): 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 { renderView, config, hasError, resetAddress } = this.props;\n\n // Business-sign-up will pass this flag when cancel button is clicked\n if (resetAddress) {\n this._resetAddressFields();\n }\n\n const viewProps = {\n ...this.props,\n countryRegionId: this.countryRegionId,\n stateProvinceInfo: this.stateProvinceInfo,\n validationError: this.validationError,\n addressActionResponse: this.addressActionResponse,\n hasError,\n className: config.className,\n BusinessAccountAddress: {\n moduleProps: this.props,\n className: classnames('ms-business-account-address', config.className)\n },\n showAddOrUpdateAddress: this._renderAddOrUpdateAddress()\n };\n\n return renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Reset Address.\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public _resetAddressFields = () => {\n const addressFormat = this.addressFormat.getAddressFormat(this.countryRegionId);\n\n addressFormat.map(addressFormatItem => {\n switch (addressFormatItem.displayType) {\n case AddressItemDisplayType.Input:\n this.addUpdateAddress[addressFormatItem.name] = '';\n break;\n case AddressItemDisplayType.Checkbox:\n this.addUpdateAddress[addressFormatItem.name] = false;\n break;\n default:\n switch (addressFormatItem.type) {\n case AddressItemType.ThreeLetterISORegionName:\n this.addUpdateAddress[addressFormatItem.name] = this.countryRegionId;\n break;\n case AddressItemType.AddressTypeValue:\n this.addUpdateAddress[addressFormatItem.name] = this.defaultAddressType;\n break;\n case AddressItemType.State:\n this.addUpdateAddress[addressFormatItem.name] = '';\n break;\n default:\n this.addUpdateAddress[addressFormatItem.name] = undefined;\n }\n }\n });\n };\n\n /**\n * Method data initialization.\n * @param props -The account management props.\n */\n private readonly _dataInitialize = (props: IBusinessAccountAddressExtendedProps): void => {\n const { data } = props;\n\n reaction(\n () => data.countryRegions.result,\n () => {\n this.countryRegions = data.countryRegions.result ?? [];\n }\n );\n\n reaction(\n () => data.addressPurposes.result,\n () => {\n this.addressPurposes = data.addressPurposes.result ?? [];\n }\n );\n\n reaction(\n () => data.countryStates.result,\n () => {\n this.stateProvinceInfo = data.countryStates.result ?? [];\n }\n );\n };\n\n // Set validationError and hasError to hide error messages since in the B2B\n // request form, no errors would visually show since user wont be able to submit\n // until form is filled and correct\n /**\n * Render Add Or Update Address Function.\n * @returns - AddressAddUpdate.\n */\n private readonly _renderAddOrUpdateAddress = (): IAddressAddUpdateProps => {\n return AddressAddUpdate({\n isUpdating: this.isUpdating,\n resources: this.resources,\n addressType: AddressType.Company,\n addressFormat: this.addressFormat.getAddressFormat(this.countryRegionId),\n defaultCountryRegionId: this.countryRegionId,\n defaultAddressType: this.defaultAddressType,\n selectedAddress: this.addUpdateAddress,\n shouldAutoFocus: this.shouldAutoFocus,\n validationError: this.validationError,\n hasError: this.props.hasError,\n addressActionResponse: this.addressActionResponse,\n telemetryContent: this.telemetryContent,\n dropdownDisplayData: this.addressFormat.getPrefilledAddressDropdownData(\n this.resources.addressStateDefaultSelectionText,\n this.stateProvinceInfo\n ),\n onInputChange: this._onAddressAddUpdateInputChange,\n onDropdownChange: this._onAddressAddUpdateDropdownChange\n });\n };\n\n /**\n * On Address Add Update Input Change Function.\n * @param event - Input event change function.\n */\n private readonly _onAddressAddUpdateInputChange = (event: React.ChangeEvent): void => {\n this._updateAddress(event.target.name, event.target.value);\n };\n\n /**\n * On Address Add Update Dropdown Change Function.\n * @param event - Change dropdown event.\n */\n private readonly _onAddressAddUpdateDropdownChange = async (event: React.ChangeEvent): Promise => {\n if (event.target.name === AddressItemType[AddressItemType.ThreeLetterISORegionName]) {\n await this._updateCountryRegionId(event.target.value);\n } else {\n this._updateAddress(event.target.name, event.target.value);\n }\n };\n\n /**\n * Update Address Function.\n * @param name - String.\n * @param value - String.\n */\n private readonly _updateAddress = (name: string, value: string | number) => {\n const { updateForm, isRequired, resources } = this.props;\n let cleanValue = value;\n if (typeof value === 'string') {\n cleanValue = (value || '').replace(new RegExp('[<>]', 'gi'), '');\n }\n set(this.addUpdateAddress, { [name]: cleanValue });\n\n if (this._isEmpty()) {\n if (isRequired) {\n updateForm(true, undefined);\n } else {\n // Reset addressFormat as if address was NOT a required field\n this.addressFormat = new AddressFormat(\n this.countryRegions,\n new AddressMetaData({ ...resources }, this.excludedList, []),\n this.addressPurposes\n );\n updateForm(false, this.addUpdateAddress);\n }\n } else {\n // Get new addressFormat if address was a required field\n this.addressFormat = new AddressFormat(\n this.countryRegions,\n new AddressMetaData({ ...resources }, this.excludedList, this.props.isRequired ? undefined : []),\n this.addressPurposes\n );\n\n // Verify with new rules\n if (this.addressFormat.validateAddressFormat(this.addUpdateAddress, this.validationError, this.countryRegionId)) {\n updateForm(false, this.addUpdateAddress);\n } else {\n updateForm(true, undefined);\n }\n }\n };\n\n /**\n * Is empty Function.\n * @returns - Boolean.\n */\n // Walk through array and check if valued is defined or value is not an empty string\n private readonly _isEmpty = () => {\n const addressFormat = this.addressFormat.getAddressFormat(this.countryRegionId);\n for (const addressFormatItem of addressFormat) {\n if (addressFormatItem.type !== AddressItemType.ThreeLetterISORegionName || this._isInputRequired(addressFormatItem)) {\n const addressItemValue = this.addUpdateAddress[addressFormatItem.name];\n\n // Check each input field, if value is defined and not an empty string --> address is not empty\n if (addressItemValue || (addressItemValue && addressItemValue !== '')) {\n return false;\n }\n }\n }\n\n return true;\n };\n\n /**\n * Is Input Required Function.\n * @param addressFormatItem - IAddressItem.\n * @returns - Boolean.\n */\n private readonly _isInputRequired = (addressFormatItem: IAddressItem): boolean => {\n if (\n ObjectExtensions.isNullOrUndefined(addressFormatItem) ||\n !addressFormatItem.validationRules ||\n addressFormatItem.validationRules.length === 0\n ) {\n return false;\n }\n\n for (const validationRule of addressFormatItem.validationRules) {\n if (validationRule.type === AddressValidationRuleType.Required) {\n return false;\n }\n }\n\n return true;\n };\n\n private _setDefaultCountryRegionId(): void {\n const { request } = this.props.context;\n const market = request.channel?.ChannelCountryRegionISOCode;\n\n this._updateCountryRegionId(this.addressCommon.getDefaultCountryRegionId(this.countryRegionId, this.countryRegions, market));\n\n // Set default AddressType\n set(this.addUpdateAddress, { AddressTypeValue: this.defaultAddressType });\n }\n\n /**\n * Update Country Region Id Function.\n * @param value - String.\n */\n private readonly _updateCountryRegionId = async (value: string) => {\n this.countryRegionId = value;\n\n await this.addressCommon.getStateProvinces(this.countryRegionId).then((result: StateProvinceInfo[]) => {\n const stateInfo = result.some(state => state.StateId === this.addUpdateAddress.State);\n\n // Reset state if selected state not found in the list.\n if (!stateInfo) {\n this._updateAddress('State', '');\n }\n\n this.stateProvinceInfo = result;\n });\n\n this._updateAddress('ThreeLetterISORegionName', this.countryRegionId);\n };\n}\n\nexport default BusinessAccountAddress;\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 { IAddressAddItem, IAddressAddUpdateProps } from '../../common/components/address-add';\nimport { IBusinessAccountAddressViewProps } from './business-account-address';\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 {hasError && 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 * Business Account Address View Component.\n * @param props - Props.\n * @returns - BusinessAccountAddress Module.\n */\nconst BusinessAccountAddressView: React.FC = props => {\n const { BusinessAccountAddress, showAddOrUpdateAddress } = props;\n\n return (\n \n \n \n );\n};\n\nexport default BusinessAccountAddressView;\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nexport enum AddressItemDisplayType {\n Input = 'Input',\n Dropdown = 'Dropdown',\n Checkbox = 'Checkbox'\n}\n\nexport enum AddressValidationRuleType {\n Required = 'Required',\n Format = 'Format',\n MaxLength = 'MaxLength'\n}\n\nexport enum AddressItemType {\n Name = 1001,\n Phone = 1002,\n IsPrimary = 1003,\n AddressTypeValue = 1004,\n ZipCode = 1,\n City = 2,\n County = 3,\n State = 4,\n ThreeLetterISORegionName = 5,\n Street = 6,\n DistrictName = 7,\n StreetNumber = 8,\n BuildingCompliment = 9,\n Postbox = 10,\n House_RU = 21,\n Flat_RU = 22,\n CountryOKSMCode_RU = 23\n}\n\nexport interface IAddressItem {\n name: string;\n type: AddressItemType;\n label: string;\n maxLength: number;\n displayType: AddressItemDisplayType;\n validationRules?: IAddressValidationRule[];\n isNewLine: boolean;\n}\n\nexport interface IAddressValidationRule {\n type: AddressValidationRuleType;\n regEx: string;\n message: string;\n}\n\nexport interface IAddressDropdownsData {\n [index: string]: { key?: string | number; value?: string }[];\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IAddressButton {\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n telemetryContent?: ITelemetryContent;\n role?: string;\n onClick(event: React.MouseEvent): void;\n}\n\n/**\n * Address button.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressButtonFunctionComponent: React.FC = (props: IAddressButton) => {\n const { className, text, ariaLabel, disabled: isDisabled, telemetryContent, onClick, role } = props;\n const payLoad = getPayloadObject('click', telemetryContent!, text);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n );\n};\n\nexport default AddressButtonFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAdressErrorMessage {\n message: string;\n}\n\n/**\n * Address error message.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressErrorMessageFunctionComponent: React.FC = (props: IAdressErrorMessage) => {\n const { message } = props;\n\n return

{message}

;\n};\n\nexport default AddressErrorMessageFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAdressErrorTitle {\n title: string;\n}\n\n/**\n * Address error title.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressErrorTitleFunctionComponent: React.FC = (props: IAdressErrorTitle) => {\n const { title } = props;\n\n return

{title}

;\n};\n\nexport default AddressErrorTitleFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IAdressInput {\n id?: string;\n name?: string;\n className: string;\n type: string;\n value: string;\n maxLength?: number;\n autoFocus?: boolean;\n additionalAddributes?: object;\n telemetryContent?: ITelemetryContent;\n onChange(event: React.ChangeEvent): void;\n}\n\n/**\n * Address input.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressInputFunctionComponent: React.FC = (props: IAdressInput) => {\n const {\n id: itemId,\n name,\n className,\n type,\n value,\n maxLength,\n additionalAddributes,\n autoFocus: shouldUseAutoFocus,\n telemetryContent,\n onChange\n } = props;\n\n const payLoad = getPayloadObject('click', telemetryContent!, name!);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n );\n};\n\nexport default AddressInputFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IActionInput, ICoreContext, IObservableAction, ITelemetry } from '@msdyn365-commerce/core';\nimport {\n Address,\n AddressPurpose,\n CountryRegionInfo,\n StateProvinceInfo\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport {\n addAddress,\n AddressManagementInput,\n ArrayExtensions,\n updateAddress,\n updatePrimaryAddress\n} from '@msdyn365-commerce-modules/retail-actions';\n\nimport { getAddressPurposesAction, GetAddressPurposesInput } from '../actions/get-address-purposes';\nimport { getStateProvinceAction, GetStateProvincesInput } from '../actions/get-state-provinces';\nimport { IAddressResource, IAddressResponse } from './address-module.data';\n\n/**\n *\n * Address common.\n */\nexport class AddressCommon {\n private readonly context: ICoreContext;\n\n private readonly resources: IAddressResource;\n\n private readonly telemetry: ITelemetry;\n\n constructor(context: ICoreContext, resources: IAddressResource, telemetry: ITelemetry) {\n this.context = context;\n this.resources = resources;\n this.telemetry = telemetry;\n }\n\n public getDefaultCountryRegionId = (countryRegionId: string, countryRegions: CountryRegionInfo[], market?: string): string => {\n const marketISOCode = market || 'US';\n const currentCountryRegion = countryRegions.find(countryRegion => (countryRegion.ISOCode || '') === marketISOCode);\n return (currentCountryRegion && currentCountryRegion.CountryRegionId) || countryRegionId;\n };\n\n public parseRetailException = (resources: IAddressResource): IAddressResponse => {\n return {\n errorTitle: resources.addressErrorMessageTitle,\n errorMessage: resources.addressGenericErrorMessage\n };\n };\n\n public isAuthenticatedFlow = (): boolean => {\n return this.context.request.user.isAuthenticated;\n };\n\n public getStateProvinces = async (countryRegionId: string): Promise => {\n let response: StateProvinceInfo[] = [];\n if (this.context && this.context.actionContext) {\n try {\n const input = new GetStateProvincesInput(countryRegionId, this.context.request.apiSettings);\n response = await getStateProvinceAction(input, this.context.actionContext);\n } catch (error) {\n if (this.telemetry) {\n this.telemetry.error(`Error encountered ${error}`);\n this.telemetry.debug('Unable to get state provinces');\n }\n }\n }\n return Promise.resolve(response);\n };\n\n // For any address, check for common requried field else treat it as invalid\\empty address.\n public isEmpty = (address: Address): boolean => {\n if (address && address.ThreeLetterISORegionName && (address.State || address.City)) {\n return false;\n }\n\n return true;\n };\n\n public addCustomerAddress = async (address: Address): Promise => {\n await this.updateLogisticsLocationRoleRecordId(address);\n return this.submitCustomerAddress(addAddress, address);\n };\n\n public updateCustomerAddress = async (address: Address): Promise => {\n await this.updateLogisticsLocationRoleRecordId(address);\n return this.submitCustomerAddress(updateAddress, address);\n };\n\n public updateCustomerPrimaryAddress = async (address: Address): Promise => {\n return this.submitCustomerAddress(updatePrimaryAddress, address);\n };\n\n private readonly submitCustomerAddress = async (\n addressAction: IObservableAction,\n address: Address\n ): Promise => {\n address.AddressTypeValue = address.AddressTypeValue || 7; // 7 sets it to HOME by default\n\n const input = new AddressManagementInput(address);\n return this.execAddressAction(addressAction, input, address);\n };\n\n private readonly execAddressAction = async (\n addressAction: IObservableAction,\n input: IActionInput | IActionInput[],\n address: Address\n ): Promise => {\n let response: IAddressResponse = {};\n\n if (this.context && this.context.actionContext) {\n try {\n const addresses = await addressAction(input, this.context.actionContext);\n if (addresses.length > 0) {\n response.address = address.RecordId ? address : addresses[addresses.length - 1];\n } else {\n response.address = address;\n }\n response.customerAddresses = addresses;\n } catch (error) {\n if (this.telemetry) {\n this.telemetry.error(`Error encountered ${error}`);\n this.telemetry.debug('Unable to exec address action');\n }\n response = this.parseRetailException(this.resources);\n }\n }\n return Promise.resolve(response);\n };\n\n /**\n * Function to get the address purposes and update the LogisticsLocationRoleRecordId to update the address type.\n * @param address - Address object.\n * @returns Returns void.\n */\n private readonly updateLogisticsLocationRoleRecordId = async (address: Address): Promise => {\n let addressPurposes: AddressPurpose[] = [];\n try {\n const input: GetAddressPurposesInput = new GetAddressPurposesInput(this.context.request.apiSettings);\n addressPurposes = await getAddressPurposesAction(input, this.context.actionContext);\n } catch (error) {\n // eslint-disable-next-line @typescript-eslint/restrict-template-expressions -- Supparsing the any type for error.\n this.telemetry.error(`Error encountered ${error}`);\n this.telemetry.debug('Unable to get address purposes');\n }\n if (ArrayExtensions.hasElements(addressPurposes)) {\n const addressPurpose: AddressPurpose | undefined = addressPurposes.find(\n purpose => purpose.AddressType === address.AddressTypeValue\n );\n if (addressPurpose) {\n address.LogisticsLocationRoleRecordId = addressPurpose.RecordId;\n }\n }\n };\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport {\n Address,\n AddressPurpose,\n CountryRegionInfo,\n StateProvinceInfo\n} from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { get, set } from 'mobx';\n\nimport { AddressItemType, IAddressDropdownsData, IAddressItem, IAddressValidationRule } from './address-format.data';\nimport { AddressMetaData } from './address-meta-data';\n\n/**\n *\n * Retail Service Address format parser.\n */\nexport class AddressFormat {\n private readonly countryRegionsInfo?: CountryRegionInfo[];\n\n private readonly addressPurposes?: AddressPurpose[];\n\n private readonly addressMetaData: AddressMetaData;\n\n constructor(countryRegionsInfo: CountryRegionInfo[], addressMetaData: AddressMetaData, addressPurposes: AddressPurpose[]) {\n this.countryRegionsInfo = countryRegionsInfo;\n this.addressMetaData = addressMetaData;\n this.addressPurposes = addressPurposes;\n }\n\n public getAddressFormat(countryRegionId: string): IAddressItem[] {\n const countryRegionInfo = this._getCountryRegionInfo(countryRegionId);\n if (countryRegionInfo) {\n return this._getAddressDisplayFormat(countryRegionInfo);\n }\n return [];\n }\n\n public getCountryFormat(): { key?: string; value?: string }[] {\n return (this.countryRegionsInfo || []).map(countryRegion => {\n return {\n key: countryRegion.CountryRegionId,\n value: countryRegion.ShortName\n };\n });\n }\n\n public getStateFormat(stateProvinceInfo?: StateProvinceInfo[]): { key?: string; value?: string }[] {\n return (stateProvinceInfo || []).map(state => {\n return {\n key: state.StateId,\n value: state.StateName\n };\n });\n }\n\n public getAddressTypeFormat(): { key?: number; value?: string }[] {\n return (this.addressPurposes || []).map(addressPurpose => {\n return {\n key: addressPurpose.AddressType,\n value: addressPurpose.Description\n };\n });\n }\n\n public getPrefilledAddressDropdownData = (\n stateDefaultSelectionText: string,\n stateProvinceInfo?: StateProvinceInfo[]\n ): IAddressDropdownsData => {\n const defaultStateText = {\n key: '',\n value: stateDefaultSelectionText\n };\n const dropdownData: IAddressDropdownsData = {};\n\n dropdownData[AddressItemType[AddressItemType.ThreeLetterISORegionName]] = this.getCountryFormat();\n dropdownData[AddressItemType[AddressItemType.State]] = this.getStateFormat(stateProvinceInfo);\n dropdownData[AddressItemType[AddressItemType.State]].unshift(defaultStateText);\n dropdownData[AddressItemType[AddressItemType.AddressTypeValue]] = this.getAddressTypeFormat();\n\n return dropdownData;\n };\n\n public getTwoLetterISORegionName = (countryRegionId: string): string | undefined => {\n const countryRegionInfo = this._getCountryRegionInfo(countryRegionId);\n\n return countryRegionInfo!.ISOCode;\n };\n\n public validateAddressFormat = (\n address: Address,\n validationError: Address,\n countryRegionId: string,\n propertyName?: string\n ): boolean => {\n let isValid: boolean = true;\n let validationtor;\n const addressFormat = this.getAddressFormat(address.ThreeLetterISORegionName || countryRegionId);\n\n addressFormat.forEach(addressFormatItem => {\n if (!propertyName || (propertyName && addressFormatItem.name === propertyName)) {\n validationtor = this._inputValidation(addressFormatItem, validationError, address);\n if (validationtor !== undefined) {\n isValid = validationtor;\n }\n }\n });\n\n return isValid;\n };\n\n public getTranformedAddress = (result: Microsoft.Maps.ISuggestionResult, stateProvinceInfo?: StateProvinceInfo[]): Address => {\n const address: Address = {};\n\n // Zip Code\n if (result.address.postalCode !== undefined) {\n address.ZipCode = result.address.postalCode;\n } else {\n address.ZipCode = '';\n }\n\n // State\n if (stateProvinceInfo) {\n const selectedState = stateProvinceInfo.find(state => state.StateName === result.address.adminDistrict);\n if (!selectedState) {\n address.State = '';\n address.StateName = result.address.adminDistrict;\n } else {\n address.State = selectedState.StateId;\n address.StateName = selectedState.StateName;\n }\n }\n\n // Street\n if (result.address.addressLine !== undefined) {\n address.Street = result.address.addressLine;\n } else {\n address.Street = ' ';\n }\n\n // City\n if (result.address.locality !== undefined) {\n address.City = result.address.locality;\n } else {\n address.City = '';\n }\n\n // District\n if (result.address.district !== undefined) {\n address.DistrictName = result.address.district;\n address.CountyName = result.address.district;\n } else {\n address.DistrictName = '';\n }\n\n // Formatted Address\n address.FullAddress = result.address.formattedAddress;\n\n return address;\n };\n\n private _inputValidation(addressFormatItem: IAddressItem, validationError: Address, address: Address): boolean | undefined {\n set(validationError, { [addressFormatItem.name]: null });\n for (const validationRule of addressFormatItem.validationRules || []) {\n if (!this._validateRegEx(address, addressFormatItem.name, validationRule)) {\n set(validationError, { [addressFormatItem.name]: validationRule.message });\n return false;\n }\n }\n return undefined;\n }\n\n private readonly _validateRegEx = (address: Address, propertyName: string, validationRule: IAddressValidationRule): boolean => {\n if (validationRule.regEx && validationRule.regEx.length > 0) {\n const regex = new RegExp(validationRule.regEx);\n return regex.test((get(address, propertyName) as string) || '');\n }\n return true;\n };\n\n private _getCountryRegionInfo(countryRegionId: string): CountryRegionInfo | undefined {\n return (this.countryRegionsInfo || []).find(countryRegion => {\n return (countryRegion.CountryRegionId || '').toLowerCase() === countryRegionId.toLowerCase();\n });\n }\n\n private _getAddressDisplayFormat(countryRegionInfo: CountryRegionInfo): IAddressItem[] {\n const addressDisplayItem: IAddressItem[] = [];\n\n if (countryRegionInfo && countryRegionInfo.AddressFormatLines) {\n const AddressTypeItem = this._extendAddressDisplayFormat(AddressItemType.AddressTypeValue, true);\n if (AddressTypeItem) {\n addressDisplayItem.push(AddressTypeItem);\n }\n\n const nameDisplayItem = this._extendAddressDisplayFormat(AddressItemType.Name, true);\n if (nameDisplayItem) {\n addressDisplayItem.push(nameDisplayItem);\n }\n\n countryRegionInfo.AddressFormatLines.forEach(formatLine => {\n if (formatLine.AddressComponentNameValue) {\n const addressItem = this.addressMetaData.getItemFormat(formatLine.AddressComponentNameValue);\n if (addressItem) {\n addressItem.isNewLine = formatLine.NewLine || false;\n addressDisplayItem.push(addressItem);\n }\n }\n });\n\n const phoneDisplayItem = this._extendAddressDisplayFormat(AddressItemType.Phone, false);\n if (phoneDisplayItem) {\n addressDisplayItem.push(phoneDisplayItem);\n }\n\n const isPrimaryDisplayItem = this._extendAddressDisplayFormat(AddressItemType.IsPrimary, false);\n if (isPrimaryDisplayItem) {\n addressDisplayItem.push(isPrimaryDisplayItem);\n }\n }\n\n return addressDisplayItem;\n }\n\n private _extendAddressDisplayFormat(type: AddressItemType, isNewLine: boolean): IAddressItem | undefined {\n const addressItem = this.addressMetaData.getItemFormat(type);\n if (addressItem) {\n addressItem.isNewLine = isNewLine;\n }\n return addressItem;\n }\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { PhoneRegex } from '@msdyn365-commerce-modules/retail-actions';\n\nimport {\n AddressItemDisplayType,\n AddressItemType,\n AddressValidationRuleType,\n IAddressItem,\n IAddressValidationRule\n} from './address-format.data';\nimport { IAddressResource } from './address-module.data';\n\n/**\n * Address meta data.\n */\nexport class AddressMetaData {\n private readonly metaData: IAddressItem[] = [];\n\n private readonly resources: IAddressResource;\n\n private readonly requiredFieldRegEx: string = '\\\\S';\n\n private readonly maxLengthRegEx: string = '^.{0,20}$';\n\n private readonly resourcesPrefix: string = 'address';\n\n private readonly maxLength: number = 64;\n\n private readonly requiredFields: AddressItemType[];\n\n private readonly excludedTypes: AddressItemType[];\n\n constructor(resources: IAddressResource, excluded?: AddressItemType[], required?: AddressItemType[]) {\n this.resources = resources || {};\n this.excludedTypes = excluded || [];\n this.requiredFields =\n required !== undefined\n ? required\n : [\n AddressItemType.AddressTypeValue,\n AddressItemType.Name,\n AddressItemType.ZipCode,\n AddressItemType.City,\n AddressItemType.State,\n AddressItemType.ThreeLetterISORegionName,\n AddressItemType.Street\n ];\n this._init();\n }\n\n public getItemFormat(id: number): IAddressItem | undefined {\n return this.metaData.find(item => {\n return item.type === id;\n });\n }\n\n private _init(): void {\n this._addItem(AddressItemType.Name, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.Phone, AddressItemDisplayType.Input, PhoneRegex.defaultRegex);\n this._addItem(AddressItemType.ZipCode, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.City, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.County, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.State, AddressItemDisplayType.Dropdown);\n this._addItem(AddressItemType.ThreeLetterISORegionName, AddressItemDisplayType.Dropdown);\n this._addItem(AddressItemType.Street, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.DistrictName, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.StreetNumber, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.BuildingCompliment, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.Postbox, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.House_RU, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.Flat_RU, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.CountryOKSMCode_RU, AddressItemDisplayType.Input);\n this._addItem(AddressItemType.AddressTypeValue, AddressItemDisplayType.Dropdown);\n this._addItem(AddressItemType.IsPrimary, AddressItemDisplayType.Checkbox);\n }\n\n private _addItem(type: AddressItemType, displayType: AddressItemDisplayType, format?: string): void {\n if (this.excludedTypes.includes(type)) {\n return;\n }\n\n const nameKey = AddressItemType[type].replace('_', '');\n\n // Find out if currentItem is required field\n const validationRules = this._validationRules(type, nameKey, format);\n const isRequired = validationRules.some(rule => rule.type === AddressValidationRuleType.Required);\n\n // If no optional string is provided in resource file, use the original label text\n const optionalString =\n this.resources[`${this.resourcesPrefix}${nameKey}LabelOptional`] || this.resources[`${this.resourcesPrefix}${nameKey}Label`];\n const item: IAddressItem = {\n type,\n displayType,\n name: AddressItemType[type],\n label: isRequired ? this.resources[`${this.resourcesPrefix}${nameKey}Label`] : optionalString,\n maxLength: this.maxLength,\n validationRules,\n isNewLine: true\n };\n\n this.metaData.push(item);\n }\n\n private _validationRules(type: AddressItemType, name: string, format?: string): IAddressValidationRule[] {\n const validationRules: IAddressValidationRule[] = [];\n\n for (const ruleType of Object.keys(AddressValidationRuleType)) {\n const key = `${this.resourcesPrefix}${name}${ruleType}`;\n const message: string = this.resources[`${key}ErrorMessage`];\n switch (ruleType) {\n case AddressValidationRuleType.Required: {\n if (this.requiredFields.find((itemType: AddressItemType) => itemType === type)) {\n validationRules.push(this._validationRule(ruleType, this.requiredFieldRegEx, message));\n }\n break;\n }\n case AddressValidationRuleType.Format: {\n validationRules.push(this._validationRule(ruleType, format!, message));\n break;\n }\n case AddressValidationRuleType.MaxLength: {\n if (type === AddressItemType.Phone) {\n validationRules.push(this._validationRule(ruleType, this.maxLengthRegEx, message));\n }\n\n break;\n }\n default:\n }\n }\n return validationRules;\n }\n\n private _validationRule(type: AddressValidationRuleType, regEx: string, message: string): IAddressValidationRule {\n return {\n type,\n regEx,\n message\n };\n }\n}\n","/*--------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * See License.txt in the project root for license information.\n *--------------------------------------------------------------*/\n\nimport { Address } from '@msdyn365-commerce/retail-proxy';\nimport { Heading } from '@msdyn365-commerce-modules/data-types';\n\nexport enum AddressOperation {\n Add = 'Add',\n Show = 'Show',\n Update = 'Update',\n List = 'List',\n Multiple = 'Multiple'\n}\n\nexport enum AddressType {\n Shipping = 'Shipping',\n Billing = 'Billing',\n Invoice = 'Invoice',\n Company = 'Company'\n}\n\nexport interface IDropdownDisplayData {\n [index: string]: { key?: string; value?: string }[];\n}\n\nexport interface IAddressResponse {\n errorTitle?: string;\n errorMessage?: string;\n customerAddresses?: Address[];\n address?: Address;\n}\n\nexport interface IAddressConfig {\n heading?: Heading;\n primaryAddressSectionHeading?: Heading;\n otherAddressSectionHeading?: Heading;\n addAddressHeading?: Heading;\n editAddressHeading?: Heading;\n}\n\nexport interface IAddressResource {\n addressChangeCheckboxAriaLabel: string;\n addressAddButtonText: string;\n addressAddButtonAriaLabel: string;\n addressAddNewButtonText?: string;\n addressAddNewButtonAriaLabel?: string;\n addressPrimaryButtonText: string;\n addressPrimaryButtonAriaLabel: string;\n addressEditButtonText: string;\n addressEditButtonAriaLabel: string;\n addressRemoveButtonText: string;\n addressRemoveButtonAriaLabel: string;\n addressSaveButtonText: string;\n addressSaveButtonAriaLabel: string;\n addressCancelButtonText: string;\n addressCancelButtonAriaLabel: string;\n addressStateDefaultSelectionText: string;\n addressNameLabel: string;\n addressNameLabelOptional?: string;\n addressNameRequiredErrorMessage: string;\n addressPhoneLabel: string;\n addressPhoneLabelOptional?: string;\n addressPhoneRequiredErrorMessage: string;\n addressPhoneMaxLengthErrorMessage?:string;\n addressZipCodeLabel: string;\n addressZipCodeLabelOptional?: string;\n addressZipCodeRequiredErrorMessage: string;\n addressCityLabel: string;\n addressCityLabelOptional?: string;\n addressCityRequiredErrorMessage: string;\n addressCountyLabel: string;\n addressCountyLabelOptional?: string;\n addressCountyRequiredErrorMessage: string;\n addressStateLabel: string;\n addressStateLabelOptional?: string;\n addressStateRequiredErrorMessage: string;\n addressThreeLetterISORegionNameLabel: string;\n addressThreeLetterISORegionNameLabelOptional?: string;\n addressThreeLetterISORegionNameRequiredErrorMessage: string;\n addressStreetRequiredErrorMessage: string;\n addressDistrictLabel: string;\n addressDistrictLabelOptional?: string;\n addressDistrictNameLabel: string;\n addressDistrictNameLabelOptional?: string;\n addressDistrictRequiredErrorMessage: string;\n addressStreetNumberLabel: string;\n addressStreetNumberLabelOptional?: string;\n addressStreetNumberRequiredErrorMessage: string;\n addressBuildingComplimentLabel: string;\n addressBuildingComplimentLabelOptional?: string;\n addressBuildingComplimentRequiredErrorMessage: string;\n addressPostboxLabel: string;\n addressPostboxLabelOptional?: string;\n addressPostboxRequiredErrorMessage: string;\n addressHouseRULabel: string;\n addressHouseRULabelOptional?: string;\n addressHouseRURequiredErrorMessage: string;\n addressFlatRULabel: string;\n addressFlatRULabelOptional?: string;\n addressFlatRURequiredErrorMessage: string;\n addressCountryOKSMCodeRULabel: string;\n addressCountryOKSMCodeRURequiredErrorMessage: string;\n addressErrorMessageTitle: string;\n addressGenericErrorMessage: string;\n addressEmptyListAddressMessage: string;\n removeAddressNotification?: string;\n addressProductImage?: string;\n addressProductNumberText?: string;\n addressProductText?: string;\n addressProductUnitPriceText?: string;\n addressProductUOMText?: string;\n addressProductQuantityText?: string;\n addressProductActionsText?: string;\n addressSelectAllRowsText?: string;\n addressProductAddressText?: string;\n addressShipMultipleText?: string;\n addressShipMultipleAriaLabel?: string;\n saveAndContinueBtnLabel?: string;\n addressShipSingleText?: string;\n addressShipSingleAriaLabel?: string;\n clearSelectionButtonText?: string;\n clearSelectionButtonAriaLabel?: string;\n chooseAddressForSelectedItemsText?: string;\n chooseAddressForSelectedItemsAriaLabel?: string;\n noAddressSelectedAriaLabel?: string;\n unavailableProductErrorMessage?: string;\n outOfStockProductErrorMessage?: string;\n}\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IAdressCheckbox {\n id?: string;\n name?: string;\n className: string;\n type: string;\n isChecked: boolean;\n autoFocus?: boolean;\n additionalAddributes?: object;\n telemetryContent?: ITelemetryContent;\n onChange(event: React.ChangeEvent): void;\n}\n\n/**\n * Address checkbox.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressCheckboxFunctionComponent: React.FC = (props: IAdressCheckbox) => {\n const {\n id: itemId,\n name,\n className,\n type,\n isChecked,\n additionalAddributes,\n telemetryContent,\n autoFocus: shouldBeAutoFocused,\n onChange\n } = props;\n\n const payLoad = getPayloadObject('click', telemetryContent!, name!);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n return (\n \n );\n};\n\nexport default AddressCheckboxFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Address } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { Heading as HeadingData } from '@msdyn365-commerce-modules/data-types';\nimport { Heading, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classname from 'classnames';\nimport { get } from 'mobx';\nimport * as React from 'react';\n\nimport {\n AddressItemDisplayType,\n AddressItemType,\n AddressValidationRuleType,\n IAddressDropdownsData,\n IAddressItem,\n IAddressValidationRule\n} from '../address-format.data';\nimport { AddressType, IAddressResource, IAddressResponse } from '../address-module.data';\nimport AddressAlertComponent from './address-alert';\nimport AddressButtonComponent from './address-button';\nimport AdressCheckboxComponent from './address-checkbox';\nimport AdressDropdownComponent from './address-dropdown';\nimport AddressErrorMessageComponent from './address-error-message';\nimport AddressErrorTitleComponent from './address-error-title';\nimport AddressInputComponent from './address-input';\nimport AddressLabelComponent from './address-label';\n\nexport interface IAddressAddInputProps {\n isUpdating?: boolean;\n hasError?: boolean;\n hasExternalSubmitGroup?: boolean;\n addressType: AddressType;\n addressFormat: IAddressItem[];\n defaultCountryRegionId: string;\n defaultAddressType: number;\n selectedAddress?: Address;\n dropdownDisplayData: IAddressDropdownsData;\n resources: IAddressResource;\n addressActionResponse?: IAddressResponse;\n addAddressHeading?: HeadingData;\n editAddressHeading?: HeadingData;\n validationError?: object;\n telemetryContent?: ITelemetryContent;\n shouldAutoFocus?: boolean;\n onInputChange(event: React.ChangeEvent): void;\n onDropdownChange(event: React.ChangeEvent): void;\n onSave?(): void;\n onCancel?(): void;\n}\n\nexport interface IAddressError {\n AddressError: INodeProps;\n title: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface IAddressAddItem {\n key: string;\n AddressItem: INodeProps;\n label: React.ReactNode;\n alert: React.ReactNode;\n input: React.ReactNode;\n}\n\nexport interface IAddressAddUpdateProps {\n AddressForm: INodeProps;\n heading: React.ReactNode;\n items: IAddressAddItem[];\n hasError: boolean;\n error: IAddressError;\n isShowSaveButton: boolean;\n saveButton: React.ReactNode;\n isShowCancelButton: boolean;\n cancelButton: React.ReactNode;\n}\n\nconst getRequriedAttribute = (validationRules?: IAddressValidationRule[]): object => {\n const requriedRule = (validationRules || []).find(validationRule => {\n return validationRule.type === AddressValidationRuleType.Required;\n });\n\n return requriedRule ? { 'aria-required': true } : {};\n};\n\nconst getAddessItems = (selectedAddress: Address, props: IAddressAddInputProps): IAddressAddItem[] => {\n const {\n addressFormat,\n addressType,\n dropdownDisplayData,\n defaultCountryRegionId,\n defaultAddressType,\n validationError = {},\n onInputChange,\n onDropdownChange,\n shouldAutoFocus\n } = props;\n\n return addressFormat.map((addressFormatItem, index) => {\n const elementId = `${addressType.toLowerCase()}_address${addressFormatItem.name.toLowerCase()}`;\n const errorMessage = get(validationError, addressFormatItem.name);\n const className = classname('msc-address-form__item', `msc-address-form__item-${addressFormatItem.name.toLowerCase()}`, {\n 'msc-address-form__item-newline': addressFormatItem.isNewLine,\n 'address-form__item-invalid': errorMessage\n });\n let input;\n\n if (addressFormatItem.displayType === AddressItemDisplayType.Input) {\n input = (\n \n );\n } else if (addressFormatItem.displayType === AddressItemDisplayType.Checkbox) {\n input = (\n \n );\n } else {\n const displayData = dropdownDisplayData[addressFormatItem.name];\n let selectedValue = selectedAddress[addressFormatItem.name];\n\n if (addressFormatItem.type === AddressItemType.ThreeLetterISORegionName) {\n selectedValue = selectedValue || defaultCountryRegionId;\n }\n\n if (addressFormatItem.type === AddressItemType.AddressTypeValue) {\n selectedValue = selectedValue || defaultAddressType;\n }\n\n input = (\n \n );\n }\n\n return {\n key: addressFormatItem.name,\n AddressItem: { className, id: `${elementId}_container` },\n label: ,\n alert: ,\n input\n };\n });\n};\n\nexport const AddressAddUpdate = (props: IAddressAddInputProps): IAddressAddUpdateProps => {\n const {\n editAddressHeading,\n addAddressHeading,\n selectedAddress = {},\n resources,\n hasError,\n onCancel,\n onSave,\n hasExternalSubmitGroup,\n isUpdating,\n addressActionResponse,\n telemetryContent\n } = props;\n const heading = selectedAddress.RecordId ? editAddressHeading : addAddressHeading;\n\n return {\n AddressForm: { className: 'msc-address-form' },\n heading: heading && ,\n items: getAddessItems(selectedAddress, props),\n isShowSaveButton: !hasExternalSubmitGroup,\n saveButton: onSave && (\n \n ),\n isShowCancelButton: !hasExternalSubmitGroup,\n cancelButton: onCancel && (\n \n ),\n hasError: hasError || false,\n error: {\n AddressError: { className: 'msc-address-form__error' },\n title: addressActionResponse && addressActionResponse.errorTitle && (\n \n ),\n message: addressActionResponse && addressActionResponse.errorMessage && (\n \n )\n }\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 React from 'react';\n\nexport interface IAdressAlert {\n message?: string;\n}\n\n/**\n * Address alert.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressAlertFunctionComponent: React.FC = (props: IAdressAlert) => {\n const message = props.message;\n return (\n \n {message && <>{message}}\n \n );\n};\n\nexport default AddressAlertFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAdressDropdown {\n id: string;\n name: string;\n className: string;\n value: string | number;\n additionalAddributes?: object;\n recordId?: string;\n displayData: { key?: string | number; value?: string }[];\n onChange(event: React.ChangeEvent): void;\n}\n\nconst getDropdownItem = (key?: string | number, value?: string, selectedValue?: string | number): React.ReactNode => {\n let isSelected: boolean;\n if (typeof key === 'number') {\n isSelected = key === selectedValue;\n } else {\n isSelected = typeof selectedValue === 'string' && (key || '').toLowerCase() === (selectedValue || '').toLowerCase();\n }\n\n return (\n \n );\n};\n\n/**\n * Address dropdown.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressDropdownFunctionComponent: React.FC = (props: IAdressDropdown) => {\n const { id: itemId, name, className, value, additionalAddributes, displayData, onChange, recordId } = props;\n\n return (\n \n {displayData && displayData.map(item => getDropdownItem(item.key, item.value, value))}\n \n );\n};\n\nexport default AddressDropdownFunctionComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IAdressLabel {\n id: string;\n text: string;\n}\n\n/**\n * Address label.\n * @param props - Configuration of the functional component.\n * @returns React functional component.\n */\nexport const AddressLabelFunctionComponent: React.FC = (props: IAdressLabel) => {\n const { id: itemId, text } = props;\n\n return (\n \n );\n};\n\nexport default AddressLabelFunctionComponent;\n"],"names":["BusinessAccountAddress","React","constructor","props","super","countryRegionId","countryRegions","addressPurposes","defaultAddressType","shouldAutoFocus","excludedList","AddressItemType","Name","AddressTypeValue","IsPrimary","_resetAddressFields","this","addressFormat","getAddressFormat","map","addressFormatItem","displayType","AddressItemDisplayType","Input","addUpdateAddress","name","Checkbox","type","ThreeLetterISORegionName","State","undefined","_dataInitialize","data","reaction","result","_data$countryRegions$","_data$addressPurposes","countryStates","_data$countryStates$r","stateProvinceInfo","_renderAddOrUpdateAddress","AddressAddUpdate","isUpdating","resources","addressType","AddressType","Company","defaultCountryRegionId","selectedAddress","validationError","hasError","addressActionResponse","telemetryContent","dropdownDisplayData","getPrefilledAddressDropdownData","addressStateDefaultSelectionText","onInputChange","_onAddressAddUpdateInputChange","onDropdownChange","_onAddressAddUpdateDropdownChange","event","_updateAddress","target","value","async","_updateCountryRegionId","updateForm","isRequired","cleanValue","replace","RegExp","set","_isEmpty","AddressFormat","AddressMetaData","_objectSpread","validateAddressFormat","_isInputRequired","addressItemValue","ObjectExtensions","isNullOrUndefined","validationRules","length","validationRule","AddressValidationRuleType","Required","addressCommon","getStateProvinces","then","some","state","StateId","context","telemetry","AddressCommon","getTelemetryObject","request","telemetryPageName","friendlyName","componentDidMount","_setDefaultCountryRegionId","shouldComponentUpdate","nextProps","nextState","render","renderView","config","resetAddress","className","moduleProps","classnames","showAddOrUpdateAddress","_request$channel","market","channel","ChannelCountryRegionISOCode","getDefaultCountryRegionId","__decorate","observable","_ref","AddressForm","heading","items","error","isShowSaveButton","saveButton","isShowCancelButton","cancelButton","Node","Object","assign","item","AddressItem","key","label","alert","input","AddressError","title","message","Module","text","ariaLabel","disabled","isDisabled","onClick","role","payLoad","getPayloadObject","attributes","getTelemetryAttributes","id","itemId","maxLength","additionalAddributes","autoFocus","shouldUseAutoFocus","onChange","marketISOCode","currentCountryRegion","find","countryRegion","ISOCode","CountryRegionId","parseRetailException","errorTitle","addressErrorMessageTitle","errorMessage","addressGenericErrorMessage","isAuthenticatedFlow","user","isAuthenticated","response","actionContext","GetStateProvincesInput","apiSettings","getStateProvinceAction","debug","Promise","resolve","isEmpty","address","City","addCustomerAddress","updateLogisticsLocationRoleRecordId","submitCustomerAddress","addAddress","updateCustomerAddress","updateAddress","updateCustomerPrimaryAddress","updatePrimaryAddress","addressAction","AddressManagementInput","execAddressAction","addresses","RecordId","customerAddresses","GetAddressPurposesInput","getAddressPurposesAction","ArrayExtensions","hasElements","addressPurpose","purpose","LogisticsLocationRoleRecordId","countryRegionsInfo","addressMetaData","stateDefaultSelectionText","defaultStateText","dropdownData","getCountryFormat","getStateFormat","unshift","getAddressTypeFormat","getTwoLetterISORegionName","_getCountryRegionInfo","propertyName","validationtor","isValid","forEach","_inputValidation","getTranformedAddress","postalCode","ZipCode","selectedState","StateName","adminDistrict","addressLine","Street","locality","district","DistrictName","CountyName","FullAddress","formattedAddress","_validateRegEx","regEx","test","get","countryRegionInfo","_getAddressDisplayFormat","ShortName","Description","toLowerCase","addressDisplayItem","AddressFormatLines","AddressTypeItem","_extendAddressDisplayFormat","push","nameDisplayItem","formatLine","AddressComponentNameValue","addressItem","getItemFormat","isNewLine","NewLine","phoneDisplayItem","Phone","isPrimaryDisplayItem","excluded","required","metaData","requiredFieldRegEx","maxLengthRegEx","resourcesPrefix","excludedTypes","requiredFields","_init","_addItem","PhoneRegex","defaultRegex","County","Dropdown","StreetNumber","BuildingCompliment","Postbox","House_RU","Flat_RU","CountryOKSMCode_RU","format","includes","nameKey","_validationRules","rule","optionalString","ruleType","keys","itemType","_validationRule","Format","MaxLength","AddressOperation","isChecked","shouldBeAutoFocused","checked","getRequriedAttribute","getAddessItems","index","elementId","classname","AddressInputComponent","AdressCheckboxComponent","displayData","selectedValue","AdressDropdownComponent","AddressLabelComponent","AddressAlertComponent","editAddressHeading","addAddressHeading","onCancel","onSave","hasExternalSubmitGroup","Heading","AddressButtonComponent","addressSaveButtonText","addressSaveButtonAriaLabel","addressCancelButtonText","addressCancelButtonAriaLabel","AddressErrorTitleComponent","AddressErrorMessageComponent","recordId","getDropdownItem","isSelected","htmlFor"],"sourceRoot":""}