{"version":3,"file":"static/js/c387198631dd253236ba.bundle.js","mappings":"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","sources":["webpack://Msdyn365.Commerce.Online/./src/themes/loacker/views/checkout-delivery-options.view.tsx?4a4e","webpack://Msdyn365.Commerce.Online/./lib/checkout-delivery-options/module-registration.js?e78e","webpack://Msdyn365.Commerce.Online/./src/common/error.tsx?096f","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/components/checkout-delivery-options.description.tsx?840c","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/components/checkout-delivery-options.error-message.tsx?8ca3","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/components/checkout-delivery-options.error-title.tsx?f7e7","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/components/checkout-delivery-options.radio-button.tsx?9df9","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/checkout-delivery-options.tsx?6764","webpack://Msdyn365.Commerce.Online/./src/modules/checkout-delivery-options/checkout-delivery-options.view.tsx?1e75","webpack://Msdyn365.Commerce.Online/external var \"React\"?0d3b","webpack://Msdyn365.Commerce.Online/external var \"ReactDOM\"?853b"],"sourcesContent":["/*--------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * See License.txt in the project root for license information.\r\n *--------------------------------------------------------------*/\r\n\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\n\r\nimport { ICheckoutDeliveryOption, ICheckoutDeliveryOptionEdit, ICheckoutDeliveryOptionsError, ICheckoutDeliveryOptionsList, ICheckoutDeliveryOptionsViewProps } from '@msdyn365-commerce-modules/checkout/src/modules/checkout-delivery-options/./checkout-delivery-options';\r\nimport { ICheckoutDeliveryOptionsConfig } from '../definition-extensions/checkout-delivery-options.ext.props.autogenerated';\r\n\r\nexport interface ICheckoutDeliveryOptionsViewPropsExt extends Omit {\r\n config: ICheckoutDeliveryOptionsConfig;\r\n}\r\n\r\nconst DeliveryOptionList: React.FC = ({\r\n DeliveryOptionsList,\r\n list\r\n}) => {\r\n if (!list || list.length === 0) {\r\n return null;\r\n }\r\n const isMilitaryAddress = localStorage.getItem('is_military_address') === 'true' ? true : false;\r\n return (\r\n \r\n {list.map((deliveryOption: ICheckoutDeliveryOptionEdit) => {\r\n if(isMilitaryAddress && deliveryOption.code === 'SRTP'){\r\n return (\r\n {deliveryOption.radioButton}\r\n {deliveryOption.description}\r\n {deliveryOption.price}\r\n );\r\n } else if((!isMilitaryAddress && deliveryOption.code !== 'SRTP')) {\r\n return (\r\n {deliveryOption.radioButton}\r\n {deliveryOption.description}\r\n {deliveryOption.price}\r\n );\r\n }\r\n return;\r\n })}\r\n \r\n );\r\n};\r\n\r\nconst DeliveryOptionSelected: React.FC = ({\r\n DeliveryOption,\r\n description,\r\n price\r\n}) => {\r\n\r\n return (\r\n \r\n {description}\r\n {price}\r\n \r\n );\r\n};\r\n\r\nconst ErrorMessage: React.FC = ({\r\n Error,\r\n title,\r\n message\r\n}) => {\r\n\r\n return (\r\n \r\n {title}\r\n {message}\r\n \r\n );\r\n};\r\n\r\nconst CheckoutDeliveryOptionsView: React.FC = props => {\r\n const { CheckoutDeliveryOptions,\r\n viewState,\r\n deliveryOptions,\r\n deliveryOptionSelected,\r\n errorMessage,\r\n waiting,\r\n saveButton,\r\n editButton,\r\n cancelButton } = props;\r\n\r\n const deliveryDescriptionField = props.config.extraText;\r\n const deliveryDescription = deliveryDescriptionField && (\r\n \r\n );\r\n return (\r\n // TODO: All wrapper div should be provided by viewProps. Once SDK provide the sln, update markup.\r\n \r\n {deliveryDescription}\r\n {viewState.isLoading && waiting}\r\n {viewState.isError && errorMessage && }\r\n {viewState.isShowList && deliveryOptions && }\r\n {viewState.isShowSelected && deliveryOptionSelected && }\r\n {viewState.isShowSaveButton && saveButton}\r\n {viewState.isShowEditButton && editButton}\r\n {viewState.isShowCancelButton && cancelButton}\r\n \r\n );\r\n};\r\n\r\nexport default CheckoutDeliveryOptionsView;\r\n","const binding = { modules: {}, dataActions: {} };\n\n const registerActionId = (actionPath) => {\n if (binding.dataActions[actionPath] &&\n binding.dataActions[actionPath].default &&\n binding.dataActions[actionPath].default.prototype &&\n binding.dataActions[actionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[actionPath].default.prototype.id] = binding.dataActions[actionPath];\n } else {\n Object.keys(binding.dataActions[actionPath] || {}).forEach(exportName => {\n if (binding.dataActions[actionPath][exportName] &&\n binding.dataActions[actionPath][exportName].prototype &&\n binding.dataActions[actionPath][exportName].prototype.Action) {\n binding.dataActions[binding.dataActions[actionPath][exportName].prototype.id] = binding.dataActions[actionPath][exportName];\n }\n })\n }\n };\n\n const registerSanitizedActionPath = (sanitizedActionPath, dataAction) => {\n if (process.env.NODE_ENV === 'development') {\n if (!dataAction.default) {\n throw new Error('Data action path does not have a default export');\n }\n if (!(dataAction.default.prototype.id && binding.dataActions[dataAction.default.prototype.id]) || !binding.dataActions[sanitizedActionPath]) {\n binding.dataActions[sanitizedActionPath] = dataAction;\n }\n } else {\n binding.dataActions[sanitizedActionPath] = dataAction;\n if (!binding.dataActions[sanitizedActionPath].default) {\n throw new Error('Data action path ' + sanitizedActionPath + ' does not have a default export');\n }\n binding.dataActions[sanitizedActionPath].default.prototype.RegistrationId = sanitizedActionPath;\n if (binding.dataActions[sanitizedActionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[sanitizedActionPath].default.prototype.id] = sanitizedActionPath;\n }\n }\n };\n \n\n (binding.modules['checkout-delivery-options'] = {\n c: () => require('@msdyn365-commerce-modules/checkout/dist/lib/modules/checkout-delivery-options/checkout-delivery-options'),\n $type: 'contentModule',\n da: [{name:'cart', path:'@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action', runOn: 0},{name:'channelDeliveryOptionConfig', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-channel-delivery-option-configuration', runOn: 0},{name:'checkout', path:'@msdyn365-commerce/global-state/dist/lib/data-actions/checkout-state-data-action', runOn: 1},{name:'featureState', path:'@msdyn365-commerce-modules/retail-actions/dist/lib/get-feature-state', runOn: 0}],\n \n iNM: true,\n ns: '@msdyn365-commerce-modules',\n n: 'checkout-delivery-options',\n p: 'checkout',\n \n pdp: '',\n \n \n md: 'node_modules/@msdyn365-commerce-modules/checkout/dist/lib/modules/checkout-delivery-options'\n });\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce-modules/retail-actions/dist/lib/get-channel-delivery-option-configuration';\n let dataAction = require('@msdyn365-commerce-modules/retail-actions/dist/lib/get-channel-delivery-option-configuration');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce-modules/retail-actions/dist/lib/get-feature-state';\n let dataAction = require('@msdyn365-commerce-modules/retail-actions/dist/lib/get-feature-state');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action';\n let dataAction = require('@msdyn365-commerce/global-state/dist/lib/data-actions/cart-state-data-action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n {\n const sanitizedActionPath = '@msdyn365-commerce/global-state/dist/lib/data-actions/checkout-state-data-action';\n let dataAction = require('@msdyn365-commerce/global-state/dist/lib/data-actions/checkout-state-data-action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n \n window.__bindings__ = window.__bindings__ || {};\n window.__bindings__.modules = {\n ...window.__bindings__.modules || {},\n ...binding.modules\n };\n \n window.__bindings__.dataActions = {\n ...window.__bindings__.dataActions || {},\n ...binding.dataActions\n };\n export const viewDictionary = {};\n viewDictionary['__local__|__local__|themes|loacker|views|checkout-delivery-options'] = {\n c: () => require('partner/themes/loacker/views/checkout-delivery-options.view.tsx'),\n cn: '__local__-__local__-checkout-delivery-options'\n };\nviewDictionary['@msdyn365-commerce-modules|checkout|modules|checkout-delivery-options|checkout-delivery-options'] = {\n c: () => require('@msdyn365-commerce-modules/checkout/dist/lib/modules/checkout-delivery-options/checkout-delivery-options.view.js'),\n cn: '@msdyn365-commerce-modules-checkout-checkout-delivery-options'\n };\nwindow.__bindings__ = window.__bindings__ || {};\nwindow.__bindings__.viewDictionary = {\n ...window.__bindings__.viewDictionary || {},\n ...viewDictionary\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\n/**\n * The payment error.\n */\nexport interface IPaymentError {\n title: string;\n message: string;\n className?: string;\n}\n\n/**\n * The payment error.\n * @param param0 - First param.\n * @param param0.title - Title.\n * @param param0.message - Message.\n * @param param0.className - ClassName.\n * @returns React node.\n */\nexport const ErrorComponent: React.FC = ({ title, message, className = 'ms-checkout-payment-instrument' }) => (\n
\n

{title}

\n

{message}

\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 ICheckoutDeliveryOptionsDescriptionProps {\n description?: string;\n}\n\n/**\n * AddPaymentForm SFC.\n * @param root0\n * @param root0.description\n * @extends {React.FC}\n */\nconst CheckoutDeliveryOptionsDescription: React.FC = ({ description }) => {\n if (!description) {\n return null;\n }\n\n return {description};\n};\n\nexport default CheckoutDeliveryOptionsDescription;\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 ICheckoutDeliveryOptionsErrorMessageProps {\n message?: string;\n}\n\n/**\n * AddPaymentForm SFC.\n * @param root0\n * @param root0.message\n * @extends {React.FC}\n */\nconst CheckoutDeliveryOptionsErrorMessage: React.FC = ({ message }) => {\n if (!message) {\n return null;\n }\n\n return

{message}

;\n};\n\nexport default CheckoutDeliveryOptionsErrorMessage;\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 ICheckoutDeliveryOptionsErrorTitleProps {\n title?: string;\n}\n\n/**\n * AddPaymentForm SFC.\n * @param root0\n * @param root0.title\n * @extends {React.FC}\n */\nconst CheckoutDeliveryOptionsErrorTitle: React.FC = ({ title }) => {\n if (!title) {\n return null;\n }\n\n return

{title}

;\n};\n\nexport default CheckoutDeliveryOptionsErrorTitle;\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, TelemetryConstant } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface ICheckoutDeliveryOptionsRadioButtonProps {\n isChecked: boolean;\n value?: string;\n ariaSetSize: number;\n ariaPosInSet: number;\n ariaLabel?: string;\n telemetryContent?: ITelemetryContent;\n onChange(event: React.ChangeEvent): void;\n}\n\n/**\n * AddPaymentForm SFC.\n * @param root0\n * @param root0.isChecked\n * @param root0.value\n * @param root0.ariaSetSize\n * @param root0.ariaPosInSet\n * @param root0.ariaLabel\n * @param root0.telemetryContent\n * @param root0.onChange\n * @extends {React.FC}\n */\nconst CheckoutDeliveryOptionsRadioButton: React.FC = ({\n isChecked,\n value,\n ariaSetSize,\n ariaPosInSet,\n ariaLabel,\n telemetryContent,\n onChange\n}) => {\n if (!value) {\n return null;\n }\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.DeliveryOptions);\n const attributes = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n \n );\n};\n\nexport default CheckoutDeliveryOptionsRadioButton;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { PriceComponent } from '@msdyn365-commerce/components';\nimport { CheckoutModule, ErrorLocation, ICheckoutState } from '@msdyn365-commerce/global-state';\nimport { Cart, ChannelDeliveryOptionConfiguration, FilterDeliveryModeOption } from '@msdyn365-commerce/retail-proxy';\nimport { getDeliveryOptionsAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/CartsDataActions.g';\nimport { Address, CartLine, DeliveryOption } from '@msdyn365-commerce/retail-proxy/dist/Entities/CommerceTypes.g';\nimport { IModuleStateProps, withModuleState } from '@msdyn365-commerce-modules/checkout-utilities';\nimport { QueryResultSettingsProxy, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { Button, getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, Waiting } from '@msdyn365-commerce-modules/utilities';\nimport classname from 'classnames';\nimport get from 'lodash/get';\nimport { action, computed, observable, reaction, when } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport { ErrorComponent } from '../../common/error';\nimport { ICheckoutDeliveryOptionsData } from './checkout-delivery-options.data';\nimport {\n filterDeliveryModeOption,\n ICheckoutDeliveryOptionsProps,\n useDefaultDeliveryOption\n} from './checkout-delivery-options.props.autogenerated';\nimport DescriptionComponent from './components/checkout-delivery-options.description';\nimport ErrorMessageComponent from './components/checkout-delivery-options.error-message';\nimport ErrorTitleComponent from './components/checkout-delivery-options.error-title';\nimport RadioButtonComponent from './components/checkout-delivery-options.radio-button';\nimport { focusOnCheckoutError } from '../../checkout-errors';\n\nexport interface ICheckoutDeliveryOptionsModuleProps\n extends ICheckoutDeliveryOptionsProps,\n IModuleStateProps {}\n\nexport interface ICheckoutDeliveryOption {\n DeliveryOption: INodeProps;\n description?: React.ReactNode;\n price?: React.ReactNode;\n}\n\nexport interface ICheckoutDeliveryOptionEdit extends ICheckoutDeliveryOption {\n code: string;\n radioButton?: React.ReactNode;\n}\n\nexport interface ICheckoutDeliveryOptionsList {\n DeliveryOptionsList: INodeProps;\n list: ICheckoutDeliveryOptionEdit[];\n}\n\nexport interface ICheckoutDeliveryOptionsError {\n Error: INodeProps;\n title: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface ICheckoutDeliveryOptionsViewState {\n isLoading: boolean;\n isError: boolean;\n isShowList: boolean;\n isShowSelected: boolean;\n isShowSaveButton: boolean;\n isShowEditButton: boolean;\n isShowCancelButton: boolean;\n}\n\nexport interface ICheckoutDeliveryOptionsViewProps extends ICheckoutDeliveryOptionsProps<{}> {\n CheckoutDeliveryOptions: IModuleProps;\n selectedItemId: string;\n deliveryOptionsData: DeliveryOption[];\n isLoading: boolean;\n errorMessageData: string;\n viewState: ICheckoutDeliveryOptionsViewState;\n deliveryOptions?: ICheckoutDeliveryOptionsList;\n deliveryOptionSelected?: ICheckoutDeliveryOption;\n errorMessage?: ICheckoutDeliveryOptionsError;\n waiting?: React.ReactNode;\n saveButton?: React.ReactNode;\n editButton?: React.ReactNode;\n cancelButton?: React.ReactNode;\n alert?: React.ReactNode;\n checkoutErrorRef?: React.RefObject;\n onDeliveryOptionChange(event: React.ChangeEvent): void;\n onSave(): void;\n onEdit(): void;\n onCancel(): void;\n}\n\n/**\n *\n * CheckoutDeliveryOptions component.\n * @extends {React.Component>}\n */\n// @ts-expect-error\n@withModuleState\n@observer\nclass CheckoutDeliveryOptions extends React.Component {\n @observable private selectedItemId: string = '';\n\n @observable private deliveryOptions: DeliveryOption[] = [];\n\n @observable private isLoading: boolean = false;\n\n @observable private errorMessage?: string;\n\n @computed private get isDataReady(): boolean {\n return (this.props.data.checkout.result && this.props.data.checkout.status) === 'SUCCESS';\n }\n\n public get expressPaymentDetailsFromCartPage() {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n const properties =\n this.props.data.cart?.result?.cart?.ExtensionProperties?.find(property => property.Key === 'expressPaymentDetails')?.Value\n ?.StringValue ?? '';\n\n return properties ? JSON.parse(properties) : null;\n }\n\n public get isExpressPaymentAppliedInCartPage(): boolean {\n return this.expressPaymentDetailsFromCartPage?.isExpressCheckoutAppliedInCartPage ?? false;\n }\n\n private cartDeliveryMode?: string;\n\n private retailMultiplePickUpOptionEnabled?: boolean = false;\n\n private channelDeliveryOptionConfig?: ChannelDeliveryOptionConfiguration;\n\n private readonly telemetryContent?: ITelemetryContent;\n\n private readonly isSelectDefaultOptionEnabled?: boolean;\n\n private readonly checkoutErrorRef: React.RefObject = React.createRef();\n\n public constructor(props: ICheckoutDeliveryOptionsModuleProps) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n this.isSelectDefaultOptionEnabled =\n this.props.config.useDefaultDeliveryOption && this.props.config.useDefaultDeliveryOption !== useDefaultDeliveryOption.none;\n }\n\n public async componentDidMount(): Promise {\n when(\n () => this.isDataReady,\n async () => {\n await this.init();\n }\n );\n\n reaction(\n () => this.props.data.checkout.result?.shippingAddress,\n async () => {\n await this.loadDeliveryOptions();\n this.props.moduleState.setIsCancellable(false);\n\n await this.props.data.checkout.result?.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: true });\n }\n );\n\n reaction(\n () => this.props.data.checkout.result?.isExpressCheckoutApplied,\n async isExpressCheckoutApplied => {\n if (isExpressCheckoutApplied && this.canShip() && !this.isExpressPaymentAppliedInCartPage) {\n await this.loadDeliveryOptions();\n this.props.moduleState.setIsCancellable(false);\n\n await this.props.data.checkout.result?.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: true });\n }\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.CheckoutDeliveryOptions &&\n checkoutError.errorMessage\n ) {\n this.setError(checkoutError.errorMessage);\n }\n }\n );\n\n reaction(\n () => this.props.data.checkout.result?.checkoutErrorFocus,\n checkoutErrorFocus => {\n if (checkoutErrorFocus === CheckoutModule.CheckoutDeliveryOptions) {\n focusOnCheckoutError(this.checkoutErrorRef, this.props.context.actionContext);\n }\n }\n );\n }\n }\n\n public shouldComponentUpdate(nextProps: ICheckoutDeliveryOptionsModuleProps, nextState: ICheckoutDeliveryOptionsViewState): 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 multiplePickupStoreSwitchName = 'Dynamics.AX.Application.RetailMultiplePickupDeliveryModeFeature';\n this.channelDeliveryOptionConfig = this.props.data.channelDeliveryOptionConfig?.result;\n this.retailMultiplePickUpOptionEnabled = this.props.data.featureState?.result?.find(\n feature => feature.Name === multiplePickupStoreSwitchName\n )?.IsEnabled;\n\n if (!this.canShip()) {\n this.props.context.telemetry.error('Checkout delivery options content is empty, module wont render');\n return null;\n }\n\n const {\n moduleState: { isReady, isUpdating, hasError }\n } = this.props;\n const isError = !this.isLoading && hasError;\n const isShowList = !this.isLoading && !hasError && isUpdating && !this.isSelectDefaultOptionEnabled;\n const isShowSelected = !this.isLoading && !hasError && isReady;\n const { errorMessageTitle, deliveryOptionAriaLabel } = this.props.resources;\n\n const viewProps = {\n ...this.props,\n onDeliveryOptionChange: this.onDeliveryOptionChange,\n selectedItemId: this.selectedItemId,\n deliveryOptionsData: this.deliveryOptions,\n isLoading: this.isLoading,\n alert: this.errorMessage && ,\n errorMessageData: this.errorMessage,\n viewState: {\n isLoading: this.isLoading,\n isError,\n isShowList,\n isShowSelected,\n isShowSaveButton: isShowList && !this.props.moduleState.hasExternalSubmitGroup,\n isShowEditButton: isShowSelected && !this.props.moduleState.hasExternalSubmitGroup,\n isShowCancelButton: isShowList && !this.props.moduleState.hasExternalSubmitGroup && !!this.getSavedDeliveryOption()\n },\n CheckoutDeliveryOptions: {\n moduleProps: this.props,\n className: classname('ms-checkout-delivery-options', this.props.config.className)\n },\n deliveryOptions: {\n DeliveryOptionsList: {\n className: 'ms-checkout-delivery-options__list',\n role: 'list',\n 'aria-label': deliveryOptionAriaLabel\n },\n list: this.getDeliveryOptionList()\n },\n deliveryOptionSelected: this.getDeliveryOptionSelected(),\n errorMessage: this.getErrorMessage(),\n waiting: ,\n checkoutErrorRef: this.checkoutErrorRef,\n saveButton: this.getSaveButton(),\n editButton: this.getEditButton(),\n cancelButton: this.getCancelButton(),\n onSave: this.onSave,\n onEdit: this.onEdit,\n onCancel: this.onCancel\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n @action\n private readonly init = async (): Promise => {\n this.props.moduleState.init({\n onEdit: this.isSelectDefaultOptionEnabled ? undefined : this.onEdit,\n onCancel: this.isSelectDefaultOptionEnabled ? undefined : this.onCancel,\n onSubmit: this.isSelectDefaultOptionEnabled ? undefined : this.onSubmit,\n status:\n !(this.props.config.useDefaultDeliveryOption === useDefaultDeliveryOption.notDisplaySelectedDeliveryOption) &&\n this.canShip()\n ? 'updating'\n : 'disabled'\n });\n\n this.cartDeliveryMode = this.getSavedDeliveryOption();\n await this.loadDeliveryOptions();\n };\n\n private readonly canShip = (): boolean => {\n const hasInvoice = this.props.data.checkout.result?.checkoutCart.hasInvoiceLine;\n return !hasInvoice && this.getCartLinesForShipping().length > 0;\n };\n\n private readonly isDeliveryModeExists = (deliveryMode: string | undefined): boolean => {\n if (deliveryMode) {\n if (this.deliveryOptions.find(deliveryOption => deliveryOption.Code === deliveryMode)) {\n return true;\n }\n }\n return false;\n };\n\n private readonly getDeliveryOptionSelected = (): ICheckoutDeliveryOption | null => {\n const selectedItem = this.deliveryOptions.find(deliveryOption => deliveryOption.Code === this.selectedItemId);\n if (!selectedItem) {\n this.props.context.telemetry.error('Checkout delivery options content is empty, module wont render');\n return null;\n }\n\n const { id, typeName, context } = this.props;\n const { priceFree } = this.props.resources;\n const price = get(selectedItem, 'ShippingChargeAmount', 0);\n const channelConfig = this.props.context.request.channel;\n return {\n DeliveryOption: { className: 'ms-checkout-delivery-options__option-selected' },\n description: ,\n price: (\n \n )\n };\n };\n\n private readonly getErrorMessage = (): ICheckoutDeliveryOptionsError => {\n const { errorMessageTitle } = this.props.resources;\n return {\n // @ts-expect-error\n CheckoutDeliveryOptionsError: { tag: 'span', className: 'ms-address-form__error', role: 'alert', 'aria-live': 'assertive' },\n title: ,\n message: \n };\n };\n\n private readonly getDeliveryOptionList = (): ICheckoutDeliveryOptionEdit[] => {\n const count = this.deliveryOptions.length;\n const { priceFree } = this.props.resources;\n const { id, typeName, context } = this.props;\n const channelConfig = this.props.context.request.channel;\n\n return this.deliveryOptions.map((deliveryOption: DeliveryOption, index: number) => {\n return {\n DeliveryOption: { className: 'ms-checkout-delivery-options__option', role: 'listitem' },\n code: deliveryOption.Code || '',\n radioButton: (\n \n ),\n description: (\n \n ),\n price: (\n \n )\n };\n });\n };\n\n private readonly getSaveButton = (): React.ReactNode => {\n const { saveBtnLabel = 'Save' } = this.props.resources;\n return (\n \n {saveBtnLabel}\n \n );\n };\n\n private readonly getEditButton = (): React.ReactNode => {\n const { editBtnLabel = 'Change' } = this.props.resources;\n return (\n \n );\n };\n\n private readonly getCancelButton = (): React.ReactNode => {\n const { cancelBtnLabel = 'Cancel' } = this.props.resources;\n return (\n \n );\n };\n\n private readonly setError = (errorMessage: string): void => {\n this.props.telemetry.error(errorMessage);\n this.props.moduleState.setHasError(true);\n this.props.moduleState.onUpdating();\n this.errorMessage = errorMessage;\n };\n\n private readonly clearError = (): void => {\n this.props.moduleState.setHasError(false);\n this.errorMessage = undefined;\n };\n\n private readonly onSave = async (): Promise => {\n await this.onSubmit();\n };\n\n private readonly onEdit = async (): Promise => {\n this.props.telemetry.information('Delivery options onEdit is called.');\n\n this.clearError();\n this.onUpdating();\n await this.props.data.checkout.result?.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: true });\n };\n\n private readonly onSubmit = async (): Promise => {\n this.props.telemetry.information('Delivery options onSubmit is called.');\n\n await this.updateCartDeliverySpecification(this.selectedItemId);\n await this.props.data.checkout.result?.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: false });\n };\n\n private readonly onCancel = async (): Promise => {\n this.props.telemetry.information('Delivery options onCancel is called.');\n\n // Reset to the saved value\n const savedDeliveryOption = this.getSavedDeliveryOption();\n if (savedDeliveryOption) {\n this.selectedItemId = savedDeliveryOption;\n this.onReady();\n\n await this.props.data.checkout.result?.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: false });\n } else {\n this.onUpdating();\n }\n };\n\n private readonly getSavedDeliveryOption = (): string | undefined => {\n const cartLinesForShipping = this.getCartLinesForShipping();\n return cartLinesForShipping[0] && cartLinesForShipping[0].DeliveryMode;\n };\n\n private readonly updateCartDeliverySpecification = async (deliveryModeId: string): Promise => {\n if (deliveryModeId.trim() === '') {\n return;\n }\n\n const { resources } = this.props;\n const checkoutState = this.props.data.checkout.result as ICheckoutState;\n const updateCartDeliverySpecificationInput = {\n deliveryModeId,\n shippingAddress: checkoutState.shippingAddress,\n channelDeliveryOptionConfig: this.retailMultiplePickUpOptionEnabled ? this.channelDeliveryOptionConfig : undefined\n };\n\n this.clearError();\n this.onPending();\n\n await checkoutState.checkoutCart\n .updateCartDeliverySpecification(updateCartDeliverySpecificationInput)\n .then(response => {\n if (response.status === 'FAILED') {\n const errorMessage = `${response.errorDetails?.LocalizedMessage}`;\n this.setError(StringExtensions.isNullOrEmpty(errorMessage) ? resources.genericErrorMessage : errorMessage);\n }\n\n this.onReady();\n this.props.moduleState.setIsCancellable(true);\n })\n .catch(() => {\n this.setError(resources.genericErrorMessage);\n });\n };\n\n private readonly getCartLinesForShipping = (): CartLine[] => {\n const { request } = this.props.context;\n const pickupDeliveryModeCode = request && request.channel && request.channel.PickupDeliveryModeCode;\n const emailDeliveryModeCode = request && request.channel && request.channel.EmailDeliveryModeCode;\n\n return this.retailMultiplePickUpOptionEnabled\n ? ((this.props.data.checkout.result && this.props.data.checkout.result.checkoutCart.cart.CartLines) || []).filter(cartLine =>\n cartLine.DeliveryMode && cartLine.DeliveryMode !== ''\n ? cartLine.DeliveryMode !==\n this.channelDeliveryOptionConfig?.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) || []).filter(cartLine =>\n cartLine.DeliveryMode && cartLine.DeliveryMode !== ''\n ? cartLine.DeliveryMode !== pickupDeliveryModeCode && cartLine.DeliveryMode !== emailDeliveryModeCode\n : cartLine\n );\n };\n\n private readonly getDeliveryOptions = async (shippingAddress: Address): Promise => {\n if (!this.props.data.checkout.result) {\n return;\n }\n\n const { context, resources, config } = this.props;\n const cartState = this.props.data.checkout.result?.checkoutCart;\n const cartId = (cartState.cart as Cart).Id;\n\n if (context) {\n this.isLoading = true;\n this.deliveryOptions = [];\n this.selectedItemId = '';\n this.clearError();\n\n try {\n let originalDeliveryMode: string = '';\n const shippingCartLines = this.getCartLinesForShipping();\n const hasShippingDeliveryLines = shippingCartLines && shippingCartLines.length > 0 && shippingCartLines[0].DeliveryMode;\n if (hasShippingDeliveryLines) {\n // First store the delivery mode, so that we can restore the shipping information.\n originalDeliveryMode = shippingCartLines[0].DeliveryMode || '';\n\n // Clear the delivery information on retail server, so GetDeliveryOptions charge calculation works correctly\n const cart = cartState.cart;\n await cartState.clearCartLinesDeliveryInformation({\n cart,\n channelDeliveryOptionConfiguration: this.channelDeliveryOptionConfig\n });\n }\n\n // TODO: Check if we can move this getDeliveryOptions to checkout state\n let deliveryOptionFilter: FilterDeliveryModeOption;\n switch (config.filterDeliveryModeOption) {\n case filterDeliveryModeOption.none:\n deliveryOptionFilter = FilterDeliveryModeOption.None;\n break;\n case filterDeliveryModeOption.filterOutNonCarrierDeliveryMode:\n deliveryOptionFilter = FilterDeliveryModeOption.FilterOutNonCarrierDeliveryMode;\n break;\n default:\n deliveryOptionFilter = FilterDeliveryModeOption.FilterOutNonCarrierDeliveryMode;\n }\n const response = await getDeliveryOptionsAsync(\n {\n callerContext: context.actionContext,\n queryResultSettings: QueryResultSettingsProxy.getPagingFromInputDataOrDefaultValue(context.actionContext)\n },\n cartId,\n shippingAddress,\n [],\n deliveryOptionFilter,\n true\n );\n\n if (hasShippingDeliveryLines) {\n await this.updateCartDeliverySpecification(originalDeliveryMode);\n }\n\n if (response && response.length > 0) {\n this.deliveryOptions = response;\n }\n } catch {\n this.setError(resources.genericErrorMessage);\n }\n\n if (this.deliveryOptions.length === 0) {\n this.setError(resources.deliveryOptionsNotFound);\n } else if (this.cartDeliveryMode && this.isDeliveryModeExists(this.cartDeliveryMode)) {\n this.selectedItemId = this.cartDeliveryMode;\n this.cartDeliveryMode = undefined;\n this.onReady();\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n this.props.data.checkout.result?.updateHasCartDeliveryMode({ newHasCartDeliveryMode: true });\n\n if (!this.props.data.checkout.result?.isPaymentVerificationRedirection) {\n await this.props.data.checkout.result.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: false });\n }\n } else {\n this.onUpdating();\n this.selectedItemId = this.deliveryOptions.length > 0 ? this.deliveryOptions[0].Code || '' : ''; // By default, select first delivery\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n this.props.data.checkout.result?.updateHasCartDeliveryMode({ newHasCartDeliveryMode: !!this.isSelectDefaultOptionEnabled });\n }\n\n this.isLoading = false;\n }\n };\n\n private readonly getStoredDeliveryOptions = async (): Promise => {\n if (!this.props.data.checkout.result) {\n return;\n }\n\n const { context } = this.props;\n const cartState = this.props.data.checkout.result.checkoutCart;\n\n if (context) {\n this.isLoading = true;\n this.deliveryOptions = [];\n this.selectedItemId = '';\n this.clearError();\n\n let originalDeliveryMode: string = '';\n const shippingCartLines = this.getCartLinesForShipping();\n const hasShippingDeliveryLines = shippingCartLines && shippingCartLines.length > 0 && shippingCartLines[0].DeliveryMode;\n if (hasShippingDeliveryLines) {\n // First store the delivery mode, so that we can restore the shipping information.\n originalDeliveryMode = shippingCartLines[0].DeliveryMode || '';\n\n // Clear the delivery information on retail server, so GetDeliveryOptions charge calculation works correctly\n const cart = cartState.cart;\n await cartState.clearCartLinesDeliveryInformation({\n cart,\n channelDeliveryOptionConfiguration: this.channelDeliveryOptionConfig\n });\n if (hasShippingDeliveryLines) {\n await this.updateCartDeliverySpecification(originalDeliveryMode);\n }\n }\n\n if (this.cartDeliveryMode) {\n this.selectedItemId = this.cartDeliveryMode;\n this.cartDeliveryMode = undefined;\n this.onReady();\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Explicitly check for null/undefined.\n this.props.data.checkout.result?.updateHasCartDeliveryMode({ newHasCartDeliveryMode: true });\n\n if (!this.props.data.checkout.result.isPaymentVerificationRedirection) {\n await this.props.data.checkout.result.updateShouldCollapsePaymentSection({ newShouldCollapsePaymentSection: false });\n }\n }\n\n this.isLoading = false;\n }\n };\n\n private readonly loadDeliveryOptions = async (): Promise => {\n const shippingAddress = this.props.data.checkout.result?.shippingAddress;\n\n if (this.canShip() && shippingAddress) {\n if (\n !this.props.data.checkout.result?.isPaymentVerificationRedirection ||\n this.isSelectDefaultOptionEnabled ||\n this.props.data.checkout.result?.isExpressCheckoutApplied\n ) {\n await this.getDeliveryOptions(shippingAddress);\n }\n\n if (this.props.data.checkout.result?.isPaymentVerificationRedirection) {\n await this.getStoredDeliveryOptions();\n }\n\n if (\n this.isSelectDefaultOptionEnabled ||\n this.props.data.checkout.result?.isExpressCheckoutApplied ||\n this.isExpressPaymentAppliedInCartPage\n ) {\n this.onSubmit();\n }\n }\n };\n\n private readonly onDeliveryOptionChange = (event: React.ChangeEvent) => {\n const deliveryModeId = event.currentTarget.value;\n this.selectedItemId = deliveryModeId;\n };\n\n private readonly onReady = () => {\n if (!(this.props.config.useDefaultDeliveryOption === useDefaultDeliveryOption.notDisplaySelectedDeliveryOption)) {\n this.props.moduleState.onReady();\n }\n };\n\n private readonly onUpdating = () => {\n if (!(this.props.config.useDefaultDeliveryOption === useDefaultDeliveryOption.notDisplaySelectedDeliveryOption)) {\n this.props.moduleState.onUpdating();\n }\n };\n\n private readonly onPending = () => {\n if (!this.isSelectDefaultOptionEnabled) {\n this.props.moduleState.onPending();\n }\n };\n}\n\nexport default CheckoutDeliveryOptions;\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 {\n ICheckoutDeliveryOption,\n ICheckoutDeliveryOptionEdit,\n ICheckoutDeliveryOptionsList,\n ICheckoutDeliveryOptionsViewProps\n} from './checkout-delivery-options';\n\nconst DeliveryOptionList: React.FC = ({ DeliveryOptionsList, list }) => {\n if (!list || list.length === 0) {\n return null;\n }\n\n return (\n \n {list.map((deliveryOption: ICheckoutDeliveryOptionEdit) => {\n return (\n \n {deliveryOption.radioButton}\n {deliveryOption.description}\n {deliveryOption.price}\n \n );\n })}\n \n );\n};\n\nconst DeliveryOptionSelected: React.FC = ({ DeliveryOption, description, price }) => {\n return (\n \n {description}\n {price}\n \n );\n};\n\nconst CheckoutDeliveryOptionsView: React.FC = props => {\n const {\n CheckoutDeliveryOptions,\n checkoutErrorRef,\n viewState,\n deliveryOptions,\n deliveryOptionSelected,\n alert,\n waiting,\n saveButton,\n editButton,\n cancelButton\n } = props;\n\n return (\n // TODO: All wrapper div should be provided by viewProps. Once SDK provide the sln, update markup.\n \n {viewState.isLoading && waiting}\n {viewState.isError && alert}\n {viewState.isShowList && deliveryOptions && }\n {viewState.isShowSelected && deliveryOptionSelected && }\n {viewState.isShowSaveButton && saveButton}\n {viewState.isShowEditButton && editButton}\n {viewState.isShowCancelButton && cancelButton}\n \n );\n};\n\nexport default CheckoutDeliveryOptionsView;\n","module.exports = React;","module.exports = ReactDOM;"],"names":["DeliveryOptionList","_ref","DeliveryOptionsList","list","length","isMilitaryAddress","localStorage","getItem","React","Node","Object","assign","map","deliveryOption","code","DeliveryOption","key","radioButton","description","price","DeliveryOptionSelected","_ref2","ErrorMessage","_ref3","Error","title","message","props","CheckoutDeliveryOptions","viewState","deliveryOptions","deliveryOptionSelected","errorMessage","waiting","saveButton","editButton","cancelButton","deliveryDescriptionField","config","extraText","deliveryDescription","RichTextComponent","text","className","Module","selectedItemId","isLoading","isError","isShowList","isShowSelected","isShowSaveButton","isShowEditButton","isShowCancelButton","binding","modules","dataActions","registerSanitizedActionPath","sanitizedActionPath","dataAction","default","prototype","RegistrationId","id","c","require","$type","da","name","path","runOn","iNM","ns","n","p","pdp","md","window","__bindings__","_objectSpread","viewDictionary","cn","ErrorComponent","role","isChecked","value","ariaSetSize","ariaPosInSet","ariaLabel","telemetryContent","onChange","payLoad","getPayloadObject","TelemetryConstant","DeliveryOptions","attributes","getTelemetryAttributes","checked","type","contentAction","etext","constructor","super","retailMultiplePickUpOptionEnabled","checkoutErrorRef","init","async","this","moduleState","onEdit","isSelectDefaultOptionEnabled","undefined","onCancel","onSubmit","status","useDefaultDeliveryOption","canShip","cartDeliveryMode","getSavedDeliveryOption","loadDeliveryOptions","_this$props$data$chec","data","checkout","result","checkoutCart","hasInvoiceLine","getCartLinesForShipping","isDeliveryModeExists","deliveryMode","find","Code","getDeliveryOptionSelected","selectedItem","context","telemetry","error","typeName","priceFree","resources","get","channelConfig","request","channel","DescriptionComponent","Description","PriceComponent","CustomerContextualPrice","freePriceText","currencyCode","Currency","getErrorMessage","errorMessageTitle","CheckoutDeliveryOptionsError","tag","ErrorTitleComponent","ErrorMessageComponent","getDeliveryOptionList","count","index","RadioButtonComponent","onDeliveryOptionChange","getSaveButton","saveBtnLabel","Button","color","disabled","onClick","onSave","getEditButton","editBtnLabel","getCancelButton","cancelBtnLabel","setError","setHasError","onUpdating","clearError","_this$props$data$chec2","information","updateShouldCollapsePaymentSection","newShouldCollapsePaymentSection","_this$props$data$chec3","updateCartDeliverySpecification","savedDeliveryOption","_this$props$data$chec4","onReady","cartLinesForShipping","DeliveryMode","deliveryModeId","trim","checkoutState","updateCartDeliverySpecificationInput","shippingAddress","channelDeliveryOptionConfig","onPending","then","response","_response$errorDetail","errorDetails","LocalizedMessage","StringExtensions","isNullOrEmpty","genericErrorMessage","setIsCancellable","catch","pickupDeliveryModeCode","PickupDeliveryModeCode","emailDeliveryModeCode","EmailDeliveryModeCode","cart","CartLines","filter","cartLine","_this$channelDelivery","PickupDeliveryModeCodes","getDeliveryOptions","_this$props$data$chec5","cartState","cartId","Id","originalDeliveryMode","shippingCartLines","hasShippingDeliveryLines","clearCartLinesDeliveryInformation","channelDeliveryOptionConfiguration","deliveryOptionFilter","filterDeliveryModeOption","FilterDeliveryModeOption","None","FilterOutNonCarrierDeliveryMode","getDeliveryOptionsAsync","callerContext","actionContext","queryResultSettings","QueryResultSettingsProxy","getPagingFromInputDataOrDefaultValue","_unused","deliveryOptionsNotFound","_this$props$data$chec6","_this$props$data$chec7","updateHasCartDeliveryMode","newHasCartDeliveryMode","isPaymentVerificationRedirection","_this$props$data$chec8","getStoredDeliveryOptions","_this$props$data$chec9","_this$props$data$chec10","_this$props$data$chec11","_this$props$data$chec12","_this$props$data$chec13","_this$props$data$chec14","isExpressCheckoutApplied","isExpressPaymentAppliedInCartPage","event","currentTarget","getTelemetryObject","telemetryPageName","friendlyName","_this$props$data$cart","_this$props$data$cart2","properties","ExtensionProperties","property","Key","Value","StringValue","JSON","parse","_this$expressPaymentD","_this$expressPaymentD2","expressPaymentDetailsFromCartPage","isExpressCheckoutAppliedInCartPage","_this$props$data$chec19","when","isDataReady","reaction","_this$props$data$chec15","_this$props$data$chec16","_this$props$data$chec17","_this$props$data$chec18","shouldEnableCheckoutErrorDisplayMessaging","_this$props$data$chec20","checkoutError","errorLocation","ErrorLocation","_this$props$data$chec21","checkoutErrorFocus","CheckoutModule","focusOnCheckoutError","shouldComponentUpdate","nextProps","nextState","state","render","_this$props$data$chan","_this$props$data$feat","featureState","feature","Name","IsEnabled","isReady","isUpdating","hasError","deliveryOptionAriaLabel","viewProps","deliveryOptionsData","alert","errorMessageData","hasExternalSubmitGroup","moduleProps","classname","Waiting","renderView","__decorate","observable","computed","action","withModuleState","observer","ref","module","exports","ReactDOM"],"sourceRoot":""}